python - 如何使用代理 rasa sdk 聊天机器人自信地获得预测意图
问题描述
我正在使用这个手动加载训练有素的 rasa 模型
agent = Agent.load(
model,
action_endpoint=EndpointConfig(ACTION_ENDPOINT)
)
我正在预测这样的结果
botResponse = await agent.handle_text(query)
但这只是将响应作为文本返回,但我也需要信心和意图名称
我试过了,handle_message
但仍然没有信心。
解决方案
您可以从tracker_store
. Agent
为此,首先确保您在调用时传递了发件人 ID agent.handle_text(query, sender_id="some sender id")
。然后使用以下命令检索跟踪器:
current_tracker = agent.get_or_create_tracker(sender_id="some sender id")
拥有跟踪器后,您可以使用以下命令检索最后发送消息的 NLU 解析数据:
user_event = tracker.get_last_event_for(UserUttered)
if user_event:
nlu_parse_data = user_event.parse_data
nlu_parse_data
应该是这样的:
"text": "Hi MoodBot.",
"parse_data": {
"intent": {
"id": 3068390702409455462,
"name": "greet",
"confidence": 0.9968197345733643
},
"entities": [],
"text": "Hi MoodBot.",
"message_id": "47efa155fc234abea554242883f0a74e",
"metadata": {},
"intent_ranking": [
{
"id": 3068390702409455462,
"name": "greet",
"confidence": 0.9968197345733643
},
{
"id": -7997748339392136471,
"name": "bot_challenge",
"confidence": 0.0019184695556759834
},
{
"id": -3856210704443307570,
"name": "mood_unhappy",
"confidence": 0.0010514792520552874
},
推荐阅读
- xcode - 无效的 iOS 模拟器部署目标
- flutter - 在构建 StreamBuilder 时引发了以下 StateError
- java - Thread-safe inheritance
- mysql - "LEFT" 在此位置无效,应为 ';' - SQL过程
- c++ - 为什么相机视图矩阵不改变点的位置
- swift - 崩溃:尝试将索引路径移动到不存在的索引路径
- sql - 如何编写删除表中的特定记录并将该记录存储在sql中的另一个备份表中的查询
- bootstrap-select - 如何在 selectpicker 数据实时搜索输入上激活事件?
- typescript - 如何从打字稿中的 promise.all 返回?
- node.js - 是否可以将十六进制有效负载转换为可读数据模式(蒸汽)?