Spaces:
Sleeping
Sleeping
| 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'); | |
| } | |