AI 科技新聞站每日更新
開發工具2026年9月14日

Claude AI Agent 怎麼用?從聊天模式到自動執行任務的實作教學

A
AI 觀察家
專欄作者 · 3112 字
Claude AI Agent 怎麼用?從聊天模式到自動執行任務的實作教學

你有沒有覺得,跟 Claude 聊天很順,但總覺得好像「就這樣」?問完答完,然後你還是得自己回去做那件事。

這篇要解決的就是這個問題。Agent 模式讓 Claude 不只是回答你,而是主動執行步驟、呼叫工具、處理資料——白話講就是:它會幫你「做完」,不只是「說完」。

做完這篇教學,你會有一個能跑實際任務的 Claude agent 設定,包含工具呼叫、任務分解、以及一個可以直接複製去用的 prompt 結構。


在開始之前:你需要準備什麼

  • Claude API 存取權限(Anthropic console 帳號,或透過 AWS Bedrock / GCP Vertex AI)
  • Python 3.10+ 或 TypeScript 環境(官方 SDK 兩個都支援)
  • 基本的 API 呼叫概念——不需要很深,知道什麼是 request / response 就夠
  • 選擇性:如果要串外部服務(例如搜尋、資料庫、檔案系統),需要對應的 API key

如果你還在評估 Claude 跟其他模型的差異,可以先看看這篇 Claude vs Gemini 的比較,兩者 agent 設計哲學差很多,選錯工具之後調整很痛。


Step 1:搞清楚「agent 模式」跟普通對話差在哪

一般用 Claude 的方式是:你問 → 它答 → 結束。

Agent 模式多了一個循環:Claude 決定要呼叫什麼工具 → 工具回傳結果 → Claude 繼續推理 → 直到任務完成。

你可以把它想成:普通對話是問 Google,agent 模式是叫一個人幫你 Google 完之後,整理成報告、寄給你、然後把相關檔案歸檔好。

這個循環在 Anthropic 的 API 裡透過 tool_use 內容塊實作。Claude 輸出一個 tool_use block,你的程式碼執行那個工具,把結果塞回去,Claude 繼續下一步。


Step 2:定義你的工具(Tool Definition)

工具是 agent 能呼叫的「能力」。在 API 呼叫裡,你用 JSON Schema 描述每個工具的名稱、用途、參數。

{
  "name": "search_web",
  "description": "搜尋網路上的最新資訊,回傳前三筆結果的標題與摘要",
  "input_schema": {
    "type": "object",
    "properties": {
      "query": {
        "type": "string",
        "description": "搜尋關鍵字"
      }
    },
    "required": ["query"]
  }
}

description 寫好很關鍵。 Claude 靠這段描述決定要不要呼叫這個工具、什麼時候用。寫太模糊它會誤用,寫太窄它會放棄用。具體說明「什麼情況下應該呼叫」效果最好。


Step 3:建立 Agent 執行迴圈

這是整個 agent 的核心結構。你需要一個 while 迴圈,持續處理 Claude 的回應,直到它停止呼叫工具為止。

import anthropic

client = anthropic.Anthropic()
tools = [search_web_tool, read_file_tool]  # 你定義的工具清單
messages = [{"role": "user", "content": user_task}]

while True:
    response = client.messages.create(
        model="claude-opus-4-5",
        max_tokens=4096,
        tools=tools,
        messages=messages
    )

    if response.stop_reason == "end_turn":
        # 任務完成,取出最終回覆
        print(response.content[-1].text)
        break

    if response.stop_reason == "tool_use":
        # 找出所有 tool_use block
        tool_results = []
        for block in response.content:
            if block.type == "tool_use":
                result = execute_tool(block.name, block.input)
                tool_results.append({
                    "type": "tool_result",
                    "tool_use_id": block.id,
                    "content": result
                })
        # 把工具結果塞回對話
        messages.append({"role": "assistant", "content": response.content})
        messages.append({"role": "user", "content": tool_results})

execute_tool 是你自己實作的分派函式——根據工具名稱去呼叫實際的程式碼或 API。


Step 4:設計 System Prompt 讓 agent 知道它的邊界

Agent 沒有好的 system prompt,很容易在任務中途迷路或做過頭。幾個關鍵要寫進去:

  • 角色定義:它是什麼、主要任務是什麼
  • 工具使用規則:什麼情況必須用工具、什麼情況不要亂用
  • 輸出格式:最終回覆要長什麼樣子
  • 停止條件:任務完成的標準是什麼

範例片段:

你是一個資料研究助理。當用戶提出問題,你應該:
1. 先判斷是否需要搜尋最新資訊(如果是,使用 search_web)
2. 整理資訊後,以條列式輸出重點,不超過 5 點
3. 不確定的資訊不要猜測,直接標注「需要進一步確認」

想深入了解不同任務場景下的完整設定方式,這篇 Claude AI Agent 實作教學 有更多範例可以參考。


Step 5:跑第一個真實任務,觀察它怎麼思考

設定好之後,先跑一個小任務測試整個流程。建議從單工具、單步驟開始,例如:

「幫我搜尋 2026 年 9 月最受關注的 AI 研究論文,列出三篇標題和摘要」

跑的時候,把每次工具呼叫的輸入輸出都 print 出來看。你會開始理解 Claude 的推理節奏——它什麼時候決定要搜尋、什麼時候覺得資訊夠了、什麼時候會要求更多細節。

這個觀察過程比看文件重要得多。


常見錯誤與怎麼避開

工具描述太短 → Claude 不知道什麼時候該用,結果要麼全用要麼不用。每個工具至少寫一句「在 X 情況下呼叫此工具」。

迴圈沒有設上限 → 如果工具一直回傳錯誤,Claude 可能會無限嘗試。加一個 max_iterations 計數器保護自己。

忘記把 assistant 的 content 塞回 messages → 這是最常見的 bug,少了這步 Claude 會失去上下文,行為變得很奇怪。

一次定義太多工具 → Claude 在工具太多的時候選擇會變差。初期先控制在 3-5 個,確認行為穩定再擴充。


進階:讓 agent 處理多步驟任務

等基本流程跑通了,下一步是任務分解。可以在 system prompt 裡明確要求 Claude 在開始執行前,先輸出一個任務計畫(plan),然後逐步執行。

在開始之前,先輸出一個執行計畫,格式:
計畫:
1. [步驟描述]
2. [步驟描述]
...
然後依序執行每個步驟。

這個技巧有兩個好處:一是讓你能在它跑偏之前介入;二是 Claude 把計畫「說出來」之後,執行的一致性會更高——這跟 chain-of-thought 的機制有關,但不用深究原理,實用就好。

另外值得一提,GenAI 跟傳統 AI 的根本差異 這篇解釋了為什麼 LLM-based agent 的推理方式跟規則引擎完全不同——如果你要跟團隊說明為什麼這東西有時候「說不準」,那篇可以幫你講清楚。


完成後的檢查點

跑完第一個 agent 任務後,確認這幾件事:

  • 工具有被正確呼叫(不是每次都走到 end_turn 直接結束)
  • 工具結果有被正確回傳到對話裡
  • 最終輸出符合你在 system prompt 裡定義的格式
  • 迴圈有正常結束(沒有無限跑)

下一步可以開始考慮:加入 memory(讓 agent 記住跨任務的資訊)、串接真實的外部 API(Notion、GitHub、Slack),或是把這個 agent 包成一個服務讓其他人用。

Agent 模式一旦跑通,你對「AI 能做什麼」的理解會直接升一個層次。

常見問題

Claude agent 跟直接用 ChatGPT 插件有什麼不同?

最大差異在控制權。ChatGPT 插件是封裝好的黑盒,你能調整的空間有限;Claude agent 透過 API 自己建,工具定義、執行邏輯、迴圈控制全部自己寫,適合需要客製化流程或串接自家系統的場景。

Claude agent 執行任務時,token 消耗會不會很快爆掉?

多步驟任務確實會累積大量 context。每次工具呼叫後,整個對話歷史都會帶著跑。建議設定合理的 max_tokens 上限,並在長任務中定期摘要中間結果,避免 context window 撐爆或成本失控。

不會寫 Python 可以用 Claude agent 嗎?

目前要發揮 agent 的完整能力,還是得懂基本程式碼。不過 Anthropic 和第三方工具(如 LangChain、n8n)有提供更高層的封裝,對非工程師來說入門門檻低一些,但彈性也相對受限。

agent 執行過程中,Claude 做了錯誤決策怎麼辦?

最實用的做法是在 system prompt 裡定義「確認機制」,讓 Claude 在執行不可逆操作(如刪除檔案、發送訊息)前先輸出計畫等待人工確認。這叫 human-in-the-loop,是目前 agent 部署的最佳實踐之一。

用哪個 Claude 模型跑 agent 比較好?

2026 年 9 月現在,複雜多步驟任務首選 claude-opus-4-5,推理能力和工具使用準確度最穩;如果任務相對簡單、需要控制成本,claude-sonnet-4-5 是性價比不錯的選擇。建議先用 Opus 驗證流程,再評估要不要換模型降成本。

分享這篇

同系列文章