Я экспериментировал с NLU частями Расы. В моем config.yml у меня есть резервная политика с порогом 70%.
Когда я запускаю сервер или пробую только оболочку NLU, я никогда не получаю Fallback Intent в ответ, даже если степень уверенности намного ниже 70%. Для режима только NLU не имеет смысла использовать резервную политику, поэтому я понимаю, почему это может произойти.
Но я перехожу с Dialogflow, поэтому я хотел бы, чтобы ответ NLU возвращал резервное намерение, если отправленное сообщение не попадает под какое-либо определенное намерение. Как я могу это сделать?
В качестве альтернативы, если можно получить данные NLU вместе с ответом ядра, это также сработает.
Примечание: я использую rasa 1.10.3
и rasa-sdk 1.10.1
Вот файл config.yml
, я в основном использую настройки по умолчанию, созданные rasa init
,
# Configuration for Rasa NLU.
# https://rasa.com/docs/rasa/nlu/components/
language: en
pipeline:
- name: WhitespaceTokenizer
- name: RegexFeaturizer
- name: LexicalSyntacticFeaturizer
- name: CountVectorsFeaturizer
- name: CountVectorsFeaturizer
analyzer: "char_wb"
min_ngram: 1
max_ngram: 4
- name: DIETClassifier
epochs: 100
- name: EntitySynonymMapper
epochs: 100
# Configuration for Rasa Core.
# https://rasa.com/docs/rasa/core/policies/
policies:
- name: MappingPolicy
- name: "FallbackPolicy"
nlu_threshold: 0.7
core_threshold: 0.7
fallback_action_name: "utter_Default Fallback Intent"