fast72 commited on
Commit
bd588c8
·
verified ·
1 Parent(s): 583a11e

Create server.js

Browse files
Files changed (1) hide show
  1. server.js +32 -0
server.js ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const express = require("express");
2
+ const axios = require("axios");
3
+
4
+ const app = express();
5
+ app.use(express.json());
6
+
7
+ const API_URL = `https://api.cloudflare.com/client/v4/accounts/${process.env.ID}/ai/run/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b`;
8
+ const sessions = {};
9
+
10
+ app.post("/chat", async (req, res) => {
11
+ const { session, message, temperature = 5 } = req.body;
12
+ if (!session || !message) return res.status(400).send("Session and message are required");
13
+
14
+ sessions[session] = sessions[session] || [];
15
+ sessions[session].push({ role: "user", content: message });
16
+
17
+ try {
18
+ const response = await axios.post(
19
+ API_URL,
20
+ { messages: sessions[session], temperature, stream: true },
21
+ { headers: { Authorization: `Bearer ${process.env.KEY}` }, responseType: "stream" }
22
+ );
23
+
24
+ let fullResponse = "";
25
+ response.data.on("data", (chunk) => (fullResponse += chunk));
26
+ response.data.on("end", () => res.send(fullResponse.trim()));
27
+ } catch (err) {
28
+ res.status(500).send(err.message);
29
+ }
30
+ });
31
+
32
+ app.listen(7860, () => console.log("Running on http://localhost:3000"));