Gemini 3.5 Flash 已正式發布,穩定性高,可大規模用於實際工作環境。這是 Google 最聰明的 Flash 模型,可大規模執行代理式作業、程式設計和長期任務,並持續提供頂尖效能。
本指南概略說明 Gemini 3.5 Flash 的改良項目、API 異動和遷移指引。
新增模型
| 模型 | 模型 ID | 說明 |
|---|---|---|
| Gemini 3.5 Flash | gemini-3.5-flash |
Google 最聰明的模型,在代理和程式設計工作方面,可持續提供頂尖效能。 |
Gemini 3.5 Flash 支援 100 萬個詞元的脈絡窗口、最多 65,000 個輸出詞元、 思考型功能,以及與 Gemini 3 Flash 相同的工具和平台功能。 目前不支援「電腦使用」。
快速入門導覽課程
本指南中的所有範例都使用 Interactions API。這項 API 也支援 GenerateContent API,適用相同的設定選項和建議。
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.5-flash",
input="Explain how parallel agentic execution works in three sentences."
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
async function main() {
const interaction = await client.interactions.create({
model: "gemini-3.5-flash",
input: "Explain how parallel agentic execution works in three sentences.",
});
console.log(interaction.output_text);
}
main();
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-H "Api-Revision: 2026-05-20" \
-d '{
"model": "gemini-3.5-flash",
"input": "Explain how parallel agentic execution works in three sentences."
}'
最新資訊
- 持續提供頂尖效能:Google 最聰明的 Flash 模型,可大規模執行代理和程式設計工作。
- 代理執行:大規模部署子代理、解決問題,以及快速代理迴圈。
- 程式設計:反覆進行程式設計週期、快速探索及設計原型,測試替代路徑並動態探索解決方案。
- 長期:大規模使用多步驟工作流程和工具。
- 保留想法:模型會自動保留多輪對話中的中間推理過程。不需要變更 API。
- 新的預設努力程度:預設思考努力程度已從
high變更為medium。詳情請參閱「新的預設努力程度」。 - 提升
low思考能力:low現在可大幅提升程式碼和代理程式工作效能,減少步驟,以更低的延遲時間和成本提供高品質服務。 - 正式發行版:穩定模型,適合大規模用於實際工作環境。
選擇合適的 Flash 模型
Gemini 3.5 Flash 是我們最強大、最聰明的 Flash 模型。不過,不同的用途可能有不同的成本和延遲時間要求。
- Gemini 3.1 Flash-Lite:如要處理大量低成本工作,且不需要 3.5 Flash 的進階推理深度,建議使用 Gemini 3.1 Flash-Lite。這款模型穩定且適用於長期使用,並經過效率最佳化。詳情請參閱 Flash-Lite 開發人員指南。
- Gemini 3 Flash 預先發布版:我們建議遷移至 3.5 Flash,以確保正式發布版穩定性並提升推論能力。不過,開發人員仍可繼續使用 Gemini 3 Flash (預先發布版),測試預先發布版模型。
行為變更
新的預設投入程度:medium
預設思考量現在為 medium,Gemini 3 Flash 預先發布版則為 high。medium 可在各種任務中產生非常優異的結果,同時速度更快、成本效益更高。對於複雜問題,high 會促使模型深入思考。
| 投入程度 | 使用時機 |
|---|---|
minimal |
著重於回覆速度。適用於對話式用途、快速提供事實性答案,以及較簡單的工具呼叫。 |
low |
需要較低延遲和較少步驟的程式碼和代理程式工作。也適合用於需要動腦筋的分析和撰寫工作。 |
medium (預設) |
適合大多數工作,可提供最佳品質。建議用於複雜程式碼和代理式用途。 |
high |
盡量發揮模型的思考和工具使用能力,最適合處理複雜推論、高難度數學,以及最困難的程式碼或代理任務。可進行延伸思考和函式呼叫。 |
如要覆寫預設值,請在設定中設定 thinking_level:
Python
from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.5-flash",
input="Prove that the square root of 2 is irrational.",
generation_config={"thinking_level": "high"},
)
print(interaction.output_text)
JavaScript
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
async function main() {
const interaction = await client.interactions.create({
model: "gemini-3.5-flash",
input: "Prove that the square root of 2 is irrational.",
generationConfig: { thinkingLevel: "high" },
});
console.log(interaction.output_text);
}
main();
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-H "Api-Revision: 2026-05-20" \
-d '{
"model": "gemini-3.5-flash",
"input": "Prove that the square root of 2 is irrational.",
"generation_config": {"thinking_level": "high"}
}'
下表列出各模型支援的思考層級:
| 思考程度 | Gemini 3.5 Flash | Gemini 3.1 Pro | Gemini 3.1 Flash-Lite | Gemini 3 Flash | 說明 |
|---|---|---|---|---|---|
minimal |
支援 | 不支援 | 支援 (預設) | 支援 | 針對大多數查詢,這項設定等同於「不思考」。請注意,minimal 無法保證思考功能會關閉,模型可能會針對複雜工作進行極少的推論。 |
low |
支援 | 支援 | 支援 | 支援 | 盡量縮短延遲時間並降低成本。 |
medium |
支援 (預設) | 支援 | 支援 | 支援 | 思考能力均衡,適合處理多數工作。 |
high |
支援 (動態) | 支援 (預設、動態) | 支援 (動態) | 支援 (預設、動態) | 盡可能深入推論。 |
保留想法
模型會自動在多輪對話中保留中間推論結果,如果對話記錄中包含推論脈絡,系統會沿用這些資訊,進而提升複雜多步驟工作的效能,例如反覆偵錯和程式碼重構。不必變更 API:
- Interactions API:系統會自動保留想法,行為不會改變。
- GenerateContent API:從 Gemini 3.5 Flash 開始,如果對話記錄中存在想法簽章,模型就會使用先前所有輪次的推論脈絡。如要啟用這項功能,請在
contents中傳遞完整且未經修改的對話記錄 (包括想法簽章)。SDK 會自動處理這項作業。
Gemini 3.x 中的參數更新和最佳做法
以下內容適用於所有 Gemini 3.x 模型,包括 Gemini 3.5 Flash。
temperature、top_p、top_k:強烈建議不要變更預設值。Gemini 3 的推論能力已針對預設設定進行最佳化。- 使用
thinking_level,而不要使用thinking_budget。 - 函式呼叫回應比對:
id、name和回應計數必須與先前的呼叫相符。 - 多模態函式回覆:在函式回覆中加入多模態內容,而非在函式回覆外。
- 函式回應中的內嵌指令:附加至函式回應文字,而非獨立部分。
- 減少不必要的工具呼叫:使用較低的思考層級或實驗系統指令,減少代理工作流程中的工具呼叫。
如要瞭解如何更新程式碼,請參閱下方各節。
取樣參數 (不再建議使用)
temperature、top_p 和 top_k 不再適用於所有 Gemini 3.x 模型。Gemini 3 的推論能力已針對預設設定進行最佳化。請從所有要求中移除這些參數。
# ⚠️ Remove these parameters (not recommended)
generation_config = {
"temperature": 0.7,
"top_p": 0.9,
"top_k": 40,
}
為確保確定性,建議您根據特定用途定義系統指令,並明確指定規則。
thinking_budget (不建議使用)
我們不再建議在所有 Gemini 3.x 模型中使用原始數字 thinking_budget 參數,請改用 thinking_level 字串列舉。
# ⚠️ Before (not recommended)
generation_config = {
"thinking": {"thinking_budget": 7500},
}
# ✅ After
generation_config = {
"thinking": {"thinking_level": "medium"},
}
可用值:minimal、low、medium (預設值) 和 high。
函式呼叫:嚴格比對回應
如果函式回應不符,Interactions API 就會發生錯誤。GenerateContent API 目前不會傳回錯誤,但如果回覆不相符,模型在大多數情況下會傳回空白回覆,並附上 finish_reason: STOP。請一律遵循下列慣例:
| 規定 | 詳細資料 |
|---|---|
包含 id的訂金 |
每個 FunctionResponse 都必須包含對應 FunctionCall 的 id |
第 name 場 |
回應中的 name 必須與呼叫中的 name 相符 |
| 相符項目數 | 針對收到的每個 FunctionCall,傳回正好一個 FunctionResponse |
Python
# ✅ Include matching call_id and name in the function_result
final_interaction = client.interactions.create(
model="gemini-3.5-flash",
previous_interaction_id=interaction.id,
tools=[my_tool],
input=[{
"type": "function_result",
"name": fc_step.name,
"call_id": fc_step.id,
"result": [{"type": "text", "text": json.dumps(result)}],
}],
)
JavaScript
// ✅ Include matching call_id and name in the function_result
const finalInteraction = await client.interactions.create({
model: "gemini-3.5-flash",
previousInteractionId: interaction.id,
tools: [myTool],
input: [{
type: "function_result",
name: fcStep.name,
call_id: fcStep.id,
result: [{ type: "text", text: JSON.stringify(result) }],
}],
});
REST
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-H "Api-Revision: 2026-05-20" \
-d '{
"model": "gemini-3.5-flash",
"previous_interaction_id": "<INTERACTION_ID>",
"tools": [...],
"input": [{
"type": "function_result",
"name": "my_function",
"call_id": "<CALL_ID>",
"result": [{"type": "text", "text": "..."}]
}]
}'
多模態函式回覆
我們經常看到客戶在函式回應以外提供圖片。這可能會導致模型出現非預期的行為 (例如洩漏想法),並導致輸出內容品質不佳。請改為按照「多模態函式回覆 API 文件」中的建議操作,並在傳送給模型的回覆部分中加入多模態內容。模型可以在下一個回合處理這類多模態內容,進而生成更實用的回覆。
Python
# ✅ Include multimodal content in the function response
final_interaction = client.interactions.create(
model="gemini-3.5-flash",
previous_interaction_id=interaction.id,
input=[
{
"type": "function_result",
"name": tool_call.name,
"call_id": tool_call.id,
"result": [
{"type": "text", "text": "instrument.jpg"},
{
"type": "image",
"mime_type": "image/jpeg",
"data": base64_image_data,
},
],
}
],
)
JavaScript
// ✅ Include multimodal content in the function response
const finalInteraction = await client.interactions.create({
model: "gemini-3.5-flash",
previousInteractionId: interaction.id,
input: [{
type: "function_result",
name: toolCall.name,
call_id: toolCall.id,
result: [
{ type: "text", text: "instrument.jpg" },
{
type: "image",
mime_type: "image/jpeg",
data: base64ImageData,
},
],
}],
});
函式回應中的內嵌指令
我們經常看到客戶在函式回應中提供額外指令,做為後續的 Parts。這可能會導致模型出現非預期的行為 (例如洩漏想法),並產生品質較差的輸出內容。請改為在函式回應文字結尾附加任何額外指示,並以兩個換行符號分隔。
Python
# ✅ Append inline instructions to the end of the function response separated by two newlines
result_text = f"{json.dumps(result)}\n\n<your inline instructions>"
final_interaction = client.interactions.create(
model="gemini-3.5-flash",
previous_interaction_id=interaction.id,
tools=[my_tool],
input=[{
"type": "function_result",
"name": fc_step.name,
"call_id": fc_step.id,
"result": [{"type": "text", "text": result_text}],
}],
)
JavaScript
// ✅ Append inline instructions to the end of the function response separated by two newlines
const resultText = `${JSON.stringify(result)}\n\n<your inline instructions>`;
const finalInteraction = await client.interactions.create({
model: "gemini-3.5-flash",
previousInteractionId: interaction.id,
tools: [myTool],
input: [{
type: "function_result",
name: fcStep.name,
call_id: fcStep.id,
result: [{ type: "text", text: resultText }],
}],
});
減少不必要的工具呼叫
如果工具呼叫次數過多,可以採取以下兩種方法盡量減少:
首先,請降低思考層級 (
medium、low或minimal): 思考層級越高,模型就越會使用工具探索及驗證,因此降低層級可減少工具呼叫次數。新增系統指令:如果調整思考程度後仍有過度使用情形,請考慮使用限制工具用量的提示。例如:
You have a limited action budget of <n> tool calls. Use them efficiently.
遷移檢查清單
我們強烈建議更新至 google-genai SDK v2.0.0 以上版本。這個版本對 Interactions API 進行了重大變更。詳情請參閱重大變更遷移指南。
從 Gemini 3 Flash 預先發布版遷移
- 更新模型名稱:
gemini-3-flash-preview→gemini-3.5-flash - 查看定價。Gemini 3.5 Flash 的價格高於 Gemini 3 Flash 預先發布版。如果您的使用案例對成本非常敏感,請考慮改用 Gemini 3.1 Flash-Lite。詳情請參閱定價頁面。
- 從設定中移除
temperature、top_p和top_k(不再建議使用)。 - 將
thinking_budget替換為thinking_level。 - 在所有
FunctionResponse部分中加入id和相符的name。 - 測試提示。預設成效已從
high→medium變更;請確認品質、速度和費用。 - 系統現在預設會保留想法。推論內容會跨回合延續,這有助於提升效能,但可能會增加詞元用量。
- 減少不必要的工具呼叫:首先,降低思考層級 (
medium、low或minimal);如果工具使用過度,請新增系統指令來限制工具使用。 - Gemini 3.5 Flash 目前不支援電腦使用。如要使用電腦,請繼續使用 Gemini 3 Flash 預先發布版。
從 Gemini 2.5 遷移
上述所有權限,以及下列權限:
- 簡化提示。如果您使用思維鏈提示工程來強制推論,請改用
thinking_level: "medium"或"high",並搭配較簡單的提示。 - 測試 PDF 和媒體工作負載。如果您依賴特定行為來剖析密集文件,請測試
media_resolution_high設定,確保準確度不受影響。遷移至 Gemini 3 預設值可能會增加 PDF 的權杖用量,但會減少影片的權杖用量;如果要求超出脈絡窗口,請明確減少media_resolution。詳情請參閱媒體解析度說明文件。 - 搭配使用多種工具。 您可以在同一項要求中使用 Google 搜尋、網址環境、程式碼執行和自訂函式。
- 如果使用多模態函式回覆,請將多模態內容移至函式回覆部分內,而非與其並列。
- 如果使用內嵌指令搭配函式回應,請將指令附加至函式回應文字,並以兩個換行符號分隔,而非做為獨立部分。
- Gemini 3.x 不支援影像分割功能。如要處理區隔工作負載,請繼續使用 Gemini 2.5 Flash (關閉思考模式) 或 Gemini Robotics-ER 1.6。
- 從設定中移除
candidate_count(Gemini 3.x 不支援)
Gemini 3 系列功能
Gemini 3.5 Flash 承襲了 Gemini 3 系列的所有功能,但「電腦使用」除外。 Gemini 3 推出後沿用的功能:
- 思考:已加密的推論脈絡會在 API 呼叫之間保留。在 Interactions API 中為自動,在 GenerateContent 中為隱含。
- 使用工具輸出結構化內容:結合 JSON 模式與內建工具 (搜尋、網址內容、程式碼執行、函式呼叫)。
- 多模態函式回覆:在函式呼叫結果中傳回圖片、音訊和其他媒體。
- 使用圖片執行程式碼:執行可處理及生成圖片的程式碼。
- 合併使用工具:在同一個要求中,使用內建工具和自訂函式呼叫。
- 媒體解析度:
可精細控管圖片、影片和 PDF 輸入內容的權杖分配。
Gemini 3 模型支援混合保真度提示的每個內容項目解析度設定 (
low、medium、high、ultra_high)。 - 想法簽章: 模型內部推論過程的加密表示法。在無狀態模式下進行多輪函式呼叫時,這是必要項目;由 Interactions API 和官方 SDK 自動管理。
提示最佳做法
Gemini 3.x 模型是推論模型,因此提示方式有所不同。
- 精確的指示:請簡潔明瞭。Gemini 3.x 最適合直接、清楚的指令。為舊版模型設計的冗長或複雜提示工程技術,可能會導致模型過度分析。
- 輸出詳細程度:Gemini 3 和 3.1 預設會提供較精簡的回答,並偏好直接且有效率的答案。如果您的用途需要對話語氣,請在提示中明確引導模型 (例如「以友善健談的助理身分說明這件事」)。
- 脈絡管理:處理大型資料集 (例如整本書、程式碼集或長影片) 時,請將具體指示或問題放在提示結尾的資料脈絡之後。在問題開頭加上「根據上述資訊...」等詞組,引導模型根據特定資訊推論。
如要進一步瞭解提示設計策略,請參閱提示工程指南。
限制
- Gemini 3.x 不支援影像分割功能。如要處理區隔工作負載,請繼續使用 Gemini 2.5 Flash (關閉思考模式) 或 Gemini Robotics-ER 1.6。
常見問題
Gemini 3.5 Flash 的知識截點為何?Gemini 3.5 Flash 的知識截點為 2025 年 1 月。如需最新資訊,請使用搜尋基礎工具。
脈絡窗口的限制為何?Gemini 3.5 Flash 支援 100 萬個詞元的輸入脈絡窗口,以及最多 65,000 個輸出詞元。
舊的
thinking_budget程式碼是否仍可運作?可以,thinking_budget仍支援回溯相容性,但建議您遷移至thinking_level,以獲得更可預測的成效。請勿在同一要求中同時使用這兩者。Gemini 3.5 Flash 是否支援 Batch API?可以。詳情請參閱「批次 API」指南。
是否支援脈絡快取?是,支援脈絡快取。
支援哪些工具?Gemini 3.5 Flash 支援 Google 搜尋、 Google 地圖基礎、 檔案搜尋、 程式碼執行、 網址內容和 標準函式呼叫, 包括合併使用工具。 Gemini 3.5 Flash 不支援電腦使用。
後續步驟
- 如要進一步瞭解提示設計策略,請參閱提示工程指南。
- 開始使用 Gemini 3 食譜
- 瞭解 Gemini API 最佳化和推論