LLLMora / API Docs
OpenAI-compatible API

Все нужные AI-модели.
Один понятный API.

Подключите LLMora к существующему OpenAI-клиенту, выберите модель и оплачивайте только фактическое использование в рублях.

Base URLhttps://api.llmora.ru/v1
5 минут до первого ответа

Быстрый старт

API-ключ создаётся в Telegram и работает с тем же рублёвым балансом, что и бот. Никаких отдельных аккаунтов и подписок.

01

Получите API-ключ

Откройте @llmora_ai_bot, выберите «API» и сохраните ключ — повторно он не показывается.

02

Укажите Base URL

Используйте https://api.llmora.ru/v1 в OpenAI SDK или любом совместимом клиенте.

03

Выберите модель

Получите актуальные модели через GET /models и передайте её ID в запросе.

Первый запрос

Выберите привычный инструмент. Синтаксис совпадает с OpenAI SDK, меняются только ключ и Base URL.

curl https://api.llmora.ru/v1/chat/completions \
  -H "Authorization: Bearer $LLMORA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o-mini",
    "messages": [{"role": "user", "content": "Привет!"}]
  }'
ⓘ
Не вставляйте ключ в браузерный код. Храните его на сервере или в переменной окружения.

Стоимость без сюрпризов

Перед запросом LLMora резервирует средства, после ответа списывает фактическую стоимость, а остаток возвращает. При ошибке резерв отменяется.

RUB

Цены и списания возвращаются в рублях. Баланс общий для Telegram и API.

X-LLMora-Cost-RUB

Точная стоимость завершённого запроса доступна в HTTP-заголовке ответа.

llmora.cost_rub

Та же сумма есть в JSON, а при streaming приходит в финальном SSE-сообщении.

Один API для разных задач

Текст, изображения и аудио доступны через знакомые OpenAI/OpenRouter-совместимые методы.

Чат и reasoning

/chat/completions поддерживает streaming, мультимодальный ввод и image-output модели.

Генерация изображений

/images/generations принимает prompt и reference images по URL или data URL.

Речь и распознавание

/audio/speech для TTS и /audio/transcriptions для STT.

TypeSafe Jev · System One

В Telegram выберите Jev и отправьте одним сообщением JSON с state и questions. В API используйте POST /v1/systemone и передайте модель в поле model. Поддерживаются типы вопросов noul, choice и score; обычный свободный чат не используется.

{
  "state": "Клиент просит вернуть деньги за двойное списание",
  "questions": {
    "refund": {
      "type": "noul",
      "instructions": "Просит ли клиент вернуть деньги?"
    }
  }
}

LLMora использует OpenRouter System One (POST /api/v1/systemone) и преобразует каталоговый ID Jev Router в актуальный Jev alias. Запрос проходит через биллинг LLMora; цена возвращается в X-LLMora-Cost-RUB. Также OpenRouter предоставляет Decisions API (POST /api/alpha/decisions). В каталоге Jev указаны оба маршрута и model_type: systemone.

Озвучка и распознавание ElevenLabs

Используйте общий API LLMora и ключ LLMora. Модель и голос выбираются из GET /v1/models.

Озвучить текст · Python

from openai import OpenAI

client = OpenAI(
    base_url="https://api.llmora.ru/v1",
    api_key="<LLMORA_API_KEY>",
)
with client.audio.speech.with_streaming_response.create(
    model="elevenlabs/eleven-turbo-v2",
    input="Добрый день! Это проверка озвучки.",
    voice="george",
    response_format="mp3",
) as response:
    response.stream_to_file("output.mp3")

voice — имя из supported_voices выбранной модели. Ответ содержит бинарное аудио.

Распознать аудио · Python

with open("output.mp3", "rb") as audio:
    transcript = client.audio.transcriptions.create(
        model="elevenlabs/scribe-v2",
        file=audio,
        language="ru",
    )
print(transcript.text)

POST /v1/audio/transcriptions принимает один multipart-файл до 50 МиБ. Также доступна модель elevenlabs/scribe-v2-medical.

Распознать аудио · JSON

{
  "model": "elevenlabs/scribe-v2",
  "input_audio": {"data": "<BASE64_AUDIO>", "format": "mp3"},
  "language": "ru"
}

Передайте Content-Type: application/json и Authorization: Bearer <LLMORA_API_KEY>. Вместо data и format можно передать input_audio.url. Поддержка diarize, keyterms и временных меток зависит от модели.

Ограничения и стоимость

Лимит текста находится в llmora.max_input_characters. Проверяются символы Unicode; превышение возвращает HTTP 400 до вызова модели.

  • Eleven v3 и v3 Conversational: 5 000 символов.
  • Eleven v4, v4 Turbo и Multilingual v2: 10 000.
  • Eleven Turbo v2 и Flash v2: 30 000.
  • Eleven Turbo v2.5 и Flash v2.5: 40 000.

Каталог также возвращает llmora.max_input_files, llmora.max_file_size_bytes и pricing.unit: characters для TTS, seconds для STT. Цена указана в рублях за единицу. Фактическое списание — в X-LLMora-Cost-RUB.

Сохраните X-LLMora-Job-ID, чтобы получить готовое аудио через GET /v1/jobs/{id}/output.