likes
comments
collection
share

利用 OpenAI 与 Node.js,精彩呈现电影信息的奥秘

作者站长头像
站长
· 阅读数 33

在技术飞速发展的今天,JavaScript凭借其广泛的应用范围和强大的生态体系,已成为连接前后端乃至人工智能领域的桥梁。Node.js作为JavaScript在服务器端的运行环境,赋予了JavaScript构建高性能后端服务的能力,而OpenAI的API则为开发者提供了探索人工智能前沿技术的便捷通道。本文将深入探讨如何结合Node.js与OpenAI的力量,实现一个从海量数据中提取电影信息的功能,具体包括电影名(name)、封面链接(picture)、简介(info)、评分(score)以及评论人数(commentsNumber)。

利用 OpenAI 与 Node.js,精彩呈现电影信息的奥秘

开发准备:Node.js环境搭建与OpenAI SDK集成

首先,我们需要为项目创建一个基础的Node.js环境。在命令行中执行npm init -y,这一步骤会快速初始化一个新的Node.js项目,生成package.json文件来管理项目的依赖关系和配置信息。Node Package Manager (npm)作为Node.js的默认包管理器,通过npm install命令安装所需的模块,极大地简化了开发流程。

为了调用OpenAI的API,我们需要安装OpenAI的Node.js SDK。通过命令npm i openaiiinstall的简写),将OpenAI的包添加到项目中,它会被下载并存储在node_modules目录下。之后,在代码中通过require('openai')导入该模块,即可开始使用OpenAI的API。

设计逻辑:从OpenAI获取电影信息

假设OpenAI提供了一个API接口,可以通过自然语言查询来获取电影信息。我们的目标是通过向这个API发送请求,以自然语言的形式询问电影详情,并解析返回的JSON数据,提取出指定的电影属性。

// console.log('后端服务启动了');
//openai 
//require关键字 首字母大写 类 js是大小写敏感的
const OpenAI=require('openai');
//实例化 OpenAI
const client=new OpenAI({
    //凭证 密钥 算力收费 token
    apiKey: '****',
    baseURL:'https://api.chatanywhere.tech/v1'
})
//入口主函数
//main函数内部含有异步任务 async+await
async function main(){
    //和AI LLM chat 从编程思维->AI 编程思维->AIGC->AGI
    //client是openai 对象 chat 聊天 完成
    //LLM 是在远程运行await 
    const chatCompletion=await client.chat.completions.create({
        model:'gpt-3.5-turbo',//适合聊天的模式 很多种
        messages:[{
                role:'user',
                content:prompt=`<tr class="item">
                <td width="100" valign="top">
                        <a class="nbg" href=" " title="对你的想象">
                            < img src="https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2905327559.webp" width="75" alt="对你的想象" class="">
                        </a >
                </td>
                <td valign="top">
                    <div class="pl2">
                        <a href="https://movie.douban.com/subject/35503073/" class="">
                            对你的想象
                            / <span style="font-size:13px;">关于你的想法 / 概念中的你</span>
                        </a >
                        <p class="pl">2024-03-16(西南偏南电影节) / 2024-05-02(美国网络) / 安妮·海瑟薇 / 尼古拉斯·加利齐纳 / 艾拉·鲁宾 / 安妮·玛莫罗 / 瑞德·斯科特 / 帕芮·马费尔德 / 乔丹·亚伦·霍尔 / 玛蒂尔达·吉安诺普洛斯 / Meg Millidge / 奇克·曼诺哈 / Ray Cham / Jaiden...</p >
                            <div class="star clearfix">
                                    <span class="allstar30"></span>
                                    <span class="rating_nums">5.9</span>
                                    <span class="pl">(21306人评价)</span>
    
                            </div>
                    </div>
                </td>
            </tr>
            这是一个电影列表的html片段,需要获取需要的电影名(name),封面链接(picture),简介(info),评分(score),评论人数(commentsNumber)。请使用括号的单词作为属性名,以JSON对象数组的格式返回。
            `
        }]
    })
    console.log(chatCompletion.choices);
}
main();

返回结果

利用 OpenAI 与 Node.js,精彩呈现电影信息的奥秘

结语:OpenAI与Node.js的未来展望

结合Node.js的高效与灵活性,以及OpenAI提供的强大AI能力,开发者可以快速构建出既实用又富有创新性的应用。从电影信息检索到更为复杂的数据处理任务,OpenAI与Node.js的结合展现了AI技术在后端开发领域的广阔应用前景。随着AI技术的不断进步和Node.js生态的日益丰富,未来的开发工作将更加注重智能化、高效化,进一步模糊前端与后端、传统开发与AI开发的界限,引领技术行业进入一个全新的发展阶段。

转载自:https://juejin.cn/post/7370923547739373605
评论
请登录