Как добавить uuid в чат-бот rasa для каждого пользователя?

Я разрабатываю чат-бота из этого репозитория, который на данный момент я соединил только со Slack, и я хочу чтобы он мог идентифицировать пользователя. Итак, знаете ли вы, как получить в Интернете что-то, что может генерировать уникальную идентификацию пользователя для каждого пользователя (идентификаторы пользователей для исследования должны иметь возможность храниться анонимно) моего чат-бота?

from rasa_core.channels import HttpInputChannel
from rasa_core.agent import Agent
from rasa_core.interpreter import RasaNLUInterpreter
from rasa_slack_connector import SlackInput

nlu_interpreter = RasaNLUInterpreter('./models/nlu/default/weathernlu')
agent = Agent.load('./models/dialogue',interpreter = nlu_interpreter)

# https://api.slack.com/apps/AASPDV196/oauth?
input_channel = SlackInput('OAuth Access Token','Bot User OAuth Access Token',
'Verification Token',True)

agent.handle_channel(HttpInputChannel(5004,'/',input_channel))

На данный момент я рассматриваю возможность:

  • используйте uuid.uuid4 ().
  • создание реальной веб-страницы, которая регистрирует пользователей в MySQL, из этого руководства, но я не уверен, что это позволяет использовать Slack.

Slack не обязателен, но, кроме терминала, другого интерфейса для общения с Chatbox у меня на данный момент нет.


person Revolucion for Monica    schedule 31.05.2018    source источник


Ответы (1)


По умолчанию Rasa Core использует имя пользователя, отправленное Slack, в качестве уникального идентификатора пользователя. Если вы хотите иметь некоторое сопоставление имени пользователя Slack с какой-либо настраиваемой схемой идентификатора, вам необходимо определить пользовательский канал, который перезаписывает канал Slack. Я предполагаю, что лучшими местами для применения вашего отображения будут process_message, send_text_message, send_image_url и send_attachment.

Если ваша проблема заключается в том, что разговоры в настоящее время не сохраняются при перезапуске Rasa Core, возможно, вы захотите изучить другой хранилище трекеров, так как по умолчанию все хранится в памяти.

person Tobias    schedule 05.12.2018