docs
Automatizavimas

Telegram robotas

Markdown

Robotai · OpenAI Chat

Visas vadovas
FormatasKur nustatyti
OpenAI ChatTelegram karkasai neturi savo LLM sluoksnio: pranešimų apdorojimo funkcijoje iškviečiamas OpenAI SDK su Ailoot base_url (arba Anthropic SDK su base_url be /v1)

Nustatymas

Nukopijuokite konfigūraciją ir pakeiskite sk-... savo raktu iš Ailoot paskyros. Geriau raktą laikyti aplinkos kintamajame AILOOT_API_KEY, jei programa tai palaiko.

Prieš paleisdami iškvieskite GET /v1/models su savo Ailoot raktu. Pasirinkite tikslų modelio ID, kurio metodai apima POST /v1/chat/completions, ir naudokite jį konfigūracijoje. Agentams taip pat patikrinkite įrankių palaikymą ir jūsų kliento versijai reikalingas funkcijas.

Išsaugokite Python kodą kaip ailoot-telegram-bot.py. Įdiekite priklausomybes, nustatykite abu aplinkos kintamuosius ir paleiskite failą. Nusiųskite botui Hello ir patikrinkite tekstinį atsakymą. Klaidos atveju išsaugokite Request ID ir prieš kitą generavimą patikrinkite pradinį rezultatą.

python3 -m pip install "aiogram>=3,<4" openai

ailoot-telegram-bot.py

import asyncio
import os
from aiogram import Bot, Dispatcher, F
from aiogram.types import Message
from openai import AsyncOpenAI, APIError

async def main():
    dp = Dispatcher()
    async with AsyncOpenAI(
        base_url="https://api.ailoot.ai/v1",
        api_key=os.environ["AILOOT_API_KEY"],
        max_retries=0,
    ) as llm:
        @dp.message(F.text)
        async def reply(message: Message):
            try:
                result = await llm.chat.completions.create(
                    model="claude-sonnet-5-5",
                    messages=[{"role": "user", "content": message.text}],
                )
                content = result.choices[0].message.content or "—"
                for start in range(0, len(content), 4000):
                    await message.answer(content[start:start + 4000])
            except APIError as error:
                await message.answer(
                    f"{type(error).__name__}; Request ID: "
                    f"{getattr(error, 'request_id', None) or '—'}"
                )
        bot = Bot(token=os.environ["TELEGRAM_BOT_TOKEN"])
        await dp.start_polling(bot)

if __name__ == "__main__":
    asyncio.run(main())
export AILOOT_API_KEY="sk-..."
export TELEGRAM_BOT_TOKEN="<TELEGRAM_BOT_TOKEN>"
python3 ailoot-telegram-bot.py

Modelio pavyzdys: claude-sonnet-5-5, deepseek-v4-pro, qwen3.8-flash. Bet kurį kitą modelį rinkitės iš katalogo — patikrinkite, ar jis turi reikiamą formatą.

Svarbu žinoti

Patikra

  • OpenAI formato adresas — https://api.ailoot.ai/v1 (arba visas kelias, jei programa prašo viso adreso).
  • Užduokite trumpą klausimą. Jei gavote klaidą, peržiūrėkite kodą ir Request ID bei palyginkite su puslapiu Klaidos ir limitai.
  • 404 iškart po nustatymo beveik visada reiškia neteisingą adresą: perteklinį arba trūkstamą /v1.
  • 402 — nepakanka balanso rezervui. Agentai rezervuoja daugiau nei pokalbis: kodėl.

Programos dokumentacija: https://github.com/openai/openai-python

Liko klausimų? Atsiųskite Request ID ir aprašymą — padėsime išsiaiškinti.Rašyti pagalbos tarnybai