nlp_engine#
- class besser.agent.nlp.nlp_engine.NLPEngine(agent)[source]#
Bases:
object
The NLP Engine of an agent.
It is in charge of running different Natural Language Processing tasks required by the agent.
- Parameters:
agent (Agent) – the agent the NLPEngine belongs to
- _llms#
The LLMs of the NLPEngine. Keys are the names and values are the LLMs themselves.
- _intent_classifiers#
The collection of Intent Classifiers of the NLPEngine. There is one for each agent state (only states with transitions triggered by intent matching)
- Type:
- _speech2text#
The Speech-to-Text System of the NLPEngine
- Type:
Speech2Text or None
- get_best_intent_prediction(intent_classifier_predictions)[source]#
Get the best intent prediction out of a list of intent predictions. If none of the predictions is well enough to be considered, return nothing.
- Parameters:
intent_classifier_predictions (list[IntentClassifierPrediction]) –
- Returns:
- the best intent prediction or None if no intent prediction is well
enough
- Return type:
IntentClassifierPrediction or None
- get_property(prop)[source]#
Get a NLP property’s value from the NLPEngine’s agent.
- Parameters:
prop (Property) – the property to get its value
- Returns:
the property value, or None if the property is not an NLP property
- Return type:
Any
- predict_intent(session)[source]#
Predict the intent of a user message.
- Parameters:
session (Session) – the user session
- Returns:
the intent prediction
- Return type: