Перейти к содержимому

YandexGPT API

OpenAI-совместимый API для YandexGPT — генеративной языковой модели Яндекса. Поддержка chat completions, streaming, function calling.

⚠️ Скоро: Этот сервис находится в разработке и будет доступен в ближайшее время.

  • Русский язык — модель обучена на русскоязычных данных, понимает контекст и культурные особенности
  • Безопасность — данные остаются в России
  • Большой контекст — до 32K токенов (YandexGPT-32K)
  • Актуальность — знания до текущего момента

Если вы используете OpenAI SDK, переключиться на YandexGPT — это изменение двух строк:

from openai import OpenAI
# Было (OpenAI)
client = OpenAI(api_key="sk-xxx")
# Стало (UnoAPI + YandexGPT)
client = OpenAI(
api_key="sk_xxx",
base_url="https://proxy.unoapi.ru/v1"
)
response = client.chat.completions.create(
model="yandexgpt", # или yandexgpt-lite, yandexgpt-32k
messages=[
{"role": "system", "content": "Ты полезный ассистент."},
{"role": "user", "content": "Расскажи о Москве"}
]
)
МодельКонтекстОписание
yandexgpt-lite8KБыстрая и дешевая, для простых задач
yandexgpt8KОсновная модель, баланс качества и скорости
yandexgpt-32k32KБольшой контекст для длинных документов

Получение ответа по частям:

stream = client.chat.completions.create(
model="yandexgpt",
messages=[{"role": "user", "content": "Напиши рассказ"}],
stream=True
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")

YandexGPT поддерживает вызов функций:

tools = [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Получить погоду в городе",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "Название города"}
},
"required": ["city"]
}
}
}]
response = client.chat.completions.create(
model="yandexgpt",
messages=[{"role": "user", "content": "Какая погода в Москве?"}],
tools=tools
)
АспектYandexGPTGigaChat
Русский язык⭐⭐⭐⭐⭐⭐⭐⭐⭐
Креативность⭐⭐⭐⭐⭐⭐⭐⭐
КонтекстДо 32KДо 4K
Скорость⭐⭐⭐⭐⭐⭐⭐⭐⭐
ЦенаСредняяНизкая
from telegram import Update
from telegram.ext import Application, MessageHandler, filters
async def handle_message(update: Update, context):
response = client.chat.completions.create(
model="yandexgpt-lite",
messages=[{"role": "user", "content": update.message.text}]
)
await update.message.reply_text(response.choices[0].message.content)
def generate_product_description(product_name: str, features: list[str]):
prompt = f"""Напиши привлекательное описание товара:
Название: {product_name}
Характеристики: {', '.join(features)}
Описание должно быть на 2-3 абзаца, подчеркивать преимущества."""
response = client.chat.completions.create(
model="yandexgpt",
messages=[{"role": "user", "content": prompt}]
)
return response.choices[0].message.content
def answer_with_context(question: str, context: str):
response = client.chat.completions.create(
model="yandexgpt-32k",
messages=[
{"role": "system", "content": f"Контекст:\n{context}"},
{"role": "user", "content": question}
]
)
return response.choices[0].message.content
МодельВходВыход
yandexgpt-lite0.2 ₽ / 1K токенов0.4 ₽ / 1K токенов
yandexgpt1 ₽ / 1K токенов2 ₽ / 1K токенов
yandexgpt-32k2 ₽ / 1K токенов4 ₽ / 1K токенов

Хотите узнать первым о запуске? Оставьте email:

[Форма подписки появится здесь]