Panduan Cache Kode Claude oleh Insinyur Anthropic yang Menghemat 300 Juta Token Seminggu

Judul asli: How Anthropic Engineers Actually Save Tokens
Penulis asli: Nate Herk
Diterjemahkan: Peggy, BlockBeats

Catatan editor: Banyak orang yang menggunakan Claude Code, pengalaman paling langsung adalah konsumsi Token yang terlalu cepat, dan sesi panjang mudah menghabiskan kuota. Tapi dari sudut pandang insinyur Anthropic, yang benar-benar mempengaruhi biaya seringkali bukan berapa banyak kode yang kamu tulis, melainkan apakah sistem mampu terus-menerus menggunakan kembali konteks yang sudah diproses.

Inti dari artikel ini adalah bagaimana menggunakan mekanisme cache untuk menghemat Token. Penulis dalam seminggu berhasil menghemat lebih dari 3 miliar Token melalui cache, dengan volume cache harian mencapai 91 juta. Karena biaya Token yang di-cache hanya 10% dari Token input biasa, ini berarti 91 juta Token yang di-cache secara biaya sebenarnya setara dengan sekitar 9 juta Token biasa. Sesi panjang Claude Code tampak lebih "tahan lama" bukan karena model bekerja gratis, tetapi karena banyak konteks yang berulang berhasil digunakan kembali.

Kunci dari prompt caching adalah "jangan memutus cache". Claude Code akan menyimpan layer cache untuk pesan sistem, definisi alat, CLAUDE.md, aturan proyek, dan percakapan sejarah; selama prefix permintaan berikutnya tetap sama, Claude dapat langsung membaca cache, bukan memproses ulang seluruh konteks. Internal Anthropic juga memantau tingkat penggunaan kembali prompt cache, karena ini tidak hanya mempengaruhi kuota pengguna, tetapi juga langsung berkaitan dengan biaya layanan model dan efisiensi operasional.

Bagi pengguna biasa, tidak perlu memahami semua detail dasar, cukup kuasai beberapa kebiasaan kunci: jangan biarkan sesi kosong lebih dari 1 jam; lakukan serah terima sesi saat beralih tugas; hindari sering berganti model; dokumen besar sebaiknya dimasukkan ke Projects, bukan disalin berulang-ulang ke percakapan.

Artikel ini lebih dari sekadar berbicara tentang trik menghemat Token, melainkan menawarkan metode penggunaan Claude Code yang lebih mendekati pola pikir insinyur: anggap konteks sebagai aset, gunakan cache secara berkelanjutan, dan minimalkan pengulangan perhitungan dalam sesi panjang.

Berikut adalah teks asli:

Saya minggu ini menghemat 3 miliar Token, 91 juta per hari, lebih dari 3 miliar dalam seminggu.

Saya tidak mengubah pengaturan apa pun. Ini hanya prompt caching yang berfungsi normal di latar belakang.

Namun setelah saya benar-benar memahami apa itu cache dan bagaimana menghindari "memutus" cache, dalam batas kuota yang sama, sesi saya bisa berlangsung lebih lama. Jadi, saya buat panduan pengantar 80/20 untuk prompt caching Claude Code, tanpa menyentuh detail mendalam API.

TL;DR

Biaya Token yang di-cache hanya 10% dari Token input biasa. 91 juta Token yang di-cache, secara biaya sekitar 9 juta Token.

TTL cache untuk langganan Claude Code adalah 1 jam; API default 5 menit; Sub-agent selalu 5 menit.

Cache terbagi menjadi tiga lapisan: lapisan sistem, lapisan proyek, dan lapisan percakapan.

Berpindah model selama sesi akan merusak cache, termasuk saat mengaktifkan mode "opus plan".

Bagaimana cara menghitung biaya cache?

Setiap Token yang di-cache biayanya 10% dari Token input biasa.

Jadi, saat dashboard saya menunjukkan ada 91 juta Token yang di-cache pada hari tertentu, biaya sebenarnya sekitar 9 juta Token. Ini juga alasan mengapa saat menggunakan Claude Code dalam waktu lama, sesi terasa hampir "gratis" diperpanjang.

Di dashboard ada dua angka yang penting:

Cache create: biaya sekali saat menulis ke cache. Ini mulai berfungsi di percakapan berikutnya.
Cache read: Token yang Claude gunakan kembali dari cache, seperti CLAUDE.md, definisi alat, pesan sebelumnya, dll. Dibandingkan proses ulang sebagai input, biayanya 10 kali lebih murah.

Jika angka Cache read kamu tinggi, itu berarti kamu memanfaatkan cache secara efektif; jika rendah, berarti kamu membayar berulang untuk konteks yang sama.

Thariq dari Anthropic pernah berkata, "Kami sebenarnya memantau tingkat hit prompt cache, jika terlalu rendah, akan ada alarm, bahkan bisa memicu insiden tingkat SEV."

Dia juga menulis artikel bagus di X. Saat tingkat hit cache tinggi, empat hal terjadi bersamaan: Claude Code terasa lebih cepat, biaya layanan Anthropic menurun, kuota langganan lebih tahan lama, dan sesi pengkodean panjang menjadi lebih realistis.

Tapi jika tingkat hit rendah, semua orang akan dirugikan.

Jadi, insentif kedua belah pihak sebenarnya sama: Anthropic ingin tingkat hit cache lebih tinggi, dan kamu juga ingin tingkat hit lebih tinggi. Yang benar-benar menghambat adalah kebiasaan kecil yang tampaknya sepele tapi diam-diam mereset cache.

Bagaimana cache bertambah di setiap putaran percakapan?

Cache bergantung pada pencocokan awalan, yaitu "prefix matching".

Tanpa perlu masuk ke detail teknis terlalu dalam, cukup pahami satu hal: selama bagian sebelum posisi tertentu sama persis dengan cache yang sudah ada, Claude bisa menggunakan kembali Token cache tersebut.

Sesi baru biasanya berjalan seperti ini:

Menurut dokumentasi Claude Code, sesi baru biasanya berjalan seperti ini:

Putaran pertama: belum ada cache sama sekali. Pesan sistem, konteks proyek (misalnya CLAUDE.md, memory, aturan), dan pesan pertama akan diproses ulang dan disimpan ke cache.

Putaran kedua: semua konten dari putaran pertama sudah di-cache. Claude cukup memproses balasan baru dan pesan berikutnya. Biaya di putaran ini jauh lebih rendah.

Putaran ketiga: sama seperti sebelumnya. Percakapan sebelumnya tetap di-cache, hanya interaksi terbaru yang perlu diproses ulang.

Cache sendiri terbagi menjadi tiga lapisan:

Dari artikel X Thariq:

Lapisan sistem (System layer): termasuk instruksi dasar, definisi alat (read, write, bash, grep, glob) dan gaya output. Lapisan ini adalah cache global.

Lapisan proyek (Project layer): termasuk CLAUDE.md, memory, aturan proyek. Lapisan ini di-cache per proyek.

Lapisan percakapan (Conversation): termasuk balasan dan pesan, yang akan terus bertambah setiap putaran.

Jika di tengah sesi, ada perubahan di lapisan sistem atau proyek, semua konten harus di-cache ulang dari awal. Ini adalah operasi yang paling "mahal". Bayangkan: sudah sampai pesan ke-16, tiba-tiba ubah pesan sistem, atau berhenti satu jam, semua Token dari pesan pertama harus diproses ulang.

Kebingungan antara 1 jam dan 5 menit

Ini bagian yang paling sering menimbulkan salah paham.

Claude Code langganan: TTL default adalah 1 jam.

Claude API: TTL default 5 menit. Kamu bisa bayar lebih untuk meningkatkannya menjadi 1 jam.
Sub-agent di semua plan: selalu 5 menit.

Chat di website Claude.ai: tidak ada catatan resmi. Mungkin sama seperti langganan, tapi saya belum konfirmasi.

Beberapa bulan lalu, banyak yang mengeluh kuota Claude cepat habis. Saat itu, ada yang mengira Anthropic diam-diam menurunkan TTL dari 1 jam ke 5 menit tanpa pemberitahuan. Tapi kenyataannya, TTL Claude Code tetap 1 jam.

Masalahnya, dokumentasi Claude Code dan API dipisah, dan keduanya memang berbeda, sehingga menimbulkan kebingungan.

Jika kamu menjalankan workflow Sub-agent dalam jumlah besar, atau langsung pakai API, angka 5 menit ini penting. Tapi untuk 95% pengguna Claude Code, yang perlu diperhatikan hanyalah jendela 1 jam itu.

Tiga kebiasaan untuk 95% pengguna

Ini adalah bagian yang saya rasa benar-benar berguna dalam penggunaan sehari-hari.

Jangan berhenti terlalu lama

Kalau sudah idle lebih dari satu jam, konten sebelumnya hampir pasti sudah kedaluwarsa dari cache. Pesan berikutnya akan membangun cache ulang. Dalam kondisi ini, lebih baik melakukan serah terima yang jelas dan mulai sesi baru, biasanya biayanya lebih murah.

Saat beralih tugas, langsung mulai ulang

/compact atau /clear memang akan merusak cache, jadi lebih baik lakukan saat ini juga.

Saya sendiri punya skill serah terima sesi, sebagai pengganti /compact. Ia akan merangkum apa yang sudah kita lakukan, keputusan yang masih tertunda, file penting, dan langkah selanjutnya. Lalu saya jalankan /clear, tempel rangkuman itu, dan bisa lanjut tanpa gangguan.

Perintah /compact kadang juga lambat. Skill serah terima ini biasanya selesai kurang dari satu menit.

Dalam percakapan Claude, dokumen besar sebaiknya dimasukkan ke Projects

Mechanisme cache di Claude.ai tidak dijelaskan secara resmi secara detail, tapi Projects jelas memiliki optimasi berbeda dari percakapan biasa. Jadi, jika ingin menempel dokumen besar, lebih baik masukkan ke Projects daripada langsung ke percakapan.

Apa saja yang bisa diam-diam merusak cache?

Beberapa hal bisa secara diam-diam mereset cache tanpa peringatan.

Berpindah model: karena cache bergantung pada pencocokan awalan, dan setiap model punya cache sendiri. Jika berganti model, permintaan berikutnya akan membaca seluruh riwayat tanpa cache.

Mode "Opus plan": pengaturan ini menggunakan Opus saat perencanaan dan Sonnet saat eksekusi. Saya pernah merekomendasikannya di video optimasi token, dan ada alasannya. Tapi perlu dipahami, setiap pergantian plan adalah pergantian model, yang berarti cache harus dibangun ulang. Secara jangka panjang, ini membantu memperpanjang kuota sesi, tapi kamu harus tahu apa yang terjadi di balik layar.

Mengedit CLAUDE.md di tengah sesi bisa dilakukan: perubahan ini tidak langsung berlaku, harus restart dulu. Jadi, cache yang sedang berjalan tidak terpengaruh.

Dashboard Token gratis saya

Screenshot yang saya tampilkan sebelumnya berasal dari sebuah dashboard token.

https://github.com/nateherkai/token-dashboard

Ini adalah repositori GitHub yang sangat sederhana. Kamu berikan link-nya ke Claude Code, dan biarkan dia deploy di localhost. Dia akan membaca semua riwayat percakapan kamu, bukan dari nol. Kamu bisa langsung melihat data input, output, cache create, dan cache read harian.

Tapi, perlu diingat: dashboard ini menghitung Token dari perangkat lokal. Jika kamu beralih dari desktop ke laptop, angka tidak akan sama persis. Setiap perangkat punya statistiknya sendiri.

Kesimpulan

Prompt caching adalah hal yang bisa dipelajari sangat mendalam. Artikel Thariq jauh lebih lengkap, jadi kalau ingin gambaran lengkap, sebaiknya dibaca.

Tapi, kamu tidak perlu memahami semua detail untuk mendapatkan manfaatnya. Cukup kuasai 80/20 paling penting: cache Token 10 kali lebih murah dari Token biasa; TTL Claude Code adalah 1 jam; pergantian model akan merusak cache; melakukan serah terima yang jelas antar tugas biasanya lebih hemat daripada menunggu cache "kadaluarsa" dan melanjutkan.

[Link artikel asli]

Klik untuk mengetahui posisi kerja BlockBeats yang sedang dibuka

Bergabunglah dengan komunitas resmi BlockBeats:

Telegram Grup Berlangganan: https://t.me/theblockbeats

Telegram Grup Diskusi: https://t.me/BlockBeats_App

Akun resmi Twitter: https://twitter.com/BlockBeatsAsia

Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 8
  • 2
  • Bagikan
Komentar
Tambahkan komentar
Tambahkan komentar
RouterWhisperer
· 2jam yang lalu
Penggunaan kembali cache adalah inti dari pengurangan biaya, 300 juta Token dalam seminggu terlalu berlebihan
Lihat AsliBalas0
YieldGoblin
· 11jam yang lalu
Kualitas kompilasi BlockBeats selalu terjaga, artikel informatif ini
Lihat AsliBalas0
GateUser-047cb6fc
· 11jam yang lalu
Hemat Token=Menghemat uang, pelajari langkah ini
Lihat AsliBalas0
Mint-ColoredSlippage
· 11jam yang lalu
Bukan Token yang mahal, tapi cara menggunakannya bodoh, apakah cache tidak menarik?
Lihat AsliBalas0
TheWindOnTheBridgeIsTooStrong.
· 12jam yang lalu
Pengalaman internal yang ditulis oleh orang dalam Anthropic, sangat bernilai sebagai referensi
Lihat AsliBalas0
0xSecondThought
· 12jam yang lalu
Akhirnya saya mengerti mengapa tagihan Claude Code saya begitu tidak masuk akal
Lihat AsliBalas0
MetalKeyInsomnia
· 12jam yang lalu
Pembunuh percakapan panjang akhirnya ditemukan
Lihat AsliBalas0
SoftRugDetective
· 12jam yang lalu
Menggunakan kembali konteks sistem, bukankah ini versi Redis dari LLM?
Lihat AsliBalas0
  • Disematkan