lwdgit's picture
feat: 接入chatgpt
f61b332
raw
history blame contribute delete
689 Bytes
import { NextApiRequest, NextApiResponse } from 'next'
import ChatGPT from 'gpt-web';
const chatbot = new ChatGPT(process.env.OPENAI_EMAIL!, process.env.OPENAI_PASSWORD!);
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
const text = String(req.query.text);
res.setHeader('Content-Type', 'text/stream; charset=UTF-8');
if (!text.trim()) {
return res.end('text不能为空');
}
let lastLen = 0;
const response = await chatbot.chat(text, {
onMessage: (msg: string) => {
res.write(msg.slice(lastLen));
res.flushHeaders();
lastLen = msg.length;
}
});
res.end(response.slice(lastLen));
console.log('done');
}