Gemini 深度研究 Agent:搜尋、引用與 DuckDuckGo API 的限制
把 Gemini 接上一個搜尋工具,並不會自動變成可靠的「深度研究 Agent」。真正有用的研究流程,必須能回答:它查了什麼、讀了哪些來源、每個結論由誰支持、資訊截至何時、遇到衝突時怎麼處理,以及使用者能否回到原始資料自行核對。
Gemini API 提供的 Google Search grounding 與 URL Context,正好對應研究流程中的「廣泛找資料」與「深入讀指定來源」兩個階段。相對地,很多人提到的「DuckDuckGo API」常把搜尋網站的 Instant Answers、第三方服務或未文件化的抓取方式混在一起。本文不假設有一個可直接替代完整研究流程的 DuckDuckGo 搜尋 API,而是用可驗證的資料來源、引用與執行紀錄,說明怎麼建立研究 agent。
深度研究 Agent 的工作不是「回答得很長」
一個研究 agent 至少要把問題拆成可驗證的子任務:定義範圍、形成查詢、取得候選來源、閱讀關鍵頁面、比對矛盾說法、整理證據,最後才是撰寫結論。若只要求模型「詳細研究」,它可能產生流暢的長文,卻沒有清楚的來源邊界,也難以發現資訊過期、來源互相引用或關鍵證據不存在。
好的輸出應把「已被來源直接支持的事實」、「根據多個來源做出的推論」與「仍待確認的問題」分開。這不但降低幻覺,也讓使用者能決定下一步要不要補資料、訪談專家或改變問題。對法律、醫療、投資、採購與公共事件等高風險主題,研究 agent 更不應把搜尋結果當成最終建議。
Gemini 的 Google Search grounding:適合找最新與廣泛的資訊
Gemini 的 Google Search grounding 會讓模型在需要時產生一個或多個搜尋查詢、處理結果並回傳帶有 inline annotations 的回答。這些 annotations 對應到來源 URL,可用來把引用直接呈現在回答旁邊,而不是在文末放一串無法對應主張的連結。實作時要保存模型實際執行的查詢、回傳時間、來源 URL 與每段文字的引用範圍;這些都是之後追查錯誤、成本或更新的重要紀錄。
Grounding 適合用在近期事件、公開事實、產業動態與需要多來源比對的研究起點,但不代表所有結果都同樣可靠。模型找到的網頁仍可能是二手報導、過期內容、行銷材料或錯誤頁面。因此研究流程應為關鍵結論設定來源門檻:優先原始文件、官方公告、原始資料集、研究論文與一手統計;若只能找到二手來源,應標示其限制,而不是把它包裝成確定事實。
URL Context:把「找到」與「讀懂」分開
Google Search grounding 負責廣泛發現資料;URL Context 則讓你提供具體網址,請 Gemini 擷取與分析該頁或文件。這很適合比對兩份規格、整理研究報告、讀取公開 PDF 或確認官方公告的細節。URL Context 的輸出同樣可帶有 `url_citation`,而且會回傳 URL 取得狀態,方便除錯與檢查來源是否真的被讀到。
這個工具不是無限制爬蟲。官方文件指出,提供的網址必須公開可存取,且不支援付費牆、內網、localhost、影片/音訊與某些文件類型;每次請求也有 URL 數量與內容大小限制。實務上應先用搜尋找候選來源,再挑選少量最重要、最具權威性的網址深入讀取,避免把一大串低品質連結塞進 prompt,增加成本又降低可讀性。
「DuckDuckGo API」應先釐清是什麼
DuckDuckGo 的官方說明頁介紹的是搜尋產品中的 Instant Answers:它會把計算、事實等內容直接呈現在搜尋頁上,並整合多個資料來源。這不等於一份可供研究 agent 穩定使用、涵蓋完整網頁搜尋結果、排序、授權、引用與服務水準的公開 API 契約。本次更新時,DuckDuckGo 的 /api 網址會導向一般搜尋頁,我也沒有在官方文件中找到可當作完整 Search API 使用的文件。
因此,若專案需要 DuckDuckGo 的資料,先確認實際產品、使用條款、可取得欄位、速率限制、結果授權與長期支援;不要把網頁 HTML 抓取或未文件化 endpoint 當成生產依賴。若需求是可引用的公開網頁研究,Gemini 的 Google Search grounding 與 URL Context 已提供較清楚的官方工具邊界。若需求是特定第三方資料,則應選擇該資料提供者正式授權的 API,並把來源與許可資訊保留在研究紀錄中。
一個可回讀的研究工作流
1. 先寫研究契約
在呼叫模型前,明確指定問題、地區、時間範圍、語言、可接受的來源類型、排除條件與輸出格式。例如「比較 2026 年後發布的官方文件與同行評審研究;不可把新聞轉載當成唯一證據;每個重要數字都要附來源與日期」。研究契約越清楚,越容易辨識結果是否偏題。
2. 用搜尋找候選,再用網址讀證據
第一輪以 Google Search grounding 找到來源,記錄查詢與 citations。第二輪挑選原始來源、直接網址或互相矛盾的資料,交給 URL Context 做比較與摘要。不要讓模型把搜尋摘要直接升格為證據;關鍵主張應至少讀到原始頁面、表格或文件的相關段落。
3. 建立主張與證據的對照
每個核心主張都應有來源、發布日期、擷取時間、引用片段或段落位置、可信度說明與是否被其他來源支持。若來源衝突,研究 agent 應列出差異與可能原因,例如定義不同、資料期間不同、方法不同或尚無法判定,而不是暗中選擇最符合既有敘事的答案。
4. 將引用呈現給讀者,也保存給系統
Gemini 回傳的 inline citations 應保留在前端輸出,而不是在格式化時刪掉。後端也應保存研究版本、prompt、工具設定、回應、來源清單與評估結果。網頁會變更或消失,模型行為與價格也會調整;有了這些紀錄,團隊才能重跑、比較與更新,而不是只留下不可追溯的一篇文字。
品質評估與安全控制
評估時不要只看文字是否通順。可分別檢查來源覆蓋率、引用是否真的支持相對應主張、來源是否足夠新、重要反方證據有沒有被忽略、連結是否可開啟、以及工具錯誤或空結果時是否誠實告知。也應統計每次研究的搜尋數、URL 讀取量、耗時與費用,避免長問題或重複查詢造成不可預期的成本。
把外部網頁視為不可信內容。它們可以提供事實與觀點,卻不應覆寫系統指令、改變工具權限或要求 agent 洩漏資料。研究 agent 的工具應採 allowlist、限制網域或資料類型、驗證輸入輸出,並對資料下載、登入頁、付費牆與敏感查詢設置明確的停止條件。這些控制不能保證答案正確,但能讓系統在資訊不足或遭遇惡意內容時,採取安全的失敗方式。
引用存在,不等於結論已驗證
引用只能說明回答連到某個來源,不能自動證明該來源可靠、完整或正確。上線前可抽樣做人工核對:點開 citation,確認它支持的正是相鄰主張,而不是只提到相同關鍵字;再檢查來源日期、作者、方法與可能的利益關係。對一份會影響決策的研究報告,這類抽樣審查與版本紀錄,比再增加十個搜尋連結更能提升可信度。
結語
Gemini 的 Google Search grounding 與 URL Context 能讓研究 agent 從「只靠模型記憶」走向「有搜尋、可讀取、可引用」的流程,但深度研究的核心仍是證據治理:問題範圍、來源品質、引用對照、衝突處理與可重跑紀錄。至於 DuckDuckGo,先確認你所說的是哪一項正式、文件化且已授權的服務;沒有這個前提,就不該把它寫成研究系統的可靠基礎。先把可驗證性做對,再追求自動化與篇幅,才能做出真正可信的研究 agent。















