API 版本说明

本文档简要介绍了 Gemini API 的 v1 版和 v1beta 版之间的区别。

  • v1:API 的稳定版本。稳定版中的功能在整个主要版本生命周期内都将获得全面支持。如果有任何破坏性更改,系统会创建该 API 的下一个主要版本,并在合理的一段时间后废弃现有版本。可以向 API 引入非破坏性更改,而无需更改主要版本。
  • v1beta:此版本包含可能仍处于开发阶段的抢先体验功能,并且可能会发生快速且重大的更改。我们也无法保证 Beta 版中的功能一定会移至稳定版。鉴于此不稳定性,您应考虑不要使用此版本发布生产应用。
功能 v1 v1beta
生成内容 - 仅输入文本
生成内容 - 文本和图片输入
生成内容 - 文本输出
生成内容 - 多轮对话(聊天)
生成内容 - 函数调用
生成内容 - 在线播放
嵌入内容 - 仅限文本输入
生成答案
语义检索器
  • - 支持
  • - 永远不支持

在 SDK 中配置 API 版本

Gemini API SDK 的默认值为 v1beta,但您可以通过设置 API 版本来选择使用 v1,如以下代码示例所示:

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."}]
    }]
   }'