Fråga en modell med Open Responses API

Den här artikeln beskriver hur du frågar efter grundmodeller med hjälp av API:et Öppna svar och beskriver det providerspecifika beteende som du ska ta hänsyn till när du gör det.

Open Responses API är en öppen implementation för flera leverantörer av ett förfrågningsformat i responses-stil. Det använder ett input fält i stället för messages och returnerar en strukturerad output matris. Skicka begäranden till sökvägen /serving-endpoints/open-responses med namnet på modellserveringsslutpunkten i fältet model i begärandetexten.

Note

För OpenAI-modeller använder du OpenAI-svars-API:et direkt. Den vägen är en inbyggd vidarebefordran och stöder hela uppsättningen OpenAI Responses-parametrar och verktyg. Den här artikeln beskriver API:et öppna svar, som fungerar mellan olika leverantörer men stöder en prioriterad funktionsuppsättning.

Exempelförfrågningar

I följande exempel efterfrågas en grundmodellslutpunkt med API:et Öppna svar.

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

Svaret är ett response objekt med en output matris. För direktuppspelningsbegäranden (stream: true) är svaret en text/event-stream där varje händelse är ett svarssegment.

Providerspecifikt beteende

Databricks översätter begäran om öppna svar till varje providers interna format. Beteendet är konsekvent för de flesta begäranden, men följande providerspecifika skillnader gäller.

Alla leverantörer

  • Konversationer är tillståndslösa. previous_response_id och lagring av konversationer på serversidan stöds inte. Skicka hela konversationen i fältet input på varje tur.
  • Vissa OpenAI-specifika fält accepteras men ignoreras på icke-OpenAI-leverantörer. Fält som user, safety_identifier, metadataoch truncation returneras i svaret för portabilitet men ändrar inte providerbeteendet.

Modeller som driftas av Databricks (öppen källkod)

  • Funktionsstöd är per modell. Funktionsanrop, resonemang, strukturerade utdata och bildindata aktiveras per modell. En begäran som använder en funktion som modellen inte stöder returnerar ett fel. En modell som stöder resonemang kanske till exempel inte stöder bildindata.
  • Bildindata måste vara en URL eller data-URI. Ange bilder via image_url som en https URL eller en data: URI. Filreferenser (file_id) och dokumentindata (input_file) stöds inte.

Antropiska Claude-modeller

  • Temperaturen använder en 0–2-skala. Claude använder ett inbyggt 0–1-intervall, så Databricks skalar om värdet genom att halvera det –temperature: 1.0 beter sig som 0.5.
  • Resonemang fram och tillbaka mellan turer. Om du vill låta modellen resonera över sitt tidigare tänkande i en konversation med flera turer skickar du de returnerade reasoning objekten – med oförändrade encrypted_content – tillbaka i nästa begärans input. Se Frågeresonerande modeller.
  • Bild- och dokumentindata måste vara base64-data-URI:er. Ange bilder via image_url som en base64-data:-URI och dokument via file_data som en base64-data:-URI. https URL:er och file_id referenser stöds inte.
  • Strukturerade utdata har begränsningar. text.format av typen json_schema stöds, men json_object är inte och returnerar ett fel. Strukturerade utdata kan inte kombineras med direktuppspelning eller med resonemang, och du kan inte fästa på tool_choice ett specifikt verktyg när du använder det. Se Strukturerade utdata på Azure Databricks.
  • Resonemangstoken ingår i usage.output_tokens och redovisas inte separat.

Google Gemini-modeller

  • Temperaturen använder en 0–2-skala. Gemini använder ett inbyggt 0–1-intervall, så Databricks skalar om värdet genom att halvera det –temperature: 1.0 beter sig som 0.5.
  • Resonemang fram och tillbaka mellan turer. Om du vill låta modellen resonera över sitt tidigare tänkande i en konversation med flera turer skickar du de returnerade reasoning objekten – med oförändrade encrypted_content – tillbaka i nästa begärans input. Se Frågeresonerande modeller.
  • Bildindata accepterar både https URL:er och base64-data-URI:er.
  • Resonemangstoken rapporteras i usage.output_tokens_details.reasoning_tokens.

Important

Verktygsanrop i flera steg med Gemini kräver att encrypted_content bevaras. Gemini returnerar ett encrypted_content värde för varje function_call objekt som skapas. När du skickar tillbaka verktygets resultat för nästa tur måste du inkludera det ursprungliga function_call objektet med dess encrypted_content fält oförändrat. Agentramverk som rekonstruerar verktygsanrop från endast name, argumentsoch call_id släpper det här fältet, vilket gör att uppföljningsbegäran avvisas.

I följande exempel bevaras function_call objektet (med dess encrypted_content) när verktygets resultat returneras:

{
  "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

API:et Open Responses stöder function-type-verktyg mellan leverantörer. Mer information och vilka modeller som stöds finns i Funktionsanrop på Azure Databricks. Det inbyggda verktyget för webbsökning finns i Webbsökning på Azure Databricks.

Andra inbyggda och anpassade verktygstyper (till exempel custom, apply_patch, image_generationoch mcp) är endast tillgängliga via OPENAI-svars-API:et.

Modeller som stöds

Open Responses API finns tillgängligt för Databricks grundmodeller, inklusive Anthropic Claude, Google Gemini och öppna modeller som hostas av Databricks, och stödet kommer också att omfatta nya modeller framöver. Den aktuella listan över tillgängliga modeller finns i Grundläggande modelltyper.

Funktionsstöd, till exempel funktionsanrop, resonemang, strukturerade utdata och bildindata, beror på den underliggande modellen. Se Providerspecifikt beteende.

Indatatyper som stöds

Stöd för indata beror på modellen och leverantören. Textinmatning stöds av alla modeller. För bildindata, se de leverantörsspecifika anmärkningarna i Leverantörsspecifikt beteende och kraven på format och storlek i Fråga visionsmodeller. Information om indatatyper per modell finns för grundmodeller som är värdbaserade av Databricks och tillgängliga via Foundation Model-API:er.

Ytterligare resurser