Reasoning
Model reasoning berpikir sebelum menjawab: model menguraikan masalah dalam langkah-langkah yang tersembunyi atau terlihat, lalu memberikan balasan. Hasilnya, model jauh lebih andal untuk matematika, kode, perencanaan, dan pertanyaan multi-langkah, dengan konsekuensi tambahan token output dan waktu.
Model yang mendukung reasoning memiliki capabilities.reasoning: true di daftar model. Banyak model melakukan reasoning secara default; parameter di bawah ini memungkinkan Anda menaikkan, menurunkan, atau mematikannya.
Chat Completions: reasoning_effort
{
"model": "gpt-5.5",
"reasoning_effort": "high",
"messages": [{ "role": "user", "content": "How many weekdays are there between 3 March and 17 April 2027?" }]
}
| Nilai | Kapan digunakan |
|---|---|
none / minimal | Jawaban tercepat dengan sedikit atau tanpa proses berpikir. Tidak semua model menerima keduanya. |
low | Pertanyaan sederhana yang terbantu oleh sedikit pemikiran. |
medium | Default yang masuk akal untuk sebagian besar pekerjaan. |
high | Masalah sulit: kode yang rumit, pembuktian, rencana panjang. |
xhigh, max | Tingkat terdalam, pada model yang menyediakannya. |
Setiap model menerima nilai yang berbeda. Nilai yang tidak didukung oleh suatu model akan ditolak dengan 400, jadi periksa halaman model tersebut sebelum mengandalkan pengaturan ekstrem.
Responses API: reasoning.effort
{
"model": "gpt-5.5",
"reasoning": { "effort": "medium" },
"input": "Plan a three-step migration from REST to gRPC."
}
Messages API: extended thinking
Pada format Anthropic, aktifkan thinking dengan anggaran token. Anggaran tersebut harus lebih kecil dari max_tokens:
{
"model": "claude-opus-4-8",
"max_tokens": 16000,
"thinking": { "type": "enabled", "budget_tokens": 8000 },
"messages": [{ "role": "user", "content": "Find the bug in this function: ..." }]
}
Balasan berisi blok thinking sebelum blok text. Saat Anda melanjutkan percakapan yang menggunakan thinking dengan tool, kirim kembali blok-blok tersebut tanpa diubah.
Apa yang Anda terima dan berapa biayanya
Token reasoning adalah token output: token ini ditagih sesuai harga output model, bahkan ketika reasoning-nya sendiri tidak ditampilkan. Token ini dilaporkan secara terpisah agar Anda dapat melihat ke mana token digunakan:
"usage": {
"prompt_tokens": 42,
"completion_tokens": 1180,
"total_tokens": 1222,
"completion_tokens_details": { "reasoning_tokens": 960 }
}
Log permintaan Anda juga menampilkan token reasoning untuk setiap permintaan.
Apakah teks reasoning itu sendiri dikembalikan bergantung pada model. Sebagian model mengembalikan ringkasan atau reasoning lengkap bersama jawabannya; yang lain menyembunyikannya dan hanya melaporkan jumlah token.
Tips
- Sisakan ruang di
max_tokens. Reasoning ikut dihitung di dalamnya, dan model yang menghabiskan anggarannya untuk berpikir akan mengembalikan jawaban kosong atau terpotong denganfinish_reason: "length". - Mulailah dari
lowataumediumdan naikkan hanya jika jawaban kurang memadai. Effort yang lebih tinggi dapat melipatgandakan token output. - Untuk agent yang memanggil banyak tool, effort yang lebih rendah per langkah sering kali lebih cepat dan lebih murah secara keseluruhan.