策略概述¶
策略决定对话中的下一步行动。
在 Rasa 中,策略是负责对话管理的组件。在基于 CALM 的对话机器人中,FlowPolicy 负责执行业务逻辑。如果你正在构建基于 NLU 的对话机器人,可以在此处阅读相关策略。
CALM 中的策略
由于 CALM 中的对话理解组件已经考虑了对话的上下文,因此对话管理器的角色比基于 NLU 的对话机器人更简单。
你可以通过在项目的 config.yml
中指定 policies
键来自定义对话机器人使用的策略。在大多数情况下,默认配置应该可以满足你的需求,更高级的用例则可以进行自定义。
有不同的策略可供选择,你可以在单个配置中包含多个策略。以下是策略列表的示例:
动作选择¶
每次,配置中定义的每个策略都有机会以一定的置信度预测下一步动作。策略也可以决定不预测任何动作。预测置信度最高的策略决定对话机器人的下一步动作。
最大预测数量
默认情况下,对话机器人最多可以在每条用户消息后预测 10 个后续动作。要更新此值,可以将环境变量 MAX_NUMBER_OF_PREDICTIONS
设置为所需的最大预测数量。