Hermes agent 缓存命中问题
- 内容介绍
- 文章标签
- 相关推荐
最近在用Hermes agent,在使用过程中发现缓存命中率极低,求问各位佬有没有好的解决方案?
尝试让它自己解决,改了和时间戳、session id相关的东西,但似乎没有效果。
用的模型是中转站api接的gpt-5.4,在codex中能正常命中缓存。
--【壹】--:
如果用中转站的话,直接在控制台使用日志里就能看到
--【贰】--:
求教佬怎么让它走/v1/responses的?我的api支持responses,但在hermes里默认走chat completions
--【叁】--:
image1048×837 54.7 KB
我感觉还可以吧
--【肆】--:
chat completions更适合日常聊天窗口的对话。responses支持多轮推理,工具调用等,适合智能体
--【伍】--:
估计 api 的缓存控制方式不一样。需要确认 LLM Provider 是否适配
我用的 gpt5.4-mini, 反馈很快,感觉应该能命中… ( cpa 中转 codex 的 oauth)
--【陆】--:
啥是缓存命中啊,求问?我感觉我的hermes很爱搜索
--【柒】--:
暂时没有诶,我看当前hermes只支持三种api_mode,只有"chat_completions",“codex_responses”,"anthropic_messages"这三种,似乎不支持responses,不知道会不会是这个原因。(我试着改成codex_responses也用不了,这个似乎只能用codex登录使用)
--【捌】--:
佬,这两种url模式,具体是有啥区别吗?
--【玖】--:
佬找到方案了吗?opencode这类说是缓存的挺好的,不知道能不能借鉴一下
--【拾】--:
/root/.hermes/config.yaml
model:
default: gpt-5.4
provider: auto
base_url: xx
api_mode: codex_responses
context_length: 900000
大概就这样
让它自己帮你改就行
--【拾壹】--:
佬、缓存命中率是从什么/哪里/如何/工具查看的?
--【拾贰】--:
我们每次调用模型进行多轮对话,本质上会把前面所有内容作为prompt输入,这样输入的token会不断叠加,这样显然会让对话成本飙升。如果我们前面的对话内容已经被缓存,模型会识别后续输入的重复的内容,一般模型读缓存token的价格是直接读输入的1/10,所以缓存命中率越高,越有利于节省成本,也有利于提高响应速度。
但是如果你的prompt前面有经常变动的前缀(比如时间戳、agent.md文件发生改动),就很难命中缓存,不仅会让成本上升,而且后面响应会越来越慢。
(感觉hermes的自我学习特点天然不利于缓存命中)
--【拾叁】--:
破案了,感谢佬,我在config.yaml加了一行api_mode: codex_responses,解决了。
image806×946 31.7 KB
最近在用Hermes agent,在使用过程中发现缓存命中率极低,求问各位佬有没有好的解决方案?
尝试让它自己解决,改了和时间戳、session id相关的东西,但似乎没有效果。
用的模型是中转站api接的gpt-5.4,在codex中能正常命中缓存。
--【壹】--:
如果用中转站的话,直接在控制台使用日志里就能看到
--【贰】--:
求教佬怎么让它走/v1/responses的?我的api支持responses,但在hermes里默认走chat completions
--【叁】--:
image1048×837 54.7 KB
我感觉还可以吧
--【肆】--:
chat completions更适合日常聊天窗口的对话。responses支持多轮推理,工具调用等,适合智能体
--【伍】--:
估计 api 的缓存控制方式不一样。需要确认 LLM Provider 是否适配
我用的 gpt5.4-mini, 反馈很快,感觉应该能命中… ( cpa 中转 codex 的 oauth)
--【陆】--:
啥是缓存命中啊,求问?我感觉我的hermes很爱搜索
--【柒】--:
暂时没有诶,我看当前hermes只支持三种api_mode,只有"chat_completions",“codex_responses”,"anthropic_messages"这三种,似乎不支持responses,不知道会不会是这个原因。(我试着改成codex_responses也用不了,这个似乎只能用codex登录使用)
--【捌】--:
佬,这两种url模式,具体是有啥区别吗?
--【玖】--:
佬找到方案了吗?opencode这类说是缓存的挺好的,不知道能不能借鉴一下
--【拾】--:
/root/.hermes/config.yaml
model:
default: gpt-5.4
provider: auto
base_url: xx
api_mode: codex_responses
context_length: 900000
大概就这样
让它自己帮你改就行
--【拾壹】--:
佬、缓存命中率是从什么/哪里/如何/工具查看的?
--【拾贰】--:
我们每次调用模型进行多轮对话,本质上会把前面所有内容作为prompt输入,这样输入的token会不断叠加,这样显然会让对话成本飙升。如果我们前面的对话内容已经被缓存,模型会识别后续输入的重复的内容,一般模型读缓存token的价格是直接读输入的1/10,所以缓存命中率越高,越有利于节省成本,也有利于提高响应速度。
但是如果你的prompt前面有经常变动的前缀(比如时间戳、agent.md文件发生改动),就很难命中缓存,不仅会让成本上升,而且后面响应会越来越慢。
(感觉hermes的自我学习特点天然不利于缓存命中)
--【拾叁】--:
破案了,感谢佬,我在config.yaml加了一行api_mode: codex_responses,解决了。
image806×946 31.7 KB

