添加可选的决策网关,以加快常规代理的决策速度
每次您在 aider 中发送消息时,大语言模型 都会被要求计算有关该消息的常规事项:意图是什么,是否需要工具,以及接下来要做什么。对于简单的消息,这仍然需要花费 1 到 3 秒钟和真实的成本,尽管答案在开始深入思考之前就显而易见。 思路是将一个小型、快速的决策模型放在大门口,在大模型运行之前。 这个小模型不会写文本。在一次快速的传递中,它返回带有置信度分数的打字答案,例如请求是否需要工具,是否可以从对话中已有的内容中回答,以及主要意图是什么。然后,一个薄弱的路由层将每条消息发送到最便宜的正确路径,并且每当小模型不确定时,它都会完全像今天一样回退到全模型。由于决策模型是小型的和开放的,它们可以在普通的家用硬件上运行,例如 CPU 或小型 GPU。 此次更改旨在确保安全地采用。默认情况下,它处于关闭状态,因此不做任何操作的用户可以看到当前的确切行为。当它打开时,首先会进入阴影模式,这意味着它只会对转换进行分类,并记录其建议,而不改变路由,跳过模型调用或更改用户看到的任何内容。此外,它还采用了开放式失败:在任何错误、超时或意外响应时,它只会没有意见,并且代理将继续完全像没有大门一样。因此,代理只能在决策明显时变得更快,从来不会变差。 我们希望将此作为一个可选功能来贡献。我已经开启了一个 Pull Request,该模块添加了一个小型自包含的大门模块和一个阴影模式钩子,位于消息即将发送到模型的位置。该概念和参考实现由 Andrea Bruno 提供,并以 Creative Commons Attribution 4.0 许可证发布。如果 aider 采用了这个想法或代码,我们恳请您在文档中保留对 Andrea Bruno 的简短致谢以及对 harness-superfast 仓库的链接。决策模型本身,Von、OpenJev 和 Laya 是第三方开放模型;只有集成架构和路由方法是我们的。白皮书名为 harness-superfast。
内容来源: Aider-AI/aider