API 參考
Gemini generateContent 原生介面
Gemini 原生介面 generateContent 的請求頭、路徑、參數、請求與響應示例。格式與 Google Gemini API 一致,Google Gen AI SDK 改 base URL 即可使用,已在本站實測。
Gemini 原生介面按 Google Gemini API 的格式收發資料:模型名寫在 URL 路徑裡,請求體用 contents 和 parts 組織對話,生成參數放進 generationConfig。已經用 Google Gen AI SDK 寫好的程式碼,把 base URL 改成 https://www.tutujin.com 即可。本介面(generateContent)已在本站實測。
https://www.tutujin.com/v1beta/models/gemini-3.8-flash:generateContent路徑格式是 /v1beta/models/模型名:generateContent,把模型名換成你要呼叫的模型,請求體裡不需要再寫 model。
請求頭
| 請求頭 | 必填 | 說明 |
|---|---|---|
x-goog-api-key | 二選一 | 控制台建立的 API Key(sk-...)。Google Gen AI SDK 預設用這個請求頭 |
Authorization | 二選一 | Bearer sk-...,和 x-goog-api-key 任選一種 |
Content-Type | 是 | application/json |
請求參數
| 參數 | 類型 | 必填 | 說明 |
|---|---|---|---|
contents | array | 是 | 對話內容,按時間順序排列。每項包含 role(user 或 model)和 parts |
contents[].parts | array | 是 | 內容片段。文本寫 {"text": "..."};圖片、PDF 等用 inlineData,包含 mimeType 和 base64 編碼的 data |
systemInstruction | object | 否 | 系統提示詞,結構和一條內容相同,例如 {"parts": [{"text": "..."}]} |
generationConfig | object | 否 | 生成參數,見下表 |
safetySettings | array | 否 | 按類別設定安全過濾閾值 |
tools | array | 否 | 工具,例如 functionDeclarations 函式宣告 |
toolConfig | object | 否 | 函式呼叫模式,例如只允許呼叫指定函式 |
generationConfig
| 欄位 | 類型 | 說明 |
|---|---|---|
temperature | number | 取樣溫度,越高越發散 |
topP | number | 核取樣 |
topK | integer | 只從機率最高的 K 個 token 裡取樣 |
maxOutputTokens | integer | 本次最多生成多少 tokens |
stopSequences | array | 遇到這些字串時停止生成 |
responseMimeType | string | 設為 application/json 時要求輸出 JSON |
responseSchema | object | 配合 JSON 輸出使用的結構定義 |
thinkingConfig | object | 思考配置,例如 {"thinkingBudget": 1024};支援的欄位因模型而異 |
candidateCount | integer | 返回幾個候選回答 |
請求示例
curl "https://www.tutujin.com/v1beta/models/gemini-3.8-flash:generateContent" \
-H "x-goog-api-key: $TUTUJIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"systemInstruction": {"parts": [{"text": "你是电商运营助手,回答简洁。"}]},
"contents": [
{"role": "user", "parts": [{"text": "给一款 500ml 保温杯写 3 个卖点"}]}
],
"generationConfig": {"temperature": 0.7, "maxOutputTokens": 512}
}'import os
from google import genai
from google.genai import types
client = genai.Client(
api_key=os.environ["TUTUJIN_API_KEY"],
http_options=types.HttpOptions(base_url="https://www.tutujin.com"),
)
resp = client.models.generate_content(
model="gemini-3.8-flash",
contents="给一款 500ml 保温杯写 3 个卖点",
config=types.GenerateContentConfig(
system_instruction="你是电商运营助手,回答简洁。",
temperature=0.7,
max_output_tokens=512,
),
)
print(resp.text)
print(resp.usage_metadata)import { GoogleGenAI } from '@google/genai'
const ai = new GoogleGenAI({
apiKey: process.env.TUTUJIN_API_KEY,
httpOptions: { baseUrl: 'https://www.tutujin.com' },
})
const resp = await ai.models.generateContent({
model: 'gemini-3.8-flash',
contents: '给一款 500ml 保温杯写 3 个卖点',
config: {
systemInstruction: '你是电商运营助手,回答简洁。',
temperature: 0.7,
maxOutputTokens: 512,
},
})
console.log(resp.text)
console.log(resp.usageMetadata)SDK 會在 base URL 後面拼接 /v1beta/models/...,所以 base URL 只填站點根地址。
響應示例
{
"candidates": [
{
"content": {
"role": "model",
"parts": [{ "text": "1. 双层真空,保温 12 小时……" }]
},
"finishReason": "STOP",
"index": 0
}
],
"usageMetadata": {
"promptTokenCount": 28,
"candidatesTokenCount": 96,
"totalTokenCount": 124
},
"modelVersion": "gemini-3.8-flash"
}| 欄位 | 說明 |
|---|---|
candidates[].content.parts[].text | 模型的回答,可能分成多個片段 |
candidates[].finishReason | STOP 正常結束;MAX_TOKENS 達到生成上限;SAFETY 被安全過濾攔截 |
usageMetadata.promptTokenCount | 輸入 tokens,按輸入單價計費 |
usageMetadata.candidatesTokenCount | 輸出 tokens,按輸出單價計費 |
usageMetadata.thoughtsTokenCount | 思考 tokens,開啟思考的模型才有,計入輸出 |
usageMetadata.cachedContentTokenCount | 命中快取的輸入 tokens,出現時按快取讀取價計費 |
流式輸出
Gemini 的流式介面路徑是 /v1beta/models/模型名:streamGenerateContent?alt=sse,SDK 裡對應 generate_content_stream(Python)和 generateContentStream(Node.js)。
流式請求會按原格式轉發,但本站沒有單獨實測 Gemini 原生格式的流式輸出,上線前請先用小流量自測。也可以改用 Chat Completions 格式呼叫目錄裡支援該介面的 Gemini 模型,用 "stream": true 獲取流式輸出。
注意事項
- 模型名寫在 URL 路徑裡,大小寫要和模型廣場一致。
- 對話裡模型一方的
role是model,不是assistant。 - 圖片、PDF 等檔案用
inlineData以 base64 放進請求體;檔案越大,請求體越大,注意控制大小。 - 開啟思考的模型,思考 tokens 計入輸出,可以用
thinkingConfig控制預算。 - 不同 Gemini 分組的線路和價格不同,見選擇分組。同一個 Gemini 模型通常也可以用 Chat Completions 呼叫,方便和其他廠商的模型共用一套程式碼。
支援此介面的模型
| 模型 | 廠商 | 最低價分組 | 輸入 ¥/百萬 | 輸出 ¥/百萬 | 按次 ¥/次 |
|---|---|---|---|---|---|
| gemini-3.8-flash | 標準 | ¥1.5 | ¥7.5 | — | |
| gemini-3.1-pro-preview | 標準 | ¥4 | ¥24 | — | |
| gemini-2.5-flash-image | Gemini 優質 | — | — | ¥0.16 | |
| Nano-banana | Gemini 優質 | — | — | ¥0.16 | |
| gemini-nano-banana-2.1-2k | 標準 | — | — | ¥0.2 | |
| gemini-nano-banana-2.1-4k | 標準 | — | — | ¥0.2 | |
| gemini-nano-banana-2.1 | 標準 | — | — | ¥0.2 | |
| gemini-3.1-flash-lite-image | Gemini 優質 | — | — | ¥0.2 |
價格為人民幣,取各模型最低價分組;價格更新於 2026年11月13日 下午6:08。
共 63 個模型支援此介面,上表列出其中一部分。 在模型廣場檢視全部
沒找到答案?加客服微信 JsnonoChat,傳送報錯資訊裡的 request id,我們幫你排查。