API 版本說明

本文件概略說明 Gemini API 的 v1v1beta 版本之間的差異。

  • v1:API 的穩定版。穩定版中的功能在主要版本的生命週期內享有完整支援。如果有任何重大變更,我們會建立下一個 API 的主要版本,並在合理的時間過後淘汰現有版本。您可以在不變更主要版本的情況下,向 API 導入非破壞性變更。
  • v1beta:這個版本包含可能仍在開發階段的搶先體驗功能,且可能會快速變更或發生破壞性變更。我們也無法保證 Beta 版中的功能會移至穩定版。由於此版本不穩定,建議您不要使用這個版本推出正式版應用程式。
功能 v1 v1beta
產生內容 - 僅輸入文字
生成內容 - 文字和圖片輸入
生成內容 - 文字輸出
生成內容 - 多輪對話 (聊天)
產生內容 - 函式呼叫
產生內容 - 串流
嵌入內容 - 僅限文字輸入
生成答案
語意擷取工具
  • - 支援
  • - 永遠不會支援

在 SDK 中設定 API 版本

Gemini API SDK 預設為 v1beta,但您可以選擇改用 v1,方法是設定 API 版本,如以下程式碼範例所示:

Python

Python SDK google.generativeai 使用 v1beta,且不會提供切換 API 版本的方法。

低階 Python 用戶端程式庫 google.ai.generativelanguage 會將其他版本公開為獨立的模組:google.ai.generativelanguage_v1google.ai.generativelanguage_v1beta。預設值為 v1beta

import google.ai.generativelanguage_v1 as glm

client = glm.GenerativeServiceClient(
    client_options=dict(api_key=YOUR_API_KEY))

response = client.generate_content({
  "model": "models/gemini-1.5-flash",
  "contents": [ {"parts": [ {"text": "Explain how AI works"}]}]
})

print(type(response).to_dict(response))

Node.js

const { GoogleGenerativeAI } = require("@google/generative-ai");

const genAI = new GoogleGenerativeAI("YOUR_API_KEY");
const model = genAI.getGenerativeModel({ model: 'gemini-1.5-flash' }, { apiVersion: 'v1' });

const prompt = "Explain how AI works";

const result = await model.generateContent(prompt);
console.log(result.response.text());

REST

curl "https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
  "contents": [{
    "parts":[{"text": "Write a story about a magic backpack."}]
    }]
   }'