Thủ thuật
Claude-thermos: Mẹo giữ cache Claude để tiết kiệm chi phí token
(giờ Việt Nam)
Tóm tắt AI
Claude-thermos là công cụ proxy cục bộ giúp duy trì bộ nhớ đệm (cache) cho các phiên làm việc của Claude Code, ngăn chặn việc phải mã hóa lại dữ liệu khi quá thời gian chờ, từ đó giảm đáng kể chi phí sử dụng API.
Bản dịch AI
Đừng tốn tiền để xây dựng lại bộ nhớ đệm (cache) cho Claude Code nữa. Khi tác nhân (agent) chính của bạn phải chờ một tác nhân phụ quá 5 phút, bộ nhớ đệm prompt của nó sẽ âm thầm hết hạn, và lượt tiếp theo sẽ mã hóa lại toàn bộ cuộc trò chuyện của bạn với mức phí ghi (write rate) thay vì đọc lại với chi phí rẻ hơn. Trong các phiên làm việc dài với nhiều tác nhân phụ, con số này chiếm khoảng 20% hóa đơn của bạn. claude-thermos giúp giữ cho bộ nhớ đệm luôn "ấm" để bạn không bao giờ phải trả khoản phí đó.
Cách sử dụng
Hãy chạy Claude Code như bình thường, nhưng thông qua claude-thermos với uvx:
Yêu cầu Python 3.11+ và claude CLI phải có trong PATH của bạn.
Chỉ vậy thôi. Việc làm ấm (warming) sẽ tự động chạy trong nền. Để vô hiệu hóa tính năng này cho một lần chạy mà không cần thay đổi lệnh, hãy đặt CLAUDE_WARMER_DISABLE=1.
Tinh chỉnh (tất cả đều là tùy chọn):
Tại sao bộ nhớ đệm của bạn liên tục hết hạn
Bộ nhớ đệm prompt của Claude Code sử dụng thời gian tồn tại (TTL) là 5 phút. Mỗi lượt, toàn bộ lịch sử cuộc trò chuyện của bạn được phục vụ từ bộ nhớ đệm với giá bằng 0,1 lần giá đầu vào thay vì phải gửi lại với giá đầy đủ, miễn là bộ nhớ đệm vẫn còn hiệu lực.
Bộ nhớ đệm sẽ hết hạn nếu khoảng cách giữa các yêu cầu trên cùng một tiền tố (prefix) vượt quá 5 phút. Nguyên nhân chính gây ra khoảng trống này không phải do bạn đang suy nghĩ, mà là do tác nhân chính bị chặn bởi một tác nhân phụ chạy lâu hơn 5 phút. Một tác nhân phụ có system prompt và bộ công cụ khác, nên các yêu cầu của nó có tiền tố bộ nhớ đệm khác và không bao giờ làm mới bộ nhớ đệm của tác nhân chính. Trong khi tác nhân phụ làm việc, lịch sử đã lưu trong bộ nhớ đệm của tác nhân chính sẽ bị cũ đi mà không được làm mới; sau 5 phút, nó sẽ biến mất. Khi tác nhân phụ trả về kết quả, tác nhân chính tiếp tục với lịch sử giống hệt về byte, chỉ thêm vào cuối, và nhận ra bộ nhớ đệm của mình đã mất, buộc phải mã hóa lại toàn bộ với mức phí ghi 1,25 lần.
Đến lúc đó, lịch sử đã trở nên lớn, nên việc mã hóa lại rất tốn kém: mỗi lần sụp đổ bộ nhớ đệm sẽ ghi lại từ 200.000 đến 500.000 token. Đo lường trên khoảng 185 phiên làm việc cục bộ, các lần xây dựng lại này chiếm khoảng 22% tổng hóa đơn, số tiền bị lãng phí để mã hóa lại nội dung vốn đã được lưu trong bộ nhớ đệm chỉ vài khoảnh khắc trước đó.
Cách thức hoạt động
claude-thermos khởi chạy Claude Code phía sau một reverse proxy cục bộ nhỏ (nó trỏ ANTHROPIC_BASE_URL vào một cổng loopback; tất cả lưu lượng truy cập vẫn đi đến API thực của Anthropic).
Mỗi lần làm ấm tốn một lần đọc bộ nhớ đệm (0,1x); mỗi lần ghi lại mà nó ngăn chặn được lẽ ra đã tốn một lần ghi (1,25x) trên một tiền tố lớn hơn nhiều, vì vậy sự đánh đổi này rất có lợi cho bạn.
Nhật ký sự kiện & tiết kiệm
Mỗi phiên làm việc sẽ ghi vào:
events.jsonl ghi lại mức sử dụng token của mỗi yêu cầu/phản hồi cùng với mọi quyết định làm ấm (warm_fired, warm_result, cap_reached, resume_detected, v.v.). summary.json là bản tổng hợp mà bạn thường sẽ đọc:
Cả ba số liệu chi phí đều tính theo đơn vị token đầu vào cơ sở (số lượng token đã được nhân với hệ số bộ nhớ đệm). Để chuyển đổi net_savings thành đô la, hãy nhân nó với giá mỗi token đầu vào của mô hình bạn đang dùng:
Ví dụ, với giá đầu vào là 3 USD / 1 triệu token, mức net_savings là 1.200.000 sẽ tương đương khoảng 1.200.000 × 3 USD / 1.000.000 = 3,60 USD tiết kiệm được trong phiên đó.
Bài viết được AI dịch và tổng hợp tự động từ Hacker News Nổi bật (buzzing.cc bản dịch tiếng Trung). Liên kết bài gốc ở phía trên. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.