scnario commited on
Commit
00202ec
·
verified ·
1 Parent(s): 1c1f7da

Update server.js

Browse files
Files changed (1) hide show
  1. server.js +9 -7
server.js CHANGED
@@ -15,14 +15,16 @@ function getSessionFile(sessionId) {
15
 
16
  async function gemini(sessionId, prompt) {
17
  const sessionFile = getSessionFile(sessionId);
18
- let session;
19
  if (fs.existsSync(sessionFile)) {
20
- session = JSON.parse(fs.readFileSync(sessionFile, 'utf8'));
21
  } else {
22
- session = await genAI.getGenerativeModel({ model: 'gemini-2.0-flash' }).startChat();
23
  }
24
- const result = await session.sendMessage(prompt);
25
- fs.writeFileSync(sessionFile, JSON.stringify(session));
 
 
26
  return result.response.text();
27
  }
28
 
@@ -31,9 +33,9 @@ app.get('/gemini', async (req, res) => {
31
  const { question, sessionId } = req.query;
32
  if (!question || !sessionId) return res.status(400).json({ error: 'Missing parameters' });
33
  const reply = await gemini(sessionId, question);
34
- res.json({ reply });
35
  } catch (error) {
36
- res.status(500).json({ error: error.message });
37
  }
38
  });
39
 
 
15
 
16
  async function gemini(sessionId, prompt) {
17
  const sessionFile = getSessionFile(sessionId);
18
+ let chatSession;
19
  if (fs.existsSync(sessionFile)) {
20
+ chatSession = JSON.parse(fs.readFileSync(sessionFile, 'utf8'));
21
  } else {
22
+ chatSession = await genAI.getGenerativeModel({ model: 'gemini-2.0-flash' }).startChat();
23
  }
24
+
25
+ const result = await chatSession.sendMessage(prompt);
26
+
27
+ fs.writeFileSync(sessionFile, JSON.stringify(chatSession.history, null, 2));
28
  return result.response.text();
29
  }
30
 
 
33
  const { question, sessionId } = req.query;
34
  if (!question || !sessionId) return res.status(400).json({ error: 'Missing parameters' });
35
  const reply = await gemini(sessionId, question);
36
+ res.json({ reply }, null, 2);
37
  } catch (error) {
38
+ res.status(500).json({ error: error.message }, null, 2);
39
  }
40
  });
41