Вызов OpenAI API: chat.completions
Отправляйте сообщения в конечную точку OpenAI chat.completions, задавайте temperature и max_tokens и разбирайте ответ.
«Вызов OpenAI API: chat.completions» — бесплатный урок AI Agents на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Agents, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Agents содержит 4 уроков всего.
Почему chat.completions
У OpenAI есть два API:
- chat.completions — стандартная, хорошо поддерживаемая конечная точка
- Responses API / Assistants — управляемые агенты (более продвинутый вариант)
В этом уроке рассматривается chat.completions — основной инструмент для 95% агентов.
Установите SDK
Один пакет, одна строка:
# pip install openai
from openai import OpenAI
client = OpenAI() # reads OPENAI_API_KEY from envВаш первый вызов
Минимальный запрос на получение ответа:
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=[
{'role': 'system', 'content': 'You are concise.'},
{'role': 'user', 'content': 'Capital of France?'},
],
)
print(response.choices[0].message.content)
# 'Paris'Анатомия объекта ответа
Ответ содержит не только текст. Полезные поля:
response.choices[0].message.content # the text
response.choices[0].finish_reason # 'stop' / 'length' / 'tool_calls'
response.usage.prompt_tokens # input tokens
response.usage.completion_tokens # output tokens
response.usage.total_tokens # sum
response.id # 'chatcmpl-...' for tracingОсновные параметры
model— какую модель использоватьtemperature— 0.0 означает детерминированный результат, 1.0 — творческийmax_tokens— ограничение длины выводаtop_p— альтернатива температуреseed— воспроизводимый вывод (с оговорками)
Температура: выбирайте по задаче
- 0.0 — извлечение данных, классификация, генерация кода
- 0.2–0.5 — большинство решений агента
- 0.7–1.0 — творческое письмо, мозговой штурм
Последовательности остановки
Обрезайте вывод на определённом маркере:
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=messages,
stop=['\n\n', 'END'],
)
# Stops as soon as a blank line or 'END' appears.Несколько вариантов
Сгенерируйте N кандидатов за один вызов:
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=messages,
n=3, # three samples
)
for choice in response.choices:
print(choice.message.content)Типы ошибок для обработки
RateLimitError— 429, увеличьте интервал перед повторомAPIConnectionError— проблема с сетьюAPITimeoutError— медленный ответAuthenticationError— неверный ключ APIBadRequestError— проблема со схемой
Асинхронные вызовы
Для агентов с высокой пропускной способностью используйте асинхронный клиент:
from openai import AsyncOpenAI
import asyncio
client = AsyncOpenAI()
async def ask(q):
r = await client.chat.completions.create(
model='gpt-4o-mini',
messages=[{'role': 'user', 'content': q}],
)
return r.choices[0].message.content
results = asyncio.run(asyncio.gather(*[ask(q) for q in questions]))Встроенные тайм-ауты и повторы
SDK по умолчанию выполняет некоторые повторные попытки. Вы можете переопределить это поведение:
client = OpenAI(
timeout=30.0,
max_retries=3,
)Причины завершения
Что означает finish_reason == "length"?
Итоги
Теперь Вы умеете вызывать OpenAI из Python. Далее мы рассмотрим API Anthropic, у которого есть небольшие, но важные отличия.
Часто задаваемые вопросы
Урок «Вызов OpenAI API: chat.completions» бесплатный?
Да — полный текст урока «Вызов OpenAI API: chat.completions» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Agents, подпишись на CoddyKit PRO. Курс AI Agents содержит 4 уроков всего.
Чему я научусь в уроке «Вызов OpenAI API: chat.completions»?
Отправляйте сообщения в конечную точку OpenAI chat.completions, задавайте temperature и max_tokens и разбирайте ответ. Ты практикуешь AI Agents с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать AI Agents?
Предыдущий опыт не требуется. AI Agents на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Вызов OpenAI API: chat.completions»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке AI Agents?
Да. Каждый урок AI Agents включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Вызов OpenAI API: chat.completions
- Вызов Anthropic API: messages
- Потоковая передача ответов (SSE)
- Контроль расходов: подсчёт токенов и бюджеты