dokumentace
Automatizace

Bot pro Telegram

Markdown

Boti · OpenAI Chat

Úplný průvodce
FormátKde nastavit
OpenAI ChatTelegramové frameworky nemají vlastní vrstvu LLM: v obsluze zpráv se volá OpenAI SDK s base_url Ailoot (nebo Anthropic SDK s base_url bez /v1)

Nastavení

Zkopírujte konfiguraci a nahraďte sk-... svým klíčem z účtu Ailoot. Klíč je lepší uložit do proměnné prostředí AILOOT_API_KEY, pokud to aplikace umožňuje.

Před spuštěním zavolejte GET /v1/models se svým klíčem Ailoot. Vyberte přesné ID modelu, jehož metody zahrnují POST /v1/chat/completions, a použijte je v konfiguraci. U agentů ověřte také podporu nástrojů a funkce potřebné pro vaši verzi klienta.

Uložte kód Python jako ailoot-telegram-bot.py. Nainstalujte závislosti, nastavte obě proměnné prostředí a spusťte soubor. Pošlete botovi Hello a ověřte textovou odpověď. Při chybě uložte Request ID a před dalším generováním ověřte původní výsledek.

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

Příklad modelu: claude-sonnet-5-5, deepseek-v4-pro, qwen3.8-flash. Jakýkoli jiný model vyberte z katalogu – ověřte, že podporuje požadovaný formát.

Co je dobré vědět

Ověření

  • Adresa pro formát OpenAI je https://api.ailoot.ai/v1 (nebo úplná cesta, pokud aplikace vyžaduje úplnou adresu).
  • Položte krátkou otázku. Pokud se objeví chyba, podívejte se na kód a Request ID a porovnejte je s informacemi na stránce Chyby a limity.
  • Chyba 404 hned po nastavení téměř vždy znamená nesprávnou adresu: nadbytečné nebo chybějící /v1.
  • Chyba 402 – zůstatek nestačí na rezervu. Agenti rezervují více než chat: proč.

Dokumentace aplikace: https://github.com/openai/openai-python

Máte další dotazy? Pošlete Request ID a popis – pomůžeme situaci objasnit.Napsat podpoře