Для интеграторов и больших объёмов

API для LLM под массовые и пакетные задачи

Миллионы запросов в месяц к недорогим моделям через один ключ, совместимый с OpenAI и Anthropic. Направьте свой код на TeamoRouter — параллельность остаётся под вашим контролем.

Один ключ, совместимый с OpenAI и Anthropic

Меняете только base URL и ключ: OpenAI SDK, Anthropic SDK и любой OpenAI-совместимый клиент продолжают работать.

Недорогие модели для параллельных пакетов

DeepSeek V4.1 Flash 1017, GLM-5.3 Flash, MiniMax, Qwen и другие — всё за одним эндпоинтом.

Один баланс команды, ключи у каждого свои

Создайте команду в консоли, пополняйте один баланс и выдайте каждому участнику свои API-ключи и бюджет.

Оплата в рублях или в USDT / USDC

Пополнение в рублях — СБП, SberPay, Т-Банк, ЮMoney — или в USDT и USDC с биржи либо кошелька. Без подписки: платите только за использованные токены.

Создать API-ключ

У нового аккаунта баланс $0 — пополните его до первого запроса. Пополнить от $5.

Модели для массовых задач

Тот же base URL, меняется только ID модели. Актуальные цены — на странице цен.

Лимиты простыми словами

  • Лимит считается на аккаунт в запросах в минуту (RPM). Число одновременных соединений не ограничено.
  • У моделей генерации изображений свой лимит в минуту.
  • Если пакетной задаче нужно больше запросов в минуту, напишите в отдел продаж — мы поднимем лимит на вашем аккаунте.
  • Batch-эндпоинта OpenAI (/v1/batches) нет. Ответы приходят сразу; параллельность задаёте сами, как в примере ниже.

Пакетный запуск со своей параллельностью

OpenAI Python SDK. Число запросов «в полёте» держите в пределах своего лимита в минуту.

import asyncio
from openai import AsyncOpenAI

client = AsyncOpenAI(base_url="https://api.teamorouter.com/v1", api_key="YOUR_TEAMOROUTER_KEY")

async def ask(prompt):
    r = await client.chat.completions.create(
        model="deepseek-flash-1017",
        messages=[{"role": "user", "content": prompt}],
    )
    return r.choices[0].message.content

async def main(prompts, concurrency=50):
    sem = asyncio.Semaphore(concurrency)
    async def one(p):
        async with sem:
            return await ask(p)
    return await asyncio.gather(*(one(p) for p in prompts))

results = asyncio.run(main(["task 1", "task 2", "task 3"]))

Для Anthropic SDK используйте base URL без /v1: https://api.teamorouter.com

Частые вопросы

Есть ли ограничение на параллельность?
Нет. Шлюз ограничивает число запросов в минуту на аккаунт, а не число параллельных соединений. Если нужен более высокий лимит в минуту, напишите в отдел продаж.
Может ли команда пользоваться одним балансом?
Да. Создайте команду в консоли, пополните её баланс, пригласите участников и выдайте каждому свои ключи и бюджет. Расход виден по участникам и по ключам.
Как оплатить?
В рублях — через СБП, SberPay, Т-Банк или ЮMoney — или в USDT и USDC: в окне пополнения нажмите «Оплатить криптовалютой» и переведите с биржи или любого кошелька. Минимальное пополнение — $5.
Нужно ли переписывать код?
Обычно достаточно поменять base URL, API-ключ и ID модели. Запросы и ответы идут в форматах OpenAI и Anthropic.
Создать API-ключ