載入中

Claude 內建了一個網頁搜尋工具,讓它能夠搜尋網路上的最新或專業資訊,以回答使用者的問題。與其他需要您提供實作方式的工具不同,Claude 會自動處理整個搜尋過程——您只需要提供一個簡單的結構定義(schema)來啟用它即可。

設定網頁搜尋工具

若要使用網頁搜尋工具,您需要建立一個包含以下必要欄位的結構定義物件:

python
web_search_schema = {
    "type": "web_search_20250305",
    "name": "web_search", 
    "max_uses": 5
}

max_uses 欄位限制了 Claude 可以執行的搜尋次數。Claude 可能會根據初步結果進行後續搜尋,因此這個欄位可以防止過多的 API 呼叫。

運作方式

當您在工具清單中加入網頁搜尋結構定義後,Claude 會根據您的問題自動決定何時進行搜尋。舉例來說,詢問「增加腿部肌肉的最佳運動是什麼?」可能會觸發一次針對最新健身研究的搜尋。

回應內容包含幾種不同類型的區塊:

  • TextBlock - Claude 對其正在執行動作的說明
  • ServerToolUseBlock - 顯示 Claude 所使用的確切搜尋查詢
  • WebSearchToolResultBlock - 包含搜尋結果
  • WebSearchResultBlock - 帶有標題和網址的個別搜尋結果
  • CitationsWebSearchResultLocation - 支持 Claude 陳述內容的具體文字引用

限制搜尋網域

您可以使用 allowed_domains 欄位將搜尋限制在特定網域內。當您需要權威來源時,這特別有用:

python
web_search_schema = {
    "type": "web_search_20250305",
    "name": "web_search",
    "max_uses": 5,
    "allowed_domains": ["nih.gov"]
}

這可確保 Claude 只搜尋可信賴的網域,例如政府衛生網站,而不是可能包含不可靠資訊的隨機健身部落格。

呈現搜尋結果

回應結構的設計是為了支援豐富的使用者介面呈現。您通常會:

  • 將文字區塊顯示為一般內容
  • 在頂部將網頁搜尋結果顯示為參考清單
  • 以內嵌方式呈現引用,並附上連結回到來源資料
  • 突顯被引用的文字,以展示 Claude 如何支持其陳述

這創造了一種透明的體驗,讓使用者可以驗證 Claude 的來源,並了解它是如何得出結論的。引用系統透過展示 Claude 回應背後的證據,有助於建立信任。