i am currently working on training a chatbot using RASA. I have been trying the fallback policy for the input that the chatbot is not trained to answer but the fall back action is not always triggered just like shown in the screenshot below.
This my config.yml:
# https://rasa.com/docs/rasa/model-configuration/
recipe: default.v1
# Configuration for Rasa NLU.
# https://rasa.com/docs/rasa/nlu/components/
language: fr
pipeline:
# other components
# # No configuration for the NLU pipeline was provided. The following default pipeline was used to train your model.
# # If you'd like to customize it, uncomment and adjust the pipeline.
# # See https://rasa.com/docs/rasa/tuning-your-model for more information.
- name: WhitespaceTokenizer
- name: RegexFeaturizer
- name: LexicalSyntacticFeaturizer
- name: CountVectorsFeaturizer
- name: CountVectorsFeaturizer
analyzer: "char_wb"
min_ngram: 1
max_ngram: 4
- name: DIETClassifier
epochs: 100
ranking_length: 5
constrain_similarities: true
model_confidence: softmax
- name: EntitySynonymMapper
- name: ResponseSelector
epochs: 100
constrain_similarities: true
model_confidence: softmax
- name: FallbackClassifier
threshold: 0.8
# Configuration for Rasa Core.
# https://rasa.com/docs/rasa/core/policies/
policies:
# # No configuration for policies was provided. The following default policies were used to train your model.
# # If you'd like to customize them, uncomment and adjust the policies.
# # See https://rasa.com/docs/rasa/policies for more information.
- name: MemoizationPolicy
- name: TEDPolicy
max_history: 5
epochs: 100
- name: RulePolicy
assistant_id: 20240710-104428-odious-highway
# # No configuration for policies was provided. The following default policies were used to train your model.
# # If you'd like to customize them, uncomment and adjust the policies.
# # See https://rasa.com/docs/rasa/policies for more information.
# - name: MemoizationPolicy
# - name: RulePolicy
# - name: UnexpecTEDIntentPolicy
# max_history: 5
# epochs: 100
# - name: TEDPolicy
# max_history: 5
# epochs: 100
# constrain_similarities: true
This is my nlu.yml:
nlu:
- intent: saluer
examples: |
- bonjour
- salut
- bonsoir
- bon matin
- coucou
- hey
- intent: au_revoir
examples: |
- au revoir
- adieu
- à plus tard
- prends soin de toi
- bye
- intent: demander_info_produit
examples: |
- Pouvez-vous me parler de vos produits ?
- J'aimerais en savoir plus sur vos services
- Quels services offrez-vous ?
- Parlez-moi de vos produits
- intent: demander_prix
examples: |
- Quels sont vos prix ?
- Combien ça coûte ?
- Pouvez-vous me donner les détails des prix ?
- Quel est le prix de ce service ?
- intent: demander_soutien
examples: |
- J'ai besoin d'aide pour ma commande
- J'ai un problème avec mon produit
- Pouvez-vous m'aider avec un problème ?
- J'ai besoin de soutien
- intent: remercier
examples: |
- Merci
- Je vous remercie
- C'est très gentil de votre part
- Merci beaucoup
- intent: demander_localisation
examples: |
- Où êtes-vous situé ?
- Quelle est votre adresse ?
- Où puis-je vous trouver ?
- Pouvez-vous me donner votre localisation ?
- intent: poser_question_generale
examples: |
- Pouvez-vous me donner plus d'informations ?
- Que pouvez-vous me dire sur l'entreprise ?
- J'ai une question sur l'entreprise
- Je voudrais en savoir plus sur l'entreprise
- intent: demander_disponibilite
examples: |
- Quand êtes-vous disponible ?
- Quel est votre horaire de travail ?
- Pouvez-vous me dire vos heures d'ouverture ?
- À quel moment puis-je vous contacter ?
- intent: donner_feedback
examples: |
- Je voudrais vous faire part de mes commentaires
- Voici mon avis sur votre service
- J'aimerais vous donner un retour
- Mon expérience avec vous a été [positive/négative]
- intent: signaler_probleme
examples: |
- Je rencontre un problème technique
- Il y a un bug sur votre site
- J'ai un souci avec l'application
- Pouvez-vous résoudre ce problème ?
- Je veux signaler un problème
- intent: demander_recommandation
examples: |
- Pouvez-vous me recommander un produit ?
- Quels produits ou services me suggérez-vous ?
- Avez-vous des recommandations ?
- Quel produit est le plus populaire ?
This is my rules.yml:
rules:
- rule: répondre au salut
steps:
- intent: saluer
- action: utter_saluer
- rule: répondre au revoir
steps:
- intent: au_revoir
- action: utter_au_revoir
- rule: répondre à la demande d'info produit
steps:
- intent: demander_info_produit
- action: utter_info_produit
- rule: répondre à la demande de prix
steps:
- intent: demander_prix
- action: utter_prix
- rule: répondre à la demande de soutien
steps:
- intent: demander_soutien
- action: utter_soutien
- rule: inconnu
steps:
- intent: nlu_fallback
- action: utter_inconnu
And this is my stories.yml:
stories:
- story: saluer et demander info produit
steps:
- intent: saluer
- action: utter_saluer
- intent: demander_info_produit
- action: utter_info_produit
- story: demander prix
steps:
- intent: demander_prix
- action: utter_prix
- story: demander soutien
steps:
- intent: demander_soutien
- action: utter_soutien
- story: au revoir
steps:
- intent: au_revoir
- action: utter_au_revoir
- story: remercier
steps:
- intent: remercier
- action: utter_remercier
- story: local
steps:
- intent: demander_localisation
- action: utter_localisation
- story: question generale
steps:
- intent: poser_question_generale
- action: utter_generale
- story: disponibilite
steps:
- intent: demander_disponibilite
- action: utter_disponibilite
- story: feedback
steps:
- intent: donner_feedback
- action: utter_feedback
- story: probleme
steps:
- intent: signaler_probleme
- action: utter_probleme
- story: recommandation
steps:
- intent: demander_recommandation
- action: utter_recommandation
Can you help me identify the problem and fix it please? I have already tried changing
- name: FallbackClassifier
threshold: 0.8
but it doesnt seem to work.