O Gemini 2.0 Flash agora está disponível como uma versão experimental de pré-lançamento na API Gemini Developer e no Google AI Studio. O modelo apresenta novos recursos e recursos principais aprimorados:
- API Multimodal Live:essa nova API ajuda a criar aplicativos de streaming de áudio e visão em tempo real com o uso de ferramentas.
- Velocidade e desempenho:o Gemini 2.0 tem um tempo para o primeiro token (TTFT, na sigla em inglês) significativamente melhor em relação ao 1.5 Flash.
- Qualidade:melhor desempenho na maioria dos comparativos em relação ao Gemini 1.5 Pro.
- Melhoria nos recursos de agentes:o Gemini 2.0 oferece melhorias na compreensão multimodal, programação, acompanhamento de instruções complexas e chamada de função.
- Novas modalidades:o Gemini 2.0 apresenta geração de imagem nativa e recursos controláveis de conversão de texto em fala.
Para oferecer uma experiência melhor aos desenvolvedores, também estamos lançando um novo SDK. Para detalhes técnicos do Gemini 2.0, consulte Modelos do Gemini.
SDK da Google Gen AI (experimental)
O novo SDK Google Gen AI oferece uma interface unificada para o Gemini 2.0 usando a API Gemini para desenvolvedores e a API Gemini na Vertex AI. Com poucas exceções, o código executado em uma plataforma será executado nas duas. O novo SDK está disponível em Python e Go, e Java e JavaScript serão lançados em breve.
- Instale o novo SDK:
pip install google-genai
- Em seguida, importe a biblioteca, inicialize um cliente e gere conteúdo:
from google import genai
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(model='gemini-2.0-flash-exp', contents='How does AI work?')
print(response.text)
Os desenvolvedores de Python também podem testar o notebook "Começar a usar" no Gemini Cookbook.
API Multimodal Live
A API Multimodal Live permite interações de voz e vídeo bidirecionais de baixa latência com o Gemini. Com a API Multimodal Live, você pode oferecer aos usuários finais a experiência de conversas por voz naturais e humanas, além de interromper as respostas do modelo usando comandos de voz. O modelo pode processar entradas de texto, áudio e vídeo e fornecer saídas de texto e áudio.
Você pode testar a API Multimodal Live no Google AI Studio. Para saber mais sobre os recursos e as limitações da API, consulte o guia de referência da API Multimodal Live.
Pesquisa como ferramenta
Ao usar o embasamento com a Pesquisa Google, você pode melhorar a precisão e a recência das respostas do modelo. A partir do Gemini 2.0, a Pesquisa Google está disponível como uma ferramenta. Isso significa que o modelo pode decidir quando usar a Pesquisa Google. O exemplo a seguir mostra como configurar a Pesquisa como uma ferramenta.
from google import genai
from google.genai.types import Tool, GenerateContentConfig, GoogleSearch
client = genai.Client()
model_id = "gemini-2.0-flash-exp"
google_search_tool = Tool(
google_search = GoogleSearch()
)
response = client.models.generate_content(
model=model_id,
contents="When is the next total solar eclipse in the United States?",
config=GenerateContentConfig(
tools=[google_search_tool],
response_modalities=["TEXT"],
)
)
for each in response.candidates[0].content.parts:
print(each.text)
# Example response:
# The next total solar eclipse visible in the contiguous United States will be on ...
# To get grounding metadata as web content.
print(response.candidates[0].grounding_metadata.search_entry_point.rendered_content)
A funcionalidade de pesquisa como ferramenta também permite pesquisas com várias etapas e consultas com várias ferramentas (por exemplo, combinar o Grounding com a Pesquisa Google e a execução de código).
A pesquisa como ferramenta permite comandos e fluxos de trabalho complexos que exigem planejamento, raciocínio e pensamento:
- Embasamento para melhorar a precisão e a atualidade e fornecer respostas mais precisas
- Recuperar artefatos da Web para fazer outras análises em
- Encontrar imagens, vídeos ou outras mídias relevantes para ajudar em tarefas de raciocínio ou geração multimodais
- Programação, solução de problemas técnicos e outras tarefas especializadas
- Encontrar informações específicas da região ou ajudar a traduzir conteúdo com precisão
- Encontrar sites relevantes para navegar
Para começar, teste o notebook da ferramenta de pesquisa.
Uso aprimorado da ferramenta
O Gemini 2.0 apresenta melhorias nas chamadas de função e ferramentas que oferecem melhor suporte a experiências de agentes.
Chamada de função com composição
O Gemini 2.0 oferece suporte a um novo recurso de chamada de função:
chamada de função combinável. A chamada de função com composição permite que a
API Gemini invoque várias funções definidas pelo usuário automaticamente no
processo de geração de uma resposta. Por exemplo, para responder ao comando
"Get the temperature in my current location"
, a API Gemini pode invocar
uma função get_current_location()
e uma função get_weather()
que usa
o local como parâmetro.
A chamada de função com execução de código requer streaming bidirecional e só é compatível com a nova API Multimodal Live. Confira um exemplo que mostra como usar a chamada de função com composição, a execução de código e a API Multimodal Live juntas:
turn_on_the_lights_schema = {'name': 'turn_on_the_lights'}
turn_off_the_lights_schema = {'name': 'turn_off_the_lights'}
prompt = """
Hey, can you write run some python code to turn on the lights, wait 10s and then turn off the lights?
"""
tools = [
{'code_execution': {}},
{'function_declarations': [turn_on_the_lights_schema, turn_off_the_lights_schema]}
]
await run(prompt, tools=tools, modality="AUDIO")
Os desenvolvedores de Python podem testar isso no notebook de uso da ferramenta de API ao vivo.
Uso da multiferramenta
Com o Gemini 2.0, é possível ativar várias ferramentas ao mesmo tempo, e o modelo vai decidir quando chamar elas. Confira um exemplo que ativa duas ferramentas, Grounding com a Pesquisa Google e a execução de código, em uma solicitação usando a API Multimodal Live.
prompt = """
Hey, I need you to do three things for me.
1. Turn on the lights.
2. Then compute the largest prime palindrome under 100000.
3. Then use Google Search to look up information about the largest earthquake in California the week of Dec 5 2024.
Thanks!
"""
tools = [
{'google_search': {}},
{'code_execution': {}},
{'function_declarations': [turn_on_the_lights_schema, turn_off_the_lights_schema]}
]
await run(prompt, tools=tools, modality="AUDIO")
Os desenvolvedores de Python podem testar isso no notebook de uso da ferramenta API Live.
Detecção de caixa delimitadora
Neste lançamento experimental, oferecemos aos desenvolvedores uma ferramenta poderosa para detecção e localização de objetos em imagens e vídeos. Ao identificar e delimitar objetos com caixas delimitadoras, os desenvolvedores podem desbloquear uma ampla gama de aplicativos e melhorar a inteligência dos projetos.
Principais benefícios:
- Simples:integre recursos de detecção de objetos aos seus aplicativos com facilidade, independentemente da sua experiência em visão computacional.
- Personalizável:produz caixas delimitadoras com base em instruções personalizadas (por exemplo, "Quero ver caixas delimitadoras de todos os objetos verdes nesta imagem") sem precisar treinar um modelo personalizado.
Detalhes técnicos:
- Entrada:seu comando e as imagens ou frames de vídeo associados.
- Saída:caixas delimitadoras no formato
[y_min, x_min, y_max, x_max]
. O canto superior esquerdo é a origem. Os eixosx
ey
vão horizontalmente e verticalmente, respectivamente. Os valores de coordenadas são normalizados de 0 a 1.000 para cada imagem. - Visualização:os usuários do AI Studio vão ver as caixas delimitadoras plotadas na interface. Os usuários da Vertex AI precisam visualizar as caixas delimitadoras usando um código de visualização personalizado.
Para desenvolvedores Python, use o notebook de compreensão espacial 2D ou o notebook experimental de ponteiro 3D.
Geração de voz (acesso antecipado/lista de permissões)
O Gemini 2.0 oferece suporte a um novo recurso de geração multimodais: texto para fala.
Usando o recurso de conversão de texto em fala, você pode solicitar que o modelo gere uma saída de áudio de alta
qualidade que soe como uma voz humana (say "hi everyone"
) e
pode refinar ainda mais a saída direcionando a voz.
Geração de imagens (acesso antecipado/lista de permissões)
O Gemini 2.0 oferece suporte à capacidade de gerar texto com imagens inline. Isso permite que você use o Gemini para editar imagens em conversas ou gerar saídas multimodais, por exemplo, uma postagem de blog com texto e imagens em uma única vez. Antes, isso exigia a união de vários modelos.
A geração de imagens está disponível como uma versão experimental privada. Ele oferece suporte às seguintes modalidades e recursos:
- Texto para imagem
- Exemplo de comando: "Gere uma imagem da Torre Eiffel com fogos de artifício em segundo plano".
- Texto para imagens e texto (intercalado)
- Exemplo de comando: "Gerencie uma receita ilustrada de paella."
- Imagens e texto para imagens e texto (intercalados)
- Exemplo de comando: (com uma imagem de um cômodo mobiliado) "Que outras cores de sofás funcionariam no meu espaço? Você pode atualizar a imagem?"
- Edição de imagens (texto e imagem para imagem)
- Exemplo de instrução: "Edite esta imagem para que ela pareça um desenho animado"
- Exemplo de comando: [imagem de um gato] + [imagem de um travesseiro] + "Crie um ponto cruzado do meu gato neste travesseiro".
- Edição de imagens com vários turnos (chat)
- Exemplos de comandos: [faça upload de uma imagem de um carro azul.] "Transforme este carro em um conversível". "Agora mude a cor para amarelo."
- Marca-d'água
- Todas as imagens geradas incluem uma marca-d'água SynthID.
Limitações:
- A geração de pessoas e a edição de imagens enviadas de pessoas não são permitidas.
- Para ter o melhor desempenho, use os seguintes idiomas: EN, es-MX, ja-JP, zh-CN, hi-IN.
- A geração de imagens não tem suporte para entradas de áudio ou vídeo.
- A geração de imagens nem sempre aciona:
- O modelo só pode gerar texto. Tente pedir as saídas de imagem explicitamente, por exemplo, "gerar uma imagem", "fornecer imagens conforme você avança", "atualizar a imagem".
- O modelo pode parar de gerar no meio do processo. Tente de novo ou use outro comando.