动力转向(实验性功能)
使用动力转向提高 Roo Code 响应的一致性。这个实验性功能强化了模式定义和自定义指令,以更好地遵守分配的角色。
“动力转向”(POWER_STEERING)实验性功能旨在通过更频繁地提醒底层大型语言模型 (LLM) 其当前模式定义和任何自定义指令来增强 Roo Code 响应的一致性。
工作原理
启用“动力转向”后,Roo Code 会不断强化 LLM 对其分配的角色(例如,“你是一个有用的编程助手”)和用户提供的任何特定指南(例如,“始终提供 Python 代码示例”)的理解。
这是通过在每次与 LLM 的交互中,显式地将 modeDetails.roleDefinition 和 modeDetails.customInstructions 包含在发送给 LLM 的信息中来实现的。
目标: 主要目标是确保 LLM 更严格地遵守其定义的角色,并更一致地遵循用户特定的指令。如果你发现 Roo 偏离其角色或忽略自定义规则,“动力转向”可以帮助它保持专注。
权衡: 这些频繁的提醒会消耗发送给 LLM 的每条消息中的额外令牌。这意味着:
- 每条消息的令牌使用量增加。
- 运营成本可能更高。
- 上下文窗口可能会更快填满。
这是在更严格地遵守指令和资源消耗之间取得平衡。
默认状态: 禁用。
技术细节
- 实验 ID:
powerSteering - 机制:
- 功能的状态由
getEnvironmentDetails函数检查。 - 如果启用,当前模式的
roleDefinition和customInstructions将被添加到发送给 LLM 的详细信息中。 - 这些详细信息被包装在
<environment_details>标签中,并成为每次 LLM 交互的上下文的一部分。
- 功能的状态由
- 影响: 通过频繁包含角色定义和自定义指令,LLM 被引导生成更符合这些参数的响应。
启用此功能
“动力转向” 在 Roo Code 的 高级设置 中的 “实验性功能” 部分进行管理。
- 打开 Roo Code 设置(右上角的 ⚙️ 图标)。
- 导航到 “高级设置”。
- 找到 “实验性功能” 区域。
- 切换 “动力转向” 选项。
- 保存你的更改。
有关实验性功能的常规信息,请参阅 实验性功能概述。
反馈
请在 Roo Code GitHub Issues 页面上报告有关此功能的任何问题或建议。你的反馈对于改进 Roo Code 至关重要。