Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här artikeln lär du dig hur man skriver frågeförfrågningar för grundmodeller optimerade för resonemangsuppgifter och som hanteras av Unity Gateway.
Tip
Genie Code (agentläge) kan göra detta åt dig. Prova den här exempelprompten:
Query the databricks-claude-sonnet-4-5 model using the OpenAI client with extended thinking enabled (budget_tokens set to 10240). Send a reasoning question and print both the thinking summary and the final answer.
Databricks Foundation Model API tillhandahåller ett enhetligt API för att interagera med alla Foundation-modeller, inklusive resonemangsmodeller. Resonemang ger grundläggande modeller förbättrade funktioner för att hantera komplexa uppgifter. Vissa modeller ger också transparens genom att avslöja sin stegvisa tankeprocess innan de levererar ett slutgiltigt svar.
Typer av resonemangsmodeller
Det finns två typer av modeller, endast resonemang och hybrid. I följande tabell beskrivs hur olika modeller använder olika metoder för att styra resonemang:
| Typ av resonemangsmodell | Detaljer | Modellexempel | Parameterar |
|---|---|---|---|
| Hybridskäl | Denna modell stödjer adaptivt tänkande för djupare resonemang, och tänkande kan inaktiveras för snabbare svar. | databricks-claude-haiku-5-5 |
Använd följande parametrar med Anthropic Messages API:et:
|
| Endast resonemang | Denna modell använder adaptivt tänkande för varje begäran, och resonemang kan inte inaktiveras. | databricks-claude-opus-5-5 |
Använd följande parametrar med Anthropic Messages API:et:
|
| Endast resonemang | Denna modell använder alltid adaptivt tänkande, och resonemang kan inte inaktiveras. | databricks-claude-fable-5-1 |
Använd följande parametrar med Anthropic Messages API:et:
|
| Hybridskäl | Stöder både snabba, omedelbara svar och djupare resonemang när det behövs. |
|
Parametrarna varierar beroende på modell:
|
| Endast resonemang | Dessa modeller använder alltid interna resonemang i sina svar. | GPT OSS-modeller som databricks-gpt-oss-120b och databricks-gpt-oss-20b. |
Använd följande parameter i din begäran:
|
Frågeexempel
Anmärkning
Följande exempel baseras på Unity Gateway och modelltjänster. Om du använder modell som betjänar slutpunkter i stället för modelltjänster ersätter du modelltjänstens namn med ett slutpunktsnamn. Se Detaljerad lista över modeller som stöds av Databricks Foundation Model API:er för en lista över tillgängliga grundmodeller samt deras modelltjänst- och slutpunktsnamn.
De flesta resonerande modeller använder slutpunkten för chattkompletteringar. Claude Haiku 5.5, Claude Opus 5.5 och Claude Fable 5.1 använder Anthropic Messages API, som visas i deras exempel.
Claude-modellexempel
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get('YOUR_DATABRICKS_TOKEN'),
base_url=os.environ.get('YOUR_DATABRICKS_BASE_URL')
)
response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[{"role": "user", "content": "Why is the sky blue?"}],
max_tokens=20480,
extra_body={
"thinking": {
"type": "enabled",
"budget_tokens": 10240
}
}
)
msg = response.choices[0].message
reasoning = msg.content[0]["summary"][0]["text"]
answer = msg.content[1]["text"]
print("Reasoning:", reasoning)
print("Answer:", answer)
Modellexempel för Claude Haiku 5.5
Claude Haiku 5.5 stödjer adaptivt tänkande. Sätt output_config.effort till low, medium, eller high för att kontrollera resonemangsdjupet. Databricks använder medium när du utelämnar denna parameter. För att inaktivera resonemang, sätt thinking.type till disabled och utelämna output_config.
curl -X POST "https://<workspace_host>.databricks.com/serving-endpoints/anthropic/v1/messages" \
-u token:$DATABRICKS_TOKEN \
-H "Content-Type: application/json" \
-H "anthropic-beta: effort-2025-11-24" \
-d '{
"model": "databricks-claude-haiku-5-5",
"max_tokens": 4096,
"thinking": {
"type": "adaptive"
},
"output_config": {
"effort": "high"
},
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
]
}'
Exempel på Claude Opus 5.5-modellen
Claude Opus 5.5 använder adaptivt tänkande för varje begäran. Ställ in high på xhigh, max, medium, low eller output_config.effort för att styra resonemangsdjupet. Databricks använder medium när du utelämnar denna parameter.
curl -X POST "https://<workspace_host>.databricks.com/ai-gateway/anthropic/v1/messages" \
-u token:$DATABRICKS_TOKEN \
-H "Content-Type: application/json" \
-H "anthropic-beta: effort-2025-11-24" \
-d '{
"model": "databricks-claude-opus-5-5",
"max_tokens": 4096,
"thinking": {
"type": "adaptive"
},
"output_config": {
"effort": "high"
},
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
]
}'
Exempel på Claude Fable 5.1-modellen
Claude Fable 5.1 använder alltid adaptivt tänkande. Ställ in high på xhigh, max, medium, low eller output_config.effort för att styra resonemangsdjupet.
curl -X POST "https://<workspace_host>.databricks.com/ai-gateway/anthropic/v1/messages" \
-u token:$DATABRICKS_TOKEN \
-H "Content-Type: application/json" \
-H "anthropic-beta: effort-2025-11-24" \
-d '{
"model": "databricks-claude-fable-5-1",
"max_tokens": 4096,
"thinking": {
"type": "adaptive"
},
"output_config": {
"effort": "high"
},
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
]
}'
GPT-5.1
Parametern reasoning_effort för GPT-5.1 är inställd none på som standard, men kan åsidosättas i begäranden. Högre resonemang kan resultera i mer eftertänksamma och korrekta svar, men kan öka svarstiden och tokenanvändningen.
curl -X POST "https://<workspace_host>/ai-gateway/mlflow/v1/chat/completions" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "system.ai.gpt-5-1",
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
],
"max_tokens": 4096,
"reasoning_effort": "none"
}'
GPT OSS-modellexempel
Parametern reasoning_effort accepterar "low", "medium" (standard) eller "high" värden. Högre resonemang kan resultera i mer eftertänksamma och korrekta svar, men kan öka svarstiden och tokenanvändningen.
curl -X POST "https://<workspace_host>/ai-gateway/mlflow/v1/chat/completions" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "system.ai.gpt-oss-120b",
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
],
"max_tokens": 4096,
"reasoning_effort": "high"
}'
Exempel på Gemini-modell
I det här exemplet används system.ai.gemini-3-1-pro. Parametern reasoning_effort är inställd "low" på som standard, men kan åsidosättas i begäranden enligt följande exempel.
curl -X POST "https://<workspace_host>/ai-gateway/mlflow/v1/chat/completions" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"model": "system.ai.gemini-3-1-pro",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Why is the sky blue?"
}
],
"max_tokens": 2000,
"stream": true,
"reasoning_effort": "high"
}'
API-svaret innehåller både block för tankeinnehåll och textinnehåll.
ChatCompletionMessage(
role="assistant",
content=[
{
"type": "reasoning",
"summary": [
{
"type": "summary_text",
"text": ("The question is asking about the scientific explanation for why the sky appears blue... "),
"signature": ("EqoBCkgIARABGAIiQAhCWRmlaLuPiHaF357JzGmloqLqkeBm3cHG9NFTxKMyC/9bBdBInUsE3IZk6RxWge...")
}
]
},
{
"type": "text",
"text": (
"# Why the Sky Is Blue\n\n"
"The sky appears blue because of a phenomenon called Rayleigh scattering. Here's how it works..."
)
}
],
refusal=None,
annotations=None,
audio=None,
function_call=None,
tool_calls=None
)
Hantera resonemang över flera turer
Det här avsnittet är specifikt för databricks-claude-sonnet-4-5 modellen.
I konversationer med flera turer är endast de resonemangsblock som är associerade med den senaste assistentsvängen eller verktygsanvändningssessionen synliga för modellen och räknas som indatatoken.
Om du inte vill skicka tillbaka resonemangstoken till modellen (du behöver till exempel inte resonera över dess tidigare steg) kan du utelämna resonemangsblocket helt och hållet. Till exempel:
response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{"role": "user", "content": "Why is the sky blue?"},
{"role": "assistant", "content": text_content},
{"role": "user", "content": "Can you explain in a way that a 5-year-old child can understand?"}
],
max_tokens=20480,
extra_body={
"thinking": {
"type": "enabled",
"budget_tokens": 10240
}
}
)
answer = response.choices[0].message.content[1]["text"]
print("Answer:", answer)
Men om du behöver att modellen resonerar över dess tidigare resonemangsprocess - till exempel om du skapar upplevelser som visar dess mellanliggande resonemang - måste du inkludera det fullständiga, oförändrade assistentmeddelandet, inklusive resonemangsblocket från föregående tur. Så här fortsätter du med en tråd med det fullständiga assistentmeddelandet:
assistant_message = response.choices[0].message
response = client.chat.completions.create(
model="system.ai.claude-sonnet-4-5",
messages=[
{"role": "user", "content": "Why is the sky blue?"},
{"role": "assistant", "content": text_content},
{"role": "user", "content": "Can you explain in a way that a 5-year-old child can understand?"},
assistant_message,
{"role": "user", "content": "Can you simplify the previous answer?"}
],
max_tokens=20480,
extra_body={
"thinking": {
"type": "enabled",
"budget_tokens": 10240
}
}
)
answer = response.choices[0].message.content[1]["text"]
print("Answer:", answer)
Öppna svars-API
När du använder API:et Öppna svar returneras resonemang som reasoning objekt i svaret output. Om du vill låta modellen resonera över sitt tidigare tänkande i en senare tur inkluderar du dessa reasoning objekt – med fältet encrypted_content oförändrat – i nästa begärans input.
Ett reasoning objekt som returneras i svarsutdata har följande form:
{
"type": "reasoning",
"id": "rs_abc123",
"content": [{ "type": "reasoning_text", "text": "Let me work through the question..." }],
"encrypted_content": "<opaque-provider-signature>"
}
Om du vill fortsätta konversationen skickar du utdata från föregående tur i input, med objektet reasoning bevarat ordagrant:
{
"model": "databricks-claude-sonnet-4-5",
"input": [
{ "role": "user", "content": "Why is the sky blue?" },
{
"type": "reasoning",
"id": "rs_abc123",
"content": [{ "type": "reasoning_text", "text": "Let me work through the question..." }],
"encrypted_content": "<opaque-provider-signature>"
},
{ "role": "assistant", "content": "The sky is blue because of Rayleigh scattering..." },
{ "role": "user", "content": "Can you explain it for a five-year-old?" }
]
}
Värdet encrypted_content innehåller leverantörsspecifik resonemangsstatus. Om den tas bort eller ändras kan modellen inte resonera över sitt tidigare tänkande. Detta gäller för Anthropic Claude- och Google Gemini-modeller.
Hur fungerar en resonemangsmodell?
Resonemangsmodeller introducerar särskilda resonemangstoken utöver standardtoken för in- och utdata. Dessa token låter modellen "tänka" genom prompten, dela upp den och överväga olika sätt att svara. Efter den här interna resonemangsprocessen genererar modellen sitt slutliga svar som synliga utdatatoken. Vissa modeller, till exempel databricks-claude-sonnet-4-5, visar dessa resonemangstoken för användare, medan andra, till exempel OpenAI o-serien, tar bort dem och inte exponerar dem i de slutliga utdata.