はじめに
こんにちは、なりかくんです。
今回は、discord.jsを使って会話Botを作ってみようと思います。
会話AIに使うサービス
今回は、会話AIにmeboという会話AI構築サービスを使ってみようと思います。
https://mebo.work/
登録出来たらダッシュボードから「新規作成して開始する」をクリックします。
トレーニングなどでAIを強化していきます。トレーニングしたら反映します
プレビューで試してみると、会話はほぼ成り立ちませんが一応会話は出来ます。
APIを有効にします。そして、出てくる情報をメモしておきます。
discord.jsに組み込む
では、discord.jsに組み込みたいと思います。
今回は、以下のようなコードを作りました。
mebo.js
const request = require("request");
const { Client, GatewayIntentBits, IntentsBitField } = require('discord.js');
const { token } = require('./config.json');
const client = new Client({ intents: [GatewayIntentBits.Guilds, IntentsBitField.Flags.GuildMessages, IntentsBitField.Flags.MessageContent] });
client.on('ready', () => {
console.log(`${client.user.tag}でログインしました。`);
});
client.login(token);
client.on('messageCreate', async message => {
try {
if (message.author.bot) return;
let meboResult = await mebo(message.channel.id, message.content);
message.reply(meboResult.bestResponse.utterance);
} catch (error) {
console.error(error);
}
});
function mebo(chId, msg) {
return new Promise((resolve, reject) => {
request({
url: "https://api-mebo.dev/api",
method: "POST",
json: {
api_key: "API Key",
agent_id: "Agent ID",
utterance: msg,
uid: chId
}
}, function (error, response, body) {
if (error) {
reject(error);
} else {
resolve(body);
}
});
});
}
今回は、meboを使って会話Botを作ってみました。無料プランだと会話できる回数が限られているので、他に無料で使えるやつがあればそれを使うのもいいかもしれないです。
以上です、最後までお読みいただきありがとうございました。