이 문서에서는 Open Responses API 를 사용하여 기본 모델을 쿼리하는 방법을 설명하고 수행할 때 고려할 공급자별 동작에 대해 설명합니다.
Open Responses API는 응답 스타일 요청 형식의 개방형 다중 공급자 구현입니다.
input 대신 messages 필드를 사용하고 구조화된 output 배열을 반환합니다. 요청 본문의 /serving-endpoints/open-responses 필드에 모델 서빙 엔드포인트 이름을 넣고 model 경로로 요청을 보내세요.
메모
OpenAI 모델의 경우 OpenAI 응답 API 를 직접 사용합니다. 이 경로는 네이티브 통과이며 OpenAI 응답 매개 변수 및 도구의 전체 집합을 지원합니다. 이 문서에서는 공급자 간에 작동하지만 포커스가 있는 기능 집합을 지원하는 Open Responses API에 대해 설명합니다.
쿼리 예제
다음 예제에서는 Open Responses API를 사용하여 기본 모델 엔드포인트를 쿼리합니다.
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "databricks-claude-sonnet-4-5",
"input": [
{
"role": "user",
"content": "What is a mixture of experts model?"
}
],
"max_output_tokens": 256
}' \
https://<workspace_host>.databricks.com/serving-endpoints/open-responses
응답은 response 배열이 있는 output 개체입니다. 스트리밍 요청(stream: true)의 경우, 응답은 각 이벤트가 응답 청크인 text/event-stream입니다.
공급자별 동작
Databricks는 Open Responses 요청을 각 공급자의 네이티브 형식으로 변환합니다. 동작은 대부분의 요청에 대해 일관되지만 다음과 같은 공급자별 차이점이 적용됩니다.
모든 공급자
- 대화는 상태를 유지하지 않습니다.
previous_response_id서버 쪽 대화 스토리지는 지원되지 않습니다. 각 턴에input필드에서 전체 대화를 보냅니다. -
일부 OpenAI 관련 필드는 허용되지만 비 OpenAI 공급자에서는 무시됩니다. 와
usersafety_identifiermetadata같은truncation필드는 이식성을 위해 응답에서 반환되지만 공급자 동작은 변경하지 않습니다.
Databricks에서 호스팅하는(오픈 소스) 모델
- 기능 지원은 모델별로 지원됩니다. 모델별로 함수 호출, 추론, 구조적 출력 및 이미지 입력이 사용됩니다. 모델에서 지원하지 않는 기능을 사용하는 요청은 오류를 반환합니다. 예를 들어 추론을 지원하는 모델은 이미지 입력을 지원하지 않을 수 있습니다.
- 이미지 입력은 URL 또는 데이터 URI여야 합니다.
image_url를 통해 이미지를httpsURL 또는data:URI로 제공합니다. 파일 참조(file_id) 및 문서 입력(input_file)은 지원되지 않습니다.
인류식 클로드 모델
- 온도는 0~2 척도를 사용합니다. Claude는 기본적으로 0–1 범위를 사용하므로 Databricks는 값을 절반으로 스케일 조정합니다. 즉,
temperature: 1.0는0.5처럼 동작합니다. - 추론은 여러 턴에 걸쳐 왕복합니다. 모델이 다중 턴 대화에서 이전 사고 과정을 추론할 수 있도록 하려면, 반환된
reasoning항목을encrypted_content는 변경하지 않은 채 다음 요청의input로 다시 보내세요. 쿼리 추론 모델을 참조하세요. - 이미지 및 문서 입력은 base64 데이터 URI여야 합니다. base64
image_urlURI로 이미지를data:제공하고 base64file_dataURI로 문서를data:제공합니다.httpsURL 및file_id참조는 지원되지 않습니다. - 구조적 출력에는 제약 조건이 있습니다.
text.format형식json_schema은 지원되지만json_object그렇지 않으며 오류를 반환합니다. 구조적 출력은 스트리밍 또는 추론과 결합할 수 없으며 사용할 때 특정 도구에 고정tool_choice할 수 없습니다. Azure Databricks에서 구조적 출력 을(를) 참조하세요. -
추론 토큰은 별도로 보고되는 대신
usage.output_tokens에 포함됩니다.
Google Gemini 모델
- 온도는 0~2 척도를 사용합니다. Gemini는 고유한 0~1 범위를 사용하므로 Databricks는 값을 절반으로 줄여 다시 스케일링합니다. 즉,
temperature: 1.0는0.5처럼 동작합니다. - 추론은 여러 턴에 걸쳐 왕복합니다. 모델이 다중 턴 대화에서 이전 사고 과정을 추론할 수 있도록 하려면, 반환된
reasoning항목을encrypted_content는 변경하지 않은 채 다음 요청의input로 다시 보내세요. 쿼리 추론 모델을 참조하세요. -
이미지 입력은 URL과 base64 데이터 URI를 모두
https허용합니다. -
추론 토큰은
usage.output_tokens_details.reasoning_tokens에 보고됩니다.
Important
Gemini를 사용한 멀티턴 도구 호출에서는 encrypted_content를 보존해야 합니다. Gemini는 생성하는 각 encrypted_content 항목에 대해 function_call 값을 반환합니다. 다음 턴을 위해 도구 결과를 다시 보낼 때는 function_call 필드가 변경되지 않은 원래 encrypted_content 항목을 반드시 포함해야 합니다.
name, arguments, call_id만으로 도구 호출을 재구성하는 에이전트 프레임워크는 이 필드를 누락하며, 그 결과 후속 요청이 거부됩니다.
다음 예제에서는 도구 결과를 반환할 때 function_call 항목(encrypted_content과 함께)을 유지합니다.
{
"model": "databricks-gemini-2-5-pro",
"input": [
{ "role": "user", "content": "What's the weather in San Francisco?" },
{
"type": "function_call",
"call_id": "call_abc123",
"name": "get_weather",
"arguments": "{\"city\": \"San Francisco\"}",
"encrypted_content": "<opaque-provider-signature>"
},
{
"type": "function_call_output",
"call_id": "call_abc123",
"output": "{\"temp_f\": 64}"
}
]
}
Tools
Open Responses API는 여러 공급자에서 function 유형 도구를 지원합니다. 자세한 내용 및 지원되는 모델은 Azure Databricks 함수 호출을 참조하세요. 웹 검색 기본 제공 도구는 Azure Databricks 웹 검색을 참조하세요.
다른 기본 제공 및 사용자 지정 도구 형식(예custom: , apply_patchimage_generation및mcp)은 OpenAI 응답 API를 통해서만 사용할 수 있습니다.
지원되는 모델
Open Responses API는 Anthropic Claude, Google Gemini 및 Databricks 호스팅 오픈 모델을 비롯한 Databricks 기본 모델에서 사용할 수 있으며 지원은 앞으로 새로운 모델로 확장됩니다. 현재 사용 가능한 모델 목록은 Foundation 모델 형식을 참조하세요.
함수 호출, 추론, 구조적 출력 및 이미지 입력과 같은 기능 지원은 기본 모델에 따라 달라집니다. 공급자별 동작을 참조하세요.
지원되는 입력 유형
입력 지원은 모델 및 공급자에 따라 달라집니다. 텍스트 입력은 모든 모델에서 지원됩니다. 이미지 입력의 경우 공급자별 동작의 공급자 별 노트와 Query Vision 모델의 형식 및 크기 요구 사항을 참조하세요. 모델별 입력 형식은 Foundation Model API에서 사용할 수 있는 Databricks 호스팅 기본 모델을 참조하세요.