Membangun dengan pemikiran yang diperluas
Pemikiran yang diperluas memberikan Claude 3.7 Sonnet kemampuan penalaran yang ditingkatkan untuk tugas-tugas kompleks, sambil juga memberikan transparansi ke dalam proses pemikiran langkah demi langkah sebelum memberikan jawaban akhirnya.
Bagaimana pemikiran yang diperluas bekerja
Ketika pemikiran yang diperluas diaktifkan, Claude membuat blok konten thinking
di mana ia mengeluarkan penalaran internalnya. Claude menggabungkan wawasan dari penalaran ini sebelum menyusun respons akhir.
Respons API akan menyertakan blok konten thinking
dan text
.
Dalam percakapan multi-giliran, hanya blok pemikiran yang terkait dengan sesi penggunaan alat atau giliran assistant
di posisi pesan terakhir yang terlihat oleh Claude dan ditagih sebagai token input; blok pemikiran yang terkait dengan pesan assistant
sebelumnya tidak terlihat oleh Claude selama sampling dan tidak ditagih sebagai token input.
Mengimplementasikan pemikiran yang diperluas
Tambahkan parameter thinking
dan anggaran token yang ditentukan untuk digunakan dalam pemikiran yang diperluas ke permintaan API Anda.
Parameter budget_tokens
menentukan jumlah maksimum token yang diizinkan Claude gunakan untuk proses penalaran internalnya. Anggaran yang lebih besar dapat meningkatkan kualitas respons dengan memungkinkan analisis yang lebih menyeluruh untuk masalah kompleks, meskipun Claude mungkin tidak menggunakan seluruh anggaran yang dialokasikan, terutama pada rentang di atas 32K.
budget_tokens
Anda harus selalu kurang dari max_tokens
yang ditentukan.
Respons API akan menyertakan blok konten thinking dan text:
Memahami blok pemikiran
Blok pemikiran merepresentasikan proses berpikir internal Claude. Untuk memungkinkan Claude bekerja melalui masalah dengan batasan internal minimal sambil mempertahankan standar keamanan kami dan API tanpa status kami, kami telah mengimplementasikan hal berikut:
- Blok pemikiran berisi bidang
signature
. Bidang ini menyimpan token kriptografis yang memverifikasi bahwa blok pemikiran dihasilkan oleh Claude, dan diverifikasi ketika blok pemikiran dikembalikan ke API. Saat streaming respons, tanda tangan ditambahkan melaluisignature_delta
di dalam eventcontent_block_delta
tepat sebelum eventcontent_block_stop
. Hanya diperlukan secara ketat untuk mengirimkan kembali blok pemikiran saat menggunakan penggunaan alat dengan pemikiran yang diperluas. Jika tidak, Anda dapat menghilangkan blok pemikiran dari giliran sebelumnya, atau biarkan API menghapusnya untuk Anda jika Anda mengirimkannya kembali. - Terkadang penalaran internal Claude akan ditandai oleh sistem keamanan kami. Ketika ini terjadi, kami mengenkripsi sebagian atau seluruh blok
thinking
dan mengembalikannya kepada Anda sebagai blokredacted_thinking
. Blok pemikiran yang diredaksi ini didekripsi ketika dikembalikan ke API, memungkinkan Claude untuk melanjutkan responsnya tanpa kehilangan konteks. - Blok
thinking
danredacted_thinking
dikembalikan sebelum bloktext
dalam respons.
Berikut contoh yang menunjukkan blok pemikiran normal dan yang diredaksi:
Melihat blok pemikiran yang diredaksi dalam output Anda adalah perilaku yang diharapkan. Model masih dapat menggunakan penalaran yang diredaksi ini untuk menginformasikan responsnya sambil mempertahankan pagar keamanan.
Jika Anda perlu menguji penanganan pemikiran yang diredaksi dalam aplikasi Anda, Anda dapat menggunakan string uji khusus ini sebagai prompt Anda: ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
Ketika mengirimkan blok thinking
dan redacted_thinking
kembali ke API dalam percakapan multi-giliran, Anda harus menyertakan blok lengkap yang tidak dimodifikasi kembali ke API untuk giliran asisten terakhir.
Ini penting untuk mempertahankan alur penalaran model. Kami menyarankan untuk selalu mengirimkan kembali semua blok pemikiran ke API. Untuk detail lebih lanjut, lihat bagian Mempertahankan blok pemikiran di bawah.
Saran untuk menangani pemikiran yang diredaksi dalam produksi
Saat membangun aplikasi yang menghadap pelanggan yang menggunakan pemikiran yang diperluas:
- Sadarilah bahwa blok pemikiran yang diredaksi berisi konten terenkripsi yang tidak dapat dibaca manusia
- Pertimbangkan untuk memberikan penjelasan sederhana seperti: “Beberapa penalaran internal Claude telah dienkripsi secara otomatis untuk alasan keamanan. Ini tidak mempengaruhi kualitas respons.”
- Jika menampilkan blok pemikiran kepada pengguna, Anda dapat memfilter blok yang diredaksi sambil mempertahankan blok pemikiran normal
- Bersikap transparan bahwa menggunakan fitur pemikiran yang diperluas terkadang dapat mengakibatkan beberapa penalaran dienkripsi
- Implementasikan penanganan kesalahan yang sesuai untuk mengelola pemikiran yang diredaksi tanpa merusak UI Anda
Streaming pemikiran yang diperluas
Ketika streaming diaktifkan, Anda akan menerima konten pemikiran melalui event thinking_delta
. Berikut cara menangani streaming dengan pemikiran:
Contoh output streaming:
Tentang perilaku streaming dengan pemikiran
Ketika menggunakan streaming dengan pemikiran yang diaktifkan, Anda mungkin memperhatikan bahwa teks terkadang tiba dalam potongan yang lebih besar yang bergantian dengan pengiriman token-per-token yang lebih kecil. Ini adalah perilaku yang diharapkan, terutama untuk konten pemikiran.
Sistem streaming perlu memproses konten dalam batch untuk kinerja optimal, yang dapat menghasilkan pola pengiriman yang “bongkah” ini. Kami terus bekerja untuk meningkatkan pengalaman ini, dengan pembaruan di masa depan yang berfokus pada membuat konten pemikiran mengalir lebih lancar.
Blok redacted_thinking
tidak akan memiliki delta terkait dan akan dikirim sebagai satu event.
Pertimbangan penting saat menggunakan pemikiran yang diperluas
Bekerja dengan anggaran pemikiran: Anggaran minimum adalah 1.024 token. Kami menyarankan untuk memulai dari minimum dan meningkatkan anggaran pemikiran secara bertahap untuk menemukan rentang optimal agar Claude dapat berkinerja baik untuk kasus penggunaan Anda. Jumlah token yang lebih tinggi mungkin memungkinkan Anda mencapai penalaran yang lebih komprehensif dan bernuansa, tetapi mungkin juga ada hasil yang berkurang tergantung pada tugas.
- Anggaran pemikiran adalah target daripada batas ketat - penggunaan token aktual dapat bervariasi berdasarkan tugas.
- Bersiaplah untuk waktu respons yang berpotensi lebih lama karena pemrosesan tambahan yang diperlukan untuk proses penalaran.
- Streaming diperlukan ketika
max_tokens
lebih besar dari 21.333.
Untuk anggaran pemikiran di atas 32K: Kami merekomendasikan menggunakan pemrosesan batch untuk beban kerja di mana anggaran pemikiran diatur di atas 32K untuk menghindari masalah jaringan. Permintaan yang mendorong model untuk berpikir di atas 32K token menyebabkan permintaan berjalan lama yang mungkin bertabrakan dengan batas waktu sistem dan batas koneksi terbuka.
Kompatibilitas pemikiran dengan fitur lain:
- Pemikiran tidak kompatibel dengan modifikasi
temperature
,top_p
, atautop_k
serta penggunaan alat yang dipaksakan. - Anda tidak dapat mengisi respons sebelumnya ketika pemikiran diaktifkan.
- Perubahan pada anggaran pemikiran membatalkan prefiks prompt yang di-cache yang menyertakan pesan. Namun, prompt sistem yang di-cache dan definisi alat akan terus bekerja ketika parameter pemikiran berubah.
Harga dan penggunaan token untuk pemikiran yang diperluas
Token pemikiran yang diperluas dihitung terhadap jendela konteks dan ditagih sebagai token output. Karena token pemikiran diperlakukan sebagai token output normal, mereka juga dihitung terhadap batas tarif Anda. Pastikan untuk memperhitungkan peningkatan penggunaan token ini saat merencanakan penggunaan API Anda.
Untuk Claude 3.7 Sonnet, harganya adalah:
Penggunaan token | Biaya |
---|---|
Token input | $3 / MTok |
Token output (termasuk token pemikiran) | $15 / MTok |
Penulisan cache prompt | $3.75 / MTok |
Pembacaan cache prompt | $0.30 / MTok |
Pemrosesan batch untuk pemikiran yang diperluas tersedia dengan diskon 50% dari harga ini dan sering selesai dalam waktu kurang dari 1 jam.
Semua token pemikiran yang diperluas (termasuk token pemikiran yang diredaksi) ditagih sebagai token output dan dihitung terhadap batas tarif Anda.
Dalam percakapan multi-giliran, blok pemikiran yang terkait dengan pesan asisten sebelumnya tidak ditagih sebagai token input.
Ketika pemikiran yang diperluas diaktifkan, prompt sistem khusus 28 atau 29 token secara otomatis disertakan untuk mendukung fitur ini.
Kemampuan output yang diperluas (beta)
Claude 3.7 Sonnet dapat menghasilkan respons yang jauh lebih panjang daripada model sebelumnya dengan dukungan hingga 128K token output (beta)—lebih dari 15x lebih panjang daripada model Claude lainnya. Kemampuan yang diperluas ini sangat efektif untuk kasus penggunaan pemikiran yang diperluas yang melibatkan penalaran kompleks, pembuatan kode yang kaya, dan pembuatan konten yang komprehensif.
Fitur ini dapat diaktifkan dengan mengirimkan header anthropic-beta
dari output-128k-2025-02-19
.
Ketika menggunakan pemikiran yang diperluas dengan output yang lebih panjang, Anda dapat mengalokasikan anggaran pemikiran yang lebih besar untuk mendukung penalaran yang lebih menyeluruh, sambil tetap memiliki token yang cukup tersedia untuk respons akhir.
Kami menyarankan menggunakan mode streaming atau batch dengan kemampuan output yang diperluas ini; untuk detail lebih lanjut lihat panduan kami tentang pertimbangan keandalan jaringan untuk permintaan panjang.
Menggunakan pemikiran yang diperluas dengan caching prompt
Caching prompt dengan pemikiran memiliki beberapa pertimbangan penting:
Penyertaan blok pemikiran dalam prompt yang di-cache
- Pemikiran hanya disertakan saat menghasilkan giliran asisten dan tidak dimaksudkan untuk di-cache.
- Blok pemikiran giliran sebelumnya diabaikan.
- Jika pemikiran dinonaktifkan, konten pemikiran apa pun yang dikirim ke API hanya diabaikan.
Aturan pembatalan cache
- Perubahan pada parameter pemikiran (mengaktifkan/menonaktifkan atau perubahan anggaran) membatalkan titik putus cache yang diatur dalam pesan.
- Prompt sistem dan alat mempertahankan caching bahkan ketika parameter pemikiran berubah.
Contoh caching prompt dengan pemikiran yang diperluas
Max tokens dan ukuran jendela konteks dengan pemikiran yang diperluas
Dalam model Claude yang lebih lama (sebelum Claude 3.7 Sonnet), jika jumlah token prompt dan max_tokens
melebihi jendela konteks model, sistem akan secara otomatis menyesuaikan max_tokens
agar sesuai dengan batas konteks. Ini berarti Anda dapat mengatur nilai max_tokens
yang besar dan sistem akan menguranginya secara diam-diam sesuai kebutuhan.
Dengan Claude 3.7 Sonnet, max_tokens
(yang mencakup anggaran pemikiran Anda ketika pemikiran diaktifkan) diterapkan sebagai batas ketat. Sistem sekarang akan mengembalikan kesalahan validasi jika token prompt + max_tokens
melebihi ukuran jendela konteks.
Bagaimana jendela konteks dihitung dengan pemikiran yang diperluas
Saat menghitung penggunaan jendela konteks dengan pemikiran yang diaktifkan, ada beberapa pertimbangan yang perlu diperhatikan:
- Blok pemikiran dari giliran sebelumnya dihapus dan tidak dihitung terhadap jendela konteks Anda
- Pemikiran giliran saat ini dihitung terhadap batas
max_tokens
Anda untuk giliran tersebut
Diagram di bawah ini menunjukkan manajemen token khusus ketika pemikiran yang diperluas diaktifkan:
Jendela konteks efektif dihitung sebagai:
Kami merekomendasikan menggunakan API penghitungan token untuk mendapatkan hitungan token yang akurat untuk kasus penggunaan spesifik Anda, terutama saat bekerja dengan percakapan multi-giliran yang menyertakan pemikiran.
Anda dapat membaca panduan kami tentang jendela konteks untuk penjelasan yang lebih mendalam.
Mengelola token dengan pemikiran yang diperluas
Mengingat perilaku jendela konteks dan max_tokens
baru dengan model pemikiran yang diperluas seperti Claude 3.7 Sonnet, Anda mungkin perlu:
- Lebih aktif memantau dan mengelola penggunaan token Anda
- Menyesuaikan nilai
max_tokens
seiring perubahan panjang prompt Anda - Berpotensi menggunakan endpoint penghitungan token lebih sering
- Sadar bahwa blok pemikiran sebelumnya tidak terakumulasi dalam jendela konteks Anda
Perubahan ini telah dibuat untuk memberikan perilaku yang lebih dapat diprediksi dan transparan, terutama karena batas token maksimum telah meningkat secara signifikan.
Pemikiran yang diperluas dengan penggunaan alat
Saat menggunakan pemikiran yang diperluas dengan penggunaan alat, perhatikan pola perilaku berikut:
-
Giliran asisten pertama: Ketika Anda mengirim pesan pengguna awal, respons asisten akan menyertakan blok pemikiran diikuti oleh permintaan penggunaan alat.
-
Giliran hasil alat: Ketika Anda mengirimkan pesan pengguna dengan blok hasil alat, pesan asisten berikutnya tidak akan berisi blok pemikiran tambahan.
Untuk memperluas di sini, urutan normal percakapan penggunaan alat dengan pemikiran mengikuti langkah-langkah ini:
- Pengguna mengirim pesan awal
- Asisten merespons dengan blok pemikiran dan permintaan alat
- Pengguna mengirim pesan dengan hasil alat
- Asisten merespons dengan panggilan alat lebih banyak atau hanya teks (tidak ada blok pemikiran dalam respons ini)
- Jika lebih banyak alat diminta, ulangi langkah 3-4 sampai percakapan selesai
Desain ini memungkinkan Claude untuk menunjukkan proses penalarannya sebelum membuat permintaan alat, tetapi tidak mengulangi proses pemikiran setelah menerima hasil alat. Claude tidak akan mengeluarkan blok pemikiran lain sampai setelah giliran user
non-tool_result
berikutnya.
Diagram di bawah ini mengilustrasikan manajemen token jendela konteks saat menggabungkan pemikiran yang diperluas dengan penggunaan alat:
Mempertahankan blok pemikiran
Selama penggunaan alat, Anda harus mengirimkan blok thinking
dan redacted_thinking
kembali ke API, dan Anda harus menyertakan blok lengkap yang tidak dimodifikasi kembali ke API. Ini penting untuk mempertahankan alur penalaran model dan integritas percakapan.
Meskipun Anda dapat menghilangkan blok thinking
dan redacted_thinking
dari giliran peran assistant
sebelumnya, kami menyarankan untuk selalu mengirimkan kembali semua blok pemikiran ke API untuk setiap percakapan multi-giliran. API akan:
- Secara otomatis memfilter blok pemikiran yang disediakan
- Menggunakan blok pemikiran yang relevan yang diperlukan untuk mempertahankan penalaran model
- Hanya menagih token input untuk blok yang ditampilkan kepada Claude
Mengapa blok pemikiran harus dipertahankan
Ketika Claude memanggil alat, ia menghentikan konstruksi respons untuk menunggu informasi eksternal. Ketika hasil alat dikembalikan, Claude akan melanjutkan membangun respons yang ada. Ini memerlukan pemeliharaan blok pemikiran selama penggunaan alat, karena beberapa alasan:
-
Kontinuitas penalaran: Blok pemikiran menangkap penalaran langkah demi langkah Claude yang mengarah ke permintaan alat. Ketika Anda mengirimkan hasil alat, menyertakan pemikiran asli memastikan Claude dapat melanjutkan penalarannya dari tempat ia berhenti.
-
Pemeliharaan konteks: Sementara hasil alat muncul sebagai pesan pengguna dalam struktur API, mereka adalah bagian dari alur penalaran yang berkelanjutan. Mempertahankan blok pemikiran mempertahankan alur konseptual ini di seluruh panggilan API yang beragam.
Penting: Saat menyediakan blok thinking
atau redacted_thinking
, seluruh urutan blok thinking
atau redacted_thinking
yang berurutan harus cocok dengan output yang dihasilkan oleh model selama permintaan asli; Anda tidak dapat mengatur ulang atau memodifikasi urutan blok ini.
Tips untuk memanfaatkan mode pemikiran yang diperluas dengan sebaik-baiknya
Untuk mendapatkan hasil maksimal dari pemikiran yang diperluas:
-
Tetapkan anggaran yang sesuai: Mulai dengan anggaran pemikiran yang lebih besar (16.000+ token) untuk tugas kompleks dan sesuaikan berdasarkan kebutuhan Anda.
-
Bereksperimen dengan anggaran token pemikiran: Model mungkin berkinerja berbeda pada pengaturan anggaran pemikiran maksimum yang berbeda. Meningkatkan anggaran pemikiran maksimum dapat membuat model berpikir lebih baik/keras, dengan trade-off latensi yang meningkat. Untuk tugas penting, pertimbangkan untuk menguji pengaturan anggaran yang berbeda untuk menemukan keseimbangan optimal antara kualitas dan kinerja.
-
Anda tidak perlu menghapus blok pemikiran sebelumnya sendiri: API Anthropic secara otomatis mengabaikan blok pemikiran dari giliran sebelumnya dan mereka tidak disertakan saat menghitung penggunaan konteks.
-
Pantau penggunaan token: Pantau penggunaan token pemikiran untuk mengoptimalkan biaya dan kinerja.
-
Gunakan pemikiran yang diperluas untuk tugas yang sangat kompleks: Aktifkan pemikiran untuk tugas yang mendapat manfaat dari penalaran langkah demi langkah seperti matematika, pengkodean, dan analisis.
-
Perhitungkan waktu respons yang diperpanjang: Pertimbangkan bahwa menghasilkan blok pemikiran dapat meningkatkan waktu respons keseluruhan.
-
Tangani streaming dengan tepat: Saat streaming, bersiaplah untuk menangani blok konten pemikiran dan teks saat mereka tiba.
-
Rekayasa prompt: Tinjau tips prompt pemikiran yang diperluas kami jika Anda ingin memaksimalkan kemampuan berpikir Claude.
Langkah selanjutnya
Was this page helpful?