30 điểm bởi GN⁺ 18 ngày trước | 2 bình luận | Chia sẻ qua WhatsApp
  • Một kỹ năng ép phản hồi theo kiểu nói người tiền sử để giảm trung bình 65~75% token đầu ra
  • Điều chỉnh mức độ nén bằng ba cấp Lite·Full·Ultra, tạo câu trả lời ngắn gọn và hiệu quả mà vẫn giữ độ chính xác kỹ thuật
  • Trong benchmark thực tế, các phần giải thích liên quan đến React·PostgreSQL·Git đều giảm mức sử dụng token xuống dưới một nửa
  • Đồng thời mang lại hiệu quả tăng tốc độ phản hồi khoảng 3 lần, cải thiện khả năng đọc, và giảm chi phí
  • Có thể cài đặt bằng lệnh đơn giản trên Claude Code và Codex, và duy trì sử dụng xuyên suốt phiên làm việc

Tổng quan về Caveman

  • Plugin cho Claude CodeCodex, chuyển phản hồi của LLM sang ‘kiểu nói người tiền sử (caveman-speak)’ để giảm khoảng 75% token sử dụng
  • Tạo câu trả lời ngắn gọn và hiệu quả bằng cách loại bỏ từ ngữ không cần thiết nhưng vẫn giữ độ chính xác kỹ thuật
  • Có thể cài đặt bằng một dòng lệnh và duy trì dùng trong mọi phiên
  • Chỉ token đầu ra là đối tượng được giảm — token suy nghĩ/lập luận không bị ảnh hưởng
  • Các phần bị loại bỏ:
    • Lời chào/mở đầu: "Sure, I'd be happy to help" (lãng phí 8 token)
    • Mở đầu giải thích nguyên nhân: "The reason this is happening is because" (7 token)
    • Cách diễn đạt khuyến nghị: "I would recommend that you consider" (7 token)
    • Phần dẫn nhập rườm rà: "Sure, let me take a look at that for you" (10 token)
  • Các phần được giữ nguyên: khối mã, thuật ngữ kỹ thuật (như polymorphism), thông báo lỗi, commit git và thông điệp PR

Ví dụ Before / After

  • Cùng một phần giải thích kỹ thuật được nén thành câu ngắn
    • Giải thích nguyên nhân React component re-render: 69 token → 19 token
    • Giải thích lỗi middleware xác thực: giảm hơn 75% token
  • Có thể điều chỉnh mức độ nén với ba cấp Lite / Full / Ultra
    • Lite (/caveman lite): bỏ diễn đạt không cần thiết, giữ ngữ pháp — vẫn chuyên nghiệp nhưng không rườm rà
    • Full (/caveman full): chế độ caveman mặc định — lược bỏ mạo từ, dùng câu ngắn và rời
    • Ultra (/caveman ultra): nén tối đa — kiểu điện tín, rút gọn mọi thứ

Benchmark

  • Kết quả so sánh mức sử dụng token thực tế qua Claude API cho thấy giảm trung bình 65%
  • Phạm vi tiết kiệm: 22%~87%
    • Giải thích lỗi React re-render: 1,180 → 159 token (giảm 87%)
    • Thiết lập connection pool PostgreSQL: 2,347 → 380 token (giảm 84%)
    • Docker multi-stage build: 1,042 → 290 token (giảm 72%)
    • Giải thích git rebase vs merge: 702 → 292 token (giảm 58%)
    • Refactor callback → async/await: 387 → 301 token (giảm 22%, hiệu quả thấp nhất)
  • Chỉ token đầu ra giảm, còn token suy nghĩ/lập luận được giữ nguyên
  • Lợi ích chính là cải thiện khả năng đọc và tăng tốc độ phản hồi, còn giảm chi phí là hiệu ứng đi kèm

Cơ sở khoa học

  • Bài báo tháng 3/2026 "Brevity Constraints Reverse Performance Hierarchies in Language Models": khi buộc mô hình lớn trả lời ngắn gọn, độ chính xác tăng 26 điểm phần trăm trên một số benchmark nhất định và thứ hạng hiệu năng bị đảo ngược
  • "Verbose not always better. Sometimes less word = more correct"
    • Có những trường hợp câu trả lời ngắn lại chính xác hơn phản hồi dài dòng

Cách cài đặt

  • Cài đặt một dòng: npx skills add JuliusBrussee/caveman
  • Plugin Claude Code: claude plugin marketplace add JuliusBrussee/caveman
  • Codex: clone kho lưu trữ rồi tìm và cài Caveman trong menu /plugins
  • Kích hoạt: /caveman, "talk like caveman", "caveman mode", "less tokens please"
  • Tắt: "stop caveman" hoặc "normal mode"
  • Cài một lần → áp dụng cho toàn bộ các phiên sau đó

Cách dùng

  • Lệnh kích hoạt: /caveman, $caveman, “talk like caveman”, “caveman mode”, “less tokens please”

  • Lệnh thoát: “stop caveman”, “normal mode”

  • Điều chỉnh mức độ

    Level Trigger Đặc điểm
    Lite /caveman lite Giữ ngữ pháp, loại bỏ từ thừa
    Full /caveman full Chế độ mặc định, bỏ mạo từ và phần rườm rà
    Ultra /caveman ultra Nén tối đa, diễn đạt thiên về từ viết tắt/rút gọn
  • Thiết lập được giữ đến khi kết thúc phiên

  • Giấy phép MIT / Python 100% / hỗ trợ plugin Claude Code & Codex

2 bình luận

 

Nói kiểu Sparta ở đây luôn à..? haha

 
Ý kiến trên Hacker News
  • Tôi là tác giả. Một số người đang phản bác những khẳng định mạnh hơn so với những gì kho lưu trữ này thực sự tuyên bố. Thực ra đây là thứ làm cho vui, không phải bình luận ở mức nghiên cứu
    Kỹ năng này không nhằm giảm reasoning token ẩn, mà tập trung vào việc giảm phần chữ đầu ra rườm rà. Nó không ảnh hưởng đến chính đoạn mã
    Tôi nghĩ các mô hình của Anthropic đã được tinh chỉnh đủ nhiều bằng RL, nên khó mà cố tình làm hiệu năng giảm mạnh
    Con số “~75%” trong README là kết quả thử nghiệm sơ bộ nên lẽ ra phải diễn đạt cẩn trọng hơn. Hiện giờ tôi đang chuẩn bị benchmark chính thức
    Kỹ năng này không miễn phí, và khi được tải lên nó cũng tiêu tốn một phần context. Vì vậy đánh giá thực sự phải bao gồm cả token đầu vào/đầu ra, độ trễ và chất lượng
    Cũng có nghiên cứu cho thấy prompt ngắn gọn có thể giảm độ dài phản hồi mà vẫn giữ chất lượng (liên kết bài báo)
    Tóm lại, đây là một ý tưởng thú vị nhưng đang bị diễn giải quá mức, và trước khi có đánh giá chính thức thì README cần được viết chính xác hơn

    • Nghe hợp lý đấy. Thảo luận trên mạng vốn hay trôi theo kiểu này. Dù vậy chuỗi này vẫn khá hơn mức trung bình, nhưng thỉnh thoảng vẫn gây thất vọng
    • Nếu muốn benchmark thì tôi khuyên nên tham khảo adam-s/testing-claude-agent
    • Tóm lại là: “Đây là trò đùa thôi. Đừng giận tôi. Nhưng mà nó cũng hơi có tác dụng?”
    • Tôi cũng từng có cuộc trao đổi tương tự với LLM, và giải thích rằng nó có xu hướng trả lời ngắn cho câu hỏi ngắn, còn với yêu cầu lịch sự thì sẽ đưa ra câu trả lời giàu thông tin hơn. Cuối cùng thì cách đặt câu hỏi có ảnh hưởng đến kiểu trả lời
      (Và tôi không hiểu vì sao mấy bình luận liên quan như thế này cứ tiếp tục bị downvote)
    • Câu “Mô hình Anthropic được tối ưu cho coding nên không thể ép nó giảm hiệu năng” nghe hơi khó hiểu.
      Nếu thêm prompt kiểu “hãy hành xử ngu ngốc” thì tất nhiên có thể làm hiệu năng giảm. Vấn đề là một kiểu đầu ra cụ thể thực sự ảnh hưởng đến mức nào
  • Tôi luôn nghĩ rằng nếu ép LLM nói theo một cách khác với lối diễn đạt mặc định thì khả năng suy luận của nó sẽ giảm.
    Vì một số lớp của mô hình rốt cuộc sẽ phải tập trung vào một trong hai việc: “nói gì” hoặc “nói như thế nào”
    Trong các thử nghiệm như viết truyện hợp tác hay roleplay, tôi đã thấy rằng mô hình càng phải cân nhắc nhiều dữ kiện thì càng khó giữ được phong cách

    • Ngược lại, nếu bảo nó “hãy nói nhiều hơn” thì lượng đầu ra tăng lên rất nhiều. Chỉ thị về tính cách/phong cách thực sự có tác động lớn
    • Tôi cũng nghĩ tương tự. Xét cho cùng thì mô hình có attention budget hữu hạn, nên số việc nó có thể làm cùng lúc là có giới hạn
  • Ý tưởng này thú vị đấy. Nhưng tôi cũng muốn thấy hướng dùng token giàu thông tin thay vì chỉ dùng token đơn giản.
    Ví dụ như dùng “improve idiomatically” thay vì “make good” để diễn đạt tinh tế hơn. Ngôn ngữ là một bộ điều biến của thực tại, nên dùng tinh vi hơn có lẽ sẽ cho kết quả tốt hơn. Tôi mong chờ benchmark

    • Kiểu “caveman” này làm tôi nhớ đến văn phong điện tín (telegram) ngày xưa. Liệu mô hình có thể học một kiểu “token giàu thông tin” được nén như sổ viết tắt điện tín và giải mã nó trong trình duyệt không? liên kết sổ viết tắt điện tín
    • Cái này giống như tranh luận RISC vs CISC vậy. Cũng như sự đơn giản đã thắng về khả năng mở rộng, LLM có lẽ cũng đang phát triển theo hướng suy nghĩ bằng các khái niệm đơn giản và trực giao hơn
    • Tôi đề xuất thử prompt như “MILSPEC prose register. Max per-token semantic yield.”
  • Tôi đã thử nói với Claude như người tối cổ, và mức độ hiểu giảm đi, hiểu sai thì nhiều. Rốt cuộc tôi lại phải giải thích nhiều hơn, và nếu có lỗi chính tả thì mất ngữ cảnh rất lớn.
    Cuối cùng có cảm giác là lại cần nhiều từ hơn. Có vẻ LLM cũng nhận được ít thông tin hơn từ chính các câu trả lời trước đó của nó

    • Ngay cả trên các diễn đàn phổ thông (Twitter, Reddit) người ta cũng hay than LLM ngu, nhưng nhìn vào cách họ viết thì cũng hiểu vì sao
    • Hồi đầu thời ChatGPT tôi từng thử chỉ nói chuyện bằng s-expression, và mô hình cũng trả lời bằng s-expression. Nội dung thì lộn xộn, nhưng dấu ngoặc lại khớp. Giờ thì không còn thế nữa
    • “Nói nhiều làm gì? Nói ít tiết kiệm thời gian. Biển rộng đời vui”
    • Có lẽ phần lớn dữ liệu kiểu nói “caveman” không phải là hội thoại mang tính khoa học, nên mô hình không dự đoán được ngữ cảnh như vậy
  • Tôi thấy một bài về Grug brained developer gặp AI tooling (grugbrain.dev)

    • Tôi cũng hay dùng Grug làm ví dụ khi bảo LLM giải thích một khái niệm
  • Ý tưởng này thú vị. Nhưng công ty tôi đánh giá thành tích bằng lượng token tiêu thụ. Có kỹ năng nào để cố tình làm Claude dài dòng hơn không?

    • Bảo nó giải thích theo kiểu ELI5 vào /tmp ở mỗi vòng lặp là được
    • Nói nghiêm túc hay đùa vậy? Có phải bạn làm ở Nvidia không?
  • Ý tưởng dễ thương đấy, nhưng trên thực tế token đầu vào mới là nút thắt cổ chai.
    Mô hình phải đọc vô số tệp, đầu ra công cụ, cây thư mục, nhưng đầu ra chỉ là vài trăm dòng mã và một lời giải thích ngắn

    • Với một lượt thì đúng, nhưng khi tích lũy qua nhiều lượt thì tối ưu đầu ra vẫn có ý nghĩa.
      Nhân tiện, cùng một ý đó vẫn truyền đạt được mà không cần “Cute idea, but” (liên kết)
    • Thêm nữa, kỹ năng này không ảnh hưởng đến thinking token. Thậm chí để chuyển sang kiểu caveman có khi còn cần nhiều suy luận nội bộ hơn
  • Cũng có nghiên cứu liên quan là ‘Brevity Constraints Reverse Performance Hierarchies in Language Models’ (2026)

  • Khá thú vị. Có vẻ cũng có thể giải nén đầu ra bằng một mô hình 2B

  • Có lẽ ai đó đã thử rồi, hoặc tôi đang cân nhắc tự triển khai
    Nếu LLM giao tiếp bằng ngôn ngữ phi nhân loại thay vì ngôn ngữ của con người thì hiệu quả có thể cao hơn.
    Một mô hình cục bộ nhỏ sẽ dịch đầu vào của con người sang ngôn ngữ thân thiện với LLM, rồi mô hình lớn suy nghĩ bằng ngôn ngữ đó trước khi dịch ngược lại
    Các mô hình có cửa sổ ngữ cảnh nhỏ như Apple Fundamental Models cũng có thể được dùng làm tầng dịch như thế.
    Cũng có vẻ khả thi nếu dùng reinforcement learning để cho nó tự khám phá ra thứ ngôn ngữ như vậy. Nghe như một dự án thật sự rất thú vị

    • Tôi cũng từng nghĩ tương tự. Sẽ hay nếu tạo ra một ngôn ngữ LLM chuyên dụng rồi huấn luyện mô hình bằng nó, nhưng chắc sẽ cần khoảng 60 đến 100 triệu đô la.
      Vì phải tạo ra cả một ngôn ngữ lẫn phương thức huấn luyện hoàn toàn mới. Dù vậy nếu có ai gọi được vốn VC cho việc này thì tôi muốn tham gia