Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel leert u hoe u queryaanvragen schrijft voor basismodellen die zijn geoptimaliseerd voor redeneringstaken en deze naar uw Foundation Model API-eindpunt verzenden.
Mozaïek AI Foundation Model-API biedt een geïntegreerde API voor interactie met alle Foundation-modellen, inclusief redeneringsmodellen. Redenering biedt basismodellen verbeterde mogelijkheden om complexe taken aan te pakken. Sommige modellen bieden ook transparantie door hun stapsgewijze gedachteproces te onthullen voordat ze een definitief antwoord geven.
Typen redeneringsmodellen
Er zijn twee typen modellen, alleen redeneren en hybride. In de volgende tabel wordt beschreven hoe verschillende modellen verschillende benaderingen gebruiken om redenering te beheren:
| Type redeneringsmodel | Bijzonderheden | Voorbeelden van modellen | Parameterwaarden |
|---|---|---|---|
| Hybride redenering | Ondersteunt zowel snelle, directe antwoorden als diepere redenering wanneer dat nodig is. | Claude-modellen zoals databricks-claude-sonnet-4, databricks-claude-sonnet-4-5, databricks-claude-opus-4-5 en databricks-claude-opus-4-1. |
Neem de volgende parameters op om hybride redenering te gebruiken:
|
| Alleen redeneren | Deze modellen gebruiken altijd interne redenering in hun antwoorden. | GPT OSS-modellen zoals databricks-gpt-oss-120b en databricks-gpt-oss-20b. |
Gebruik de volgende parameter in uw aanvraag:
|
Queryvoorbeelden
Alle redeneringsmodellen worden geopend via het eindpunt voor voltooiing van de chat .
Voorbeeld van Claude-model
from openai import OpenAI
import base64
import httpx
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="databricks-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)
GPT-5.1
De reasoning_effort parameter voor GPT-5.1 is standaard ingesteld op none, maar kan bij aanvragen worden overschreven. Een hogere redenering kan leiden tot meer doordachte en nauwkeurige antwoorden, maar kan de latentie en het tokengebruik verhogen.
curl -X POST "https://<workspace_host>/serving-endpoints/databricks-gpt-5-1/invocations" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
],
"max_tokens": 4096,
"reasoning_effort": "none"
}'
Voorbeeld van GPT OSS-model
De reasoning_effort parameter accepteert "low", "medium" (standaard) of "high" waarden. Een hogere redenering kan leiden tot meer doordachte en nauwkeurige antwoorden, maar kan de latentie en het tokengebruik verhogen.
curl -X POST "https://<workspace_host>/serving-endpoints/databricks-gpt-oss-120b/invocations" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
],
"max_tokens": 4096,
"reasoning_effort": "high"
}'
Voorbeeld van Gemini-model
In dit voorbeeld wordt databricks-gemini-3-progebruikt. De reasoning_effort parameter is standaard ingesteld op "low", maar kan in verzoeken worden overschreven, zoals te zien is in het volgende voorbeeld.
curl -X POST "https://<workspace_host>/serving-endpoints/databricks-gemini-3-pro/invocations" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"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"
}'
Het API-antwoord bevat zowel denk- als tekstinhoudsblokken:
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
)
Redenering gedurende meerdere beurten beheren
Deze sectie is specifiek voor de databricks-claude-sonnet-4-5 model.
In gesprekken met meerdere beurten zijn alleen de redeneringsblokken die zijn gekoppeld aan de laatste beurt van de assistent of de hulpmiddelgebruik sessie zichtbaar voor het model en worden meegeteld als invoertokens.
Als u geen redeneringstokens wilt doorgeven aan het model (bijvoorbeeld omdat u niet wilt dat het redeneert over zijn eerdere stappen), kunt u het redeneringsblok helemaal weglaten. Voorbeeld:
response = client.chat.completions.create(
model="databricks-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)
Als u het model echter nodig hebt om na te denken over zijn vorige redeneringsproces - bijvoorbeeld als u ervaringen creëert die de tussenliggende redenering tonen - moet u het volledige, ongewijzigde assistentbericht opnemen, inclusief het redeneringsblok van de vorige beurt. U kunt als volgt een thread voortzetten met het volledige assistentbericht:
assistant_message = response.choices[0].message
response = client.chat.completions.create(
model="databricks-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)
Hoe werkt een redeneringsmodel?
Met redeneringsmodellen worden naast de standaardinvoer- en uitvoertokens speciale redeneringstokens geïntroduceerd. Met deze tokens kan het model de prompt doorlopen, opsplitsen en rekening houden met verschillende manieren om te reageren. Na dit interne redeneringsproces genereert het model het uiteindelijke antwoord als zichtbare uitvoertokens. Sommige modellen, zoals databricks-claude-sonnet-4-5, geven deze redeneringstokens weer aan gebruikers, terwijl andere, zoals de OpenAI o-serie, ze negeren en ze niet beschikbaar maken in de uiteindelijke uitvoer.