Consultar serviços de modelo com a API de Respostas da OpenAI
Beta
Este recurso está em Beta. Os administradores da account podem controlar o acesso a este recurso na página Prévias do console da account. Consulte Gerenciar prévias do Databricks.
A API de Respostas é compatível apenas com modelos básicos do OpenAI. Para uma API unificada que funciona em todos os provedores, use a API de Conclusões de Chat.
A API de Respostas do OpenAI é uma alternativa à API de Conclusões de Chat que oferece recursos adicionais para modelos OpenAI, incluindo ferramentas personalizadas e fluxos de trabalho de várias etapas.
Requisitos
- Consulte Requisitos.
- Instale o pacote apropriado no seu cluster com base na opção de cliente de consulta que você escolher.
Exemplos de consulta
Os exemplos nesta seção mostram como consultar um serviço de modelo usando a API de Respostas do OpenAI.
- Python (DatabricksOpenAI)
- Python (OpenAI)
- REST API
Para usar a API de Respostas da OpenAI, especifique o nome totalmente qualificado do serviço de modelo como a entrada model.
from databricks_openai import DatabricksOpenAI
client = DatabricksOpenAI()
response = client.responses.create(
model="system.ai.gpt-5",
input=[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?",
}
],
max_output_tokens=256
)
Para consultar modelos básicos fora do seu workspace, é preciso usar o cliente OpenAI diretamente. Você também precisa da sua instância de workspace do Databricks para conectar o cliente OpenAI ao Databricks. O exemplo a seguir pressupõe que você tenha um token de API do Databricks e openai instalado no seu compute.
import os
import openai
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get('DATABRICKS_TOKEN'),
base_url="https://<workspace-url>/ai-gateway/mlflow/v1"
)
response = client.responses.create(
model="system.ai.gpt-5",
input=[
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?",
}
],
max_output_tokens=256
)
curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
"model": "system.ai.gpt-5",
"input": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is a mixture of experts model?"
}
],
"max_output_tokens": 256
}' \
https://<workspace-url>/ai-gateway/mlflow/v1/responses
Ferramentas personalizadas
As ferramentas personalizadas permitem que o modelo retorne uma saída de strings arbitrária em vez de argumentos de função formatados em JSON. Isso é útil para geração de código, aplicação de patches ou outros casos de uso onde o JSON estruturado não é necessário.
Ferramentas personalizadas só são compatíveis com modelos da série GPT-5 (databricks-gpt-5, databricks-gpt-5-1, databricks-gpt-5-2, databricks-gpt-5-4, databricks-gpt-5-5, databricks-gpt-5-5-pro) por meio da API de Respostas.
from databricks_openai import DatabricksOpenAI
client = DatabricksOpenAI()
response = client.responses.create(
model="system.ai.gpt-5",
input=[{"role": "user", "content": "Write a Python function to calculate factorial"}],
tools=[
{
"type": "custom",
"name": "code_exec",
"description": "Executes arbitrary Python code. Return only valid Python code."
}
],
max_output_tokens=1024
)
Ferramentas integradas
Ferramentas integradas permitem ao modelo chamar capacidades fornecidas pela plataforma sem exigir que você implemente o backend da ferramenta você mesmo. Essas ferramentas retornam saídas estruturadas e são totalmente gerenciadas pela plataforma.
from databricks_openai import DatabricksOpenAI
client = DatabricksOpenAI()
response = client.responses.create(
model="system.ai.gpt-5",
input=[{
"role": "user",
"content": "Add input validation to the factorial function in main.py."
}],
tools=[
{
"type": "apply_patch"
}
],
max_output_tokens=1024
)
print(response.output_text)
Modelos compatíveis
Modelos de base hospedados pelo Databricks
databricks-gpt-5-5-prodatabricks-gpt-5-5databricks-gpt-5-4databricks-gpt-5-4-minidatabricks-gpt-5-4-nanodatabricks-gpt-5-3-codexdatabricks-gpt-5-2databricks-gpt-5-2-codexdatabricks-gpt-5-1databricks-gpt-5-1-codex-maxdatabricks-gpt-5-1-codex-minidatabricks-gpt-5databricks-gpt-5-minidatabricks-gpt-5-nano
Tipos de entrada compatíveis
Os modelos GPT da OpenAI no Databricks aceitam entradas de texto e imagem. Consulte Consultar modelos básicos por tipo para requisitos de formato e tamanho de imagem. Para tipos de entrada por modelo, consulte modelos de base hospedados pelo Databricks disponíveis nas APIs do Foundation Model.
Limitações
As seguintes limitações se aplicam aos modelos de base hospedados pelo Databricks:
Os seguintes parâmetros não são suportados e retornam um erro 400 se especificados:
background— O processamento em segundo plano não é compatível.storeRespostas armazenadas não são suportadas.previous_response_idRespostas armazenadas não são suportadas.service_tier— A seleção da camada de serviço é gerenciada pela Databricks.
Os seguintes tipos de ferramenta são compatíveis com os Foundation Models de pagamento por tokens:
function— Chamada de função estruturada tradicionalcustom— Ferramentas personalizadas definidas pelo usuárioapply_patch— Operações de aplicação de patch de códigoshell— Execução de comando shellimage_generation— Geração de imagensmcp— Ferramentas do Protocolo de Contexto de Modeloweb_search— Pesquisa web