如何在Node.js项目中接入天工AI实现自动回复

梦辰小哥_7595

梦辰小哥_7595

2026-06-22

807人浏览

原创

必须先获取天工ai的api key并完成账号注册与api密钥创建,再初始化node.js项目安装axios和eventsource-parser,接着封装同步调用、流式响应及错误重试的ai调用函数,最后在express中集成sse流式接口供前端eventsource消费。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如何在node.js项目中接入天工ai实现自动回复

要在Node.js项目中接入天工AI实现自动回复功能,必须先获取天工AI官方提供的API Key,并确保后端服务能发起HTTPS请求、正确处理JSON响应体、设置合理超时与错误重试逻辑。

注册天工AI账号并获取API Key

访问 天工AI官网 → 点击右上角「登录」→ 使用手机号注册新账号 → 登录后进入「控制台」→ 左侧菜单选择「API管理」→ 点击「创建API Key」→ 填写应用名称(如:node-chatbot)→ 点击「确认创建」。

【创建后务必立即复制并安全保存API Key,页面关闭后无法再次查看】

这一步不能跳过,没有有效API Key后续所有请求都会返回401错误。

初始化Node.js项目并安装依赖

执行命令:npm init -y → 安装核心依赖:npm install axios → 若需处理流式响应,额外安装:npm install eventsource-parser

axios用于发送HTTP请求,eventsource-parser用于解析天工AI返回的SSE流式数据。不装后者会导致流式回复无法逐字渲染。

编写调用天工AI大模型的封装函数

在项目根目录新建 ai.js 文件,填入以下代码:

方法一:同步调用单次回复(适合简单问答场景)

导入axios:const axios = require('axios'); → 定义基础配置:const TIANGONG_API_URL = 'https://api.tiangong.cn/v2/chat/completions'; → 设置请求头:const headers = { Authorization: `Bearer ${process.env.TIANGONG_API_KEY}`, 'Content-Type': 'application/json' };

方法二:流式响应支持(推荐用于对话界面)

引入eventsource-parser:const { createParser } = require('eventsource-parser'); → 构造POST请求体,【必须包含model字段,当前可用值为'tg-3.5-pro'或'tg-4.0',填错会返回400】 → 请求体示例:{ model: 'tg-4.0', messages: [{ role: 'user', content: '你好' }], stream: true }

Miller CSV TSV JSON 数据处理器
Miller CSV TSV JSON 数据处理器

Miller (mlr) 是一个命令行工具,用于查询、整形和重新格式化名称索引数据,如 CSV、TSV、JSON 和 JSON Lines。它将 awk、sed、cut、join 和 sort 的功能整合到一个专为结构化数据处理而构建的单一工具中。

下载

方法三:错误兜底处理

对axios请求包裹try-catch → 捕获429状态码时,应主动sleep 1秒再重试 → 遇到503或连接超时,直接reject并抛出'AI服务暂时不可用'。

在Express路由中集成自动回复逻辑

第一步:启动Express服务,监听3000端口

第二步:定义POST接口 /api/reply

第三步:从请求体解构出 userInput 字段

第四步:调用上一步封装的流式函数,将 userInput 作为用户消息传入 → 把AI返回的每一段文本通过 res.write() 推送 → 最后调用 res.end() 关闭连接。

注意:必须设置响应头 res.setHeader('Content-Type', 'text/event-stream'),否则前端无法接收SSE事件。

前端发起请求并接收流式回复

使用EventSource连接 /api/reply 接口 → 监听message事件 → 将每次收到的data字段追加到页面DOM中 → 遇到event: error时,显示“网络异常,请重试”提示。

这一步操作起来很简单,直接把EventSource实例挂载到按钮点击事件里就行。

若使用fetch + ReadableStream,需手动解析event: data:格式,容易漏掉换行符导致JSON解析失败。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

node.js 天工ai js node

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
天工AI智能体办公全功能使用教程
天工AI智能体办公全功能使用教程

本专题系统梳理天工AI智能体在办公与内容创作中的高效用法,覆盖文档处理、信息整理、灵感激发、协作沟通与多场景模板调用,帮助职场人和创作者用一套智能体工具完成日常重复任务,显著提升工作效率与产出质量。

2026.06.10

93

12

天工AI报告与PPT生成零基础入门
天工AI报告与PPT生成零基础入门

本专题聚焦天工AI在数据报告与PPT演示文档生成中的实战能力,从主题构思、提纲生成、内容填充到模板套用、图表插入与版面美化,帮助职场人快速产出结构清晰、视觉专业的报告与演示成果。

2026.06.10

111

12

天工AI图像与视频创作实战
天工AI图像与视频创作实战

本专题系统介绍天工AI在图像与视频创作场景的能力,从文生图、图生图、风格迁移到AI短视频脚本、分镜与一键成片,帮助内容创作者、设计师与运营人员快速产出高质量多媒体作品。

2026.06.10

76

12

NumPy性能优化版本更新与常见报错排查
NumPy性能优化版本更新与常见报错排查

本专题整理 NumPy 性能优化、版本更新与常见报错排查相关教程,覆盖向量化计算、广播性能、内存布局、NumPy 2.0 升级、版本兼容冲突、安装导入报错、dtype 溢出、矩阵运算异常和 broadcasting 报错修复,帮助读者系统掌握 NumPy 性能调优与问题定位方法。

2026.09.22

0

25

Vibeknow在线使用入口合集
Vibeknow在线使用入口合集

本专题汇总了Vibeknow在线创作视频的官方入口及网页版使用教程,涵盖PPT、PDF、Word等文档一键转讲解视频的核心操作,并整理了免费版水印规则与手机端浏览器访问指南,助你快速将知识内容视频化。

2026.09.21

20

20

NumPy随机数文件读写与dtype数据类型
NumPy随机数文件读写与dtype数据类型

本专题整理 NumPy 随机数、文件读写与 dtype 数据类型相关教程,覆盖 Generator/random、随机数种子、正态分布采样、npy/npz/CSV/TXT 保存读取、loadtxt/savetxt、memmap、大文件处理、astype 类型转换、结构化 dtype、整数溢出和精度丢失等场景。

2026.09.21

20

24

NumPy矩阵运算与线性代数计算
NumPy矩阵运算与线性代数计算

本专题整理 NumPy 矩阵运算与线性代数计算相关教程,覆盖矩阵乘法、dot 与 @ 运算符、逆矩阵、行列式、特征值与特征向量、SVD、线性方程组、欧氏距离、矩阵分解和大规模矩阵性能优化等内容,帮助读者掌握 np.linalg 与矩阵计算实战。

2026.09.21

0

20

NumPy广播机制数学运算与统计分析
NumPy广播机制数学运算与统计分析

本专题整理 NumPy 广播机制、数组数学运算与统计分析相关教程,覆盖广播规则、维度对齐、矩阵与数组加减除法、向量化计算、均值方差、分位数、中位数、直方图和 unique 频次统计等场景,帮助读者掌握 ndarray 高效计算与统计处理方法。

2026.09.21

0

17

NumPy数组创建索引切片与数据选择
NumPy数组创建索引切片与数据选择

本专题整理 NumPy 数组创建、索引、切片与数据选择相关教程,覆盖 np.array、zeros/ones、多维数组形状、基础切片、花式索引、布尔索引、条件筛选、视图与副本等常用场景,帮助读者系统掌握 ndarray 数据构造与高效提取方法。

2026.09.21

0

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
WebStorm 官方调试文档
WebStorm 官方调试文档

共0课时 | 0人学习

RabbitMQ 教程手册
RabbitMQ 教程手册

共0课时 | 0人学习

Node.js 教程
Node.js 教程

共57课时 | 24.7万人学习