工具和代理程式可擴充 Gemini 模型的功能,讓模型在現實世界中採取行動、存取即時資訊,以及執行複雜的運算工作。模型可透過即時 API,在標準要求/回應互動和即時串流工作階段中使用工具。
- 工具是模型可用來回答查詢的特定功能 (例如 Google 搜尋或程式碼執行)。
- 代理程式是一種系統,可規劃、執行及綜合多步驟工作,以達成使用者目標。
Gemini API 提供一系列全代管的內建工具和代理程式,可針對 Gemini 模型進行最佳化。您也可以使用函式呼叫定義自訂工具。
可用的內建工具
| 工具 | 說明 | 應用實例 |
|---|---|---|
| Google 搜尋 | 根據網路上的時事和事實建立回覆基準,減少幻覺。 | - 回答近期活動相關問題 - 根據各種來源驗證事實 |
| Google 地圖 | 建構位置辨識助理,尋找地點、規劃路線及提供豐富的當地資訊。 | - 規劃包含多個停靠點的旅遊行程 - 根據使用者條件尋找當地商家 |
| 程式碼執行 | 允許模型撰寫及執行 Python 程式碼,準確解決數學問題或處理資料。 | - 解出複雜的數學方程式 - 準確處理及分析文字資料 |
| 網址環境 | 指示模型讀取及分析特定網頁或文件中的內容。 | - 根據特定網址或文件回答問題 - 擷取不同網頁的資訊 |
| 電腦使用 (預覽) | 啟用 Gemini 來查看畫面,並生成與網頁瀏覽器 UI 互動的動作 (用戶端執行)。 | - 自動執行重複的網頁工作流程 - 測試網頁應用程式使用者介面 |
| 檔案搜尋 | 為自有文件建立索引並進行搜尋,啟用檢索增強生成 (RAG)。 | - 搜尋技術手冊 - 根據專有資料回答問題 |
如要瞭解特定工具的相關費用,請參閱定價頁面。
可用的服務專員
| 代理 | 說明 | 應用實例 |
|---|---|---|
| Deep Research | 自主規劃、執行及整合多步驟研究工作。 | - 市場分析 - 盡職調查 - 文獻回顧 |
工具執行的運作方式
模型可在對話期間透過工具要求執行動作。視工具是內建 (由 Google 管理) 還是自訂 (由您管理) 而定,流程會有所不同。
內建工具流程
如果是內建工具 (Google 搜尋、Google 地圖、網址內容、檔案搜尋、程式碼執行),整個程序會在一次 API 呼叫中完成:
- 你傳送提示:「GOOG 最新股價的平方根是多少?」
- Gemini 判斷需要工具,並在 Google 伺服器上執行這些工具 (例如搜尋股價,然後執行 Python 程式碼來計算平方根)。
- Gemini 會根據工具結果傳回最終答案。
自訂工具流程 (函式呼叫)
如果是自訂工具和電腦使用,應用程式會處理執行作業:
- 你會連同函式 (工具) 宣告傳送提示。
- Gemini 可能會傳回結構化 JSON,以呼叫特定函式 (例如
{"name": "get_order_status", "args": {"order_id": "123"}}),且一律會附上專屬的id。 - 您可以在應用程式或環境中執行函式。
- 您將函式結果連同函式呼叫的相同
id送回 Gemini。 - Gemini 會根據結果生成最終回覆,或呼叫其他工具。
詳情請參閱函式呼叫指南。
結合內建和自訂工具流程
如果要求結合了內建工具和自訂工具 (函式呼叫),模型會使用工具情境循環,協調不同環境的執行作業:
- 您可以傳送提示,並宣告要啟用的內建工具和自訂函式,然後設定旗標來啟用組合支援功能。
- Gemini 會執行內建工具,並在產生任何用戶端函式呼叫時讓步給使用者 (執行順序取決於提示和模型判斷)。並傳回包含下列內容的回應:
- 確認工具呼叫
- 工具回應的結果 (如果模型生成兩個平行函式呼叫,這可能會出現在 JSON 之後)
- 用於呼叫函式的結構化 JSON
- 加密的思緒簽章,可保留情境
- 您可以在應用程式或環境中執行函式。
- 你會傳回 Gemini 回覆的所有部分,以及函式呼叫結果。
- Gemini 會使用所有合併的脈絡資訊生成最終回覆。
請參閱工具組合指南,瞭解如何啟用內建和自訂工具組合的支援功能,以及內容流通的範例。
結構化輸出內容與函式呼叫
Gemini 提供兩種產生結構化輸出的方法。如果模型需要連線至您自己的工具或資料系統,執行中繼步驟,請使用函式呼叫。如果模型最終回應必須嚴格遵守特定結構定義 (例如用於算繪自訂 UI),請使用結構化輸出內容。
使用工具輸出結構化內容
您可以結合結構化輸出和內建工具,確保模型回覆以外部資料或運算結果為依據,同時嚴格遵守結構定義。
如需程式碼範例,請參閱「使用工具產生結構化輸出內容」。
建構代理
代理是使用模型和工具完成多步驟工作的系統。Gemini 提供推理能力 (「大腦」) 和必要工具 (「雙手」),但您通常需要自動化調度管理架構,才能管理代理程式的記憶體、規劃迴圈,以及執行複雜的工具鍊結。
如要盡量提升多步驟工作流程的穩定性,請編寫明確控制模型推論和規劃方式的指令。雖然 Gemini 提供強大的通用推論功能,但複雜的代理程式需要提示來強制執行特定行為,例如在遇到問題時保持不懈、評估風險及主動規劃。
如需設計這些提示的策略,請參閱代理程式工作流程。以下是系統指令範例,可將多個代理程式基準的效能提升約 5%。
代理架構
Gemini 整合了領先業界的開放原始碼代理框架,例如:
- LangChain / LangGraph:使用圖表結構建構有狀態的複雜應用程式流程和多代理系統。
- LlamaIndex:將 Gemini 代理程式連結至私人資料,以 RAG 增強工作流程。
- CrewAI:自動調度管理角色扮演的自主式 AI 代理,進行協作。
- Vercel AI SDK:在 JavaScript/TypeScript 中建構 AI 輔助的使用者介面和代理程式。
- Google ADK:開放原始碼架構,用於建構及協調可互通的 AI 代理程式。