Rasa Core:utter_template() 缺少 1 个必需的位置参数:'tracker'
Rasa Core: utter_template() missing 1 required positional argument: 'tracker'
我正在使用带有自定义操作的 Rasa core v10.2,但在 运行 函数上出现 utter_template() missing 1 required positional argument: 'tracker'
错误。
自定义操作文件:(actions.py)
from rasa_core.actions import Action
from rasa_core.events import SlotSet
class searchJob(Action):
def name(self):
return 'action_search'
def run(self, dispatcher, tracker, domain):
return [SlotSet("jobsname", "as_aggregate")]
domain.yml:
slots:
jobsname:
type: text
templates:
utter_answer:
- text: "The required jobs are {jobsname}"
故事:
* search
- action_search
- utter_answer
输出是[{'recipient_id': 'default', 'text': 'The required jobs are None'}]
,这意味着它没有设置插槽。错误消息可能是它的原因吗?
谢谢。
所以问题似乎是自定义操作文件的名称,将其更改为 'actions' 中的任何其他名称即可。
您确定您正在查看正确的自定义操作吗?我收到了相同的错误消息,因为在我的自定义操作之一中,我使用了 dispatcher.utter_template()
,如下所示:
dispatcher.utter_template('utter_something')
显然 tracker
现在是必需的参数,即我添加 tracker
是这样的:
dispatcher.utter_template('utter_something', tracker)
错误消失了。
PS: 我知道这应该是评论,但我的声望不够高,所以不允许我评论。
我正在使用带有自定义操作的 Rasa core v10.2,但在 运行 函数上出现 utter_template() missing 1 required positional argument: 'tracker'
错误。
自定义操作文件:(actions.py)
from rasa_core.actions import Action
from rasa_core.events import SlotSet
class searchJob(Action):
def name(self):
return 'action_search'
def run(self, dispatcher, tracker, domain):
return [SlotSet("jobsname", "as_aggregate")]
domain.yml:
slots:
jobsname:
type: text
templates:
utter_answer:
- text: "The required jobs are {jobsname}"
故事:
* search
- action_search
- utter_answer
输出是[{'recipient_id': 'default', 'text': 'The required jobs are None'}]
,这意味着它没有设置插槽。错误消息可能是它的原因吗?
谢谢。
所以问题似乎是自定义操作文件的名称,将其更改为 'actions' 中的任何其他名称即可。
您确定您正在查看正确的自定义操作吗?我收到了相同的错误消息,因为在我的自定义操作之一中,我使用了 dispatcher.utter_template()
,如下所示:
dispatcher.utter_template('utter_something')
显然 tracker
现在是必需的参数,即我添加 tracker
是这样的:
dispatcher.utter_template('utter_something', tracker)
错误消失了。
PS: 我知道这应该是评论,但我的声望不够高,所以不允许我评论。