close

Hướng dẫn tối ưu chi phí API cho Hermes Agent bằng OpenRouter và Prompt Caching 

Tác giả: Đông Tùng Ngày đăng: 05/10/2026 Chuyên mục: Hermes Agent
Disclosure
Website Tino blog được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Wiki.tino.org có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Tino blog sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại Tino blog được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

Để tối ưu chi phí API cho Hermes Agent, cách hiệu quả nhất hiện nay là kết hợp OpenRouter với Prompt Caching. Khi đó, phần nội dung lặp lại ở mỗi lượt chạy chỉ bị tính khoảng 10% giá gốc thay vì 100%, nên hóa đơn có thể giảm rất mạnh khi agent chạy nhiều lượt liên tục. Bài viết này giải thích từng khái niệm, kèm các bước thực hiện và cách kiểm tra kết quả ngay trên bảng điều khiển OpenRouter. 

Tại sao Hermes Agent tốn chi phí API hơn chatbot thông thường?

Mỗi lượt chạy đều gửi lại một “gói hành lý” lớn

Khi bạn chat với một chatbot bình thường, hệ thống chỉ gửi câu hỏi và một đoạn hướng dẫn ngắn. Hermes Agent thì khác. Trước khi bạn gõ chữ đầu tiên, Agent đã đính kèm bộ hướng dẫn hệ thống, danh sách công cụ, danh mục kỹ năng và các tệp ghi nhớ.

Theo một bài phân tích đăng tháng 9/2026, lượng dữ liệu gửi đi mặc định của Hermes Agent vào khoảng 16.000 token, trong đó riêng phần mô tả công cụ chiếm từ 8.000 đến hơn 12.000 token. Cộng đồng phát triển cũng ghi nhận con số tương tự: một số người dùng thấy prompt hệ thống mặc định nặng từ 16.000 đến 19.000 token.

Tại sao Hermes Agent tốn chi phí API hơn chatbot thông thường?
Tại sao Hermes Agent tốn chi phí API hơn chatbot thông thường?

Vòng lặp của agent nhân chi phí lên nhiều lần

Agent không chỉ trả lời một lần rồi dừng. Hermes sẽ suy nghĩ, gọi công cụ, đọc kết quả rồi suy nghĩ tiếp. Mỗi vòng như vậy lại gửi toàn bộ “gói hành lý” kia đi lần nữa. Một tác vụ đơn giản có thể kéo theo hàng chục lần gọi API, và chi phí tăng theo cấp số nhân mà người dùng khó nhận ra.

Prompt Caching là gì? Có thể giúp tối ưu chi phí API ra sao?

Định nghĩa: Prompt Caching là cơ chế lưu lại phần prompt đã được xử lý trước đó để những request tiếp theo có cùng phần nội dung đầu vào có thể tái sử dụng kết quả xử lý này.

  • Không có Prompt Caching: System Prompt + Tools + Context + câu hỏi mới → tính lại toàn bộ
  • Có Prompt Caching: Phần đã cache + câu hỏi mới → chủ yếu xử lý phần mới

Hãy hình dung bạn gửi một tập hồ sơ dày cho cùng một cơ quan nhiều lần trong ngày. Lần đầu, bạn nộp đầy đủ và trả phí lưu hồ sơ. Từ lần thứ hai, bạn chỉ cần nói “dùng lại tập hồ sơ hôm trước” và bên nhận chỉ thu một khoản phí rất nhỏ.

Prompt Caching hoạt động đúng như vậy. Hệ thống ghi nhớ phần đầu của prompt (hướng dẫn hệ thống, công cụ, ghi nhớ dài hạn) và những lượt sau chỉ tính giá ưu đãi cho phần đã lưu. Nhưng cũng cần điều kiện là phần đầu đó phải giống hệt lần trước. 

Prompt Caching là gì? Có thể giúp tối ưu chi phí API ra sao?
Prompt Caching là gì? Có thể giúp tối ưu chi phí API ra sao?

Prompt Caching khác Response Caching ra sao?

Hai khái niệm này rất dễ nhầm lẫn.

Prompt CachingResponse Caching
Cache một phần input giống nhauCache toàn bộ request và response
Model vẫn tạo câu trả lời mớiTrả lại response đã tạo trước đó
Phù hợp hội thoại nhiều lượtPhù hợp request giống hệt nhau
Giảm giá input tokenCache hit có thể không phát sinh token mới
Rất phù hợp AI AgentPhù hợp retry hoặc tác vụ lặp nguyên trạng

OpenRouter hiện hỗ trợ Response Caching bằng X-OpenRouter-Cache. Khi một request hoàn toàn giống request trước và cache vẫn còn hiệu lực, OpenRouter có thể trả lại response trực tiếp mà không gọi provider, đồng nghĩa không phát sinh token mới cho lần cache hit đó.

Hermes Agent cũng đã có cấu hình riêng cho OpenRouter Response Caching và tài liệu hiện tại ghi nhận cơ chế này được bật mặc định.

Cách tối ưu chi phí API cho Hermes Agent bằng OpenRouter và Prompt Caching

Bước 1: Kết nối Hermes Agent với OpenRouter

Tino đã có hướng dẫn riêng về phần này. Bạn có thể xem:

Sau khi Hermes Agent gọi model thành công qua OpenRouter, bạn có thể tiếp tục tối ưu Prompt Caching.

Bước 2: Chọn model phù hợp với Prompt Caching

Nếu mục tiêu chính là tận dụng cơ chế Prompt Caching được Hermes hỗ trợ trực tiếp, Claude là lựa chọn dễ triển khai.

Hermes Agent hiện tự nhận diện Claude và kích hoạt cơ chế cache_control khi model được gọi qua OpenRouter.

Một số model từ OpenAI, Google, DeepSeek và các provider khác cũng có cơ chế implicit caching ở phía provider. OpenRouter có thể tận dụng các cơ chế này tùy model và tuyến provider đang sử dụng.

Lưu ý: Không nên chỉ chọn model dựa trên mức giảm cache. Cần cân bằng thêm:

  • Giá input.
  • Giá output.
  • Chất lượng phản hồi.
  • Khả năng gọi tool.
  • Context window.
  • Tốc độ phản hồi.
  • Mức độ phù hợp với workload.

Model rẻ hơn nhưng tạo output quá dài hoặc cần nhiều vòng sửa lại chưa chắc mang lại tổng chi phí thấp hơn.

Cách tối ưu chi phí API cho Hermes Agent bằng OpenRouter và Prompt Caching
Cách tối ưu chi phí API cho Hermes Agent bằng OpenRouter và Prompt Caching

Bước 3: Cấu hình TTL cho Prompt Caching

Hermes Agent hiện hỗ trợ 3 lựa chọn phổ biến:

prompt_caching:

  cache_ttl: "5m"

hoặc:

prompt_caching:

  cache_ttl: "1h"

Phiên bản hiện tại cũng hỗ trợ:

prompt_caching:

  cache_ttl: "auto"

Cấu hình nằm trong file:

~/.hermes/config.yaml

Bạn có thể mở file bằng:

hermes config edit
Cấu hình TTL cho Prompt Caching
Cấu hình TTL cho Prompt Caching

Trong chế độ auto, Hermes sẽ lựa chọn TTL dựa trên loại phiên:

  • Các phiên do người dùng tương tác trực tiếp có thể dùng TTL 1 giờ.
  • Cron, subagent, webhook, API, batch và các tác vụ chạy máy với máy ưu tiên TTL 5 phút.

Với phần lớn người dùng, auto là lựa chọn hợp lý vì không cần tự thay TTL giữa nhiều loại workload.

Sau khi chỉnh cấu hình, hãy mở phiên Hermes mới hoặc khởi động lại gateway để bảo đảm cấu hình mới được tải.

Bước 4: Giữ model và phiên làm việc ổn định

Prompt Caching hoạt động hiệu quả nhất khi các request tiếp theo vẫn sử dụng cùng model và cùng tuyến provider. Hermes Agent hiện gửi session_id sang OpenRouter để hỗ trợ sticky routing tự động.

Tuy nhiên, một số thao tác vẫn có thể làm mất cache hiện tại, chẳng hạn:

  • Đổi model giữa phiên.
  • Chuyển provider.
  • Fallback sang provider khác.
  • Chuyển sang API key khác trong credential pool.
  • Cache hết TTL.

Tài liệu Hermes Agent cũng lưu ý rằng việc đổi model hoặc đổi tài khoản API giữa phiên khiến request tiếp theo phải đọc lại context với mức giá input thông thường.

Vì vậy, không nên đổi model liên tục chỉ để tiết kiệm một vài request ngắn nếu phiên hiện tại đã có context rất lớn.

Bước 5: Giữ phần prompt dùng chung càng ổn định càng tốt

Prompt Caching chỉ hoạt động khi phần đầu prompt giống hệt giữa các lượt. Do đó, phần đầu của prompt nên ưu tiên các nội dung ít thay đổi:

  • System prompt.
  • Tool definitions.
  • Schema.
  • Hướng dẫn cố định.
  • Skill.
  • Tài liệu tham chiếu dùng xuyên suốt phiên.

Các nội dung thay đổi thường xuyên nên nằm về sau:

  • Câu hỏi mới.
  • Tool result mới.
  • Timestamp.
  • Trạng thái tạm thời.
  • Dữ liệu phát sinh trong từng lượt.

Nếu phần đầu của request liên tục thay đổi, khả năng cache hit sẽ giảm.

Ngoài ra, bạn nên:

  • Không bật/tắt công cụ giữa phiên
  • Không sửa tệp ghi nhớ khi đang chạy tác vụ dài
  • Giữ nhịp dưới 5 phút
Giữ phần prompt dùng chung càng ổn định càng tốt
Giữ phần prompt dùng chung càng ổn định càng tốt

Bước 6: Tận dụng Response Caching của OpenRouter

Ngoài Prompt Caching, Hermes Agent còn hỗ trợ OpenRouter Response Caching.

Cấu hình tương ứng:

openrouter:

  response_cache: true

  response_cache_ttl: 300

Trong đó: 300 giây = 5 phút

Tài liệu cấu hình hiện tại của Hermes ghi nhận response_cache: true và TTL mặc định 300 giây.

Response Caching đặc biệt hữu ích khi:

  • Agent retry cùng request.
  • Workflow bị chạy lại.
  • Một tác vụ hỏi cùng dữ liệu nhiều lần.
  • API client gửi request trùng nhau.
  • Một bước trong pipeline bị thực thi lại.

Nếu request giống hoàn toàn và cache vẫn còn hiệu lực, OpenRouter có thể trả lại response đã lưu mà không phát sinh lượt inference mới.

Tuy nhiên, Response Caching và Prompt Caching vẫn là hai cơ chế độc lập.

Bước 7: Kiểm tra Prompt Caching có thực sự tiết kiệm chi phí hay không

Không nên chỉ bật cache rồi giả định rằng chi phí đã giảm. Bạn có thể kiểm tra trực tiếp trên trang Activity của OpenRouter.

Trong thông tin usage của request, trường cached_tokens cho biết lượng token đã được đọc từ cache.

Kiểm tra Prompt Caching có thực sự tiết kiệm chi phí hay không
Kiểm tra Prompt Caching có thực sự tiết kiệm chi phí hay không

OpenRouter còn cung cấp cache_write_tokens để xác định lượng token được ghi vào cache.

Nếu cached_tokens > 0 request đã có cache hit.

Ngoài ra, bạn cũng có thể kiểm tra cache_discount để xem tác động của cache đến chi phí request.

Với Claude qua OpenRouter, Hermes CLI cũng có thể hiển thị trạng thái dạng Prompt caching: ENABLED khi Prompt Caching được kích hoạt.

Bước 8: Đặt hạn mức chi tiêu để an tâm

Ngay cả khi đã tối ưu, Agent vẫn có thể rơi vào vòng lặp bất ngờ. Hãy nạp số tiền vừa phải và đặt giới hạn tín dụng cho từng API key trong phần quản lý key của OpenRouter. Cách này giúp chi phí không vượt tầm kiểm soát.

Prompt Caching có thể tiết kiệm bao nhiêu chi phí?

OpenRouter cho biết cached input hiện có thể có giá bằng khoảng 10% đến 50% input thông thường tùy provider. Với Claude Sonnet 4.6, ví dụ được OpenRouter công bố là:

Loại tokenChi phí tham khảo
Input thông thường3 USD / 1 triệu token
Cached input0,30 USD / 1 triệu token
Cache write 5 phút3,75 USD / 1 triệu token
Cache write 1 giờ6 USD / 1 triệu token

Giả sử Hermes Agent có khoảng 10.000 token context lặp lại trong 6 lượt liên tiếp và đang sử dụng Claude Sonnet 4.6.

Theo mức giá được OpenRouter công bố tại thời điểm cập nhật:

  • Input: 3 USD / 1 triệu token.
  • Cache read: 0,30 USD / 1 triệu token.
  • Cache write 5 phút: 3,75 USD / 1 triệu token.

Không sử dụng cache

6 lượt × 10.000 token = 60.000 token

Chi phí phần input lặp:

60.000 / 1.000.000 × 3 USD = 0,18 USD

Sử dụng Prompt Caching 5 phút

Lượt đầu ghi 10.000 token vào cache:

10.000 / 1.000.000 × 3,75 USD = 0,0375 USD

5 lượt tiếp theo đọc từ cache:

50.000 / 1.000.000 × 0,30 USD = 0,015 USD

Tổng:

0,0375 + 0,015 = 0,0525 USD

So với 0,18 USD khi không cache, phần context lặp lại trong ví dụ này giảm khoảng 71% chi phí input.

Đây chỉ là ví dụ minh họa. Tổng hóa đơn thực tế còn phụ thuộc vào:

  • Token mới ở mỗi lượt.
  • Output token.
  • Tool calls.
  • Model.
  • Provider.
  • TTL.
  • Số lần cache được tái sử dụng.
  • Giá API tại thời điểm sử dụng.

Prompt Caching mang lại lợi ích lớn nhất khi một lượng context lớn được tái sử dụng nhiều lần.

Nên chọn TTL 5 phút, 1 giờ hay Auto?

Có thể chọn nhanh theo bảng sau:

Kiểu sử dụngTTL phù hợp
Chat liên tục5m
Agent loop nhanh5m
Cron Job5m
Webhook5m
Batch/API tự động5m
Người dùng chat và nghỉ vài phút1h
Phiên nghiên cứu dài1h
Không muốn tự quản lýauto

Lưu ý: TTL dài hơn không phải lúc nào cũng rẻ hơn.

Những nguyên nhân khiến Prompt Caching không tiết kiệm như mong đợi

Prompt Caching có thể hoạt động kém hiệu quả trong một số trường hợp:

  • Prompt quá ngắn: phần context chưa đủ lớn để provider tạo cache.
  • TTL hết hạn: request tiếp theo xuất hiện quá muộn.
  • Đổi model giữa phiên: cache của model cũ không thể tái sử dụng trực tiếp.
  • Đổi API key: cache có thể gắn với tài khoản hoặc credential đang sử dụng.
  • Provider thay đổi: request được chuyển sang endpoint chưa có cache.
  • Prefix thay đổi: system prompt hoặc phần đầu context bị chỉnh sửa thường xuyên.
  • Chỉ gửi một request: chi phí cache write có thể cao hơn lợi ích nhận được.
  • Context liên tục thay đổi: tỷ lệ token có thể đọc từ cache thấp.
Những nguyên nhân khiến Prompt Caching không tiết kiệm như mong đợi

Một số cách giảm thêm chi phí API cho Hermes Agent (bổ sung)

Prompt Caching chỉ là một phần của bài toán tối ưu. Bạn có thể kết hợp thêm các biện pháp sau:

  • Dùng model mạnh cho nhiệm vụ phức tạp và model rẻ hơn cho tác vụ đơn giản.
  • Hạn chế đổi model giữa một phiên context lớn.
  • Không đưa tài liệu dài vào prompt khi không thực sự cần.
  • Chia Skill theo từng mục đích thay vì tải quá nhiều hướng dẫn cùng lúc.
  • Tận dụng Context Compression của Hermes với các hội thoại dài.
  • Dùng model giá thấp hơn cho các auxiliary task như compression hoặc tác vụ phụ.
  • Kiểm tra OpenRouter Activity để tìm workflow tiêu thụ token bất thường.
  • Đặt giới hạn ngân sách API.
  • Tối ưu độ dài output nếu không cần phản hồi quá dài.

Hermes Agent hiện còn hỗ trợ provider_routing để ưu tiên provider theo giá:

provider_routing:

  sort: "price"

Thiết lập này yêu cầu OpenRouter ưu tiên tuyến provider rẻ hơn trong các tuyến phù hợp.

Tuy nhiên, với hội thoại dài đã có cache tốt, việc duy trì tuyến ổn định đôi khi quan trọng hơn việc cố giảm một lượng rất nhỏ giá request đơn lẻ.

Một số cách giảm thêm chi phí API cho Hermes Agent
Một số cách giảm thêm chi phí API cho Hermes Agent

Khi nào không cần quá quan tâm đến Prompt Caching?

Prompt Caching không phải lúc nào cũng tạo ra khác biệt lớn.

Bạn có thể ít quan tâm đến cơ chế này nếu:

  • Chỉ gửi các prompt ngắn.
  • Mỗi tác vụ chỉ có một request.
  • Context thay đổi hoàn toàn giữa các request.
  • Dùng model có input rất rẻ.
  • Phần lớn chi phí đến từ output token.
  • Workflow chủ yếu xử lý các nhiệm vụ độc lập.

Ngược lại, Prompt Caching đáng quan tâm khi Hermes Agent hoạt động như một trợ lý liên tục, coding agent, research agent, workflow nhiều bước hoặc AI Worker chạy dài hạn.

Khi nào không cần quá quan tâm đến Prompt Caching?
Khi nào không cần quá quan tâm đến Prompt Caching?

Kết luận

Tối ưu chi phí API cho Hermes Agent không nhất thiết phải chuyển sang model rẻ nhất. Với các workflow sử dụng context lớn và lặp lại nhiều lần, OpenRouter kết hợp Prompt Caching có thể giảm đáng kể chi phí input mà vẫn giữ nguyên model đang sử dụng. Nếu đang triển khai Hermes Agent cho các tác vụ chạy liên tục, Cron Job, nghiên cứu, coding hoặc workflow tự động, Prompt Caching là một trong những cách đơn giản nhất để kiểm soát chi phí API khi quy mô sử dụng tăng lên.

Các bài viết liên quan:

Những câu hỏi thường gặp

Hermes Agent có tự bật Prompt Caching không?

Có. Với Claude chạy qua OpenRouter hoặc Anthropic API hỗ trợ cache_control, Hermes Agent hiện có thể tự kích hoạt Prompt Caching. Người dùng chủ yếu cần lựa chọn TTL phù hợp.

Nên chọn Prompt Caching 5 phút hay 1 giờ?

Nếu Agent chạy nhiều request liên tiếp, 5m thường phù hợp hơn. Nếu người dùng thường nghỉ hơn 5 phút giữa các lượt, 1h có thể tăng tỷ lệ cache hit. Chế độ auto phù hợp khi muốn Hermes tự lựa chọn theo loại workload.

Cắt bớt công cụ và kỹ năng của Hermes có làm Agent kém thông minh đi không?

Chỉ khi bạn tắt nhầm thứ đang cần. Hãy tắt những nhóm công cụ không dùng (như đọc to văn bản hoặc ủy quyền cho agent con) và giữ lại công cụ cốt lõi cùng tệp ghi nhớ dự án. Nếu cần tính năng nào, bạn bật lại sau.

Prompt Caching có làm câu trả lời của Hermes Agent cũ đi không?

Không. Prompt Caching chỉ tái sử dụng phần tính toán cho context đã xuất hiện trước đó. Model vẫn xử lý thông tin mới và tạo phản hồi mới cho từng request.

Dùng OpenRouter có đắt hơn gọi thẳng API của hãng không?

Giá mô hình trên OpenRouter nhìn chung theo giá của nhà cung cấp, nhưng có thể phát sinh phí nạp tiền hoặc khác biệt tùy thời điểm. Bù lại, bạn có một tài khoản duy nhất, đổi mô hình nhanh và theo dõi chi phí tập trung. Hãy kiểm tra mục giá và phí hiện hành trên OpenRouter trước khi quyết định. Bạn cũng có thể xem lại bài viết OpenRouter là gì để hiểu rõ hơn cách tính phí.

Đông Tùng

Senior Technology Writer

Là cử nhân Quản trị kinh doanh của Trường Đại học Tài chính - Marketing, Tùng bắt đầu làm việc tại Tino Group từ năm 2021 ở vị trí Content Marketing để thỏa mãn niềm đam mê viết lách của bản thân. Sở hữu khả năng sáng tạo đặc biệt, anh cùng đội ngũ của mình đã tạo nên những chiến dịch quảng cáo độc đáo cùng vô số bài viết hữu ích về nhiều chủ đề khác nhau. Sự tỉ mỉ, kiên trì và tinh thần sáng tạo của Tùng đã góp phần lớn vào thành công của Tino Group trong lĩnh vực marketing trực tuyến.

Xem thêm bài viết

Bài viết liên quan

Xem nhiều