Consulta com a API de Respostas da OpenAI

Importante

Uma nova experiência Unity AI Gateway está disponível em versão Beta. O novo Unity AI Gateway é o plano de controlo empresarial para gerir endpoints LLM e agentes de codificação com funcionalidades melhoradas. Veja a governação da IA com o Unity AI Gateway.

Importante

A API OpenAI Responses descrita neste artigo é um encaminhamento nativo para os modelos fundacionais da OpenAI com pagamento por token e para modelos externos, e suporta o conjunto completo de parâmetros e ferramentas da OpenAI Responses. Para uma API unificada de Respostas entre Anthropic Claude, Google Gemini e modelos abertos alojados em Databricks, consulte Consultar um modelo com a API Open Responses. A API Chat Completions está também disponível em todos os fornecedores.

A API OpenAI Responses é uma alternativa à API Chat Completions que fornece funcionalidades adicionais para modelos OpenAI, incluindo ferramentas personalizadas e fluxos de trabalho em múltiplos passos.

Requerimentos

Exemplos de consulta

Os exemplos nesta secção mostram como consultar um endpoint pay-per-token da API da Foundation Model usando a API OpenAI Responses.

Python

Para utilizar a API OpenAI Responses, especifique o nome do endpoint do modelo de serviço como model entrada. O exemplo seguinte assume que tens an Azure Databricks API token e openai instalados no teu computador. Também precisas da tua instância Azure Databricks workspace para ligar o cliente OpenAI ao Azure Databricks.

import os
import openai
from openai import OpenAI

client = OpenAI(
    api_key="dapi-your-databricks-token",
    base_url="https://example.staging.cloud.databricks.com/serving-endpoints"
)

response = client.responses.create(
    model="databricks-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
)

API REST

curl \
-u token:$DATABRICKS_TOKEN \
-X POST \
-H "Content-Type: application/json" \
-d '{
  "model": "databricks-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_host>.databricks.com/serving-endpoints/responses

Ferramentas personalizadas

Ferramentas personalizadas permitem que o modelo devolva uma saída de string arbitrária em vez de argumentos de funções formatadas em JSON. Isto é útil para geração de código, aplicação de patches ou outros casos de uso onde JSON estruturado não é necessário.

Observação

Ferramentas personalizadas são suportadas apenas 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) através da API Responses.

from databricks_openai import DatabricksOpenAI

client = DatabricksOpenAI()

response = client.responses.create(
    model="databricks-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 incorporadas

As ferramentas integradas permitem que o modelo chame capacidades fornecidas pela plataforma sem que seja necessário implementar o backend da ferramenta por si próprio. Estas ferramentas devolvem resultados estruturados e são totalmente geridas pela plataforma.

from databricks_openai import DatabricksOpenAI

client = DatabricksOpenAI()

response = client.responses.create(
    model="databricks-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 suportados

Modelos externos

  • Fornecedor de modelos OpenAI
  • Fornecedor de modelos do Azure OpenAI

Tipos de entrada suportados

Os modelos OpenAI GPT no Azure Databricks aceitam entradas de texto e imagem. Consulte modelos de visualização para requisitos de formato e tamanho da imagem. Para tipos de entrada por modelo, veja modelos de fundação alojados em Databricks disponíveis nas APIs de Modelos de Fundação.

Limitações

As seguintes limitações aplicam-se apenas a modelos de fundação pay-per-token . Os modelos externos suportam todos os parâmetros e ferramentas da API Responses.

Os seguintes parâmetros não são suportados e devolvem um erro 400 se especificados:

  • background — Processamento em segundo plano não é suportado.
  • store — Respostas armazenadas não são suportadas.
  • previous_response_id — Respostas armazenadas não são suportadas.
  • service_tier — A seleção do nível de serviço é gerida por Azure Databricks.

Os seguintes tipos de ferramentas são suportados para modelos de fundação pay-per-token:

  • function — Chamada tradicional de função estruturada
  • custom — Ferramentas personalizadas definidas pelo utilizador
  • apply_patch — Operações de atualizações de código
  • shell — Execução de comandos shell
  • image_generation — Geração de imagem
  • mcp — Ferramentas do Protocolo de Contexto de Modelo
  • web_search — Pesquisa na Web

Recursos adicionais