Interrogare l'API delle Risposte di OpenAI

Important

L'API Risposte OpenAI descritta in questo articolo è un pass-through nativo per i modelli openAI pay per token foundation e modelli esterni e supporta il set completo di parametri e strumenti OpenAI Responses. Per un'API delle risposte unificata in Anthropic Claude, Google Gemini e Modelli aperti ospitati in Databricks, vedere Eseguire query su un modello con l'API Open Responses. L'API Completamento chat è disponibile anche in tutti i provider.

L'API Risposte OpenAI è un'alternativa all'API Completamento chat che fornisce funzionalità aggiuntive per i modelli OpenAI, inclusi strumenti personalizzati e flussi di lavoro in più passaggi.

Requisiti

Esempi di query

Gli esempi in questa sezione illustrano come eseguire query su un endpoint con pagamento in base al token dell'API del modello foundation usando l'API Risposte OpenAI.

Python

Per usare l'API Risposte di OpenAI, specificare come input il nome dell'endpoint di servizio del modello model. L'esempio seguente presuppone che si disponga di un token API di Azure Databricks e che sia installato nel calcolo. È anche necessaria l'istanza dell'area di lavoro Azure Databricks per connettere il client OpenAI a 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
)

REST API

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

Strumenti personalizzati

Gli strumenti personalizzati consentono al modello di restituire output arbitrario di stringhe anziché argomenti di funzione in formato JSON. Ciò è utile per la generazione di codice, l'applicazione di patch o altri casi d'uso in cui json strutturato non è necessario.

Annotazioni

Gli strumenti personalizzati sono supportati solo con i modelli serie GPT-5 (databricks-gpt-5, databricks-gpt-5-1, databricks-gpt-5-2databricks-gpt-5-4, databricks-gpt-5-5databricks-gpt-5-5-pro) tramite l'API Risposte.

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
)

Strumenti predefiniti

Gli strumenti predefiniti consentono al modello di chiamare funzionalità fornite dalla piattaforma senza che sia necessario implementare manualmente il back-end dello strumento. Questi strumenti restituiscono output strutturati e sono completamente gestiti dalla piattaforma.

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)

Modelli supportati

Modelli esterni

  • Provider di modelli OpenAI
  • Azure fornitore di modelli OpenAI

Tipi di input supportati

I modelli OpenAI GPT su Azure Databricks accettano input di testo e immagine. Vedere Eseguire query sui modelli di visione per i requisiti di formato e dimensioni delle immagini. Per i tipi di input per modello, vedere Modelli di base ospitati in Databricks disponibili nelle API del modello di base.

Limitazioni

Le limitazioni seguenti si applicano solo ai modelli di base con pagamento per token . I modelli esterni supportano tutti i parametri e gli strumenti dell'API Risposte.

I parametri seguenti non sono supportati e restituiscono un errore 400 se specificato:

  • background — L'elaborazione in background non è supportata.
  • store — Le risposte archiviate non sono supportate.
  • previous_response_id — Le risposte archiviate non sono supportate.
  • service_tier : la selezione del livello di servizio viene gestita da Azure Databricks.

Per i modelli di base con pagamento in base al token sono supportati i tipi di strumento seguenti:

  • function — Chiamata tradizionale di funzioni strutturate
  • custom — Strumenti personalizzati definiti dall'utente
  • apply_patch — Operazioni di applicazione di patch del codice
  • shell — Esecuzione dei comandi shell
  • image_generation — Generazione di immagini
  • mcp — Strumenti del protocollo di contesto del modello
  • web_search — Ricerca Web

Risorse aggiuntive