タグ: AIエージェント

  • n8n AIエージェント活用ガイド|2025年注目の自動化事例10選と構築方法

    n8n AIエージェント活用ガイド|2025年注目の自動化事例10選と構築方法

    2025年は「AIエージェント元年」と呼ばれ、n8nを使ったAIエージェント構築が急速に広がっています。この記事では、n8nのAIエージェントとは何かという基礎から、実際の活用事例、具体的な構築方法まで解説します。

    n8nのAIエージェントとは

    n8nのAIエージェントは、ChatGPTやClaudeなどの大規模言語モデル(LLM)を「頭脳」として、外部ツールやサービスと連携しながら自律的にタスクを実行する仕組みです。

    従来のワークフロー自動化が「決められた処理を順番に実行する」ものだったのに対し、AIエージェントは「状況を判断して、必要なツールを選び、自ら考えて動く」ことができます。

    AIエージェントの特徴

    • 自律的な判断:ユーザーの指示を理解し、どのツールを使うか自分で決定
    • 会話の継続:文脈を記憶し、複数回のやり取りで情報を収集
    • ツールの活用:Web検索、データベース操作、API呼び出しなどを必要に応じて実行
    • 柔軟な対応:想定外の入力にも対応し、不足情報があれば追加で質問

    従来の自動化との違い

    項目 従来のワークフロー自動化 AIエージェント
    処理の流れ 事前に決められた固定フロー 状況に応じて動的に変化
    判断 IF文による条件分岐 AIによる自然言語理解・推論
    入力 構造化されたデータ 自然言語(曖昧な指示も可)
    出力 定型的なフォーマット 状況に応じた柔軟な回答・処理
    エラー時 停止またはエラー通知 不足情報を質問し自己解決を試みる

    なぜ今n8n × AIエージェントが注目されるのか

    2025年に入り、n8nとAIエージェントの組み合わせが急速に注目を集めている理由があります。

    n8nの成長と資金調達

    n8nは2025年にシリーズBラウンドで6,000万ドル(約90億円)の資金調達を完了し、企業評価額は2億7,000万ドルに達しました。AIエージェント機能の強化が成長を牽引しています。

    AIエージェント構築の民主化

    従来、AIエージェントを構築するにはPythonやLangChainなどの専門知識が必要でした。n8nを使えば、ノーコード/ローコードで視覚的にAIエージェントを構築できます。

    豊富な連携先

    n8nは500以上のサービスと連携可能で、OpenAI、Anthropic(Claude)、Google(Gemini)など主要なAIプロバイダーをサポート。Slack、Gmail、Notion、Salesforceなど業務ツールとの連携もシームレスです。

    コスト面の優位性

    セルフホストなら実行回数無制限。API利用料のみでAIエージェントを運用でき、商用ツールと比較して大幅なコスト削減が可能です。

    AIエージェント活用事例10選

    実際にn8nで構築できるAIエージェントの活用事例を紹介します。

    1. カスタマーサポートの自動応答

    概要
    顧客からの問い合わせをAIが分析し、FAQや過去の対応履歴を参照して回答を自動生成。対応できない内容は担当者にエスカレーション。

    構成例

    • トリガー:メール受信、Webフォーム、チャット
    • 処理:問い合わせ内容をAIで分類 → ナレッジベース検索 → 回答生成
    • 出力:自動返信 or 担当者へSlack通知

    効果
    回答時間を平均2時間から5分に短縮、対応の一貫性向上

    2. 不具合報告のヒアリングと起票

    概要
    Slack上で報告された不具合に対し、AIエージェントが不足情報をヒアリングしながら、最終的に構造化されたチケットを自動作成。

    構成例

    • トリガー:Slackでの特定キーワード検知
    • 処理:AIが状況・再現手順・影響範囲などを質問 → 情報収集 → チケット作成
    • 出力:Notion/Jiraにチケット起票、関係者にメンション

    効果
    不具合報告の情報精度向上、起票工数の削減(LayerX社での実践事例)

    3. 営業メールのパーソナライズ自動生成

    概要
    リード情報(会社名、業種、課題など)をもとに、一人ひとりに最適化された営業メールを自動生成。

    構成例

    • トリガー:CRMへの新規リード登録
    • 処理:企業情報をWeb検索で補完 → AIがパーソナライズした文面を生成
    • 出力:下書きメール作成 or 承認後自動送信

    効果
    メール作成時間を1通30分から3分に短縮、開封率・返信率の向上

    4. 議事録の要約とタスク抽出

    概要
    会議の録音・文字起こしデータから、要点を要約し、アクションアイテムを自動抽出してタスク管理ツールに登録。

    構成例

    • トリガー:会議終了(Zoom/Google Meet連携)
    • 処理:文字起こし → AIで要約・タスク抽出 → 担当者割り当て
    • 出力:Notionに議事録保存、Asana/Trelloにタスク作成

    効果
    議事録作成の工数を90%削減、タスクの見落とし防止

    5. SNSトレンド分析とコンテンツ提案

    概要
    X(Twitter)やニュースサイトのトレンドをリアルタイムで分析し、自社に関連するトピックを抽出、コンテンツ案を自動生成。

    構成例

    • トリガー:定期実行(毎朝9時など)
    • 処理:RSSフィード/API経由でトレンド取得 → AIで分析・コンテンツ案生成
    • 出力:Slackチャンネルにレポート投稿

    効果
    情報収集時間を1日2時間から10分に短縮、タイムリーな情報発信

    6. 履歴書スクリーニング

    概要
    応募者の履歴書・職務経歴書をAIが分析し、求人要件との適合度をスコアリング。面接候補者の一次選定を自動化。

    構成例

    • トリガー:応募フォーム受信
    • 処理:PDFから情報抽出 → 求人要件と照合 → 適合度スコア算出
    • 出力:スコア付きリストを採用担当に通知

    効果
    一次スクリーニング工数を80%削減、選考の一貫性向上

    7. マルチLLMルーター

    概要
    タスクの種類や複雑さに応じて、最適なAIモデルを自動選択。コストと品質のバランスを最適化。

    構成例

    • 簡単な質問 → gpt-4o-mini(低コスト)
    • 論理的推論 → Claude(高精度)
    • Web検索が必要 → Perplexity AI
    • コード生成 → GPT-4o

    効果
    API利用料を40%削減しながら品質維持

    8. データベースの自然言語クエリ

    概要
    「先月の売上トップ10の顧客は?」のような自然言語の質問を、SQLに変換してデータベースに問い合わせ、結果をわかりやすく回答。

    構成例

    • トリガー:Slackでの質問
    • 処理:自然言語 → SQL変換 → DB実行 → 結果を自然言語で説明
    • 出力:グラフ付きレポートをSlackに返信

    効果
    データ分析の民主化、エンジニアへの問い合わせ削減

    9. 競合モニタリング

    概要
    競合他社のWebサイト、プレスリリース、SNSを定期的にチェックし、重要な動きをAIが検知・要約して通知。

    構成例

    • トリガー:定期実行(毎日)
    • 処理:Webスクレイピング/RSS → 変更検知 → AIで重要度判定・要約
    • 出力:重要なもののみSlack通知

    効果
    情報収集の漏れ防止、競合動向への迅速な対応

    10. RAG(検索拡張生成)チャットボット

    概要
    社内ドキュメント、マニュアル、FAQをベクトルデータベースに格納し、質問に対して関連情報を検索しながら回答するチャットボット。

    構成例

    • データ取り込み:ドキュメント → テキスト分割 → ベクトル化 → Pinecone/Supabase保存
    • 質問応答:質問 → ベクトル検索 → 関連ドキュメント取得 → AIで回答生成

    効果
    社内ナレッジへのアクセス向上、新人教育コストの削減

    n8nでAIエージェントを構築する方法

    n8nでAIエージェントを構築する基本的な手順を紹介します。

    基本構成

    n8nのAIエージェントは、以下のコンポーネントで構成されます。

    1. トリガー:Chat Trigger、Webhook、Slackメンションなど
    2. AI Agent:エージェントの本体。LLMとツールを統合
    3. Chat Model:使用するLLM(OpenAI、Claude、Geminiなど)
    4. Memory:会話履歴の保存(Window Buffer Memoryなど)
    5. Tools:エージェントが使用できるツール群

    シンプルなAIエージェントの構築手順

    ステップ1:新規ワークフロー作成

    n8nにログインし、「Create new workflow」をクリック。

    ステップ2:Chat Triggerを追加

    「When chat message received」ノードを追加。これがチャット入力を受け付けるトリガーになります。

    ステップ3:AI Agentノードを追加

    「AI Agent」ノードを追加し、Chat Triggerと接続。

    ステップ4:Chat Modelを設定

    AI Agentノードの「Model」に「OpenAI Chat Model」を追加。認証情報を設定し、モデル(gpt-4o-miniなど)を選択。

    ステップ5:Memoryを追加(オプション)

    会話の文脈を保持するため、「Window Buffer Memory」を追加。これにより、前の発言を記憶した対話が可能になります。

    ステップ6:Toolsを追加(オプション)

    エージェントに能力を追加するため、以下のようなツールを接続できます。

    • HTTP Request Tool:外部APIの呼び出し
    • Calculator:計算処理
    • Web Search(SerpAPI):Web検索
    • Code Tool:JavaScriptコードの実行
    • 各種サービス連携:Slack、Notion、Google Sheetsなど

    ステップ7:System Messageの設定

    AI Agentノードの「System Message」で、エージェントの役割や制約を定義します。

    
    あなたは株式会社〇〇のカスタマーサポートアシスタントです。
    
    【役割】
    
    <ul>
    <li>お客様からの問い合わせに丁寧に回答する</li>
    <li>必要に応じてFAQデータベースを検索する</li>
    <li>対応できない内容は担当者にエスカレーションする</li>
    </ul>
    
    【ルール】
    
    <ul>
    <li>回答は簡潔に、3文以内で</li>
    <li>価格や契約に関する質問には直接回答しない</li>
    <li>個人情報は取得しない</li>
    </ul>

    構築時のポイント

    • System Messageは具体的に:役割、制約、出力形式を明確に定義
    • ツールの説明文が重要:各ツールの「Description」はAIがツールを選択する判断材料になる
    • まずはシンプルに:最初はツールなしで動作確認し、段階的に機能を追加
    • テストを繰り返す:様々な入力パターンで動作を確認

    AIエージェント導入の注意点

    コスト管理

    AIエージェントはLLM APIを頻繁に呼び出すため、利用料が増加しやすい傾向があります。

    • モデル選択:gpt-4o-miniなど低コストモデルから始める
    • トークン制限:入力・出力のトークン数に上限を設定
    • キャッシュ活用:同じ質問への回答をキャッシュ
    • 利用量監視:OpenAIダッシュボードで定期的に確認

    セキュリティ

    • 機密データの取り扱いに注意(セルフホストの検討)
    • エージェントの権限は最小限に
    • 外部サービス連携時の認証情報管理
    • ログの保存と監査

    精度と信頼性

    • AIの回答は必ずしも正確ではないことを前提に設計
    • 重要な処理は人間の承認ステップを挟む
    • ハルシネーション(虚偽情報生成)への対策
    • エスカレーションルートの確保

    よくある質問

    Q. AIエージェントと通常のワークフローはどう使い分けますか?

    A. 処理が明確で変動が少ないものは通常のワークフロー、判断や柔軟な対応が必要なものはAIエージェントが適しています。両者を組み合わせることも可能です。例えば、AIエージェントが情報を収集・整理し、その結果を通常のワークフローで後続処理するパターンが効果的です。

    Q. どのLLMを選べばよいですか?

    A. 用途によって使い分けます。日常的な処理にはgpt-4o-mini(低コスト)、複雑な推論にはGPT-4oやClaude、日本語の自然さを重視するならClaude 3.5 Sonnetがおすすめです。まずはgpt-4o-miniで試し、品質に問題があれば上位モデルに切り替えてください。

    Q. AIエージェントの運用コストはどのくらいですか?

    A. 利用頻度とモデルによりますが、目安として1日100回程度の利用でgpt-4o-miniなら月額1,000〜2,000円程度です。GPT-4oを使う場合はその10倍程度を見込んでください。セルフホストならn8n自体は無料です。

    Q. プログラミング知識なしでも構築できますか?

    A. 基本的なAIエージェントはノーコードで構築可能です。ただし、複雑なロジックやカスタムツールの作成にはJavaScriptの知識があると幅が広がります。まずはシンプルな構成から始めて、徐々にスキルアップすることをおすすめします。

    まとめ

    n8nのAIエージェントは、従来の「決められた処理を実行する」自動化から、「状況を判断して自律的に動く」自動化への進化を実現します。

    この記事で紹介した内容

    • AIエージェントの基本概念と従来の自動化との違い
    • 2025年にn8n × AIエージェントが注目される理由
    • 実践的な活用事例10選
    • 基本的な構築手順とポイント
    • 導入時の注意点

    まずは小さなユースケースから始めて、AIエージェントの可能性を体感してみてください。カスタマーサポートの自動応答や、社内FAQボットなど、効果が見えやすいところからスタートするのがおすすめです。

    n8nの基本的な使い方については、ChatGPTとの連携方法はも参考にしてください。

  • 【上級者向け】n8nのLangChain統合を完全理解する|AI Agent・Chain・Memory・Toolsの技術解説

    【上級者向け】n8nのLangChain統合を完全理解する|AI Agent・Chain・Memory・Toolsの技術解説

    n8nのAI機能は、LangChainフレームワークをベースに構築されています。AI Agentノード、Chat Modelノード、Vector Storeノードなど、普段使っているAIノードの背後にはLangChainの機能が動いています。

    この記事では、n8nにおけるLangChain統合の仕組みを理解し、約70種類以上のAI関連ノードを使いこなすための技術的な詳細を解説します。

    この記事でわかること

    • n8nのAIノードとLangChainの関係
    • Root NodesとSub-Nodesのアーキテクチャ
    • AI Agent、Chain、Memory、Toolsの使い分け
    • LangChain Code Nodeによる高度なカスタマイズ
    • Multi-Agent構成とオーケストレーション

    n8nのLangChain統合アーキテクチャ

    n8nは@n8n/n8n-nodes-langchainパッケージを通じて、LangChain JavaScript/TypeScriptライブラリと統合しています。この統合により、LangChainの主要な概念をノードとして利用できます。

    LangChainの主要概念とn8nノードの対応

    LangChain概念 n8nノードカテゴリ 役割
    Language Models Chat Models / LLMs テキスト生成の中核エンジン
    Agents AI Agent ツール選択と実行の自律的判断
    Chains Chain Nodes 処理の連鎖的実行
    Memory Memory Nodes 会話履歴の保持
    Tools Tool Nodes 外部システムとの連携
    Vector Stores Vector Store Nodes 埋め込みデータの格納・検索
    Embeddings Embeddings Nodes テキストのベクトル化
    Document Loaders Data Loader Nodes ドキュメントの読み込み
    Text Splitters Text Splitter Nodes テキストのチャンク分割
    Output Parsers Output Parser Nodes LLM出力の構造化

    Root NodesとSub-Nodesの関係

    n8nのLangChainノードは、Root Nodes(ルートノード)とSub-Nodes(サブノード)の2種類に分類されます。

    Root Nodes(ルートノード)

    ワークフローのメインの処理を担当し、execute()メソッドを実装します。

    • AI Agent
    • Basic LLM Chain
    • Question and Answer Chain
    • Summarization Chain
    • Information Extractor
    • Text Classifier
    • Sentiment Analysis

    Sub-Nodes(サブノード)

    Root Nodesにアタッチして機能を提供し、supplyData()メソッドを実装します。

    • Chat Models(OpenAI、Anthropic、Gemini、Ollama等)
    • Memory(Window Buffer Memory、Postgres Chat Memory等)
    • Tools(HTTP Request Tool、Calculator、Code Tool等)
    • Vector Stores(Pinecone、Qdrant、Supabase等)
    • Embeddings(OpenAI、Gemini等)
    • Document Loaders
    • Text Splitters
    • Output Parsers

    ノード接続の仕組み

    Sub-NodesはRoot Nodesの特定のコネクタに接続します。AI Agentノードの場合:

    • Chat Model:必須。GPT-4o、Claude、Gemini等のLLMを接続
    • Memory:オプション。会話履歴を保持
    • Tools:オプション。エージェントが使用できるツール群
    • Output Parser:オプション。出力を構造化

    AI Agentノードの詳細

    AI Agentノードは、n8nのLangChain統合で最も重要なノードです。LLMを使って自律的に判断し、ツールを選択・実行します。

    AI Agentの種類

    Agent Type 特徴 用途
    Tools Agent OpenAI Function Callingベース 最も汎用的、推奨
    Conversational Agent 会話に最適化 チャットボット
    OpenAI Functions Agent OpenAI専用 OpenAIモデル使用時
    ReAct Agent Reasoning + Acting 複雑な推論タスク
    Plan and Execute Agent 計画→実行 複数ステップのタスク

    Tools Agentの設定

    基本パラメータ

    • Agent Type:Tools Agent(推奨)
    • Prompt:Take from previous node automatically または Define below
    • System Message:エージェントの役割と制約を定義
    • Max Iterations:ツール実行の最大回数(デフォルト: 10)
    • Return Intermediate Steps:推論過程を出力に含めるか

    System Messageの設計例


    あなたは社内ナレッジベースを検索して質問に回答するアシスタントです。

    【役割】

    • ユーザーの質問に対して、まずナレッジベース検索ツールで関連情報を取得
    • 取得した情報に基づいて回答を生成
    • 情報が見つからない場合は正直に「該当する情報がありません」と回答

    【制約】

    • 推測や一般知識での回答は禁止
    • 必ずツールで取得した情報に基づいて回答
    • 回答には必ず出典(ドキュメント名)を含める

    【利用可能なツール】
    {tools}

    【ユーザーの質問】
    {input}

    Agentの実行フロー

    1. ユーザーからの入力を受け取る
    2. System MessageとToolsの情報をLLMに渡す
    3. LLMがどのツールを使うか判断
    4. 選択されたツールを実行
    5. ツールの結果をLLMに渡す
    6. さらにツールが必要か判断(Max Iterationsまで繰り返し)
    7. 最終回答を生成

    Chainノードの使い方

    Chainノードは、より構造化された処理フローを提供します。Agentほど自律的ではありませんが、予測可能な動作が必要な場合に適しています。

    主要なChainノード

    Basic LLM Chain

    シンプルなプロンプト→レスポンスの処理。

    • 用途:テキスト生成、翻訳、要約など
    • 接続:Chat Model(必須)、Memory(オプション)

    Question and Answer Chain

    ドキュメントに基づく質問応答。

    • 用途:RAGシステムの回答生成部分
    • 接続:Chat Model、Retriever(Vector Store経由)

    Summarization Chain

    長文の要約。

    • 用途:ドキュメント要約、議事録要約
    • 接続:Chat Model、Document Loader
    • 戦略:Map Reduce、Refine、Stuff

    ChainとAgentの使い分け

    要件 推奨 理由
    決まった処理フロー Chain 予測可能な動作
    外部ツールの動的選択 Agent 自律的判断が必要
    単純なQ&A Chain(Q&A) オーバーヘッドが少ない
    複雑なマルチステップタスク Agent 柔軟な対応が可能
    コスト最適化重視 Chain トークン消費が少ない

    Memoryノードの活用

    Memoryノードは、会話の履歴を保持してコンテキストを維持します。

    Memory Nodeの種類

    Memory Type 保存先 特徴
    Window Buffer Memory インメモリ 直近N件の会話を保持、セッション間で消失
    Postgres Chat Memory PostgreSQL 永続化、複数セッション対応
    Redis Chat Memory Redis 高速、TTL設定可能
    Motorhead Memory Motorhead 長期記憶の管理
    Xata Memory Xata サーバーレス対応
    Zep Memory Zep 要約機能付き

    Window Buffer Memoryの設定

    • Context Window Length:保持するメッセージ数(デフォルト: 5)
    • Session ID Key:セッション識別子のキー

    Session IDの設計

    ユーザーごと、または会話ごとに一意のセッションIDを設定します。


    // ユーザーIDベース
    {{ $json.userId }}

    // 会話IDベース
    {{ $json.conversationId }}

    // Webhook経由の場合
    {{ $json.headers['x-session-id'] }}

    Postgres Chat Memoryの設定

    永続的な会話履歴が必要な場合に使用します。

    必要なテーブル


    CREATE TABLE IF NOT EXISTS n8n_chat_histories (
    id SERIAL PRIMARY KEY,
    session_id VARCHAR(255) NOT NULL,
    message JSONB NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    );

    CREATE INDEX idx_session_id ON n8n_chat_histories(session_id);

    パラメータ

    • Session ID:セッション識別子
    • Table Name:履歴を保存するテーブル名
    • Context Window Length:コンテキストに含めるメッセージ数

    Toolsの設計と実装

    Toolsは、AI Agentが外部システムと連携するためのインターフェースです。

    標準Tool Nodes

    Tool 用途 設定のポイント
    HTTP Request Tool 任意のAPIを呼び出し URLとパラメータを動的に設定
    Calculator 数値計算 設定不要
    Code Tool JavaScript実行 カスタムロジック
    Vector Store Tool ベクトル検索 RAG用途
    Wikipedia Wikipedia検索 設定不要
    SerpAPI Google検索 APIキー必要
    Workflow Tool サブワークフロー呼び出し モジュール化に有効

    Tool設計のベストプラクティス

    1. 明確なName と Description

    LLMがツールを選択する際の判断材料になります。


    Name: search_company_policies
    Description: 社内規定や就業規則を検索します。
    有給休暇、勤務時間、福利厚生などに関する質問に使用してください。

    2. 入力スキーマの定義

    ツールが受け取るパラメータを明確に定義します。


    {
    "type": "object",
    "properties": {
    "query": {
    "type": "string",
    "description": "検索クエリ"
    },
    "category": {
    "type": "string",
    "enum": ["人事", "経理", "IT"],
    "description": "検索カテゴリ"
    }
    },
    "required": ["query"]
    }

    3. Workflow Toolによるモジュール化

    複雑な処理は別ワークフローとして切り出し、Workflow Toolで呼び出します。

    • メインワークフロー:AI Agent + Workflow Tool
    • サブワークフロー:データ取得、加工、外部API連携など

    LangChain Code Nodeによる高度なカスタマイズ

    標準ノードでは実現できない機能は、LangChain Code Nodeで直接LangChainのコードを書くことで実装できます。

    LangChain Code Nodeの特徴

    • 制限:セルフホスト版のn8nでのみ利用可能(Cloud版では不可)
    • 入力:Language Model、Memory、Tools、Document Loaderなど
    • 出力:カスタム処理の結果

    入力の追加方法

    1. LangChain Code Nodeを追加
    2. 「Add Input」をクリック
    3. 必要な入力タイプを選択(Language Model、Memory、Tool等)
    4. 対応するSub-Nodeを接続

    コード実装例:カスタムプロンプトテンプレート


    const { ChatPromptTemplate } = require("@langchain/core/prompts");
    const { RunnableSequence } = require("@langchain/core/runnables");

    // 入力からLanguage Modelを取得
    const model = await this.getInputConnectionData('ai_languageModel', 0);

    // カスタムプロンプトテンプレート
    const prompt = ChatPromptTemplate.fromMessages([
    ["system", あなたは{role}です。
    以下のガイドラインに従って回答してください:
    {guidelines}
    ],
    ["human", "{input}"]
    ]);

    // チェーンの構築
    const chain = RunnableSequence.from([
    prompt,
    model
    ]);

    // 実行
    const result = await chain.invoke({
    role: "技術サポートエンジニア",
    guidelines: "専門用語は避け、わかりやすく説明してください",
    input: $input.first().json.question
    });

    return [{ json: { response: result.content } }];

    コード実装例:カスタムエージェント


    const { AgentExecutor, createToolCallingAgent } = require("langchain/agents");
    const { ChatPromptTemplate, MessagesPlaceholder } = require("@langchain/core/prompts");

    // 入力の取得
    const model = await this.getInputConnectionData('ai_languageModel', 0);
    const tools = await this.getInputConnectionData('ai_tool', 0);
    const memory = await this.getInputConnectionData('ai_memory', 0);

    // プロンプトテンプレート
    const prompt = ChatPromptTemplate.fromMessages([
    ["system", "あなたは有能なアシスタントです。"],
    new MessagesPlaceholder("chat_history"),
    ["human", "{input}"],
    new MessagesPlaceholder("agent_scratchpad")
    ]);

    // エージェントの作成
    const agent = await createToolCallingAgent({
    llm: model,
    tools: tools,
    prompt: prompt
    });

    // エグゼキューターの作成
    const executor = new AgentExecutor({
    agent,
    tools,
    memory,
    maxIterations: 10,
    verbose: true
    });

    // 実行
    const result = await executor.invoke({
    input: $input.first().json.question
    });

    return [{ json: result }];

    Multi-Agent構成

    複数のエージェントを協調させる構成は、複雑なタスクを処理する際に有効です。

    AI Agent Tool によるオーケストレーション

    AI Agent ToolノードをSub-Nodeとして使用することで、あるエージェントが別のエージェントを呼び出す階層構造を作れます。

    構成例:専門エージェントの委譲


    [メインAgent]
    ├── Tool: search_agent (検索専門Agent)
    ├── Tool: calculation_agent (計算専門Agent)
    └── Tool: writing_agent (文章作成専門Agent)

    設定のポイント

    • 各専門エージェントは独立したワークフローとして構築
    • メインエージェントのToolsにAI Agent Toolとして接続
    • AI Agent Toolの「Description」で専門分野を明確に記述

    Workflow Toolによるモジュール構成

    より柔軟な構成として、Workflow Toolを使ったアプローチもあります。

    構成例


    [Main Workflow]
    ├── AI Agent
    │ ├── Tool: HR_Workflow (人事関連処理)
    │ ├── Tool: Finance_Workflow (経理関連処理)
    │ └── Tool: IT_Workflow (IT関連処理)

    [HR_Workflow]
    ├── Trigger: Execute Workflow
    ├── AI Agent (HR専門)
    └── Response

    [Finance_Workflow]
    ├── Trigger: Execute Workflow
    ├── AI Agent (経理専門)
    └── Response

    Output Parserによる出力の構造化

    LLMの出力を構造化されたデータとして取得するためにOutput Parserを使用します。

    Structured Output Parser

    JSON形式で出力を構造化します。

    スキーマ定義例


    {
    "type": "object",
    "properties": {
    "summary": {
    "type": "string",
    "description": "内容の要約"
    },
    "sentiment": {
    "type": "string",
    "enum": ["positive", "negative", "neutral"],
    "description": "感情分析結果"
    },
    "keywords": {
    "type": "array",
    "items": { "type": "string" },
    "description": "キーワードリスト"
    },
    "score": {
    "type": "number",
    "description": "重要度スコア(1-10)"
    }
    },
    "required": ["summary", "sentiment"]
    }

    Auto-fixing Output Parser

    LLMの出力がスキーマに合わない場合、自動的に修正を試みます。

    • 内部でLLMを再度呼び出して修正
    • コストが増加する可能性あり
    • 重要なタスクでは有効

    デバッグとモニタリング

    n8n内でのデバッグ

    Intermediate Stepsの確認

    AI AgentノードのReturn Intermediate Stepsをオンにすると、エージェントの思考過程と各ツール呼び出しの結果を確認できます。

    実行履歴の確認

    n8nの実行履歴から、各ノードの入出力データを確認できます。

    Langsmith連携(セルフホスト版)

    LangChainの公式モニタリングツールLangsmithと連携することで、より詳細なトレースが可能になります。

    環境変数の設定


    LANGCHAIN_TRACING_V2=true
    LANGCHAIN_API_KEY=your-langsmith-api-key
    LANGCHAIN_PROJECT=n8n-production

    Langsmithで確認できる情報

    • トークン使用量とコスト
    • 各ステップのレイテンシ
    • エラーの詳細
    • プロンプトと出力の履歴

    パフォーマンス最適化

    トークン消費の削減

    • System Messageを簡潔に
    • 不要なツールの説明を削除
    • Max Iterationsを適切に設定
    • 必要に応じてgpt-4o-miniなど軽量モデルを使用

    レイテンシの改善

    • ストリーミング出力の活用
    • 並列実行可能な処理の分離
    • キャッシュの活用(頻出クエリ)

    エラーハンドリング

    • Error Triggerでエラーをキャッチ
    • リトライロジックの実装
    • フォールバック処理の設計

    よくある質問(FAQ)

    Q. LangChain Code Nodeはn8n Cloudで使えますか?

    A. いいえ、LangChain Code Nodeはセルフホスト版のn8nでのみ利用可能です。Cloud版では標準のAIノードを組み合わせて実装してください。

    Q. AI AgentとBasic LLM Chainはどちらを使うべきですか?

    A. 外部ツールを使った動的な処理が必要な場合はAI Agent、シンプルなプロンプト→レスポンスの処理ならBasic LLM Chainを使用してください。Chainの方がトークン消費が少なく、動作も予測しやすいです。

    Q. Memoryはセッション間で保持されますか?

    A. Window Buffer Memoryはインメモリのため、ワークフロー実行間で消失します。永続化が必要な場合はPostgres Chat MemoryやRedis Chat Memoryを使用してください。

    Q. Multi-Agent構成のコストを抑えるには?

    A. 専門エージェントにはgpt-4o-miniなどコスト効率の良いモデルを使用し、メインエージェントのみgpt-4oを使用する構成が有効です。また、必要な場合のみ専門エージェントを呼び出すよう、ToolのDescriptionを適切に設計してください。

    Q. ToolのDescriptionはどの程度詳細に書くべきですか?

    A. LLMがツールを正しく選択できるよう、具体的なユースケースや使用条件を記述してください。短すぎると誤選択の原因になり、長すぎるとトークン消費が増加します。1-3文程度が目安です。

    まとめ

    この記事では、n8nのLangChain統合について技術的な詳細を解説しました。

    アーキテクチャの要点

    • n8nのAIノードはLangChainをベースに構築
    • Root Nodes(Agent、Chain)とSub-Nodes(Model、Memory、Tools)の階層構造
    • 約70種類以上のAI関連ノードが利用可能

    主要コンポーネント

    • AI Agent:自律的なツール選択と実行
    • Chain:構造化された処理フロー
    • Memory:会話履歴の保持
    • Tools:外部システム連携
    • Output Parser:出力の構造化

    高度なテクニック

    • LangChain Code Nodeによるカスタム実装(セルフホスト版)
    • AI Agent ToolによるMulti-Agent構成
    • Workflow Toolによるモジュール化
    • Langsmith連携によるモニタリング

    次のステップ

    1. 基本的なAI Agent + Tools構成を構築
    2. Memoryを追加して会話コンテキストを保持
    3. Output Parserで出力を構造化
    4. Workflow Toolでモジュール化
    5. (セルフホスト版)LangChain Code Nodeで高度なカスタマイズ

    n8nのLangChain統合を理解することで、より柔軟で高度なAIワークフローを構築できます。標準ノードの組み合わせで解決できない要件は、LangChain Code Nodeでの直接実装を検討してください。