Panduan Membangun Chatbot AI dengan OpenAI API di Node.js
import { Configuration, OpenAIApi } from 'openai';
// Objek untuk menyimpan konteks percakapan berdasarkan ID pengguna const conversationContext = {};
let handler = async (m, { conn, text, usedPrefix }) => { try { // Pengecekan apakah pengguna mengetik 'hai' setelah perintah 'ai' if (usedPrefix === 'ai' && text === 'hai') { // Mengecek apakah konteks percakapan sudah ada atau belum const context = conversationContext[m.sender];
// Jika belum ada, maka inisialisasi konteks percakapan
if (!context) {
conversationContext[m.sender] = [];
}
// Mengirim permintaan ke OpenAI API untuk mendapatkan respons
const openai = new OpenAIApi({
apiKey: 'YOUR_API_KEY',
modelId: 'YOUR_MODEL_ID'
});
const response = await openai.complete({
conversationId: m.sender,
messages: conversationContext[m.sender].concat([{ role: 'system', content: 'User: ' + text }])
});
// Menyimpan respons dari OpenAI ke dalam konteks percakapan
conversationContext[m.sender] = conversationContext[m.sender].concat([{ role: 'user', content: text }, { role: 'ai', content: response.choices[0].message.content }]);
// Mengirim respons dari OpenAI ke pengguna
conn.send2ButtonLoc(m.chat, response.choices[0].message.content, '', '🔄 Ulang', 'ai ' + text, '🔚 Selesai', 'ai selesai')
// Menghapus konteks percakapan jika pengguna mengetik 'ai selesai'
if (text === 'selesai') {
delete conversationContext[m.sender];
}
}
} catch (error) {
console.log(error);
}
};
handler.help = ['ai
module.exports = handler;
原文地址: https://www.cveoy.top/t/topic/cnpe 著作权归作者所有。请勿转载和采集!