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