问题描述
我正在尝试使用 Rasa 自定义操作获取元数据。 POST 请求正文如下所示:
{
"sender": "Me","message":"Check channel","Metadata": {"channel": "chat"}
}
我将 get_Metadata
文件的 InputChannel 类中的方法 rasa\Lib\site-packages\rasa\core\channels\channel.py
更改为:
def get_Metadata(self,request: Request) -> Optional[Dict[Text,Any]]:
Metadata = request.json
return Metadata
而且,我也在 Rasa 自定义操作中编写了下一个代码来提取它:
@staticmethod
def extract_Metadata_from_tracker(tracker: Tracker):
events = tracker.current_state()['events']
user_events = []
for e in events:
if e['event'] == 'user':
user_events.append(e)
return user_events[-1]['Metadata']
作为回应,我只得到空的元数据:
"recipient_id": "Me","text": "Check channel","Metadata": {}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)