Biên tập viên lưu ý: Nhiều người sử dụng Claude Code cảm nhận rõ ràng nhất là tiêu tốn Token quá nhanh, các cuộc hội thoại dài dễ làm hết hạn mức. Nhưng theo góc nhìn của các kỹ sư Anthropic, yếu tố thực sự ảnh hưởng đến chi phí thường không phải là bạn đã viết bao nhiêu mã, mà là hệ thống có liên tục tái sử dụng ngữ cảnh đã xử lý hay không.
Nội dung cốt lõi của bài viết này là cách tiết kiệm Token thông qua cơ chế bộ nhớ đệm. Trong một tuần, tác giả đã tái sử dụng hơn 300 triệu Token thông qua bộ nhớ đệm, với lượng bộ nhớ đệm hàng ngày đạt 91 triệu. Do chi phí của Token bộ nhớ đệm chỉ bằng 10% so với Token đầu vào thông thường, điều này có nghĩa là 91 triệu Token bộ nhớ đệm thực tế tương đương với khoảng 9 triệu Token thông thường về mặt tính phí. Claude Code có vẻ “bền bỉ” hơn không phải vì mô hình hoạt động miễn phí, mà vì các ngữ cảnh lặp lại lớn đã được tái sử dụng thành công.
Chìa khóa của bộ nhớ đệm prompt là “đừng ngắt bộ nhớ đệm”. Claude Code sẽ phân tầng bộ nhớ đệm các lời nhắc hệ thống, định nghĩa công cụ, CLAUDE.md, quy tắc dự án và lịch sử hội thoại; chỉ cần tiền tố của các yêu cầu tiếp theo giữ nguyên, Claude có thể trực tiếp truy xuất bộ nhớ đệm thay vì xử lý lại toàn bộ ngữ cảnh. Anthropic cũng theo dõi tỷ lệ tái sử dụng bộ nhớ đệm prompt, vì điều này không chỉ ảnh hưởng đến hạn mức người dùng mà còn liên quan trực tiếp đến chi phí dịch vụ mô hình và hiệu suất vận hành.
Đối với người dùng thông thường, không cần hiểu tất cả các chi tiết nền tảng, chỉ cần nắm vững một vài thói quen then chốt: đừng để phiên làm việc trống quá 1 giờ; thực hiện session handoff khi chuyển nhiệm vụ; tránh chuyển đổi mô hình thường xuyên; hãy đưa tài liệu lớn vào Projects thay vì dán lặp lại vào cuộc hội thoại.
Bài viết này không chỉ nói về cách tiết kiệm token, mà còn cung cấp một phương pháp sử dụng Claude Code gần với tư duy kỹ sư hơn: coi ngữ cảnh như quản lý tài sản, duy trì tái sử dụng bộ nhớ đệm và giảm tính toán lặp lại trong các cuộc hội thoại dài.
The following is the original text:
Tôi đã tiết kiệm được 300 triệu Token trong tuần này, một ngày đạt 91 triệu, cả tuần vượt quá 300 triệu.

Tôi đã không thay đổi bất kỳ cài đặt nào. Đây chỉ là prompt caching hoạt động bình thường ở nền.
Nhưng sau khi tôi thực sự hiểu được cache là gì và cách tránh làm gián đoạn cache, tôi có thể kéo dài phiên của mình lâu hơn với cùng một mức sử dụng. Vì vậy, đây là hướng dẫn giới thiệu 80/20 về caching prompt của Claude Code, không đi sâu vào các chi tiết cấp API.
Tóm tắt ngắn
Chi phí lưu bộ nhớ đệm Token chỉ bằng 10% so với Token đầu vào thông thường. 91 triệu Token được lưu bộ nhớ đệm, chi phí thực tế tương đương khoảng 9 triệu Token.
Thời gian TTL của bộ nhớ đệm cho phiên bản đăng ký Claude Code là 1 giờ; API mặc định là 5 phút; Sub-agent luôn là 5 phút.
Bộ nhớ đệm được chia thành ba cấp: cấp hệ thống, cấp dự án, cấp hội thoại.
Việc chuyển đổi mô hình giữa chừng sẽ làm hỏng bộ nhớ đệm, bao gồm cả việc kích hoạt chế độ «opus plan».
Tính phí bộ nhớ đệm như thế nào?
Chi phí của mỗi Token được lưu trong bộ nhớ đệm là 10% chi phí của Token đầu vào thông thường.

Vì vậy, khi bảng điều khiển của tôi hiển thị rằng có 91 triệu Token được truy cập bộ nhớ đệm trong một ngày, chi phí thực tế chỉ tương đương với việc xử lý khoảng 9 triệu Token. Đó là lý do tại sao khi sử dụng Claude Code trong thời gian dài so với việc không có bộ nhớ đệm, bạn sẽ cảm thấy các phiên giao tiếp gần như được kéo dài miễn phí.
Có hai con số trên bảng điều khiển cần tập trung chú ý:
Cache create: Chi phí một lần phát sinh khi ghi nội dung vào bộ nhớ đệm. Nó sẽ bắt đầu phát huy tác dụng trong cuộc hội thoại tiếp theo.
Đọc từ bộ nhớ đệm: Các token được tái sử dụng từ Claude, chẳng hạn như CLAUDE.md, định nghĩa công cụ, các tin nhắn trước đó của bạn. Chi phí rẻ hơn 10 lần so với xử lý lại như đầu vào.

Nếu số Cache read của bạn cao, điều đó cho thấy bạn đang tận dụng hiệu quả bộ nhớ đệm; nếu số này thấp, nghĩa là bạn đang trả phí lặp lại cho cùng một bộ ngữ cảnh.
Thariq từ Anthropic có một câu khiến tôi ấn tượng sâu sắc: “Chúng tôi thực sự theo dõi tỷ lệ hit của prompt cache, và khi tỷ lệ này quá thấp, hệ thống sẽ kích hoạt cảnh báo, thậm chí tuyên bố sự cố cấp SEV.”
Anh ấy cũng đã viết một bài viết X rất hay. Khi tỷ lệ hit bộ nhớ đệm cao, bốn điều sau sẽ xảy ra đồng thời: Claude Code cảm thấy nhanh hơn, chi phí dịch vụ của Anthropic giảm xuống, hạn mức đăng ký của bạn trở nên bền bỉ hơn, và các phiên mã hóa kéo dài trở nên thực tế hơn.
Nhưng nếu tỷ lệ chính xác rất thấp, tất cả mọi người đều sẽ thiệt hại.

Vì vậy, động lực của cả hai bên thực chất là nhất quán: Anthropic mong muốn tỷ lệ hit cache của bạn cao hơn, và chính bạn cũng mong muốn tỷ lệ đó cao hơn. Những thói quen tưởng chừng nhỏ nhặt nhưng vô tình làm reset cache mới chính là yếu tố duy nhất làm giảm hiệu suất.
Bộ nhớ đệm tăng lên như thế nào trong từng cuộc hội thoại?
Cache relies on prefix matching, i.e., "prefix matching".
Bạn không cần đi sâu vào các chi tiết kỹ thuật, chỉ cần hiểu một điều: nếu nội dung trước đó tại một vị trí nào đó hoàn toàn giống với nội dung đã được lưu trong bộ nhớ đệm, Claude có thể tái sử dụng các Token được lưu trữ này.
Một phiên trò chuyện hoàn toàn mới, về cơ bản được triển khai như sau:

Theo tài liệu Claude Code, một phiên mới thường được chạy như sau:
Cuộc hội thoại đầu tiên: Chưa có bộ nhớ đệm nào. Các hướng dẫn hệ thống, ngữ cảnh dự án của bạn (ví dụ: CLAUDE.md, memory, quy tắc) và tin nhắn đầu tiên của bạn sẽ được xử lý lại và ghi vào bộ nhớ đệm.
Cuộc hội thoại thứ hai: Tất cả nội dung trong cuộc hội thoại đầu tiên hiện đã được lưu vào bộ nhớ đệm. Claude chỉ cần xử lý câu trả lời mới của bạn và tin nhắn tiếp theo. Chi phí cho vòng này sẽ thấp hơn nhiều.
Cuộc hội thoại thứ ba: Logic giống nhau. Các cuộc hội thoại trước vẫn được giữ trong bộ nhớ đệm, chỉ cần xử lý lại cuộc tương tác mới nhất.
Bộ nhớ đệm có thể được chia thành ba cấp độ:

Bài viết trên X của Thariq:
Lớp hệ thống (System layer): bao gồm các lệnh cơ bản, định nghĩa công cụ (read, write, bash, grep, glob) và phong cách đầu ra. Lớp này được lưu đệm toàn cục.
Lớp dự án (Project layer): bao gồm CLAUDE.md, memory, quy tắc dự án. Lớp này được lưu bộ nhớ đệm theo dự án.
Lớp hội thoại (Conversation): bao gồm các phản hồi và tin nhắn, sẽ tăng dần qua từng vòng hội thoại.
Nếu bất kỳ nội dung nào ở cấp hệ thống hoặc cấp dự án thay đổi giữa chừng, tất cả nội dung đều phải được làm mới hoàn toàn từ đầu. Đây là thao tác “đắt” nhất. Hãy tưởng tượng: bạn đã trò chuyện đến tin nhắn thứ 16, đột nhiên hệ thống thay đổi lời nhắc, hoặc dừng lại một giờ, thì tất cả các Token từ tin nhắn đầu tiên đều phải được xử lý lại.
Sự nhầm lẫn giữa 1 giờ và 5 phút
Đây là nơi dễ gây hiểu lầm nhất.
Bản đăng ký Claude Code: TTL mặc định là 1 giờ.
Claude API: TTL mặc định là 5 phút. Bạn có thể trả thêm chi phí để nâng lên 1 giờ.
Sub-agent dưới bất kỳ kế hoạch nào: luôn là 5 phút.
Cuộc trò chuyện trên web Claude.ai: Không có ghi chép chính thức. Có thể giống phiên bản đăng ký, nhưng tôi vẫn chưa xác nhận.
Vài tháng trước, nhiều người phàn nàn rằng hạn mức đăng ký Claude bị tiêu thụ quá nhanh. Lúc đó, có người cho rằng Anthropic đã lặng lẽ giảm TTL từ 1 giờ xuống còn 5 phút mà không thông báo cho người dùng. Nhưng sự thật không phải vậy, TTL của Claude Code vẫn là 1 giờ.
Vấn đề là tài liệu của Claude Code và API được tách riêng ra, trong khi hai thứ này vốn hoàn toàn khác nhau, dẫn đến nhiều sự nhầm lẫn.
Nếu bạn đang chạy nhiều luồng công việc Sub-agent hoặc sử dụng API trực tiếp, thì con số 5 phút này rất quan trọng. Nhưng đối với 95% người dùng Claude Code, điều thực sự cần quan tâm chỉ là khung giờ 1 giờ.
Ba thói quen của 95% người dùng
Dưới đây là những phần mà tôi cho là thực sự hữu ích trong sử dụng hàng ngày.
Đừng tạm dừng quá lâu
Nếu bạn đã không hoạt động hơn một giờ, nội dung trước đó hầu hết đã hết hạn trong bộ nhớ đệm. Tin nhắn tiếp theo của bạn sẽ xây dựng lại bộ nhớ đệm. Trong trường hợp này, thay vì tiếp tục khôi phục một phiên đã “nguội”, việc thực hiện một sự chuyển giao rõ ràng và bắt đầu một phiên mới thường có chi phí thấp hơn.
Khi chuyển nhiệm vụ, hãy bắt đầu lại ngay lập tức
/s2>/compact hoặc /clear vốn đã làm hỏng bộ nhớ đệm, nên tốt hơn hết là nhân dịp này thực hiện reset hoàn toàn.
Tôi đã tự tạo một kỹ năng chuyển giao phiên để thay thế /compact. Nó sẽ tóm tắt những gì chúng ta đã hoàn thành, những quyết định còn đang treo, những tài liệu nào quan trọng nhất, và nên tiếp tục từ đâu tiếp theo. Sau đó tôi thực hiện /clear, dán bản tóm tắt này vào, và có thể tiếp tục tiến hành như thể không có sự gián đoạn nào.
Lệnh compact đôi khi cũng chạy rất chậm. Trong khi kỹ năng handoff này thường hoàn thành trong chưa đầy một phút.
Trong trò chuyện với Claude, hãy cố gắng đưa các tài liệu lớn vào Projects
Claude.ai không có hướng dẫn chính thức chi tiết về cơ chế bộ nhớ đệm, nhưng các Dự án rõ ràng được tối ưu hóa khác với các luồng hội thoại thông thường. Vì vậy, nếu bạn muốn dán tài liệu lớn, tốt nhất nên đặt chúng vào Dự án thay vì nhét trực tiếp vào cuộc trò chuyện.
Những thao tác nào sẽ âm thầm phá hủy bộ nhớ đệm?
Có một vài sự việc sẽ làm reset toàn bộ bộ nhớ đệm mà không có thông báo rõ ràng.
Chuyển mô hình: Do bộ nhớ đệm phụ thuộc vào khớp tiền tố và mỗi mô hình có bộ nhớ đệm riêng. Khi chuyển mô hình, yêu cầu tiếp theo sẽ đọc lại toàn bộ lịch sử mà không có lần nào khớp bộ nhớ đệm.
Chế độ «Opus plan»: Thiết lập này sẽ sử dụng Opus trong giai đoạn lập kế hoạch và Sonnet trong giai đoạn thực thi. Tôi đã từng khuyến nghị nó trong một số video tối ưu token, và có lý do chính đáng. Tuy nhiên, bạn cần hiểu rằng mỗi lần chuyển đổi plan về cơ bản là một lần thay đổi mô hình, nghĩa là phải xây dựng lại bộ nhớ đệm. Về lâu dài, nó vẫn giúp kéo dài hạn mức phiên, nhưng bạn cần hiểu rõ những gì đang xảy ra ở cấp độ nền tảng.
Bạn có thể chỉnh sửa CLAUDE.md trong quá trình phiên làm việc: thay đổi này sẽ không áp dụng ngay lập tức mà chỉ có hiệu lực sau lần khởi động tiếp theo. Do đó, bộ nhớ đệm đang chạy hiện tại sẽ không bị ảnh hưởng.
Bảng điều khiển Token miễn phí của tôi
Ảnh chụp màn hình tôi đã hiển thị phía trước, đến từ một bảng điều khiển token.

Đây là một kho GitHub rất đơn giản. Bạn gửi liên kết cho Claude Code, nó sẽ triển khai trên localhost cục bộ và đọc tất cả lịch sử hội thoại trước đó của bạn, thay vì bắt đầu từ trạng thái trống. Bạn sẽ ngay lập tức thấy dữ liệu đầu vào, đầu ra, tạo bộ nhớ đệm và đọc bộ nhớ đệm hàng ngày.
Tuy nhiên, có một điểm cần lưu ý: bảng điều khiển này thống kê dữ liệu Token trên thiết bị cục bộ. Nếu bạn chuyển từ máy tính để bàn sang laptop, con số sẽ không hoàn toàn giống nhau. Mỗi thiết bị đều có một chế độ thống kê riêng.
Tổng kết
Prompt caching là một thứ có thể nghiên cứu sâu rộng. Bài viết của Thariq trình bày đầy đủ hơn ở đây, nếu bạn muốn xem toàn bộ bức tranh thì đáng để đọc.
Nhưng bạn không cần phải hiểu hoàn toàn tất cả các chi tiết để hưởng lợi từ nó. Bạn chỉ cần nắm bắt 80/20 quan trọng nhất: Token được lưu cache rẻ hơn 10 lần so với Token thông thường; TTL của Claude Code là 1 giờ; việc chuyển đổi mô hình sẽ làm hỏng bộ nhớ đệm; việc thực hiện giao tiếp rõ ràng giữa các nhiệm vụ thường mang lại hiệu quả tốt hơn so với việc tiếp tục sử dụng một phiên cũ đã “hết hạn”.
