RASA - rasa 运行 操作 - 本地主机问题
RASA - rasa run actions - localhost issues
我正在使用 RASA 大师班 youtube 频道学习 Rasa。 https://www.youtube.com/channel/UCJ0V6493mLvqdiVwOKWBODQ
在加载操作之前一切正常。每次我在命令提示符下使用 rasa 运行 操作(两个操作中的第一个)时,程序都会卡住,我必须手动终止它。当我使用 rasa shell --endpoints endpoints.yml 时,bot 可以工作,但是当我在自定义操作中添加时,我不断遇到服务器 returns 无法连接到本地主机,如底部示例所示。问题是我如何通过这个问题。
*请询问更多信息
:
我的 actions.py 如下所示:
from typing import Any, Text, Dict, List
from rasa_sdk import Action, Tracker
from rasa_sdk.executor import CollectingDispatcher
from rasa_sdk.events import SlotSet
class ActionFacilitySearch(Action):
def name(self) -> Text:
return "action_facility_search"
def run(self, dispatcher: CollectingDispatcher,
tracker: Tracker,
domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
facility = tracker.get_slot("facility_type")
address = "300 Hyde St, San Francisco"
dispatcher.utter_message("Here is the address of the {}:{}".format(facility, address))
return []
在 domain.yml 中,对于我拥有的操作部分;
actions:
- utter_greet
- utter_cheer_up
- utter_did_that_help
- utter_happy
- utter_goodbye
- utter_iamabot
- utter_ask_location
- action_facility_search
并且在 endpoints.yml 中,大部分已被#'d out 但活动位是:
action_endpoint:
url: "http://localhost:9000/webhook"
请不要将 endpoints.yml 更改为 action_endpoint
的任何其他端口
请检查 5055 端口是否正常工作。
action_endpoint:
url: "http://localhost:5055/webhook"
您的操作服务器 运行 在 5055 端口上。如果你想让它设置 9000 然后从 rasa 核心后端请求更改它。
最后的答案很简单。我需要 运行 两个命令 windows。第一个用于:
rasa run actions
然后是第二个 window:
rasa x
或
rasa shell
然后它就可以正常工作了。
您的客户操作服务器似乎无法连接到 endpoints.yml
中提到的端点服务器
While 运行ning actions.py 将端口号提供为 rasa 运行 actions -p portnumber
确保endpoints.yml
中提到了您在此处提供的端口号
我用下面的命令解决
rasa run actions
然后是第二个 window:
rasa x
然后就可以正常工作了。
通过查看给定的图像,我假设您想要 运行 端口 9000 上的操作服务器。
如果您确实想要 运行 端口 9000 上的操作服务器,那么您需要进行以下更改:
endpoints.yml:
action_endpoint:
url: "http://localhost:9000/webhook"
命令到 运行 操作服务器:
rasa run actions -p 9000 --debug
用户 --debug
选项也检查操作文件中是否存在问题。
在 1 号航站楼 运行
rasa actions
在 2 号航站楼 运行
如果不存在,请检查您是否已将模型放置在模型文件夹中使用
rasa train
然后运行
rasa shell --endpoints endpoints.yml
我正在使用 RASA 大师班 youtube 频道学习 Rasa。 https://www.youtube.com/channel/UCJ0V6493mLvqdiVwOKWBODQ
在加载操作之前一切正常。每次我在命令提示符下使用 rasa 运行 操作(两个操作中的第一个)时,程序都会卡住,我必须手动终止它。当我使用 rasa shell --endpoints endpoints.yml 时,bot 可以工作,但是当我在自定义操作中添加时,我不断遇到服务器 returns 无法连接到本地主机,如底部示例所示。问题是我如何通过这个问题。
*请询问更多信息
:
我的 actions.py 如下所示:
from typing import Any, Text, Dict, List
from rasa_sdk import Action, Tracker
from rasa_sdk.executor import CollectingDispatcher
from rasa_sdk.events import SlotSet
class ActionFacilitySearch(Action):
def name(self) -> Text:
return "action_facility_search"
def run(self, dispatcher: CollectingDispatcher,
tracker: Tracker,
domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
facility = tracker.get_slot("facility_type")
address = "300 Hyde St, San Francisco"
dispatcher.utter_message("Here is the address of the {}:{}".format(facility, address))
return []
在 domain.yml 中,对于我拥有的操作部分;
actions:
- utter_greet
- utter_cheer_up
- utter_did_that_help
- utter_happy
- utter_goodbye
- utter_iamabot
- utter_ask_location
- action_facility_search
并且在 endpoints.yml 中,大部分已被#'d out 但活动位是:
action_endpoint:
url: "http://localhost:9000/webhook"
请不要将 endpoints.yml 更改为 action_endpoint
的任何其他端口请检查 5055 端口是否正常工作。
action_endpoint:
url: "http://localhost:5055/webhook"
您的操作服务器 运行 在 5055 端口上。如果你想让它设置 9000 然后从 rasa 核心后端请求更改它。
最后的答案很简单。我需要 运行 两个命令 windows。第一个用于:
rasa run actions
然后是第二个 window:
rasa x
或
rasa shell
然后它就可以正常工作了。
您的客户操作服务器似乎无法连接到 endpoints.yml
中提到的端点服务器While 运行ning actions.py 将端口号提供为 rasa 运行 actions -p portnumber
确保endpoints.yml
中提到了您在此处提供的端口号我用下面的命令解决
rasa run actions
然后是第二个 window:
rasa x
然后就可以正常工作了。
通过查看给定的图像,我假设您想要 运行 端口 9000 上的操作服务器。
如果您确实想要 运行 端口 9000 上的操作服务器,那么您需要进行以下更改:
endpoints.yml:
action_endpoint:
url: "http://localhost:9000/webhook"
命令到 运行 操作服务器:
rasa run actions -p 9000 --debug
用户 --debug
选项也检查操作文件中是否存在问题。
在 1 号航站楼 运行
rasa actions
在 2 号航站楼 运行 如果不存在,请检查您是否已将模型放置在模型文件夹中使用
rasa train
然后运行
rasa shell --endpoints endpoints.yml