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携手,共同见证技术带来的无限可能吧!

相关推荐
Kiyra几秒前
异步任务不用 Kafka 也行:用 Redis Stream 搭一套轻量级 Producer/Consumer 框架
数据库·人工智能·redis·分布式·后端·缓存·kafka
城事漫游Molly1 分钟前
定量研究设计清单:问卷、实验与变量操作化怎么做?
大数据·人工智能·算法·ai写作·论文笔记
涤生大数据2 分钟前
大数据凉了?速看4月的就业数据新鲜出炉!AI时代岗位不会原地消失,而是岗位的标准会被逐步抬高
大数据·人工智能
七夜zippoe3 分钟前
基于 JiuwenClaw AgentTeam 集群模式的年会策划实战:从源码部署到多智能体协作落地
人工智能·agent·openjiuwen·jiuwenclaw·agentteam
Soari3 分钟前
科研绘图新纪元:深度拆解 3DCellForge,AI 驱动的交互式 3D 细胞建模神器
人工智能·3d·科研绘图·3dcellforg
new【一个】对象5 分钟前
Python 包管理器uv
人工智能·windows·python
智塑未来7 分钟前
高精度3D室内定位设备如何赋能机器人科研创新
人工智能·安全
captain_AIouo8 分钟前
Captain AI全功能矩阵覆盖OZON运营每一个关键节点
大数据·人工智能·经验分享·矩阵·aigc
机器之心8 分钟前
OpenAI杀疯了!砸40亿美元成立新公司、还祭出网络防御利器Daybreak
人工智能·openai
Kiyra8 分钟前
限流不是加个计数器就行:用 Lua 脚本实现多维度原子限流
开发语言·人工智能·网络协议·职场和发展·架构·lua·ai-native