В этой статье
YandexGPT можно вызывать через библиотеку openai: Яндекс документирует совместимый метод Chat Completions. При таком подключении запрос отправляется в Yandex AI Studio, а библиотека служит клиентом. Нужны ключ Яндекса, адрес его API и URI выбранной модели. Инструкция Яндекса.
Что сравнивать у YandexGPT и OpenAI
| Критерий | YandexGPT через AI Studio | OpenAI API |
|---|---|---|
| Модель в запросе | URI с каталогом, например gpt://<folder_id>/yandexgpt-5.1 |
Идентификатор модели OpenAI, доступной вашему проекту |
| Учётные данные | Ключ AI Studio и идентификатор каталога | Ключ OpenAI API |
| Python-клиент | OpenAI с адресом AI Studio и ключом Яндекса |
OpenAI с настройками OpenAI |
| Текстовый метод в этом примере | chat.completions.create |
Chat Completions тоже поддерживается; основной API в документации SDK — Responses |
Основания: пример AI Studio, каталог моделей Яндекса и официальный Python SDK OpenAI.
Если задача — подключить именно модель Яндекса в уже написанный Python-код, начните с совместимого клиента ниже. Если приложению нужна конкретная модель OpenAI, сохраняйте подключение к OpenAI: одинаковый метод не превращает YandexGPT в эту модель. Перенос приложения с инструментами, файлами или потоковыми ответами проверяйте отдельно для каждого используемого метода.
Подробнее о том, что проверять при смене провайдера, — в разборе «OpenAI-совместимый API».
Качество стоит сравнить на своих данных. Возьмите одинаковые задания, задайте одинаковые критерии приёмки и сохраните ответы обоих провайдеров. Например, для извлечения сведений из обращений считайте пропущенные факты, выдуманные сроки и ошибки формата. По одному удачному ответу нельзя обоснованно выбрать модель для всей очереди обращений.
Подготовьте ключ, каталог и Python
В интерфейсе AI Studio есть кнопка «Создать API-ключ»: задайте срок действия, создайте ключ и сохраните его секретное значение до закрытия окна. Этот путь также создаёт сервисный аккаунт с правами. Для создания ключа пользователю нужна роль resource-manager.admin на каталог. Если прав нет, обратитесь к администратору каталога. Получение ключа в AI Studio.
Идентификатор каталога можно скопировать в верхней части AI Studio, наведя указатель на название каталога. Подставьте его в переменную YANDEX_FOLDER_ID; секретное значение ключа — в YANDEX_API_KEY. Названия переменных здесь выбраны для примера. Не записывайте секрет в код или общедоступный репозиторий.
Текущая библиотека требует Python 3.10 или новее. Установите её в окружение, из которого будете запускать файл:
python -m pip install --upgrade openai
Требование к Python и установка приведены в README SDK. Значения переменных окружения задайте средствами вашей системы или менеджера секретов до запуска программы.
Выполните первый запрос
Сохраните код в yandex_text.py. Здесь выбран YandexGPT Pro 5.1 с явным URI. По состоянию на 10 сентября 2026 года каталог Яндекса сопоставляет yandexgpt/latest с Pro 5, а yandexgpt/rc — с Pro 5.1. Поэтому слово latest в чужом примере само по себе не гарантирует нужную вам версию. Версии и URI моделей.
import os
from openai import OpenAI
folder_id = os.environ["YANDEX_FOLDER_ID"]
client = OpenAI(
api_key=os.environ["YANDEX_API_KEY"],
base_url="https://ai.api.cloud.yandex.net/v1",
project=folder_id,
)
response = client.chat.completions.create(
model=f"gpt://{folder_id}/yandexgpt-5.1",
messages=[
{
"role": "system",
"content": (
"Извлеки сведения из сообщения. Верни три строки: "
"Предмет; Проблема; Запрошенное действие. "
"Не добавляй сведений, которых нет в сообщении."
),
},
{
"role": "user",
"content": (
"Получил настольную лампу. Она включается, но шарнир "
"не держит наклон. Хочу замену, возврат денег не прошу. "
"Когда сможете забрать неисправную лампу?"
),
},
],
temperature=0.2,
max_tokens=250,
stream=False,
)
text = response.choices[0].message.content
if not text:
raise RuntimeError("В ответе нет текста: изучите объект response")
print(text)
Запуск:
python yandex_text.py
Настройки клиента и метода основаны на примере Яндекса. Обращение о лампе и критерии проверки — учебный пример автора. Синтаксис кода проверен локально; запрос к сервису с действующим ключом не выполнялся.
Как проверить ответ
Успешное завершение программы подтверждает только получение текста. Затем проверьте смысл:
- предмет — настольная лампа;
- неисправен шарнир, сама лампа включается;
- клиент просит замену и спрашивает о вывозе;
- возврат денег не запрошен;
- дата вывоза неизвестна и не должна появиться в ответе.
Допустимая строка действия: «Заменить лампу и сообщить срок вывоза». Формулировка «Вернуть деньги завтра» проваливает сразу два условия. Этот разбор задаёт критерий приёмки, а не предсказывает дословный ответ модели.
Для второго прогона поменяйте только пожелание клиента на «Нужен возврат денег, замену не хочу». Если ответ продолжает предлагать замену, он не учитывает изменённое пожелание клиента. Сохраните обе пары «вход — ответ» прежде, чем расширять пример до обработки реальных обращений.
Если запрос не проходит
Если программа останавливается с KeyError до обращения к API, проверьте наличие обеих переменных в окружении именно запущенного Python. Если не импортируется openai, повторите установку через тот же интерпретатор.
При ошибке от сервиса сопоставьте четыре значения: адрес AI Studio, секретный ключ Яндекса, каталог в project и тот же каталог внутри model. Не переносите в этот пример ключ OpenAI или название его модели. Дальше изучайте текст ошибки и актуальную документацию: замена ключа наугад не исправит неверный URI.
После первого рабочего ответа сохраните версию установленного SDK, URI модели, входные данные и результат проверки. Так следующий эксперимент можно сравнить с предыдущим, а изменение поведения — отделить от случайно поменявшейся конфигурации.
Проверить детали
Источники материала
- Генерация текста через OpenAI-совместимый APIYandex
- Модели генерацииYandex
- OpenAI Python API libraryOpenAI
- Создать API-ключ AI StudioYandex
Функции и условия сервисов меняются. Дата сверки указана в начале статьи. Как подготовлен материал