Node.js与ChatGPT的完美邂逅(一):构建高效智能对话应用的新纪元——你是谁?

前言

将一部分适合AI执行的任务交给大语言模型(Large Language Models, LLM),如ChatGPT等,可以极大地提高工作效率、创造性和个性化服务的能力。

正文

在终端输入npm init -y,将其初始化为后端项目,生成package.json 项目描述文件

npm i openai 安装openai包

  • 将本地openai 引入到项目中
ini 复制代码
const OpenAI = require('openai')

openai为一个类,对其进行实例化,baseURL指明发送到了chatanywhere.tech这个第三方服务或自定义接口上。

php 复制代码
const client = new OpenAI({
 apiKey: 'xxx',
 baseURL: 'https://api.chatanywhere.tech/v1'
})

apiKey的获取

async function main()定义了一个异步主函数main。在JavaScript中,异步函数允许使用await关键字等待Promise的结果,这在处理网络请求时非常有用,因为它们往往是异步操作。在main函数内部,await client.chat.completions.create发起一个异步请求到指定的API,用于获取聊天模型的回复。它传递了一个对象作为参数,该对象包含:

  • messages: 一个消息数组,其中每个消息都是一个包role和content的对象。在这个例子中,只有一个消息,角色为user,内容为'你是谁?',表示模拟用户向AI提问"你是谁?"。
  • model: 指定使用的模型版本,这里是gpt-3.5-turbo,这是OpenAI的一个先进语言模型,但实际请求会根据baseURL所指的API服务来决定是否支持或如何响应这个模型请求,chatCompletion对象包含了API的完整响应,最后打印出从API得到的回复中的第一个选择。
php 复制代码
async function main() {
  const chatCompletion = await client.chat.completions.create(
   {
     messages: [{role: 'user', content: '你是谁?'}],
     model: 'gpt-3.5-turbo'  
   }
  )
  console.log(chatCompletion.choices[0]);
}

调用执行这个异步函数,启动整个程序流程。

css 复制代码
main()

结语

快去见证Node.js与ChatGPT的完美邂逅吧~探索Node.js与ChatGPT的结合无疑是一场激动人心的旅程。Node.js作为一款流行的服务器端JavaScript运行环境,以其事件驱动、非阻塞I/O模型著称,非常适合构建高性能、可扩展的网络应用。而ChatGPT,作为OpenAI推出的一款先进的人工智能语言模型,展现出了令人惊叹的对话理解与生成能力,能够进行多轮对话、解答问题、提供创意甚至协助编程。当你将这两者结合起来,可以开启一系列创新应用的大门,不妨现在就开始行动,搭建你的开发环境,编写第一行代码,让Node.js与ChatGPT携手,共同见证技术带来的无限可能吧!

相关推荐
天涯海风20 分钟前
检索增强生成(RAG) 缓存增强生成(CAG) 生成中检索(RICHES) 知识库增强语言模型(KBLAM)
人工智能·缓存·语言模型
lxmyzzs2 小时前
基于深度学习CenterPoint的3D目标检测部署实战
人工智能·深度学习·目标检测·自动驾驶·ros·激光雷达·3d目标检测
跟着珅聪学java2 小时前
Apache OpenNLP简介
人工智能·知识图谱
AwhiteV2 小时前
利用图数据库高效解决 Text2sql 任务中表结构复杂时占用过多大模型上下文的问题
数据库·人工智能·自然语言处理·oracle·大模型·text2sql
Black_Rock_br3 小时前
AI on Mac, Your Way!全本地化智能代理,隐私与性能兼得
人工智能·macos
墨风如雪3 小时前
拆解Seed-OSS-36B:不只是参数怪兽,更是优雅的控制大师
aigc
☺����3 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码2
开发语言·人工智能·python·音视频
fsnine4 小时前
机器学习——数据清洗
人工智能·机器学习
小猿姐4 小时前
KubeBlocks AI:AI时代的云原生数据库运维探索
数据库·人工智能·云原生·kubeblocks
算法_小学生4 小时前
循环神经网络(RNN, Recurrent Neural Network)
人工智能·rnn·深度学习