node使用大模型对话并实现接口
大模型开发/技术交流
- 社区上线
- 开箱评测
- 文心大模型
2023.10.07957看过
一、初始化项目环境
1.创建应用
千帆平台需要申请,申请通过后根据文档中的说明创建应用,拿到 API Key 和 Secret Key 就可以
创建成功后,拿到API Key、Secret Key 。
获取接口访问凭证 access_token 代码里有写,可以直接参考
根据第1步获取的 API Key 和 Secret Key ,
获取 access_token ,通过 access_token 鉴权调用者身份。
调用API接口。调用创建chat接口,详见本文说明。
2.初始化项目
因为需要是用到npm库环境安装
npm init //初始化node项目
安装axios库用于网络请求,request库也可以
npm i axios
二、写入代码
创建index.js文件
说明 id和key需要再控制台里创建一个应用,直接复制进去即可,msg即对话内容
const axios = require("axios");const express = require("express");const AK = "xxx"; //你的API Keyconst SK = "xxx"; //你的Secret Keyconst app = express();const PORT = 3000;app.get("/search", async (req, res) => {try {const text = req.query.text;const token = await getAccessToken();const url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/eb-instant"const response = await axios.post(url,{messages: [{role: "user",content: text,},],},{params: {access_token: token,}});res.send(response.data.result || response.data);} catch (error) {console.error("Error converting text to speech:", error.message);res.status(500).json({ error: "Internal Server Error" });}});app.listen(PORT, () => {console.log(`Server is running on http://localhost:${PORT}`);});function getAccessToken() {const url ="https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=" +AK +"&client_secret=" +SK;return new Promise((resolve, reject) => {axios(url).then((response) => {resolve(response.data.access_token);}).catch((error) => {console.log(error);reject(error);});});}
三、运行
3.1 部署后端
命令行运行nodemon index 如果没有nodemon 就用node
nodemone index
运行成功效果
[nodemon] 3.0.1[nodemon] to restart at any time, enter `rs`[nodemon] watching path(s): *.*[nodemon] watching extensions: js,mjs,cjs,json[nodemon] starting `node index.js`Server is running on http://localhost:3000
3.2 使用
浏览器上请求接口
http://127.0.0.1:3000/search?text=度娘是谁
接口返回
度娘是指百度搜索引擎,因为李彦宏的名字叫李勇,所以搜索百度的女人应该是他的太太,所以后来人们就称百度为度娘。
4.注解
如果请求报错,请参考官方文档
评论