現在我們已經讓一個工具正常運作,接下來要新增剩餘的兩個工具,以完成我們的專案:add_duration_to_datetime 和 set_reminder。好消息是,一旦您建立好基礎架構,新增工具就會變得非常簡單。

預先建置的函式與結構
為了節省時間,這兩個額外函式的實作已經提供,連同它們的 JSON schema 規格。您可以在先前的程式碼單元格中找到這些內容:
- add_duration_to_datetime - 處理各種時間單位的日期運算
- set_reminder - 建立提醒(目前僅印出輸出,但可以擴展以整合實際的提醒系統)

每個函式都配有對應的 JSON schema,用於定義預期的參數及其類型。
將工具新增至對話中
第一步是將新的工具 schema 納入您的對話函式中。在 run_conversation 函式中,將額外的 schema 新增到 tools 陣列:
python
tools=[
get_current_datetime_schema,
add_duration_to_datetime_schema,
set_reminder_schema
]
連接工具函式
接下來,您需要更新 run_tool 函式以處理新的工具名稱。新增兩個額外的條件分支:
python
def run_tool(tool_name, tool_input):
if tool_name == "get_current_datetime":
return get_current_datetime(**tool_input)
elif tool_name == "set_reminder":
return set_reminder(**tool_input)
elif tool_name == "add_duration_to_datetime":
return add_duration_to_datetime(**tool_input)
else:
raise Exception(f"Unknown tool name: {tool_name}")
測試完整系統
連接好所有工具後,您現在可以測試需要多次工具呼叫的複雜工作流程。例如,要求 Claude「設定一個提醒去看醫生。預約時間在 100 天後」將觸發一系列操作:
- 使用
get_current_datetime取得今天的日期 - 使用
add_duration_to_datetime將 100 天加到該日期上 - 使用
set_reminder建立提醒

Claude 會自動將請求拆解成合乎邏輯的步驟,並在執行每次工具呼叫之前說明其計畫。輸出結果顯示了完整的工作流程,包括計算出的未來日期以及提醒設定完成的確認訊息。
重點摘要
一旦您建立好基礎的工具使用架構,新增工具只需要兩個簡單的步驟:將 schema 納入您的 tools 陣列,以及在您的路由函式中新增一個處理該工具名稱的分支。初始設定可能感覺複雜,但擴展到多個工具會變得非常容易管理。