Compartilhar via


Consultar com a API de Respostas da OpenAI

Importante

A API de Respostas só é compatível com modelos de fundação da OpenAI que funcionam com pagamento por token e modelos de terceiros. Para uma API unificada que funcione em todos os provedores, use a API de Conclusões de Chat.

A API de Respostas OpenAI é uma alternativa à API de Conclusões de Chat que fornece recursos adicionais para modelos OpenAI, incluindo ferramentas personalizadas e fluxos de trabalho de várias etapas.

Requirements

Exemplos de consulta

Os exemplos nesta seção mostram como consultar um endpoint de pagamento por token da API de modelo fundamental usando a API de Respostas OpenAI.

Python

Para usar a API de Respostas OpenAI, especifique o nome do ponto de extremidade de serviço do modelo como a model entrada. O exemplo a seguir pressupõe que você tenha um token de API do Azure Databricks e openai instalado em seu computador. Você também precisa da instância do workspace Azure Databricks para conectar 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

As ferramentas personalizadas permitem que o modelo retorne a saída de cadeia de caracteres arbitrária em vez de argumentos de função formatados por JSON. Isso é útil para a geração de código, a aplicação de patches ou outros casos de uso em que o JSON estruturado não é necessário.

Observação

As ferramentas personalizadas são suportadas exclusivamente pelos modelos da série GPT-5 (databricks-gpt-5, databricks-gpt-5-1, databricks-gpt-5-2, databricks-gpt-5-4), por meio da API de Respostas.

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 integradas

As ferramentas internas permitem que o modelo chame recursos fornecidos pela plataforma sem exigir que você implemente o back-end da ferramenta por conta própria. 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="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 com suporte

Modelos externos

  • Provedor de modelos OpenAI
  • Azure provedor de modelos OpenAI

Limitações

As limitações a seguir se aplicam somente a modelos de base de pagamento por token . Modelos externos dão suporte a todos os parâmetros e ferramentas da API de Respostas.

Os seguintes parâmetros não têm suporte e retornam um erro 400, se especificado:

  • background — Não há suporte para processamento em segundo plano.
  • store — Não há suporte para respostas armazenadas.
  • previous_response_id — Não há suporte para respostas armazenadas.
  • service_tier — A seleção da camada de serviço é gerenciada por Azure Databricks.

Os seguintes tipos de ferramenta têm suporte para modelos de base de pagamento por token:

  • function — Chamada de função estruturada tradicional
  • custom — Ferramentas personalizadas definidas pelo usuário
  • apply_patch — Operações de aplicação de patch de código
  • shell — Execução de comando do Shell
  • image_generation — Geração de imagem
  • mcp — Ferramentas de Protocolo Contextual do Modelo
  • web_search — Pesquisa na Web

Recursos adicionais