Claude Fable 5.1 Pemikiran Terpelihara: Memperbaiki The Block Is Bound to a Different Conversation Claude Fable 5.1 introduces a breaking change that rejects thinking blocks bound to a different conversation, causing a 400 error for developers who modify message history between requests. The check is enforced for accounts created on or after August 31, 2026, and Anthropic plans to enforce it for all accounts in future models. Developers can opt out by setting the prefix_mismatch_behavior to 'drop_block' with the appropriate beta header. Jika Anda memindahkan pemandu agen ke Claude Fable 5.1 lalu menerima error 400 yang menyatakan bahwa blok pemikiran “terikat pada percakapan yang berbeda”, kode Anda kemungkinan mengubah riwayat percakapan antarpermintaan. Fable 5.1 adalah model Claude pertama yang menolak pola tersebut. Panduan ini menjelaskan penyebabnya, siapa yang terdampak, solusi cepat, dan pola riwayat hanya-tambah yang menjaga penalaran serta cache prompt tetap utuh. Pemeriksaan ini dijelaskan dalam dokumentasi pemikiran yang disimpan https://platform.claude.com/docs/en/build-with-claude/preserved-thinking dan Apa yang baru di Claude Fable 5.1 https://platform.claude.com/docs/en/models/fable-5-1/whats-new-fable-5-1 . Ini merupakan perubahan merusak ketiga dari tiga perubahan pada Fable 5.1. Untuk dua perubahan lainnya, baca panduan migrasi https://apidog.com/id/blog/claude-fable-5-1-migration?utm source=dev.to&utm medium=wanda&utm content=n8n-post-automation . messages.5.content.0: signature tidak valid di blok thinking . Blok terikat pada percakapan yang berbeda. Hapus blok, atau atur thinking.block binding.prefix mismatch behavior ke "drop block". Pengaturan tersebut memerlukan nilai thinking-binding-controls-2026-08-01 di header anthropic-beta . Ini adalah invalid request error 400 yang terjadi sebelum model menghasilkan output. Mengirim ulang badan permintaan yang sama akan gagal dengan cara yang sama. Path seperti messages.5.content.0 menunjukkan blok pemikiran pertama yang tidak lagi cocok. Pesan error juga dapat menyebut pesan pertama yang berubah—itulah petunjuk diagnosis utama. Kegagalan yang tampak serupa tetapi berbeda tidak menyebut “terikat pada percakapan yang berbeda”. Dalam kasus tersebut, tanda tangan mungkin rusak atau tidak dapat didekripsi, sehingga prefix mismatch behavior tidak berlaku. Setiap blok pemikiran Fable 5.1 memiliki tanda tangan yang mencatat: Saat transkrip dikirim kembali, API membandingkan prefiks tersebut secara byte-per-byte dengan prefiks yang menghasilkan blok. Anthropic menyebut dua alasan utama: Pemeriksaan diberlakukan pada akun yang dibuat pada atau setelah 31 Agustus 2026 , termasuk: Akun yang dibuat sebelum tanggal tersebut mencatat ketidakcocokan, tetapi hanya menolaknya jika permintaan mengatur thinking.block binding.prefix mismatch behavior , termasuk nilai "error" . Anthropic menyatakan bahwa model mendatang akan memberlakukan pemeriksaan ini untuk semua akun. Pemeriksaan ini tidak berlaku pada: Layanan tersebut menjaga prefiks percakapan tetap utuh. Claude Mythos 5.1 juga tidak menjalankan pemeriksaan ini, meskipun pengeditan riwayat tetap memulai ulang cache prompt. Kode apa pun yang membangun sendiri array messages dapat terdampak, termasuk: Jika Anda membuat alat yang menggunakan API key milik pengguna, akun mereka mungkin lebih baru dan sudah diberlakukan meskipun akun Anda belum. Uji dengan field binding yang diatur secara eksplisit. Untuk memeriksa apakah akun Anda sudah diberlakukan, kirim permintaan yang mengedit riwayat tanpa header beta. Error 400 yang meminta header tersebut berarti pemeriksaan sudah aktif. Blok berikutnya menjadi tidak valid jika Anda: Pola berikut mempertahankan validitas blok: role: "system" tanpa mengubah pesan sebelumnya. system , tools , dan messages , termasuk: max tokens output config effort tool choice metadata cache control .Pemeriksaan membandingkan percakapan yang Anda kirim, bukan salinan yang diedit oleh server. Setelah pemadatan sisi server, prefiks pemeriksaan dimulai dari blok pemadatan. drop block Kirim header beta berikut dan atur perilakunya secara eksplisit: response = client.beta.messages.create model="claude-fable-5-1", max tokens=16000, thinking={ "type": "adaptive", "block binding": { "prefix mismatch behavior": "drop block" } }, betas= "thinking-binding-controls-2026-08-01" , messages=history, for t in response.input transformations or : print t.type, t.path, t.reason Dengan "drop block" , API akan menghapus blok pertama yang tidak cocok beserta blok pemikiran setelahnya. Permintaan tetap dilanjutkan, dan setiap penghapusan dilaporkan melalui input transformations tingkat atas: { "input transformations": { "type": "thinking dropped", "path": "messages.1.content.0", "reason": "prefix binding mismatch" } } Perhatikan tiga hal: drop block —sehingga tetap lebih aman untuk mengatur field secara eksplisit. block binding tanpa header beta menghasilkan error: block binding: Extra inputs are not permitted Field reason membedakan dua kondisi: prefix binding mismatch : riwayat percakapan berubah. model binding mismatch : percakapan berpindah model, misalnya karena router, retry, atau fallback. Ini bukan bug pada kode riwayat Anda.Dengan header tersebut, setiap respons memiliki array input transformations . Array kosong berarti tidak ada blok yang dihapus. Gunakan drop block sebagai diagnostik dan jaring pengaman, bukan sebagai pola permanen. Jika riwayat dibatalkan pada setiap permintaan, penalaran model hilang di setiap giliran dan cache prompt dimulai ulang, sehingga biaya per tugas meningkat. Pada platform yang belum menyediakan kontrol ini—Microsoft Foundry saat peluncuran, sementara Bedrock dan Google Cloud menambahkannya berdasarkan model—hapus semua blok berikut dari riwayat: thinking redacted thinking Pertahankan blok: text tool use Lalu coba permintaan sekali lagi. Model akan menjawab tanpa penalaran yang dibawa dari blok sebelumnya. Ini adalah prosedur pemulihan satu kali, bukan pola implementasi produksi. Lakukan audit sebelum mengalihkan trafik ke Fable 5.1. Ambil badan permintaan persis selama beberapa giliran normal, termasuk pemadatan atau perubahan tools. Untuk setiap dua permintaan berurutan, bandingkan: messages .Semua harus identik secara byte hingga giliran baru ditambahkan. Jalankan sesi multi-giliran menggunakan: model: claude-fable-5-1 thinking.block binding.prefix mismatch behavior: drop block Catat input transformations pada setiap respons: prefix binding mismatch berarti sesuatu sebelum blok pada path tersebut berubah.Di CI, gunakan "error" agar perubahan riwayat langsung menyebabkan kegagalan. Atur field secara eksplisit di bawah header beta: "error" jika ketidakcocokan selalu berarti bug. "drop block" jika Anda lebih memilih penurunan kualitas daripada kegagalan permintaan.Pantau error 400 dan entri input transformations , termasuk pada akun lama yang mungkin hanya mencatat ketidakcocokan tanpa menolaknya. Di Apidog https://apidog.com/?utm source=dev.to&utm medium=wanda&utm content=n8n-post-automation , buat tes dua permintaan: drop block . input transformations berisi penghapusan.Simpan tes dalam koleksi agar setiap perubahan pada pemandu dapat diuji ulang. Anda juga dapat mengunduh Apidog https://apidog.com/download?utm source=dev.to&utm medium=wanda&utm content=n8n-post-automation . | Pola yang bermasalah | Gunakan pola ini | |---|---| | Mengedit system prompt di tengah sesi, misalnya tanggal atau mode baru | Bekukan system prompt di awal. Saat instruksi berubah, tambahkan {"role": "system", "content": "The current date is 2026-09-14."} sebagai pesan system tengah-percakapan. Pesan tersebut menjadi bagian dari prefiks berikutnya. | | Mengedit array tools di tengah sesi | Deklarasikan seluruh tool sejak awal dengan defer loading: true untuk tool yang awalnya tersembunyi. Gunakan blok tool addition dan tool removal dalam pesan role: "system" dengan beta mid-conversation-tool-changes-2026-07-01 . | | Menambahkan pengingat per giliran lalu menghapusnya | Gunakan pesan system cakupan giliran: {"role": "system", "clear at": "next user message", "content": "..."} dengan beta mid-conversation-system-clear-at-2026-08-21 . Biarkan salinan sebelumnya tetap berada di riwayat. | | Menghapus hasil tool lama di sisi klien | Gunakan pengeditan konteks sisi server dengan penghapusan hasil tool. | | Melakukan pemadatan di sisi klien | Gunakan compact-2026-01-12 . Parameter instructions dapat berisi prompt ringkasan Anda sendiri. Jika tetap menggunakan sisi klien, ganti seluruh riwayat dengan satu ringkasan dan giliran pengguna baru—jangan memutar ulang bagian lama. | file id , atau kirim data dalam base64.Dua pola pemadatan sisi klien berikut tetap rusak: Keduanya mengubah prefiks yang digunakan untuk menghasilkan blok pemikiran. Memotong giliran dari tengah transkrip juga membatalkan semua blok setelahnya. Gunakan pesan system tengah-percakapan untuk perubahan instruksi dan pengeditan konteks sisi server untuk penghapusan selektif. Pembacaan cache Fable 5.1 kini hanya $0,25 per juta token. Karena itu, pemadatan terlalu dini untuk menghemat biaya mungkin tidak lagi optimal. Eksperimenkan titik pemadatan yang lebih akhir. Semua perubahan yang membatalkan binding pada tabel sebelumnya juga memulai ulang cache prompt. Fable 5.1 membuat cache hit empat kali lebih murah daripada Fable 5, sehingga cache miss menjadi relatif lebih mahal. Pemandu hanya-tambah mendapatkan dua keuntungan: Lihat: Blok pemikiran Claude Fable 5.1 diputar ulang setelah system prompt, array tools, atau pesan sebelumnya berubah. Pada akun yang diberlakukan, API menolak permintaan dengan error 400. Akun yang dibuat pada atau setelah 31 Agustus 2026 di setiap platform. Akun lama hanya memberlakukannya jika thinking.block binding.prefix mismatch behavior diatur. Anthropic berencana menerapkannya pada semua akun untuk model mendatang. Kirim header beta thinking-binding-controls-2026-08-01 dan atur: prefix mismatch behavior: "drop block" API akan menghapus blok yang terdampak dan melanjutkan permintaan. Setelah itu, perbaiki kode yang mengedit riwayat agar penalaran dan cache tidak hilang pada setiap giliran. effort atau max tokens membatalkan blok pemikiran? Tidak. Parameter di luar system , tools , dan messages dapat berubah dengan bebas, begitu pula penanda cache control . Tidak. Pemeriksaan membandingkan percakapan sebelum pemadatan dan pengeditan konteks sisi server dilakukan. Pemadatan sisi klien yang mempertahankan giliran terbaru tetap membatalkan binding. Tidak. Mythos 5.1 tidak menjalankan pemeriksaan percakapan. Namun, blok pemikiran tetap terikat pada model yang memproduksinya, dan pengeditan riwayat tetap memulai ulang cache prompt.