TokenTamer: Một proxy giúp giảm mức sử dụng token của LLM thông qua nén ngữ cảnh.
URL bài viết: https://github.com/borhen68/TokenTamer URL bình luận: https://news.ycombinator.com/item?id=48458633 Điểm: 1 Số bình luận: 1
🚀 TokenTamer
Một proxy tích hợp sẵn giúp nén ngữ cảnh mã cồng kềnh theo thời gian thực, cắt giảm chi phí API LLM từ 50–80% đối với các tác nhân mã hóa trò chuyện thông thường.
TokenTamer là một proxy middleware nằm giữa tác nhân mã hóa AI và API LLM. Nó chặn các tải trọng thô, phân tích mã bằng AST và thay thế các tệp "nền" bằng các khung cấu trúc. Tác nhân vẫn thấy các chữ ký, lớp và nhập khẩu — nó chỉ ngừng trả tiền cho các phần thân hàm mà nó không chỉnh sửa.
⚠️ Phần mềm Alpha. Đây là một dự án thực đang được phát triển tích cực, không phải là một SaaS hoàn chỉnh. Vui lòng đọc ma trận hỗ trợ dưới đây trước khi cài đặt.
🧪 Trạng thái hỗ trợ
Máy khách
Chặn HTTPS
Nén hoạt động
Ghi chú
Aider (--openai-api-base)
✅ Không cần
✅ Đầy đủ
Được hỗ trợ tốt nhất. Sử dụng trực tiếp URL proxy.
Cursor (URL cơ sở tùy chỉnh)
✅ Không cần
✅ Đầy đủ
Được hỗ trợ tốt nhất.
Các lệnh gọi curl / SDK thông thường
✅ Không cần
✅ Đầy đủ
Tuyệt vời để thử nghiệm.
Claude Code (điểm cuối được mã hóa cứng)
✅ Hoạt động
✅ Nhận biết công cụ
Các tệp đọc cũ trong tool_result được tạo khung; lần đọc mới nhất vẫn còn nguyên vẹn.
Codex CLI (điểm cuối được mã hóa cứng)
✅ Hoạt động
✅ Nhận biết công cụ
Cùng một công cụ thông qua /v1/responses.
Cách hoạt động của tính năng nén nhận biết công cụ. Các tác nhân như Claude Code gọi Read(file) nhiều lần. Cuộc hội thoại tích lũy cùng một tệp được đổ nhiều lần. TokenTamer theo dõi mọi ánh xạ tool_use → file, sau đó tạo khung cho các lần đọc tool_result cũ hơn trong khi vẫn giữ nguyên 100% lần đọc gần đây nhất của mỗi tệp. Các khối tool_use và định nghĩa công cụ không bao giờ bị chạm đến.
Nếu có bất kỳ sự cố nào xảy ra, hãy nhấn công tắc ngắt:
token-tamer --ssl --port 443 --passthrough # tắt tất cả tính năng nén
# hoặc
token-tamer --ssl --port 443 --no-tool-compression # chỉ tắt đường dẫn nhận biết công cụ
🚨 Các hạn chế đã biết
Nén phụ thuộc vào việc đọc lại. Các phiên đọc một lần không tiết kiệm được công cụ (chỉ nén văn bản). Các phiên dài trong đó tác nhân đọc lại các tệp sẽ được hưởng lợi nhiều nhất.
Phát hiện tệp theo kinh nghiệm. Chúng tôi tìm kiếm các khóa file_path / path / filename trong đầu vào công cụ. Các tác nhân kỳ lạ với các lược đồ bất thường có thể bị bỏ qua.
Tính năng lưu trữ đa lượt truy cập chéo yêu cầu chưa được triển khai.
Chỉ dành cho macOS để thiết lập chứng chỉ một dòng. Người dùng Linux/Windows cần tin cậy CA theo cách thủ công.
Chưa có điểm chuẩn sản xuất. Các con số tiết kiệm đến từ các thử nghiệm đơn vị với các tải trọng tổng hợp, không phải các phiên Claude Code dài thực tế.
🗺️ Lộ trình
v0.2 — Nén nhận biết công cụ (✅ đã phát hành)
v0.3 — Bộ nhớ đệm đa lượt / chéo yêu cầu để nội dung lặp lại không được gửi lại
v0.4 — Tree-sitter cho AST đa ngôn ngữ phù hợp (hỗ trợ kiểu C hiện tại là một heuristic cân bằng dấu ngoặc nhọn)
v0.5 — Bảng điều khiển web với bản đồ nhiệt nén trên mỗi tệp
✨ Tính năng
🔌 Proxy tích hợp sẵn — Không cần thay đổi tác nhân mã hóa của bạn. Chỉ cần thay đổi URL cơ sở API.
🧠 Phát hiện tệp hoạt động thông minh — Tự động xác định các tệp bạn đang làm việc và giữ nguyên 100% chúng.
🌳 Nén dựa trên AST — Loại bỏ các phần thân hàm trong khi vẫn giữ nguyên các chữ ký, nhập khẩu và cấu trúc lớp.
💰 Theo dõi chi phí theo thời gian thực — Bảng điều khiển đầu cuối đẹp mắt hiển thị số token và số tiền đã tiết kiệm.
🔄 Hỗ trợ truyền phát đầy đủ — Truyền phát SSE trong suốt cho cả API OpenAI và Anthropic.
⚡ Không có độ trễ — Nén diễn ra cục bộ trong vài mili giây.
🚀 Bắt đầu nhanh (5 phút)
Điều kiện tiên quyết
Python 3.9 trở lên (python3 --version)
macOS, Linux hoặc Windows (Windows = bước tin cậy chứng chỉ thủ công)
openssl (được cài đặt sẵn trên macOS và hầu hết Linux)
1. Cài đặt
git clone https://github.com/borhen68/TokenTamer.git
cd TokenTamer
# Khuyến nghị: sử dụng môi trường ảo để tránh ảnh hưởng đến Python của hệ thống
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -e .
Xác minh đã cài đặt:
token-tamer --version
# → TokenTamer 0.2.0
2. Chọn phương thức
👉 Phương thức A — Aider, Cursor, hoặc mã SDK của riêng bạn (không cần thiết lập SSL):
token-tamer --port 8000 --no-dashboard
Sau đó, trỏ URL cơ sở API của công cụ của bạn tới http://127.0.0.1:8000/v1:
aider --openai-api-base http://127.0.0.1:8000/v1
Đối với Cursor: Cài đặt → Mô hình → OpenAI API Base → http://127.0.0.1:8000/v1. Hoàn tất. ✅
👉 Phương thức B — Claude Code hoặc Codex CLI (thiết lập SSL, một lần):
Các công cụ này mã hóa cứng URL API. Chúng tôi sử dụng chặn HTTPS:
# Bước 1 — Tạo chứng chỉ cục bộ (chỉ chạy và thoát)
token-tamer --ssl --port 8443 --no-dashboard &
sleep 2 && kill %1
# Bước 2 — Tin cậy chứng chỉ (macOS)
sudo security add-trusted-cert -d -r trustRoot \
-k /Library/Keychains/System.keychain \
~/.config/token-tamer/certs/ca-cert.pem
# Bước 3 — Chuyển hướng các miền API đến localhost
echo "127.0.0.1 api.openai.com" | sudo tee -a /etc/hosts
echo "127.0.0.1 api.anthropic.com" | sudo tee -a /etc/hosts
# Bước 4 — Chạy TokenTamer trên cổng 443 (cần sudo cho các cổng thấp)
sudo $(which token-tamer) --ssl --port 443 --no-dashboard
Để nguyên cửa sổ terminal đó, sau đó trong một cửa sổ terminal mới:
claude "create a snake game" # hoặc
codex "refactor this module"
Bạn hiện đang chặn + nén. 🎉
3. Xác minh hoạt động
# Kiểm tra Phương thức A:
curl http://127.0.0.1:8000/health
# Kiểm tra Phương thức B:
curl https://api.openai.com/health # Nên trả về JSON của TokenTamer, không phải của OpenAI
Cả hai nên trả về:
{"status":"ok","version":"0.2.0","requests_processed":0,"tokens_saved":0}
4. Dọn dẹp (Gỡ cài đặt)
# Xóa các mục nhập /etc/hosts
sudo sed -i.bak '/api.openai.com/d;/api.anthropic.com/d' /etc/hosts
# Bỏ tin cậy chứng chỉ
sudo security remove-trusted-cert -d ~/.config/token-tamer/certs/ca-cert.pem
# Gỡ cài đặt gói
pip uninstall token-tamer
🆘 Khắc phục sự cố
Triệu chứng
Cách khắc phục
command not found: token-tamer
Kích hoạt venv của bạn: source venv/bin/activate
ModuleNotFoundError: No module named 'uvicorn'
Tương tự — venv không hoạt động
address already in use on port 8000
lsof -ti :8000 | xargs kill -9
Permission denied on port 443
Sử dụng sudo cho các cổng <1024, hoặc chọn cổng cao hơn
SSL certificate problem from curl
Chạy lại bước security add-trusted-cert, sau đó mở một terminal MỚI
Claude Code bị treo / lỗi
Nhấn nút ngắt: khởi động lại với --passthrough
Nén làm hỏng một cái gì đó
Khởi động lại với --no-tool-compression và gửi một báo cáo
Nguồn tin: Hacker News LLM — Tác giả: borhensaidi. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.