Clasificación de intenciones con regex I
Vas a empezar implementando una técnica muy simple para reconocer intenciones: buscar la presencia de palabras clave.
Ya se ha definido un diccionario, keywords. Tiene las intenciones "greet", "goodbye" y "thankyou" como claves,
y listas de palabras clave como valores correspondientes. Por ejemplo, keywords["greet"] está establecido como "["hello","hi","hey"].
También se ha definido un segundo diccionario, responses, que indica cómo debe responder el bot a cada una de estas intenciones.
También incluye una respuesta por defecto con la clave "default".
La función send_message(), junto con las plantillas del bot y del usuario, también ya están definidas. Tu tarea en este ejercicio es crear un diccionario con las intenciones como claves y objetos regex como valores.
Este ejercicio forma parte del curso
Creación de chatbots en Python
Instrucciones del ejercicio
- Itera sobre el diccionario
keywords, usandointentykeyscomo variables del iterador. - Usa
'|'.join(keys)para crear expresiones regulares que coincidan con al menos una de las palabras clave y pásalo are.compile()para compilar las expresiones regulares en objetos patrón. Guarda el resultado como el valor del diccionariopatterns.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define a dictionary of patterns
patterns = {}
# Iterate over the keywords dictionary
for ____, ____ in ____:
# Create regular expressions and compile them into pattern objects
patterns[intent] = ____
# Print the patterns
print(patterns)