iT邦幫忙

2026 iThome 鐵人賽

DAY 24
0
AI 自動化

30 天打造我的 AI 自動化工作流系列 第 24 篇

Day 24|讓 AI Agent 真的開始做事!加入多個 Tools,讓 AI 自己選擇工具

  • 分享至 

  • xImage
  •  

昨天第一次接觸 AI Agent。

我們先建立最基本的:

Chat Trigger → AI Agent → Chat Model

接著再加入一個簡單的 Tool,讓 Agent 不只是回答問題,而是可以根據任務決定要不要使用工具。

昨天只有一個 Tool 時,其實還看不太出來 Agent「選擇工具」的能力。

所以今天想再往前一步:

如果同時提供好幾個 Tools,AI Agent 能不能自己判斷應該使用哪一個?


今天要做什麼?

今天不打算做太複雜的系統。

先讓 Agent 擁有兩種不同能力:

Calculator:負責計算

Wikipedia:負責查詢基本資料

整體概念:

             Chat Model
                 │
使用者 → AI Agent
                 │
        ┌────────┴────────┐
        ↓                 ↓
   Calculator         Wikipedia

這次我們不使用 IF 或 Switch 告訴它要走哪條路。

而是:

把工具提供給 Agent,讓 Agent 根據問題自己選。

https://ithelp.ithome.com.tw/upload/images/20261006/20178835VtHgsr9chZ.png

圖 1 AI Agent 同時連接多個 Tools


Step 1:保留昨天的 Calculator

先保留昨天建立的 Calculator Tool。

所以目前 Agent 有:

AI Agent
   │
   └── Calculator

可以先測試:

「125 × 48 是多少?」

這種問題明顯是計算任務。

Agent 就可以判斷是否使用 Calculator。

如果執行成功,就代表昨天的功能還正常。


Step 2:加入第二個 Tool

接下來替 Agent 加入第二種完全不同的工具。

為了讓差異明顯,可以使用可以查詢資料的 Tool,例如 Wikipedia。

現在 Agent 可以使用:

Calculator
Wikipedia

一個負責:

計算

另一個負責:

查詢資料

這樣才比較容易觀察 Agent 到底有沒有根據任務選擇工具。

📷 這裡放加入第二個 Tool 的畫面

圖 2 替 AI Agent 加入第二個 Tool

如果你的 n8n 版本或目前環境沒有相同的 Wikipedia Tool,也可以使用其他可查詢資料的 Tool;今天的重點是「同一個 Agent 擁有不同功能的工具」。


Step 3:測試計算問題

先輸入:

「245 × 36 是多少?」

這時候 Agent 會先理解使用者的需求。

它手上有兩個工具:

Calculator
Wikipedia

Wikipedia 明顯不是最適合這個問題的工具。

所以預期會使用:

Calculator

整個過程可以理解成:

使用者
↓
245 × 36 是多少?
↓
AI Agent
↓
這是一個計算問題
↓
Calculator
↓
取得計算結果
↓
Agent 回答

245 × 36 的結果是:

8820

https://ithelp.ithome.com.tw/upload/images/20261006/20178835WZTa4qYDon.png

圖 3 AI Agent 判斷計算問題並使用 Calculator


Step 4:改問資料查詢問題

接著完全不修改 Workflow。

直接把問題改成資料查詢,例如:

「Who is Alan Turing?」

這次同一個 Agent 收到問題後,就要重新判斷。

Calculator 顯然沒有辦法協助查詢人物資料,因此如果工具設定正確,Agent 就可能選擇 Wikipedia Tool。

概念變成:

使用者
↓
Who is Alan Turing?
↓
AI Agent
↓
這是一個資料查詢問題
↓
Wikipedia
↓
取得資料
↓
Agent 整理回答

https://ithelp.ithome.com.tw/upload/images/20261006/201788358Ws3vAqGYs.png

圖 4 相同 AI Agent 根據不同問題選擇另一個 Tool

今天真正想觀察的不是 Alan Turing 的答案,而是:

我沒有重新接 Node,但 Agent 使用的 Tool 改變了。


Step 5:加入一個不需要 Tool 的問題

接下來再測一種情況。

輸入:

「請幫我用一句話介紹 AI 自動化。」

這種問題 Chat Model 本身就有可能直接回答,不一定需要 Calculator 或 Wikipedia。

所以 Agent 也可能判斷:

不需要使用工具。

這一點其實也很重要。

Agent 的概念不是:

「每一次都一定要呼叫一個 Tool。」

而是:

根據任務判斷目前是否需要使用可用的 Tool。

所以目前可能出現三種情況:

使用者問題可能使用
245 × 36 是多少? Calculator
Who is Alan Turing? Wikipedia
用一句話介紹 AI 自動化 直接回答

這樣 Agent 的「選擇」就開始比較明顯了。


Step 6:Tool 的說明很重要

做到這裡,我發現一件之前沒有特別注意的事情:

Agent 必須知道每個 Tool 是拿來做什麼的。

假設今天有兩個工具:

Tool A
Tool B

但完全不知道它們分別能做什麼,那 AI 要正確選擇就會更困難。

所以 Tool 的名稱、用途和描述也很重要。

例如:

Calculator
用途:進行數學計算

另一個:

Wikipedia
用途:查詢百科資料

這樣 Agent 才比較容易理解:

「現在這個任務應該交給誰?」

這跟之前寫 Prompt 有點像。

我們提供的資訊越清楚,AI 越容易按照預期工作。


Step 7:如果 Agent 選錯 Tool 呢?

今天測試時也不能預設:

Agent 一定永遠選對。

因為 Agent 的判斷還是和模型、提示、工具描述及輸入內容有關。

例如問題:

「Alan Turing 活了幾歲?」

這其實可能需要:

查詢出生日期與死亡日期
↓
再進行計算

如果工具與 Agent 支援這種任務,它甚至可能需要不只一次工具操作。

概念上可能變成:

使用者問題
↓
AI Agent
↓
Wikipedia
↓
取得日期資料
↓
Calculator
↓
計算
↓
回答

這就開始跟以前固定的 Workflow 很不一樣。

以前如果要這樣做,我可能必須自己設計:

查資料 → 取得日期 → 計算 → 回答

Agent 則有機會根據任務和可使用的工具決定處理方式。

不過今天先不用把這種多步驟任務做得太複雜。


如果把 Google Sheets 也變成 Tool 呢?

做到這裡,我開始想到前面使用過的 Google Sheets。

以前的流程是我們自己設定:

AI
↓
Google Sheets

如果未來把資料儲存能力提供給 Agent,就可以想像:

「幫我把這筆資料記錄下來。」

Agent 判斷:

需要使用資料儲存工具。

然後執行相對應的動作。

甚至使用者可以說:

「幫我查這個資料,整理完成後再記錄下來。」

這時候就可能需要:

AI Agent
↓
查詢工具
↓
取得資料
↓
整理
↓
Google Sheets

這也是我接下來最想嘗試的部分。


一般 Workflow vs Agent 再比較一次

前幾天的客服分類:

Webhook
↓
AI
↓
Switch
↓
Email / Sheets

每一步都已經寫死。

但 Agent 的方式比較像:

          Calculator
              ↑
使用者 → AI Agent ← Wikipedia
              ↓
        其他可用 Tools

所以差別慢慢變得很明顯。

Workflow 是我們決定流程。

Agent 是我們提供能力,再讓 AI 根據任務選擇如何使用。

不過這不代表 Agent 一定比較好。

固定又重要的流程,使用 IF、Switch 等方式反而更容易控制。

Agent 比較適合:

使用者需求可能一直改變的情況。


今天的測試

今天我會至少測三次:

測試 1:
245 × 36 是多少?

預期:
Calculator
測試 2:
Who is Alan Turing?

預期:
Wikipedia
測試 3:
請用一句話介紹 AI 自動化。

預期:
可能不需要 Tool,直接回答

如果執行時可以看到 Agent 面對不同問題選擇不同的處理方式,今天的實驗就成功了。

https://ithelp.ithome.com.tw/upload/images/20261006/20178835SIQzENSVnQ.pnghttps://ithelp.ithome.com.tw/upload/images/20261006/201788352X1WKFpsch.pnghttps://ithelp.ithome.com.tw/upload/images/20261006/201788359lqnW0hsts.png

圖 5 AI Agent 面對不同任務時的 Tool 使用結果


今天最大的收穫

昨天第一次做 AI Agent 時,我覺得它有點像:

「多了一個 Tool 的 ChatGPT。」

但今天同時加入不同 Tools 之後,開始比較能理解 Agent 的核心概念。

真正重要的不是 Tool 有多少個。

而是:

Agent 可以先理解使用者想完成什麼,再從允許使用的工具中決定下一步。

也就是:

理解任務
↓
選擇工具
↓
執行工具
↓
取得結果
↓
繼續完成任務

這就比單純:

Prompt → AI → Answer

多了一層「執行工作」的能力。


今日小結

今天把昨天只有一個 Tool 的 AI Agent 升級成:

             Chat Model
                 │
Chat Trigger → AI Agent
              ↙      ↘
      Calculator    Wikipedia

並使用不同問題測試 Agent 是否能選擇適合的工具。

做到這裡,AI Agent 已經不只是回答問題,而是開始能:

理解任務 → 選擇工具 → 使用工具 → 整理結果

不過目前 Calculator 和查詢工具主要都還是在「取得資訊」。

下一步我想讓 Agent 做一件更實際的事情:

把資料真的寫進外部系統。

所以明天就來嘗試讓 AI Agent 擁有資料儲存能力。


上一篇
Day 23|AI 不只會回答問題!第一次認識 AI Agent
下一篇
Day 25|讓 AI Agent 幫我記資料!串接 Google Sheets Tool
系列文
30 天打造我的 AI 自動化工作流 共 25 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言