ЦАРЬ ROUTER

Интеграции

ЦАРЬ ROUTER работает с любым инструментом, поддерживающим OpenAI API. Замените URL и ключ — всё остальное работает как обычно.

LangChain

from langchain_openai import ChatOpenAI
 
llm = ChatOpenAI(
    base_url="https://api.tsarrouter.ru/v1",
    api_key="sk-tsar-ваш-ключ",
    model="yandex/yandexgpt",
)
 
response = llm.invoke("Привет!")
print(response.content)

LlamaIndex

from llama_index.llms.openai import OpenAI
 
llm = OpenAI(
    api_base="https://api.tsarrouter.ru/v1",
    api_key="sk-tsar-ваш-ключ",
    model="sber/gigachat-2-max",
)
 
response = llm.complete("Объясни квантовую запутанность")
print(response.text)

Instructor (структурированные выходы)

import instructor
from openai import OpenAI
from pydantic import BaseModel
 
client = instructor.from_openai(
    OpenAI(base_url="https://api.tsarrouter.ru/v1", api_key="sk-tsar-ваш-ключ")
)
 
class Person(BaseModel):
    name: str
    age: int
    city: str
 
person = client.chat.completions.create(
    model="yandex/yandexgpt",
    messages=[{"role": "user", "content": "Извлеки: Иван, 25 лет, живёт в Москве"}],
    response_model=Person,
)
print(person)  # Person(name='Иван', age=25, city='Москва')

Autogen

import autogen
 
config_list = [{
    "model": "yandex/yandexgpt",
    "base_url": "https://api.tsarrouter.ru/v1",
    "api_key": "sk-tsar-ваш-ключ",
}]
 
assistant = autogen.AssistantAgent(name="assistant", llm_config={"config_list": config_list})

CrewAI

from crewai import Agent, Task, Crew
from langchain_openai import ChatOpenAI
 
llm = ChatOpenAI(
    base_url="https://api.tsarrouter.ru/v1",
    api_key="sk-tsar-ваш-ключ",
    model="sber/gigachat-2-max",
)
 
researcher = Agent(role="Исследователь", goal="Найти информацию", llm=llm)

OpenCode

OpenCode подключается одной командой:

# Linux / macOS
curl https://tsarrouter.ru/api/opencode-config > ~/.config/opencode/opencode.json
echo 'export TSARROUTER_KEY="sk-tsar-ваш-ключ"' >> ~/.bashrc && source ~/.bashrc
# Windows (PowerShell)
curl.exe https://tsarrouter.ru/api/opencode-config -o "$env:USERPROFILE\.config\opencode\opencode.json"
[System.Environment]::SetEnvironmentVariable("TSARROUTER_KEY", "sk-tsar-...", "User")

Конфиг содержит все чат-модели с capability-флагами (tools, reasoning, attachment).

HTTP (curl / httpx / fetch)

curl https://api.tsarrouter.ru/v1/chat/completions \
  -H "Authorization: Bearer sk-tsar-ваш-ключ" \
  -d '{"model":"yandex/yandexgpt","messages":[{"role":"user","content":"Привет"}]}'
import httpx
 
response = httpx.post(
    "https://api.tsarrouter.ru/v1/chat/completions",
    headers={"Authorization": "Bearer sk-tsar-ваш-ключ"},
    json={"model": "yandex/yandexgpt", "messages": [{"role": "user", "content": "Привет"}]},
)
print(response.json()["choices"][0]["message"]["content"])
const response = await fetch("https://api.tsarrouter.ru/v1/chat/completions", {
  method: "POST",
  headers: {
    "Authorization": "Bearer sk-tsar-ваш-ключ",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "yandex/yandexgpt",
    messages: [{role: "user", content: "Привет"}],
  }),
});
const data = await response.json();
console.log(data.choices[0].message.content);