このチュートリアルでは、n8n を使用してAIエージェントを迅速に構築する方法を説明し、サンプルデータに関する質問に答えます。このエージェントは、 MongoDB をドキュメント検索用のベクトルストアと、チャットの永続化用のチャット メモリ ストアの両方として活用します。
MongoDBを使用した n8n ワークフローについて
次のスクリーンショットは、このチュートリアルで構築するワークフローを示しています。このワークフローでは、2 つのMongoDBノードを使用するAIエージェントを作成します。
また、LDM および埋め込みモデル プロバイダーとして OpenAI を使用します。
エージェントにメッセージを送信すると、次のアクションがトリガーされます。
AIエージェントノードはユーザー メッセージを処理し、次のアクションを決定します。
AIエージェントは、ツール呼び出しを行う必要があるかどうかを確認します。
はいの場合、ドキュメントを検索するためにMongoDB Vector Storeノードを呼び出します。
終了しない場合は、次のアクションに進みます。
エージェントは、ワークフロー用に構成した LM を使用して応答を生成します。
やり取りごとに、 MongoDBチャット メモリノードにチャット履歴が保存されます。

注意
AIエージェント ノードの構成内の赤色のアスタリスクは、必要なパラメーターを示します。
前提条件
始める前に、以下のものを必ず用意してください。
次のいずれかのMongoDBクラスター タイプ
MongoDBバージョン 6.0.11を実行中Atlas クラスター7.0.2、またはそれ以降IPアドレスが Atlas プロジェクトのアクセス リストに含まれていることを確認します。
Atlas CLI を使用して作成されたローカル Atlas 配置。詳細については、「Atlas 配置のローカル配置の作成」を参照してください。
Search とベクトル検索がインストールされたMongoDB Community または Enterprise クラスター。
サンプルデータはMongoDBデプロイにロードされます 。
OpenAI APIキー、または使用する LM と埋め込みモデルの他のサポートされているプロバイダーのAPIキー。
Considerations
n8n とMongoDBを使用する場合は、次の点を考慮してください。
MongoDB Atlasユーザーの場合は、n8n IPアドレスをプロジェクトのIPアクセス リストに必ず追加してください。詳細については、ネットワーク アクセス を参照してください。
MongoDB Vector Storeノードを構成するときは、Include Metadata を Off に切り替えていることを確認します。この設定を Off に切り替えない場合、ドキュメントが大きすぎて コンテキストウィンドウに読み込まれない可能性があるため、 AIエージェントが実行されない可能性があります。
ベクトル検索インデックスの作成
MongoDBベクトルストアノードを使用する前に、コレクションにベクトル検索インデックスを作成する必要があります。
AtlasGoClustersAtlas で、プロジェクトの ページにGoします。
警告: ナビゲーションの改善が進行中次の手順が Atlas UIのビューと一致しない場合は、プレビュー ドキュメントを参照してください。
まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー
まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。
まだ表示されていない場合は、サイドバーの [Clusters] をクリックします。
[ Clusters (クラスター) ] ページが表示されます。
Collections ページに移動します。
クラスターの [Browse Collections] ボタンをクリックします。
Data Explorerが表示されます。
インデックスの設定を開始します。
ページで次の選択を行い、Next をクリックしてください。
Search Type | Vector Search のインデックスタイプを選択します。 |
Index Name and Data Source | 以下の情報を指定してください。
|
Configuration Method | For a guided experience, select Visual Editor. To edit the raw index definition, select JSON Editor. |
重要:
MongoDB Searchインデックスの名前はデフォルトで default
です。この名前を維持する場合、インデックスは、演算子に別の index
オプションを指定していないMongoDB Search クエリのデフォルトの検索インデックスになります。複数のインデックスを作成する場合は、インデックス間で一貫した記述的な命名規則を維持することをお勧めします。
別のインデックス作成方法を使用するには、インデックス作成手順 の手順に従ってください。次の構成を使用します。
{ "fields": [ { "type": "vector", "path": "plot_embedding", "numDimensions": 1536, "similarity": "dotProduct" } ] }
n8n で認証情報を構成する
このセクションでは、n8n で必要な認証情報を構成する手順を完了します。
モデル プロバイダーの認証情報を追加します。
ドロップダウン メニューから、設定する認証情報を選択します。
例、OpenAI を選択し、Continue をクリックします。
モデル プロバイダーに入力するパラメータを確認するには、 認証情報ライブラリ を確認してください。
例、OpenAI の場合は、 APIキー、組織の名前 、およびベースURLを入力します。
[Save をクリックします。n8n は認証情報をパーソナル スペースに追加します。
MongoDBの認証情報を追加します。
前の手順と同じ手順に従って、 MongoDB の認証情報を n8n に追加します。次の値を指定します。
設定 | 値 |
---|---|
構成タイプ | ドロップダウン メニューで、Connection String メソッドを選択します。 |
接続文字列 | MongoDB Connection String を入力します。 MongoDB接続文字列を見つける方法については、接続文字列を参照してください。 |
Database | sample_mflixと入力します。 |
AIエージェント ワークフローの構成
MongoDBと n8n でAIエージェントワークフローを構築するには、n8n の次の手順を完了します。ワークフローの詳細については、MongoDBを使用した n8n ワークフローについて を参照してください。
チャット triggerノードを追加します。
n8n のすべてのワークフローは、 triggerノードで開始されます。このワークフローでは、チャットトリガーノードを使用して、 AIエージェントのワークフローがユーザーのメッセージによってトリガーされるようにします。
ノードメニューを開くには、Add first step を選択するか、Tab を押します。
Chat Trigger を検索します。n8n は、検索に一致するノードのリストを表示します。
ノードをカンダリに追加するには、Chat Trigger を選択します。
画面左上にある Back to canvas をクリックします。この段階では、このノードのテストをスキップできます。[Save] をクリックします。
チャット モデルを設定します。
受信プロンプトを処理するノードを接続するようにチャットモデルを構成します。
AIエージェントノードで Chat Model ラベルの横にある +コネクタをクリックします。Language Models でフィルタリングされた検索パネルが表示されます。
リストから OpenAI Chat Model または使用する LM プロバイダーを選択します。
[Credential to connect with] をクリックします。
認証情報を選択したら、ドロップダウン メニューからモデルを選択します(例: 、
gpt-4o
)。画面左上にある Back to canvas をクリックします。この段階では、このノードのテストをスキップできます。[Save] をクリックします。
AIエージェントノード構成に戻るには、ダイアログ ボックスの上部にあるAIエージェントのアイコンをクリックします。
MongoDBチャットメモリ サブノードを追加します。
永続的な対話コンテキストを有効にするには、 MongoDBチャットメモリ サブノードを構成します。
AIエージェントノードで Memory ラベルの横にある +コネクタをクリックします。
サイド パネルから []MongoDB Chat Memory を選択します。
[Select credential] をクリックし、 MongoDBの認証情報を選択します。
MongoDBチャットメモリノードのデフォルト構成を使用します。デフォルトでは 、 n8n は指定されたデータベースに
n8n_chat_histories
というコレクションを作成します。画面左上にある Back to canvas をクリックします。この段階では、このノードのテストをスキップできます。[Save] をクリックします。
AIエージェントノードの構成に戻すには、 AIエージェント アイコンをクリックします。
MongoDB Atlas Vector Storeノードをツールとして追加します。
ドキュメント検索を有効にするには、MongoDB Atlas Vector Storeノードを構成します。
AIエージェントノードで Tool ラベルの横にある +コネクタをクリックします。
検索パネルで、MongoDB Atlas Vector Store を選択します。
構成したMongoDB認証情報を選択し、次の値を指定します。
設定値Operation Mode
Retrieve Documents (As Tool for AI Agent)
Description
"Search through documents about movies to find relevant information"
MongoDB Collection
embedded_movies
Embedding
plot_embedding
Metadata Field
plot
Vector Index Name
vector_index
Limit
4
Include Metadata
切り替え Off
重要:
この設定を Off に切り替えない場合、ドキュメントが大きすぎて コンテキストウィンドウに読み込まれない可能性があるため、 AIエージェントが実行されない可能性があります。
Rerank Results
切り替え Off
ワークフローをテストします。
AIエージェントノードを構成したので、完全なワークフローをテストできます。メッセージを送信すると、ワークフローはカンダリ上でリアルタイムに実行されます。
カンストの下部にある [Open chat] ボタンをクリックします。
いくつかの初期プロンプトを実行中て、メモリ機能をテストします。(例: )。
Hi, my name is Mongo Hello Mongo! Nice to meet you. How can I help you today? What is my name? Your name is Mongo, as you mentioned when you introduced yourself earlier. 次のプロンプトを実行中て、ベクトル検索と RAG 機能をテストします。
Recommend me a few movies about time travel Here are a few movies about time travel that you might enjoy: The Time Traveler's Wife - A romantic drama about a Chicago librarian with a gene that causes him to involuntarily time travel, leading to complications in his marriage. Timecop - An officer working for a security agency that regulates time travel must battle for his life against a corrupt politician tied to his past. We Are from the Future (My iz budushchego) - Four modern-day treasure seekers are unexpectedly transported into the midst of a World War II battle set in Russia. About Time - A young man discovers at the age of 21 that he can travel back in time. He attempts to improve his life, including finding love, but things don't turn out to be as simple as they seem. Let me know if you'd like any additional information about these films!