EmbeddingGemma 2 Expands Beyond Text to Support Code, Images, Video, and Audio
Based on Gemma 4 and released under the Apache 2.0 license, Google's EmbeddingGemma 2 is a compact, open-weight, multimodal embedding model designed to make semantic search and retrieval-augmented generation (RAG) more efficient while optimizing performance for on-device deployment. By Sergio De Si

Designed to run on consumer hardware such as mobile devices and laptops, EmbeddingGemma 2 delivers low-latency semantic representations for on-device applications, like search, retrieval-augmented generation (RAG), classification, and clustering.
Thanks to its multimodal capabilities, EmbeddingGemma 2 supports a wide range of retrieval tasks, including finding relevant documents, screenshots, and recordings in response to a query, searching source code using natural language, and retrieving video content based on textual descriptions.
EmbeddingGemma 2's key feature, Google says, is its ability to represent text, code, images, video, and audio in a unified 768-dimensional embedding space. This enables developers to build retrieval systems that search across different media types without maintaining separate, incompatible embedding spaces for different media types.
Despite coming from different modalities, the embeddings generated by EmbeddingGemma 2 occupy the same dimensional space and can be compared on their semantic similarity.
The model allows developers to load only the encoders required for their applications, scaling from 270 million parameters for text and code to 740 million for full multimodal support. According to Google, the model "significantly outperforms EmbeddingGemma 1 on code search and technical retrieval, making it ideal for local codebase indexing and agentic code search".
EmbeddingGemma 2 supports Matryoshka Representation Learning (MRL), which allows embeddings to be truncated into shorter, unit-length vectors, reducing storage requirements. For example, storing a million 768-dimensional vectors at bfloat16 precision takes roughly 1.5 GB of memory, while truncating them to 128 dimensions requires just 250 MB, bringing a sixfold reduction. However, this implies a retrieval quality trade-off. Google therefore recommends using truncation only when storage or search speed require it. At 128 dimensions, the model retains approximately 90% of quality with text, but performance drops to around 75% for image, video, and speech retrieval.
Commenting on the announcement, Reddit user Distinct-Target7503 highlighted the model's multimodal capabilities while questioning the extent of its improvements for text-only tasks:
The impressive thing about this one is that it can embedd images and audio in a shared semantic space, but for text only it is not a massive improvement.
Meanwhile, Reddit user Open-Adhesiveness-86 cautioned developers about the importance of using the model correctly:
Two things that bit me on the first embeddinggemma and probably still apply: the task prefixes aren't optional, indexing docs with the query prefix instead of "title: none | text: " noticeably hurt recall. And if you truncate for MRL, slice first then L2-normalize the shorter vector, normalizing at 768 and then cutting gives you off-norm vectors.
EmbeddingGemma was introduced last year with a focus on "offline and privacy-sensitive scenarios, such as searching across personal files locally, running mobile RAG pipelines with Gemma 3n, or building domain-specific chatbots". EmbeddingGemma 2 is available on Hugging Face.
December 15–16, 2026. Examine how senior practitioners run agents, evals, model serving, and AI-assisted engineering in production, including what failed and what changed. Register Now.