ComenzarEmpieza gratis

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

Ver curso

Instrucciones del ejercicio

  • Itera sobre el diccionario keywords, usando intent y keys como variables del iterador.
  • Usa '|'.join(keys) para crear expresiones regulares que coincidan con al menos una de las palabras clave y pásalo a re.compile() para compilar las expresiones regulares en objetos patrón. Guarda el resultado como el valor del diccionario patterns.

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)
Editar y ejecutar código