目錄

n8n AI Agent 教學:打造會使用工具的 AI 助理

n8n 內建完整的 AI 功能。其中最強大的是 AI Agent 節點:它不只是回答問題,還能依照需要自己決定使用哪些工具,例如查資料、呼叫 API、計算,然後根據結果回答。

AI Agent 的組成

AI Agent 節點下方有幾個插槽,用來接上「子節點」:

                    [When chat message received]
                               │
                               ▼
                         [ AI Agent ]
                     ┌────────┼────────┐
               Chat Model   Memory    Tool(s)
                   │          │        │
          [OpenAI Chat Model] [Simple Memory] [Calculator] [HTTP Request Tool] …
插槽作用常見選擇
Chat Model負責思考與回答的語言模型(必要)OpenAI、Anthropic、Google Gemini、Ollama 等
Memory記住對話歷史Simple Memory、Postgres Chat Memory、Redis Chat Memory
ToolAgent 可以使用的工具Calculator、HTTP Request Tool、Google Sheets、Code Tool、其他工作流程
AI Agent 節點接上 Chat Model、Memory 與 Tools
AI Agent 下方有 Chat Model、Memory、Tool 三種插槽,工具可以接很多個

做一個聊天助理

1. 新增聊天觸發器

新增工作流程,第一個節點選擇 When chat message received(Chat Trigger)。編輯器下方會出現 Open chat 按鈕,可以直接在 n8n 中對話測試。

2. 新增 AI Agent

在 Chat Trigger 後面新增 AI Agent 節點。

3. 接上聊天模型

點選 AI Agent 下方 Chat Model 的 +,選擇模型,例如 OpenAI Chat Model:

  1. 建立 OpenAI 憑證,貼上 API 金鑰。
  2. 選擇模型。

想使用本機的免費模型,請看 n8n 串接 Ollama。

4. 接上記憶

點選 Memory 的 +,選擇 Simple Memory。Context Window Length 決定記住最近幾輪對話,例如 10。

沒有記憶的 Agent,每一句話都是全新的對話,記不住你剛才說過什麼。

Simple Memory 存在 n8n 的記憶體中,重新啟動就會消失,也不適合多台 n8n 的環境。正式使用請改用 Postgres 或 Redis Chat Memory。

5. 設定系統提示詞

在 AI Agent 的 Options → System Message 寫下 Agent 的角色與規則:

你是「好咖啡」咖啡店的線上客服助理。
- 一律使用台灣慣用的繁體中文,語氣親切簡潔。
- 菜單與價格只能根據「查詢菜單」工具的結果回答,不要自行編造。
- 遇到客訴或無法處理的問題,請客人留下聯絡方式,告知將由專人回覆。
AI Agent 節點設定,System Message
AI Agent 設定:Source for Prompt 預設使用 Chat Trigger 的訊息,System Message 在 Options 中新增

6. 測試

按 Open chat,輸入「你好,請問你們幾點營業?」。在 AI Agent 節點的輸出(Logs)中,可以看到模型的每一步思考與工具呼叫。

加上工具

工具讓 Agent 能取得即時資訊或執行動作。點選 Tool 的 + 可以加入多個工具。

Calculator

讓 Agent 做精確計算。語言模型直接算數字常常出錯,有了計算機工具會可靠得多。

Google Sheets 工具:查詢菜單

  1. 準備一個試算表,欄位為「品名、價格、說明」。
  2. 新增 Google Sheets 工具,操作選擇讀取列(Get Rows)。
  3. 在工具的 Description 中說明用途:
查詢咖啡店菜單。當客人詢問品項、價格、推薦時使用。

Agent 會根據這段說明,決定什麼時候使用這個工具。工具描述寫得好不好,直接影響 Agent 的表現。

讓 AI 自己填參數

工具的參數欄位旁有一個 ✨ 按鈕(Let the model define this parameter),開啟後由 Agent 根據對話內容自動填入。例如 HTTP Request Tool 的城市參數,Agent 會從「台中今天會下雨嗎?」中取出「台中」。

在運算式中則可以使用 $fromAI():

{{ $fromAI('city', '要查詢天氣的城市名稱', 'string') }}

呼叫其他工作流程作為工具

Call n8n Workflow Tool 可以把任何一個工作流程變成 Agent 的工具。例如「建立訂單」的完整流程(寫入資料庫、寄確認信、通知店員),包裝成一個工具給 Agent 使用。

公開聊天介面

Chat Trigger 的設定中開啟 Make Chat Publicly Available,發布工作流程後會得到一個聊天網頁網址,也可以用官方提供的套件嵌入到自己的網站。記得設定驗證方式,避免被濫用而產生大量 API 費用。

不同的觸發方式

AI Agent 不一定要接 Chat Trigger,任何觸發器都可以:

  • Telegram Trigger → AI Agent → Telegram 回覆:Telegram 聊天機器人(見 Telegram 機器人)
  • Gmail Trigger → AI Agent → 草擬回覆
  • Webhook → AI Agent → Respond to Webhook:做成 AI API

此時 Agent 的輸入要在 Source for Prompt 中改成自行定義,例如 {{ $json.message.text }}。

常見問題

Agent 不使用工具

  • 確認選用的模型支援工具呼叫。
  • 改善工具的描述,清楚說明使用時機。
  • 在系統提示詞中明確要求:「回答價格問題前,一定要先使用查詢菜單工具」。

回答很慢或費用很高

每次工具呼叫都會多一次模型請求。減少不必要的工具、縮短記憶長度、選用較快的模型。

記不住前面的對話

確認有接上 Memory,且使用相同的 Session ID(Chat Trigger 會自動處理;使用其他觸發器時,要把使用者 ID 設為 Session Key)。

下一節介紹如何讓 AI Agent 使用本機的免費模型。

更新於 2026年10月12日