Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam artikel ini, Anda akan belajar bagaimana menulis permintaan kueri untuk Foundation Models yang dioptimalkan untuk tugas penalaran, dan mengirimkannya ke endpoint API Foundation Model Anda.
MOSAIC AI Foundation Model API menyediakan API terpadu untuk berinteraksi dengan semua Model Foundation, termasuk model penalaran. Penalaran memberikan model dasar kemampuan yang lebih baik untuk mengatasi tugas-tugas yang kompleks. Beberapa model juga memberikan transparansi dengan mengungkapkan proses pemikiran langkah demi langkah mereka sebelum memberikan jawaban akhir.
Jenis model penalaran
Ada dua jenis model, berbasis penalaran saja dan hibrid. Tabel berikut menjelaskan bagaimana model yang berbeda menggunakan pendekatan yang berbeda untuk mengontrol penalaran:
| Jenis model penalaran | Detail lebih lanjut | Contoh model | Parameter-parameternya |
|---|---|---|---|
| Penalaran hibrid | Mendukung balasan cepat dan instan dan penalaran yang lebih dalam saat diperlukan. | Model Claude seperti databricks-claude-sonnet-4-6, databricks-claude-sonnet-4-5, databricks-claude-sonnet-4, databricks-claude-opus-4-7, databricks-claude-opus-4-6, databricks-claude-opus-4-5, dan databricks-claude-opus-4-1. |
Sertakan parameter berikut untuk menggunakan penalaran hibrid:
|
| Hanya penalaran | Model-model ini selalu menggunakan penalaran internal dalam responsnya. | Model GPT OSS seperti databricks-gpt-oss-120b dan databricks-gpt-oss-20b. |
Gunakan parameter berikut dalam permintaan Anda:
|
Contoh kueri
Semua model penalaran diakses melalui endpoint penyelesaian percakapan.
Contoh model Claude
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="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
Parameter reasoning_effort untuk GPT-5.1 diatur ke none secara default, tetapi dapat diubah dalam permintaan. Upaya penalaran yang lebih tinggi dapat mengakibatkan respons yang lebih bijaksana dan akurat, tetapi dapat meningkatkan latensi dan penggunaan token.
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"
}'
Contoh model GPT OSS
Parameter reasoning_effort menerima "low", "medium" (default), atau "high" nilai. Upaya penalaran yang lebih tinggi dapat mengakibatkan respons yang lebih bijaksana dan akurat, tetapi dapat meningkatkan latensi dan penggunaan token.
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"
}'
Contoh model Gemini
Contoh ini menggunakan databricks-gemini-3-1-pro. Parameter reasoning_effort diatur ke "low" secara default, tetapi dapat digantikan pada permintaan ini seperti yang terlihat dalam contoh berikut.
curl -X POST "https://<workspace_host>/serving-endpoints/databricks-gemini-3-1-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"
}'
Respons API mencakup blok konten pemikiran dan teks:
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
)
Mengelola penalaran di beberapa percakapan
Bagian ini khusus untuk databricks-claude-sonnet-4-5 model.
Dalam percakapan multi-giliran, hanya blok penalaran yang terkait dengan sesi giliran asisten terakhir atau penggunaan alat yang terlihat oleh model dan dihitung sebagai token input.
Jika Anda tidak ingin meneruskan token penalaran kembali ke model (misalnya, Anda tidak memerlukannya untuk alasan atas langkah-langkah sebelumnya), Anda dapat menghilangkan blok penalaran sepenuhnya. Contohnya:
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)
Namun, jika Anda memerlukan model untuk beralasan atas proses penalaran sebelumnya - misalnya, jika Anda membangun pengalaman yang memunculkan penalaran menengahnya - Anda harus menyertakan pesan asisten lengkap yang tidak dimodifikasi, termasuk blok penalaran dari giliran sebelumnya. Berikut cara melanjutkan utas dengan pesan lengkap dari asisten:
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)
Bagaimana cara kerja model penalaran?
Model penalaran memperkenalkan token penalaran khusus selain token input dan output standar. Token ini memungkinkan model "berpikir" melalui perintah, memecahnya dan mempertimbangkan berbagai cara untuk merespons. Setelah proses penalaran internal ini, model menghasilkan jawaban akhirnya sebagai token output yang terlihat. Beberapa model, seperti databricks-claude-sonnet-4-5, menampilkan token penalaran ini kepada pengguna, sementara yang lain, seperti seri OpenAI o, membuangnya dan tidak mengeksposnya dalam output akhir.