Node.js SDK使用教程
更新时间:2024-11-11
本文介绍了如何通过Node.js SDK调用千帆ModelBuilder的API能力。通过本章节,你将了解如何安装Node.js SDK,并通过SDK调用 ERNIE-3.5-8K 模型API能力。
实现效果
例如,希望使用 ERNIE-3.5-8K 模型API进行对话。即
用户发起提问:介绍下长城
调用 ERNIE-3.5-8K 模型API后,接口返回长城相关的介绍,如“长城(Great Wall)是中国古代的一项伟大工程,是人类文明史上最伟大的建筑工程之一”等。
前期准备
在开始本教程操作步骤之前,需要完成以下准备工作:
- 确保已安装了 npm 或 yarn 包管理工具。
- 确保已完成注册百度智能云账号。注意:为保障服务稳定运行,账户最好不处于欠费状态。
- 平台已默认开通API调用权限,无需申请授权。
步骤一:安装SDK
使用以下其中一种方式安装Node.js SDK。
- 使用 npm 安装
npm install @baiducloud/qianfan
- 使用 yarn 安装
yarn add @baiducloud/qianfan
步骤二:查看示例代码
例如,Node.js SDK已支持该功能,本文希望调用 ERNIE-3.5-8K 模型API能力,查看ERNIE-3.5-8K文档,并复制示例代码到本地。
示例代码如下:
import {ChatCompletion, setEnvVariable} from "@baiducloud/qianfan";
// 使用安全认证AK/SK鉴权,通过环境变量初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
setEnvVariable('QIANFAN_ACCESS_KEY','your_iam_ak');
setEnvVariable('QIANFAN_SECRET_KEY','your_iam_sk');
const client = new ChatCompletion();
async function main() {
const resp = await client.chat({
messages: [
{
role: 'user',
content: '你好',
},
],
}, 'ERNIE-3.5-8K');
console.log(resp);
}
main();
步骤三:修改示例代码
需修改Access Key、Secret Key、model、content等值,如下所示:
参数名称 | 修改前的值 | 修改后的值 |
---|---|---|
QIANFAN_ACCESS_KEY | your_iam_ak | · 示例:ALTAKRG****HTRtGVgO · 如何获取该参数值: 在百度智能云控制台-用户账户-安全认证页,查看Access Key、Secret Key。 |
QIANFAN_SECRET_KEY | your_iam_sk | · 示例:c05e36c**da79f8 · 如何获取该参数值: 在百度智能云控制台-用户账户-安全认证页,查看Access Key、Secret Key。 |
model | ERNIE-3.5-8K | 设置使用的模型,本文示例无需修改此参数值 |
content | 你好 | 设置聊天上下文信息中的content内容,内容修改为“介绍下长城” |
步骤四:运行代码
运行代码后,返回如下内容。
{
"id": "as-dqxhcvn2fn",
"object": "chat.completion",
"created": 1709723116,
"result": "长城(Great Wall)是中国古代的一项伟大工程,是人类文明史上最伟大的建筑工程之一。它是一道坚固、雄伟的城墙,沿着山脉连绵不断向东西两边延伸,全长超过万里。长城的历史可以追溯到公元前七八世纪,当时是为了防御北方游牧民族部落的袭击而修建的。\n\n长城不仅是一道孤立的城墙,而且是一项巨大的军事、政治、经济、文化工程。它主要用于防御,但也包括其他用途,如运送粮草、弹药等物资,同时作为向导和标志,也起到了传递军事信号和安全信息的作用。长城的主要建筑材料是砖、石、灰、土、木、铁等,在当时的生产条件下,这些材料都是就地取材建造而成。\n\n长城以其浩大的工程、雄伟的气势和顽强的生命力,成为中国文化和人类文明的宝贵遗产,也是世界文化遗产之一。它见证了中国古代文明的辉煌成就,也成为了中国人民不屈不挠、坚韧不拔的民族精神的象征。长城沿线还分布着丰富的历史文化遗产和风景名胜区,吸引了无数国内外游客前来参观和旅游。",
"is_truncated": false,
"need_clear_history": false,
"usage": {
"prompt_tokens": 3,
"completion_tokens": 233,
"total_tokens": 236
}
}