Explicação sobre as versões da API

Este documento apresenta uma visão geral das diferenças entre as versões v1 e v1beta da API Gemini.

  • v1: versão estável da API. Os recursos na versão estável têm suporte total durante a vida útil da versão principal. Se houver mudanças importantes, a próxima versão principal da API será criada e a versão atual será descontinuada após um período razoável. Mudanças não críticas podem ser introduzidas na API sem alterar a versão principal.
  • v1beta: essa versão inclui recursos de acesso antecipado que podem estar em desenvolvimento e estão sujeitos a mudanças rápidas e interruptivas. Também não há garantia de que os recursos da versão Beta serão movidos para a versão estável. Devido a essa instabilidade, não lance aplicativos de produção com essa versão.
Recurso v1 v1beta
Gerar conteúdo: entrada somente de texto
Gerar conteúdo: entrada de texto e imagem
Gerar conteúdo: saída de texto
Gerar conteúdo: conversas com vários turnos (chat)
Gerar conteúdo: chamadas de função
Gerar conteúdo: streaming
Incorporar conteúdo: entrada somente de texto
Gerar resposta
Recuperador semântico
  • : compatível
  • : nunca vai ser compatível

Configurar a versão da API em um SDK

O SDK da API Gemini é padrão para v1beta, mas você pode optar por usar v1 definindo a versão da API, conforme mostrado no exemplo de código abaixo:

Python

O SDK do Python, google.generativeai, usa v1beta e não fornece um método para alternar a versão da API.

A biblioteca de cliente de baixo nível do Python, google.ai.generativelanguage, expõe outras versões como módulos separados: google.ai.generativelanguage_v1 e google.ai.generativelanguage_v1beta. O padrão é 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."}]
    }]
   }'