Agente inteligente de IA para recomendación de películas con MongoDB

MongoDB Agent

Sistema inteligente de recomendación de películas basado en OpenAI y MongoDB, que admite consultas en lenguaje natural a la base de datos de películas, ofrece recomendaciones personalizadas y gestiona listas de favoritos

8 NodesDeveloper Toolschatbot de IA integración con MongoDB recomendación de películas

Descripción general del flujo de trabajo

Este es un flujo de trabajo de agente inteligente basado en OpenAI y MongoDB, diseñado para la recomendación y gestión de películas. El flujo puede recibir mensajes de chat, consultar datos de películas mediante el marco de agregación de MongoDB y permite almacenar las películas favoritas del usuario nuevamente en la base de datos.

Nombre del flujo de trabajo

MongoDB Agent (Agente Inteligente de MongoDB)

Funcionalidades principales

  1. Interacción conversacional inteligente: Recibe solicitudes de consulta de películas del usuario a través de una interfaz de chat.
  2. Consulta de datos en MongoDB: Recupera información relevante desde la base de datos de películas de MongoDB utilizando pipelines de agregación.
  3. Recomendación de películas: Ofrece recomendaciones personalizadas según las necesidades del usuario.
  4. Gestión de favoritos: Permite al usuario guardar sus películas favoritas en la base de datos.

Detalle de los nodos

1. When chat message received (Disparador por mensaje de chat)

  • Tipo: @n8n/n8n-nodes-langchain.chatTrigger
  • Función: Punto de entrada del flujo de trabajo, recibe mensajes de chat mediante Webhook.
  • Configuración:
    • Modo: Webhook (acceso público)
    • Permite solicitudes desde cualquier origen (allowedOrigins: "*")

2. AI Agent - Movie Recommendation (Agente de IA para recomendación de películas)

  • Tipo: @n8n/n8n-nodes-langchain.agent
  • Función: Agente central de IA que coordina toda la lógica del flujo de trabajo.
  • Prompt (indicaciones):
    • Actuar como asistente contextual de películas.
    • Utilizar la herramienta MongoDBAggregate para realizar búsquedas.
    • Proporcionar un array con código de pipeline de agregación de MongoDB.
    • Usar la herramienta insertFavorite únicamente cuando el usuario confirme su deseo de guardar una película.

3. OpenAI Chat Model (Modelo de chat de OpenAI)

  • Tipo: @n8n/n8n-nodes-langchain.lmChatOpenAi
  • Función: Proporciona capacidades de comprensión y generación de lenguaje mediante IA.
  • Credenciales: Conectado a la API de OpenAI.

4. Window Buffer Memory (Memoria con buffer de ventana)

  • Tipo: @n8n/n8n-nodes-langchain.memoryBufferWindow
  • Función: Mantiene el contexto de la conversación.
  • Configuración: Conserva una ventana de contexto con los últimos 10 mensajes.

5. MongoDBAggregate (Herramienta de agregación de MongoDB)

  • Tipo: n8n-nodes-base.mongoDbTool
  • Función: Ejecuta consultas de agregación en MongoDB.
  • Operación: agregación (aggregate)
  • Colección: movies (colección de películas)
  • Estructura del documento: incluye los siguientes campos:
    • plot: resumen del argumento
    • genres: géneros cinematográficos (array)
    • runtime: duración
    • cast: reparto
    • poster: enlace al póster
    • title: título de la película
    • fullplot: argumento completo
    • languages: idiomas
    • released: fecha de estreno
    • directors: directores
    • rated: clasificación
    • awards: información sobre premios
    • year: año
    • imdb: información de calificación de IMDb

6. insertFavorite (Herramienta para insertar favoritos)

  • Tipo: @n8n/n8n-nodes-langchain.toolWorkflow
  • Función: Invoca un subflujo para insertar las películas favoritas del usuario en la base de datos.
  • ID del flujo de trabajo: 6QuKnOrpusQVu66Q (insertMongoDB)
  • Estructura de datos: {"title": "Título de la película"}

7-8. Sticky Note (Notas adhesivas explicativas)

  • Función: Proporcionan documentación y explicación del flujo de trabajo.

Flujo de trabajo

  1. Recepción de mensaje: El usuario envía una consulta relacionada con películas a través de la interfaz de chat.
  2. Análisis por IA: El modelo de OpenAI analiza la intención y necesidades del usuario.
  3. Recuperación de datos: Se invoca la herramienta MongoDBAggregate para consultar datos de películas según sea necesario.
  4. Mejora de resultados: El agente de IA procesa los resultados de la consulta y genera una respuesta amigable.
  5. Guardado de favoritos: Si el usuario confirma que le gusta una película, se invoca la herramienta insertFavorite para guardarla.
  6. Mantenimiento del contexto: Window Buffer Memory asegura la coherencia en la conversación.

Relaciones de conexión

  • When chat message receivedAI Agent - Movie Recommendation
  • OpenAI Chat ModelAI Agent - Movie Recommendation (modelo de lenguaje)
  • Window Buffer MemoryAI Agent - Movie Recommendation (memoria)
  • MongoDBAggregateAI Agent - Movie Recommendation (herramienta)
  • insertFavoriteAI Agent - Movie Recommendation (herramienta)

Características técnicas

  1. Arquitectura de agente autónomo: La IA decide de forma autónoma cuándo utilizar cada herramienta.
  2. Mantenimiento del contexto: Usa memoria con ventana para conservar la continuidad de la conversación.
  3. Consultas flexibles: Soporta pipelines complejos de agregación en MongoDB.
  4. Interacción bidireccional: Permite tanto consultar como escribir datos.
  5. Acceso público: Puede ser invocado por sistemas externos mediante Webhook.

Casos de uso

  • Chatbot de recomendación de películas
  • Sistema inteligente de consulta de bases de datos de películas
  • Gestión personalizada de colecciones de películas favoritas
  • Asistente para búsqueda de información cinematográfica

Estado

  • Estado activo: true (el flujo de trabajo está activado)
  • Orden de ejecución: v1

Stack tecnológico

  • Framework de IA: LangChain
  • Modelo de lenguaje: OpenAI
  • Base de datos: MongoDB
  • Plataforma: n8n workflow automation