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

OpenAI Responses

Вызов Responses и проверка полного завершения результата.

Для модели с поддержкой этого протокола используйте POST /v1/responses с Bearer-ключом. SDK OpenAI получает базовый адрес https://1zheai.com/v1.

Работа с результатом

Раздел «Работа с результатом»

В запросе задайте модель и input. В ответе читайте содержимое output или используйте output_text SDK. Не ищите текст в choices, как у Chat Completions.

В потоке обрабатывайте события соответствующих типов, текстовые дельты и итоговое состояние. Ошибки и незавершённость должны учитываться даже после полученного текста. Успех подтверждается событием завершения или итоговым успешным состоянием; при response.failed, response.incomplete либо обрыве не выдавайте частичный ответ за полный.

Возможность инструмента, хранения состояния, ссылки на предыдущий ответ или другого расширения нужно проверять отдельно для выбранной модели. Не считайте весь API исходного поставщика реализованным только потому, что работает базовый вызов.

Примеры ниже; потоки и ошибки.

Примеры запросов и конфигурации

Раздел «Примеры запросов и конфигурации»

Используйте пример для выбранного протокола и версии клиента. Замените учебные ключи и идентификаторы моделей своими. Команды выполняются на вашем компьютере или сервере.

bash
curl --fail-with-body --connect-timeout 10 --max-time 120 \
https://1zheai.com/v1/responses \
-H "Authorization: Bearer $ONEZHE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6-astra",
"input": "Объясните API-шлюз тремя предложениями.",
"store": false
}'
python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["ONEZHE_API_KEY"],
base_url="https://1zheai.com/v1",
timeout=120.0,
max_retries=0,
)
response = client.responses.create(
model=os.environ.get("ONEZHE_MODEL", "gpt-6-astra"),
input="Объясните API-шлюз тремя предложениями.",
store=False,
)
print(response.output_text)
print("status:", response.status)
python
with client.responses.create(
model=os.environ.get("ONEZHE_MODEL", "gpt-6-astra"),
input="Объясните API-шлюз тремя предложениями.",
store=False,
stream=True,
) as stream:
for event in stream:
if event.type == "response.output_text.delta":
print(event.delta, end="", flush=True)
elif event.type == "response.completed":
print("\nГотово")
elif event.type in {"response.failed", "response.incomplete", "error"}:
raise RuntimeError(f"Ответ не завершён:{event.type}")