Langsung ke konten

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?" }]
}
NilaiKapan digunakan
none / minimalJawaban tercepat dengan sedikit atau tanpa proses berpikir. Tidak semua model menerima keduanya.
lowPertanyaan sederhana yang terbantu oleh sedikit pemikiran.
mediumDefault yang masuk akal untuk sebagian besar pekerjaan.
highMasalah sulit: kode yang rumit, pembuktian, rencana panjang.
xhigh, maxTingkat 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 dengan finish_reason: "length".
  • Mulailah dari low atau medium dan 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.