news 2026/4/30 18:53:24

使用node js快速构建接入taotoken的ai客服原型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
使用node js快速构建接入taotoken的ai客服原型

使用 Node.js 快速构建接入 Taotoken 的 AI 客服原型

1. 环境准备与初始化

在开始构建 AI 客服原型前,请确保已安装 Node.js 16 或更高版本。创建一个新项目目录并初始化 npm 包管理:

mkdir ai-customer-service && cd ai-customer-service npm init -y npm install openai express body-parser dotenv

创建.env文件用于存储敏感信息,内容如下:

TAOTOKEN_API_KEY=your_api_key_here PORT=3000

2. 配置 Taotoken 连接

使用 OpenAI 官方 JavaScript SDK 连接 Taotoken 端点时,关键配置是正确设置baseURLapiKey。创建taotoken-client.js文件:

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', }); export default client;

3. 实现基础聊天接口

创建server.js文件实现 Express 服务,处理用户消息并返回 AI 响应:

import express from 'express'; import bodyParser from 'body-parser'; import client from './taotoken-client.js'; const app = express(); app.use(bodyParser.json()); app.post('/chat', async (req, res) => { try { const { messages, model = 'claude-sonnet-4-6' } = req.body; const completion = await client.chat.completions.create({ model, messages, temperature: 0.7, }); res.json({ reply: completion.choices[0].message.content }); } catch (error) { res.status(500).json({ error: error.message }); } }); app.listen(process.env.PORT, () => { console.log(`Server running on port ${process.env.PORT}`); });

4. 添加流式响应支持

对于需要实时显示响应的场景,可以修改接口支持流式传输:

app.post('/chat-stream', async (req, res) => { try { const { messages, model = 'claude-sonnet-4-6' } = 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, messages, temperature: 0.7, 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) { res.status(500).json({ error: error.message }); } });

5. 前端界面集成

创建简单的 HTML 界面与后端交互,在public/index.html中:

<!DOCTYPE html> <html> <head> <title>AI 客服演示</title> <script> async function sendMessage() { const input = document.getElementById('message'); const output = document.getElementById('output'); output.innerHTML += `<div>用户: ${input.value}</div>`; const response = await fetch('/chat', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ messages: [{ role: 'user', content: input.value }] }) }); const { reply } = await response.json(); output.innerHTML += `<div>AI: ${reply}</div>`; input.value = ''; } </script> </head> <body> <div id="output" style="height: 300px; overflow-y: scroll; border: 1px solid #ccc;"></div> <input id="message" type="text" placeholder="输入消息..."> <button onclick="sendMessage()">发送</button> </body> </html>

6. 模型切换与扩展

Taotoken 支持通过修改model参数切换不同模型。可以在前端添加模型选择器:

<select id="model"> <option value="claude-sonnet-4-6">Claude Sonnet</option> <option value="gpt-3.5-turbo">GPT-3.5 Turbo</option> <!-- 其他模型选项可在 Taotoken 模型广场查看 --> </select>

然后修改sendMessage函数:

const model = document.getElementById('model').value; const response = await fetch('/chat', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ messages: [{ role: 'user', content: input.value }], model }) });

现在您已经完成了一个支持多模型切换的 AI 客服原型。要开始使用 Taotoken,请访问 Taotoken 获取 API Key 并探索更多可用模型。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/30 18:52:23

别再手动搭环境了!用IDEA一键搞定CloudSim 4.0+,附赠源码调试技巧

用IDEA极速搭建CloudSim 4.0开发环境&#xff1a;从零到源码调试的完整指南 当第一次接触CloudSim这个强大的云计算仿真工具时&#xff0c;许多研究者都会在环境配置这一步卡壳。传统的手动配置方式不仅耗时耗力&#xff0c;还容易因为版本兼容性问题导致各种报错。本文将带你使…

作者头像 李华
网站建设 2026/4/30 18:52:20

交互概览图是UML中交互图的一种变体,它将多个交互片段进行连接,抽象掉了具体的消息和生命线

交互概览图是UML中交互图的一种变体&#xff0c;它将多个交互片段进行连接&#xff0c;抽象掉了具体的消息和生命线&#xff0c;仅展示交互的整体流程和控制关系。本次案例中“显示一篇已分配的稿件”场景的交互概览图包含两个核心步骤&#xff1a; 第一步&#xff1a;Retrieve…

作者头像 李华
网站建设 2026/4/30 18:51:27

HSTracker:macOS炉石传说玩家的智能对战助手与套牌管理神器

HSTracker&#xff1a;macOS炉石传说玩家的智能对战助手与套牌管理神器 【免费下载链接】HSTracker A deck tracker and deck manager for Hearthstone on macOS 项目地址: https://gitcode.com/gh_mirrors/hs/HSTracker 对于在macOS上享受《炉石传说》的玩家来说&#…

作者头像 李华
网站建设 2026/4/30 18:51:26

ARM GIC中断控制器PPI寄存器详解与优化

1. ARM GIC中断控制器PPI寄存器深度解析在ARM多核处理器架构中&#xff0c;通用中断控制器(GIC)是管理中断分发的核心组件。物理私有外设中断(PPI)作为GIC的重要特性&#xff0c;为每个处理器核提供专属的中断通道。理解PPI寄存器的工作原理&#xff0c;对开发高效可靠的中断处…

作者头像 李华
网站建设 2026/4/30 18:51:26

3分钟掌握:Windows电脑直接运行安卓应用的终极解决方案

3分钟掌握&#xff1a;Windows电脑直接运行安卓应用的终极解决方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 还在为电脑上无法直接安装安卓应用而烦恼吗&#xf…

作者头像 李华