如何创建使用 chatGPT 的 whatsapp 聊天机器人项目?

How can I create whatsapp chatbot project that uses chatGPT?

提问人:Jordi Mejia 提问时间:10/20/2023 最后编辑:Jordi Mejia 更新时间:10/26/2023 访问量:90

问:

我创建了一个 whatsapp 聊天机器人,它使用 chatGPT 在 MacOS 上的 vscode 中回答节点 .js 项目,在其文件中,它安装了 openai、whatsapp-web.js、dotenv 和 qrcode-terminal 的软件包,一个 .env 文件,具有

OPENAI_API_KEY="the API key created from openai.com acccount"

以及我在索引 .js 文件上使用的代码,即:

const { Client } = require('whatsapp-web.js');
const qrcode = require('qrcode-terminal');
const { Configuration, OpenAIApi } = require("openai");
require('dotenv').config()

const client = new Client();

client.on('qr', (qr) => {
    qrcode.generate(qr, {small: true});
});

client.on('ready', () => {
    console.log('Client is ready!');
});

client.initialize();

const configuration = new Configuration({
    apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);

client.on('message', message => {
    console.log(message.body);

    if(message.body.startsWith("#")) {
        runCompletion(message.body.substring(1)).then(result => message.reply(result));
    }
});

async function runCompletion (message) {
    const completion = await openai.createCompletion({
        model: "text-davinci-003",
        prompt: message,
        max_tokens: 200,
    });
    return completion.data.choices[0].text;
}

我使用 运行它,但我遇到了问题。首先,我遇到了一个问题$ node index.js

const configuration = new Configuration({
                      ^

TypeError: Configuration is not a constructor

我通过将部分更改为:const { Configuration, OpenAIApi } = require("openai");

const Configuration = require("openai");
const OpenAIApi  = require("openai");

但是在使用并生成 QRCode 后,当我使用手机的 Whatsapp Business 应用程序扫描它时,它没有打开聊天机器人,也没有使用以下部分:$ node index.js

client.on('ready', () => {
    console.log('Client is ready!');
});

client.initialize();

const configuration = new Configuration({
    apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);

我怎样才能修复它才能工作?

使用命令运行它并扫描生成的 QRCode 后,它会在连接到 ChatGPT 的 Whatsapp 移动应用程序上打开聊天机器人,在提出问题后,chatGPT 会提供答案。node index.js

否则,您知道另一种创建使用 chatGPT 的 whatsapp 聊天机器人项目的方法吗?

节点 .js 聊天机器人 二维码 whatsapp .env

评论

0赞 ceejayoz 10/20/2023
说什么说你在?IIRC,OSX附带了一个非常过时的版本。node --version
0赞 Jordi Mejia 10/20/2023
Mac 上的 Node v16.15.0
0赞 Wyck 10/24/2023
const Configuration = require("openai"); const OpenAIApi = require("openai");模块不能两者兼而有之。你的第一次尝试似乎是更合理的事情。我假设你已经做到了?const { Configuration, OpenAIApi } = require("openai");npm install openai

答: 暂无答案