O Google lançou o EmbeddingGemma 2 em 6 de outubro de 2026 e disponibilizou pesos para download sob a licença Apache 2.0. O modelo transforma texto, código, imagens, vídeos e áudio em vetores comparáveis em um espaço comum de 768 dimensões. Para quem desenvolve com uma coleção local, as questões práticas são quais codificadores carregar, como representar consultas e arquivos e se os resultados são úteis para aquela coleção. Este guia segue as instruções e o cartão do modelo publicados pelo Google; a BIG CHANGE não executou o modelo nem mediu a qualidade da recuperação.
A grande mudança
- O que mudou:O EmbeddingGemma anterior processava texto. A versão 2 adiciona codificadores de visão e áudio, permitindo comparar uma consulta textual com mídias compatíveis no mesmo espaço vetorial sem antes gerar legendas ou transcrições. O Google já publicou os pesos; a previsão é que o serviço ML Kit para Android chegue nas próximas semanas.
- Por que isso importa:Um desenvolvedor pode carregar os codificadores necessários para uma coleção local e criar um índice único de recuperação para os tipos de arquivo compatíveis. O AI Edge Gallery do Googlemostra vetores de mídia local no SQLite, classificados por similaridade de cosseno. O aplicativo ainda precisa importar arquivos, armazenar vetores, exibir resultados e verificar correspondências enganosas.
- O que observar:A decisão imediata é saber se arquivos representativos são bem classificados dentro do orçamento de memória e latência do dispositivo. O futuro serviço para Android pode mudar o caminho de integração; o prazo anunciado não significa que ele já esteja disponível.
Escolha as entradas antes de carregar o modelo
O guia do desenvolvedor documenta o Sentence Transformers 6.1.0 ou posterior e este comando de instalação para todas as mídias compatíveis:
pip install -U sentence-transformers[image,audio,video] transformersO checkpoint exato é google/embeddinggemma-2. O carregamento padrão do Sentence Transformers inclui todos os codificadores. Para uma coleção só de texto e código, o guia recomenda excluir visão e áudio durante o carregamento:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer(
"google/embeddinggemma-2",
config_kwargs={"vision_config": None, "audio_config": None},
)Para manter visão e excluir áudio, use config_kwargs={"audio_config": None}; para manter áudio e excluir visão, use config_kwargs={"vision_config": None}. Essas opções mudam os pesos carregados, mas os vetores resultantes continuam no espaço compartilhado do modelo. Assim, de acordo com o guia, uma consulta só de texto pode ser comparada com uma imagem codificada por uma configuração que inclua visão. O Google descreve o modelo como adequado a dispositivos de consumo, mas o exemplo Python publicado é um início rápido da biblioteca, não uma garantia medida de memória ou latência no dispositivo do leitor.
Codifique consultas e itens da coleção de maneiras diferentes
Para recuperação de texto, o cartão do modelo especifica instruções de tarefa distintas para consultas e itens do corpus. O Sentence Transformers as fornece por meio de prompt_name:
query_vector = model.encode("northern lights", prompt_name="SearchQuery")
document_vector = model.encode(
"Charged particles from the sun cause the northern lights.",
prompt_name="Document",
)
score = model.similarity(query_vector, document_vector)Este trecho documentado gera vetores e uma pontuação de similaridade; não é um resultado observado no nosso ambiente. Document insere title: none. Se um item tiver um título real, o Google orienta que ele seja formatado explicitamente como title: {title} | text: {content}. A busca de código usa a instrução de consulta CodeRetrieval e um título ou nome de arquivo do código indexado. Classificação, agrupamento e similaridade entre frases têm instruções simétricas próprias. O cartão do modelo diz que ele continua funcionando sem instruções de texto, mas com menor precisão.
O modelo anterior model não tem codificador de visão nem de áudio. Antes de codificar uma imagem, carregue do mesmo checkpoint a configuração de texto e visão do guia e use esse modelo para a mídia e a consulta. Essa sequência segue a documentação; não a executamos:
media_model = SentenceTransformer(
"google/embeddinggemma-2",
config_kwargs={"audio_config": None},
)
image_vector = media_model.encode({"image": "photo.jpg"})
query_vector = media_model.encode("a photo query", prompt_name="SearchQuery")
score = media_model.similarity(query_vector, image_vector)Para áudio, carregue novamente sem audio_config: None para habilitar o codificador de áudio; o carregamento completo padrão inclui visão e áudio. O guia do Google passa um dicionário como {"audio": "recording.wav"} sem prefixo de tarefa textual. Também é possível combinar texto e mídia colocando os marcadores <|image|>, <|video|> ou <|audio|> no texto e fornecendo os arquivos correspondentes no dicionário. Essa chamada produz um vetor para a entrada combinada. O cartão especifica áudio mono de 16 kHz e informa que o vídeo é amostrado por padrão a um quadro por segundo. Imagens, quadros de vídeo, áudio e texto compartilham o limite de contexto de 8.192 tokens; por isso, um clipe longo ou item misto exige planejamento da entrada, em vez de presumir que todos os arquivos cabem.
Escolha o tamanho do vetor e avalie a troca
A saída nativa tem 768 dimensões. O cartão do Google também aceita 512, 256 e 128 dimensões por truncamento do vetor. O guia documenta truncate_dim=256 com normalize_embeddings=True em model.encode(). Os vetores da consulta e dos itens indexados devem ter a mesma dimensão; os vetores reduzidos precisam ser normalizados antes da comparação de cosseno. Segundo o cartão, 128 dimensões reduzem a qualidade multimodal bem mais do que 256, e são recomendadas sobretudo para cargas de trabalho de texto. Esses números vêm dos benchmarks do Google em precisão total, não são previsão de recall para uma coleção específica.
A precisão numérica é outra escolha de configuração. O cartão recomenda bfloat16 no hardware compatível ou float32 nos demais casos, inclusive na maioria das CPUs. Ele alerta que float16 pode gerar NaNs ou degradar embeddings sem aviso. As contagens dos parâmetros de carregamento seletivo descrevem componentes do modelo; a memória real do dispositivo e a velocidade de busca dependem do caminho de execução, da precisão, do índice e do tamanho da entrada.
O que avaliar antes de usar os resultados
Um protótipo pode indexar uma pequena amostra autorizada, reservar consultas representativas e verificar se os itens corretos aparecem no topo. Inclua casos de texto para texto, texto para imagem ou texto para áudio somente se essas mídias estiverem de fato na coleção. Compare 768 e 256 dimensões nas mesmas consultas, verifique falhas nos idiomas e tipos de documento relevantes e meça memória, tempo de indexação e latência no dispositivo pretendido. São etapas de avaliação para o leitor; a BIG CHANGE não as realizou.
Os resultados publicados no cartão do modelo dão ao EmbeddingGemma 2 78,68 pontos contra 68,76 do modelo anterior no MTEB code v1; no multilingual MTEB v2, as notas são 61,36 e 61,15. O cartão também apresenta resultados para imagem, vídeo e áudio, sem comparação com a versão 1 nessas modalidades. Todos os resultados citados usam o checkpoint de precisão total. Eles descrevem as condições de avaliação do Google, não a precisão em um arquivo local. O cartão alerta que a qualidade pode variar por idioma e tarefa, e que aplicações de recuperação precisam de filtros e verificações de equidade próprios.
Os pesos foram publicados sob Apache 2.0, e o guia leva ao repositório no Hugging Face. Os materiais do Google mostram um caminho de execução local, mas não um preço universal de implantação: dispositivo, computação, armazenamento e engenharia são custos de cada aplicativo. A próxima decisão é verificar se o modelo classifica corretamente arquivos representativos dentro do orçamento do dispositivo.
Fontes e leituras adicionais
- Anúncio do Google AI Edge, 6 de outubro de 2026: etapa de lançamento, busca local de mídia no AI Edge Gallery e cronograma anunciado do ML Kit. As medições de dispositivos citadas neste artigo são do Google.
- Guia do desenvolvedor do EmbeddingGemma 2, 6 de outubro de 2026: versão da biblioteca, opções de carregamento, exemplos de codificação e instruções para truncar vetores.
- Cartão do modelo EmbeddingGemma 2: arquitetura do modelo, limites de entrada, instruções de tarefa, alerta de precisão, tabelas de benchmark e limitações. Os resultados foram relatados pelo Google.
- Repositório de modelos do Google: checkpoint indicado e arquivos de modelo publicados. A disponibilidade do repositório não valida o desempenho em um aplicativo.



