通过 Node.js 后端服务接入 Taotoken 实现多轮对话聊天功能
通过 Node.js 后端服务接入 Taotoken 实现多轮对话聊天功能1. 准备工作在开始编码前需要完成两项基础配置获取 Taotoken API Key 和选择模型。登录 Taotoken 控制台在「API 密钥」页面创建新密钥并妥善保存。模型 ID 可在「模型广场」查看例如claude-sonnet-4-6或gpt-4-turbo等支持对话场景的模型。建议将敏感信息存储在环境变量中。创建.env文件并添加以下内容TAOTOKEN_API_KEYyour_api_key_here TAOTOKEN_MODELclaude-sonnet-4-62. 初始化 OpenAI 客户端安装必要的依赖包包括openai和dotenvnpm install openai dotenv新建server.js文件配置客户端实例。关键点在于正确设置baseURL为 Taotoken 的 OpenAI 兼容端点import OpenAI from openai; import dotenv from dotenv; dotenv.config(); const client new OpenAI({ apiKey: process.env.TAOTOKEN_API_KEY, baseURL: https://taotoken.net/api, });3. 实现聊天补全接口下面实现一个支持多轮对话的 HTTP 接口。使用 Express 框架示例import express from express; const app express(); app.use(express.json()); app.post(/chat, async (req, res) { try { const { messages } req.body; const completion await client.chat.completions.create({ model: process.env.TAOTOKEN_MODEL, messages, }); res.json({ reply: completion.choices[0]?.message?.content }); } catch (error) { console.error(error); res.status(500).json({ error: 对话处理失败 }); } }); app.listen(3000, () console.log(服务运行在 http://localhost:3000));测试时可发送包含对话历史的 POST 请求curl -X POST http://localhost:3000/chat \ -H Content-Type: application/json \ -d {messages:[{role:user,content:你好}]}4. 处理流式响应对于需要实时输出的场景可以启用流式响应。修改接口实现app.post(/chat-stream, async (req, res) { try { const { messages } req.body; res.setHeader(Content-Type, text/event-stream); res.setHeader(Cache-Control, no-cache); res.setHeader(Connection, keep-alive); const stream await client.chat.completions.create({ model: process.env.TAOTOKEN_MODEL, messages, stream: true, }); for await (const chunk of stream) { const content chunk.choices[0]?.delta?.content || ; res.write(data: ${JSON.stringify({ content })}\n\n); } res.end(); } catch (error) { console.error(error); res.status(500).json({ error: 流式对话失败 }); } });前端可通过 EventSource 接收数据const eventSource new EventSource(/chat-stream); eventSource.onmessage (event) { const data JSON.parse(event.data); console.log(data.content); };5. 生产环境注意事项实际部署时需要考虑以下方面添加请求验证中间件防止滥用实现对话历史持久化存储设置合理的超时和重试机制监控 Token 消耗和 API 响应状态完整的示例代码可参考 Taotoken Node.js 示例库。