DeepAgent Food Tours — 食べ歩きプラン生成AI

AI/ML

概要

DeepAgent Food Toursは、AIを使って食べ歩き(Food tour)プランを自動生成するプロトタイププロジェクトです。LangChainのDeepAgentsフレームワークをコアに、Google Maps APIで地理情報や店舗データを取得し、Tavilyらのマルチエージェント研究(協調・分担パターン)を参考にした設計で複数のサブエージェントが協業して計画を作成します。フロントにはインタラクティブな地図UIが用意され、ユーザーが訪問候補を追加すると、エージェント群が検索、評価、訪問順の最適化、所要時間やティップスの付与などを行い、実用的なツアープランを返します。プロトタイプながら、ミドルウェア層(SubAgentMiddleware, TodoListMiddleware)でタスク委譲とToDo管理を分離する点が特徴です。

GitHub

リポジトリの統計情報

  • スター数: 20
  • フォーク数: 2
  • ウォッチャー数: 20
  • コミット数: 8
  • ファイル数: 11
  • メインの言語: Python

主な特徴

  • LangChain DeepAgentsを用いたマルチエージェント設計(SubAgentMiddleware、TodoListMiddleware等)
  • Google Maps API統合による店舗検索・ジオコーディング・ルーティング
  • インタラクティブな地図フロントエンド(スクリーンショットあり)と連携するフルスタック構成
  • Tavilyのマルチエージェント研究を踏まえたタスク委譲パターンの実験実装

技術的なポイント

このプロジェクトは「エージェント設計」「外部API統合」「フロントエンド連携」という3つの技術的関心事を持ちます。まずLangChain DeepAgentsを用いる点では、単一の大規模言語モデルによる逐次処理ではなく、役割分担した複数のサブエージェントが協調して問題を解くアーキテクチャを採用しています。リポジトリ名やREADMEからは、SubAgentMiddlewareがサブエージェント間のタスク委譲やメッセージ仲介を担い、TodoListMiddlewareが計画中のタスク(例:場所検索、評価、順序付け、時間割り)を管理して、エージェントがやるべきことを明確に保つ役割を持つ設計であることが読み取れます。

次に外部サービスとの統合です。Google Maps APIを用いて地点検索、詳細情報取得、ルート推定などを行うことで、現実的なツアー情報(距離や移動時間、店舗の評価やカテゴリ)を得ています。実運用を想定するとAPIキー管理(.env.exampleの存在)、レート制限、ジオフェンシングやローカル検索の精度調整などの考慮が必要になります。READMEのスクリーンショットからは、フロントエンドで検索ポイントを地図に追加し、それをトリガーに深層エージェントが逐次プランを生成するインタラクションが実装されていることが伺えます。

最後にフルスタック構成の点です。リポジトリにはpackage.jsonやpackage-lock.jsonが含まれており、フロントエンドにはNode依存があることが示唆されます。これにより、リアルタイムの地図表示やユーザー入力のハンドリングはクライアント側で行い、バックエンドのPythonエージェントが計画ロジックを提供する典型的な分離が想定されます。設計上の注目点としては、エージェント間のメッセージ仕様(どの情報を共有するか)、ミドルウェアによる状態管理、外部APIのフェイルオーバーやキャッシュ戦略(同一地点への繰り返し問い合わせを減らす)などが挙げられ、プロトタイプ段階でも実運用に向けた拡張ポイントが明確です。

また、Tavilyの研究を踏まえることで、単なるシーケンシャルなプロンプト設計ではなく、タスク分解・並列化・担当分配といった高度な協調戦略が試されている点も技術的に興味深いところです。例えば、探索担当のサブエージェントとスケジューリング担当のサブエージェントを分離すれば、探索結果を受けて複数のスケジュール候補を同時に評価するなど並列評価が可能になります。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .env.example: file
  • .gitignore: file
  • README.md: file
  • package-lock.json: file
  • package.json: file

その他(例):

  • Pythonの実装ファイル(DeepAgentの設定、ミドルウェア、エージェントロジック)
  • フロントエンド用の静的ファイルやスクリーンショット(screenshotsディレクトリ)
  • 簡易の起動スクリプトや設定ファイル

(リポジトリには合計11ファイルが含まれており、環境変数の雛形やNodeの依存管理ファイル、READMEやスクリーンショットが含まれます。)

まとめ

LangChain DeepAgentsとGoogle Mapsを組み合わせた食べ歩きプラン生成の実験的プロトタイプ。マルチエージェント協調の設計学習に有用。

リポジトリ情報: