我正在使用RASA
和创建一个聊天机器人Flask
我有一个奇怪的要求,对于同一个问题,我必须根据请求配置 2 个不同的响应。
在请求中有一个键customer
,它可以是 1 或 0。
说我有一个问题:
what is refund policy?
如果客户提出问题(其中键值为 1)
它将返回您将在 3 天内获得退款
否则它将返回您将在 7 天内获得退款
所以我被困在如何传递这个为我的问题生成响应的customer
值。handle_text
有没有办法做到这一点Rasa
?
我的代码:
from rasa_core.interpreter import RasaNLUInterpreter
from rasa_core.utils importEndpointConfig
from flask import FLASK, request
import json
nlu_interpreter = RasaNLUInterpreter(NLU_MODEL)
action_endpoint = EndpointConfig(url=ACTION_ENDPOINT)
agent = Agent.load(DIALOG_MODEL, interpreter=nlu_interpreter, action_endpoint=action_endpoint)
@app.route("/chatbot", methods=["POST"])
def bot():
data = json.loads(request.data)
msg = data["msg"] # the question by user
is_customer = data["customer"]
response = agent.handle_text(msg, sender_id=data["user_id"])
return json.dumps(response[0]["text"])