Spaces:
Paused
Paused
matt HOFFNER
commited on
Commit
·
7155c10
1
Parent(s):
e5b6f72
refactor stream
Browse files- src/pages/api/llm.js +19 -10
src/pages/api/llm.js
CHANGED
@@ -3,7 +3,7 @@ import { LLMError, LLMStream } from './stream';
|
|
3 |
|
4 |
const handler = async (req, res) => {
|
5 |
try {
|
6 |
-
const { question } =
|
7 |
|
8 |
const googleCustomSearch = new GoogleCustomSearch({
|
9 |
apiKey: process.env.API_KEY,
|
@@ -21,26 +21,35 @@ const handler = async (req, res) => {
|
|
21 |
googleCustomSearch
|
22 |
};
|
23 |
|
24 |
-
|
25 |
const stream = await LLMStream({ id: "gpt-3.5-turbo-0613" }, promptToSend, 0.8, messages, functions);
|
26 |
|
27 |
-
let data = '';
|
28 |
const decoder = new TextDecoder();
|
|
|
29 |
for await (const chunk of stream) {
|
30 |
-
data
|
31 |
-
res.
|
|
|
|
|
32 |
}
|
33 |
|
34 |
-
|
35 |
-
|
|
|
|
|
|
|
36 |
} catch (error) {
|
37 |
console.error(error);
|
38 |
if (error instanceof LLMError) {
|
39 |
-
|
|
|
|
|
40 |
} else {
|
41 |
-
|
|
|
|
|
42 |
}
|
43 |
}
|
44 |
};
|
45 |
|
46 |
-
export default handler;
|
|
|
3 |
|
4 |
const handler = async (req, res) => {
|
5 |
try {
|
6 |
+
const { question } = req.body;
|
7 |
|
8 |
const googleCustomSearch = new GoogleCustomSearch({
|
9 |
apiKey: process.env.API_KEY,
|
|
|
21 |
googleCustomSearch
|
22 |
};
|
23 |
|
24 |
+
const promptToSend = "You are a helpful assistant, a search term is provided and you are given search results to help provide a useful response.";
|
25 |
const stream = await LLMStream({ id: "gpt-3.5-turbo-0613" }, promptToSend, 0.8, messages, functions);
|
26 |
|
|
|
27 |
const decoder = new TextDecoder();
|
28 |
+
|
29 |
for await (const chunk of stream) {
|
30 |
+
const data = decoder.decode(chunk);
|
31 |
+
if (!res.writableEnded) {
|
32 |
+
res.write(data);
|
33 |
+
}
|
34 |
}
|
35 |
|
36 |
+
if (!res.writableEnded) {
|
37 |
+
res.end();
|
38 |
+
}
|
39 |
+
return res;
|
40 |
+
|
41 |
} catch (error) {
|
42 |
console.error(error);
|
43 |
if (error instanceof LLMError) {
|
44 |
+
res.status(500);
|
45 |
+
res.send(error.message);
|
46 |
+
return res;
|
47 |
} else {
|
48 |
+
res.status(500);
|
49 |
+
res.send('Error');
|
50 |
+
return res;
|
51 |
}
|
52 |
}
|
53 |
};
|
54 |
|
55 |
+
export default handler;
|