MongoDB 영화 추천 AI 스마트 에이전트

MongoDB Agent

OpenAI와 MongoDB 기반의 지능형 영화 추천 시스템으로, 자연어로 영화 데이터베이스를 검색하고 개인 맞춤형 추천을 제공하며 즐겨찾기 목록을 관리할 수 있습니다.

8 NodesDeveloper ToolsAI 챗봇MongoDB 통합영화 추천

워크플로우 개요

이것은 OpenAI와 MongoDB를 기반으로 구축된 AI 스마트 에이전트 워크플로우로, 영화 추천 및 관리를 위한 시스템입니다. 이 워크플로우는 채팅 메시지를 수신하여 MongoDB 집계 프레임워크를 통해 영화 데이터를 조회하고, 사용자가 좋아하는 영화를 데이터베이스에 다시 저장할 수도 있습니다.

워크플로우 이름

MongoDB Agent(MongoDB 스마트 에이전트)

핵심 기능

  1. 지능형 대화 상호작용: 채팅 인터페이스를 통해 사용자의 영화 검색 요청을 수신합니다.
  2. MongoDB 데이터 조회: 집계 파이프라인을 사용해 MongoDB 영화 데이터베이스에서 관련 정보를 검색합니다.
  3. 영화 추천: 사용자 요구사항에 따라 개인 맞춤형 영화를 추천합니다.
  4. 즐겨찾기 관리: 사용자가 좋아하는 영화를 데이터베이스에 저장할 수 있습니다.

노드 상세 설명

1. When chat message received(채팅 메시지 수신 트리거)

  • 유형: @n8n/n8n-nodes-langchain.chatTrigger
  • 기능: 워크플로우의 진입점으로, Webhook 방식으로 사용자의 채팅 메시지를 수신합니다.
  • 설정:
    • 모드: Webhook(공개 접근 가능)
    • 모든 출처의 요청 허용(allowedOrigins: "*")

2. AI Agent - Movie Recommendation(AI 영화 추천 에이전트)

  • 유형: @n8n/n8n-nodes-langchain.agent
  • 기능: 전체 워크플로우의 논리를 조율하는 핵심 AI 에이전트입니다.
  • 프롬프트:
    • 영화 컨텍스트 어시스턴트 역할 수행
    • MongoDBAggregate 도구를 사용하여 검색
    • MongoDB 집계 파이프라인 코드 배열 제공 필요
    • 사용자가 명확히 확인한 경우에만 insertFavorite 도구를 사용하여 즐겨찾기 저장

3. OpenAI Chat Model(OpenAI 채팅 모델)

  • 유형: @n8n/n8n-nodes-langchain.lmChatOpenAi
  • 기능: AI 언어 이해 및 생성 기능 제공
  • 자격 증명: OpenAI API 연결

4. Window Buffer Memory(윈도우 버퍼 메모리)

  • 유형: @n8n/n8n-nodes-langchain.memoryBufferWindow
  • 기능: 대화 문맥 유지
  • 설정: 최근 10개의 메시지까지 문맥 윈도우 유지

5. MongoDBAggregate(MongoDB 집계 도구)

  • 유형: n8n-nodes-base.mongoDbTool
  • 기능: MongoDB 집계 쿼리 실행
  • 작업: 집계(aggregate)
  • 컬렉션: movies(영화 컬렉션)
  • 문서 구조: 다음 필드 포함
    • plot: 영화 줄거리 요약
    • genres: 장르(배열)
    • runtime: 상영 시간
    • cast: 출연진
    • poster: 포스터 링크
    • title: 영화 제목
    • fullplot: 전체 줄거리
    • languages: 언어
    • released: 개봉일
    • directors: 감독
    • rated: 등급
    • awards: 수상 내역
    • year: 연도
    • imdb: IMDb 평점 정보

6. insertFavorite(즐겨찾기 추가 도구)

  • 유형: @n8n/n8n-nodes-langchain.toolWorkflow
  • 기능: 하위 워크플로우를 호출하여 사용자가 좋아하는 영화를 데이터베이스에 삽입
  • 워크플로우 ID: 6QuKnOrpusQVu66Q(insertMongoDB)
  • 데이터 구조: {"title": "영화 제목"}

7-8. Sticky Note(스티키 노트 설명)

  • 기능: 워크플로우에 대한 문서 설명 및 프로세스 해설 제공

작업 흐름

  1. 메시지 수신: 사용자가 채팅 인터페이스를 통해 영화 관련 질의를 보냅니다.
  2. AI 분석: OpenAI 모델이 사용자의 의도와 요구사항을 분석합니다.
  3. 데이터 검색: 필요 시 MongoDBAggregate 도구를 호출하여 영화 데이터를 조회합니다.
  4. 결과 강화: AI 에이전트가 조회 결과를 처리하여 친근한 답변을 생성합니다.
  5. 즐겨찾기 저장: 사용자가 특정 영화를 마음에 들어 한다고 확인하면 insertFavorite 도구를 호출하여 저장합니다.
  6. 문맥 유지: Window Buffer Memory가 대화의 일관성을 유지합니다.

연결 관계

  • When chat message receivedAI Agent - Movie Recommendation
  • OpenAI Chat ModelAI Agent - Movie Recommendation(언어 모델)
  • Window Buffer MemoryAI Agent - Movie Recommendation(메모리)
  • MongoDBAggregateAI Agent - Movie Recommendation(도구)
  • insertFavoriteAI Agent - Movie Recommendation(도구)

기술적 특징

  1. 자율 에이전트 아키텍처: AI가 스스로 어떤 도구를 언제 사용할지 결정 가능
  2. 문맥 유지: 윈도우 메모리를 통해 대화의 연속성 유지
  3. 유연한 쿼리: 복잡한 MongoDB 집계 파이프라인 쿼리 지원
  4. 양방향 상호작용: 데이터 조회뿐 아니라 데이터 쓰기도 가능
  5. 공개 접근: Webhook 방식으로 외부 시스템에서 호출 가능

활용 사례

  • 영화 추천 챗봇
  • 영화 데이터베이스 지능형 검색 시스템
  • 개인 맞춤형 영화 즐겨찾기 관리
  • 영화 정보 검색 어시스턴트

상태

  • 활성 상태: true(워크플로우 활성화됨)
  • 실행 순서: v1

기술 스택

  • AI 프레임워크: LangChain
  • 언어 모델: OpenAI
  • 데이터베이스: MongoDB
  • 플랫폼: n8n workflow automation