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 ']; handler.tags = ['ai']; handler.command = /^(ai)$/i;

module.exports = handler;

Panduan Membangun Chatbot AI dengan OpenAI API di Node.js

原文地址: https://www.cveoy.top/t/topic/cnpe 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录