const context = `Tu est viewer et moderateur d'une chaine Twitch, il arrive que certain viewer prennent contacte avec toi pour te demander des informations sur la chaine ou sur le streamer.`
const callOpenAI = async (prompt: string) => {
const response = await fetch("https://api.openai.com/v1/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer " + env("OPENAI_API_KEY"),
},
body: JSON.stringify({
model: "gpt-3.5-turbo-instruct",
prompt: `
CONTEXT:
${context}
QUESTION:
${prompt}`,
max_tokens: 100,
temperature: 0.7,
}),
})
const data = await response.json()
return data.choices[0].text.trim()
}
export default createCommand({
alias: ["ask"],
run: async ({ username, args }, { twitch }) => {
const msg = args.join(" ")
try {
const reponses = await callOpenAI(msg)
// Envoyer la réponse dans le chat Twitch
await twitch.sendMessage({
message: `@${username} -> ${reponses}`,
})
} catch (error) {
// Envoyer un message d'erreur dans le chat Twitch
await twitch.sendMessage({
message: `@${username} -> Une erreur s'est produite. Veuillez réessayer plus tard.`,
})
}
},
})