使用OpenAI API生成简单的产品评论摘要

311 阅读3分钟

引言

随着电子商务的蓬勃发展,线上购物已成为消费者日常生活的一部分。然而,在众多的商品中,如何快速地获取到有效的信息,尤其是用户的真实评价,成为了商家和消费者共同关注的问题。本文将介绍如何利用OpenAI的API来生成产品评论的摘要,帮助商家更好地了解消费者的反馈,特别是关于运输和交付方面的意见。

准备工作

首先,需要安装openaidotenv这两个npm包。openai用于调用OpenAI提供的服务,而dotenv则用来管理环境变量,如API密钥等敏感信息,以确保项目的安全性。

在项目根目录下创建一个.env文件,并添加以下内容:

OPENAI_API_KEY=你的API密钥
OPENAI_BASE_URL=https://api.openai.com/v1

接着,在代码中引入这些模块,并配置环境变量:

import OpenAI from "openai";
import dotenv from 'dotenv';

dotenv.config();

const client = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
  baseURL: process.env.OPENAI_BASE_URL,
});

创建摘要函数

为了复用代码,我们定义了一个getCompletion函数,该函数接收一个提示(prompt)和一个可选的模型名称(默认为gpt-4o),并通过OpenAI的API发送请求,最终返回模型生成的文本内容。

const getCompletion = async (prompt, model = "gpt-4o") => {
  const messages = [{
    role: 'user',
    content: prompt,
  }];

  const response = await client.chat.completions.create({
    model: model,
    messages: messages,
    temperature: 0,
  });

  console.log(response.choices[0].message.content);
  return response.choices[0].message.content;
};

应用示例

假设我们有一段关于某个毛绒玩具的评论,想要从中提取与运输和交付相关的简短摘要,可以设计如下提示:

const prod_review = `
我女儿生日时买了这个熊猫毛绒玩具,她很喜欢,到处都带着。
它柔软、超级可爱,脸看起来很友好。
不过,相对于我付的价格来说,它有点小。
我想,同样的价格,也许还有其他更大的选择。
它比预期早到了一天,所以我有机会自己玩了一会儿,然后才把它送给她。
`;

const prompt = `你的任务是从电子商务网站上生成产品评论有关时间运输的简短摘要。
以便向运输部门提供反馈。
只说运输相关的内容。
总结下面用三个反引号分隔的产品评论,最多三十个字。
并重点关注任何提及产品运输和交付方面的问题。
评论:'''${prod_review}'''
`;

const main = async () => {
  const response = await getCompletion(prompt);
  console.log(response);
};

main();

通过上述代码,我们可以从一段较长的用户评论中,提取出与物流相关的有用信息。例如,对于上面提到的毛绒玩具评论,可能会得到类似“提前一天送达”的摘要,这对于运输部门来说是非常有价值的反馈。

结论

使用OpenAI API不仅可以帮助电商企业快速处理大量用户评论,还能精准提炼关键信息,为改进服务质量和用户体验提供数据支持。通过合理设计提示,我们可以引导模型输出更加符合需求的结果,从而提高工作效率和服务水平。