36 lines
1.1 KiB
JavaScript
36 lines
1.1 KiB
JavaScript
import { Telegraf } from "telegraf";
|
||
import axios from "axios";
|
||
|
||
const botToken = "7745542423:AAHc3JM1kvO-Z_1OBp1L95T9QWr4jRrbfpY"; // замени на свой
|
||
const bot = new Telegraf(botToken);
|
||
|
||
// Новый API Ollama
|
||
const OLLAMA_URL = "http://ollama.miduway.space/api/generate";
|
||
|
||
bot.start((ctx) =>
|
||
ctx.reply("Привет! Я — Mistral-бoт через Ollama. Напиши что-нибудь.")
|
||
);
|
||
|
||
bot.on("text", async (ctx) => {
|
||
const input = ctx.message.text;
|
||
ctx.sendChatAction("typing");
|
||
|
||
try {
|
||
const response = await axios.post(OLLAMA_URL, {
|
||
model: "mistral:instruct",
|
||
prompt: input,
|
||
stream: false,
|
||
});
|
||
|
||
const generated =
|
||
response.data.response || "Не удалось сгенерировать ответ.";
|
||
ctx.reply(generated.trim());
|
||
} catch (err) {
|
||
console.error("Ошибка при запросе к Ollama:", err.message);
|
||
ctx.reply("Произошла ошибка при генерации текста.");
|
||
}
|
||
});
|
||
|
||
bot.launch();
|
||
console.log("🤖 Бот запущен и использует Ollama + Mistral.");
|