Responses API предназначен для новых reasoning- и агентных интеграций. Он использует типизированные Items вместо массива choices.
Минимальный запрос#
curl https://api.dslab.tech/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $DSLAB_API_KEY" \
-d '{
"model": "<model-id>",
"input": "Назови три риска этой миграции.",
"reasoning": {"effort": "low"}
}'Используйте reasoning только если выбранная модель поддерживает указанный уровень.
Как читать ответ#
output может содержать несколько типов Items: текстовое сообщение, reasoning, function call и другие действия. Не считайте каждый элемент обычным сообщением.
Если нужен только итоговый текст, используйте helper output_text в SDK. Для tools и reasoning обрабатывайте output по полю type.
Продолжение диалога#
Можно передать previous_response_id из предыдущего ответа. В DSLab этот идентификатор восстанавливает сохранённый контекст на стороне шлюза.
Системные инструкции лучше передавать заново на каждом ходе. Не рассчитывайте, что ссылка на предыдущий ответ автоматически переносит все top-level поля.
Важные ограничения#
Встроенные инструменты, background, conversation и сложные типы Items требуют нативной поддержки выбранного маршрута. При кросс-диалектном переходе гарантируется только консервативное подмножество текста, изображений и function tools.
Для Structured Outputs используйте text.format, а предел генерации задавайте через max_output_tokens.