Cactus Hybrid: 让端侧模型知晓何时出错
Show HN: Cactus Hybrid: We taught Gemma 4 to know when it's wrong
Cactus Hybrid 通过微调 Gemma 4 等端侧模型,使其内置探针能实时输出 0 到 1 的置信度分数。开发者可据此实现智能路由:高置信度时本地快速响应,低置信度时自动切换至云端大模型。该方案在仅路由 15% 至 35% 请求的情况下,即可在多项基准测试中媲美 Gemini 3.1 Flash-Lite,完美平衡了隐私、速度与准确性。项目提供 Cactus、Transformers、llama.cpp 和 MLX 等多种框架的即用型示例。
我们训练模型让它们知道何时犯错:每个答案都附带结构化置信度,高置信时本地作答,低置信时自动路由至更大模型。
HN 评论区
40- BugsJustFindMe
> “经过后训练以知晓何时出错”
它是否也经过后训练,以知晓何时在“判断自己出错”这件事上出错了?
> “每个回复都附带一个 0 到 1 之间的置信度分数”
它对自己的置信度有多确信?
拜托了,我确信你们做的东西非常巧妙且实用,但请用别的措辞来描述它。求你们了。你无法知晓自己何时出错。你只能知晓自己何时不确定或不一致。你可以绝对确信却仍是错的,也可以不确定却仍是正确的。
- dmrivers
很酷的想法,一些反馈:
1. 考虑使用共形预测(conformal prediction)来校准阈值。在可交换性假设下,共形预测能提供无分布保证。这将使你能将原始探针分数转化为一个阈值,并保证端侧保留答案的错误率有上限。来源:https://en.wikipedia.org/wiki/Conformal_prediction
2. 机器学习中置信度的最佳指标来自多种独立方法。如果你结合 token 熵和语言化置信度报告这两种方法,结果如何?这能提升效果吗?
3. 我注意到你没提到通过重新运行模型并判断输出是否一致来评估的方法。在 AUROC 指标上,这种方法的表现如何?
- mncharity
> 不同层的隐藏状态携带了针对各种情境的有意义的自我感知信号。
是否合理去推测,某些开发者的直觉——比如“我刚才写的代码很干净/很糟糕”,或者“事情进展顺利/很卡顿”——在某些模型中也可能存在可提取的信号?
如果是这样,是否可以根据激活导向(activation steering)的概念,创建一份期望信号的清单,去检查模型中每个概念是否以及如何能被有效地“推”动?
- astrobiased
这在任何方面与 Goodfire 的工作相似吗?https://www.goodfire.ai/research/rlfr#
- cacio-e-pepe
> 因此我们在小模型上进行了机理研究,特别是 Gemma 4,发现不同层的隐藏状态携带了针对各种情境的有意义的自我感知信号。
很酷!为了确认我理解正确——你们训练探针层来接收这个隐藏状态并预测 p(wrong)(出错的概率)吗?
很想了解更多。关于你们的方法(尤其是机理研究部分)还有更多信息吗?