AI
Google's New Multimodal Embedding Model Fits on Your Phone—Smaller Than Its Own Vector Index
EmbeddingGemma 2 lets phones search text, images, video, and audio with a 740-million-parameter model that uses less RAM than the index it creates.
The New Stack
Google has unveiled EmbeddingGemma 2, an open-weight multimodal embedding model designed to run directly on smartphones. The model compresses text, code, images, video, and audio into a shared 768-dimensional vector space—all within 567MB of active RAM when quantized on a Pixel 11 Pro, demonstrating how on-device search can work without cloud dependency.
A Modular Design for Growing Needs#
Rather than forcing developers to load all capabilities at once, EmbeddingGemma 2 uses a modular architecture. The text and code encoder alone requires just 270 million parameters (about 191MB on-device), while adding vision support pushes it to 440 million parameters. Pairing in audio encoding reaches 570 million, and loading both vision and audio brings the full model to 740 million. Because all modalities project into the same embedding space, teams can start with text-only retrieval and layer in image or video search later—without re-processing existing indexed content.
The model also quadruples the context window from 2,048 to 8,192 tokens, enabling it to handle roughly 5.5 minutes of audio, 29 still images, or 58 video frames (sampled at one frame per second) in a single pass. Google's demo applications show this in action: Video Moments Finder uses text queries to locate specific moments in footage, and Instant Media Search applies the same approach to a phone's photo library—all without generating captions or transcripts.
Shrinking Embeddings Without Retraining#
On-device storage becomes a genuine constraint when embedding millions of items. A million 768-dimensional vectors consume roughly 1.5GB—potentially larger than the embedding model itself. Google trained EmbeddingGemma 2 with Matryoshka Representation Learning, a technique that allows truncating embeddings to 512, 256, or even 128 dimensions without retraining:
- 256 dimensions: Index shrinks to ~500MB while retaining near-full quality for text and code, and ~95% retrieval quality for images, video, and speech
- 128 dimensions: Text and code hold ~90% quality, but multimodal search drops to ~75%—Google recommends testing this setting on real data before adoption
This space-versus-quality trade-off has become a recurring theme in embedding releases as developers seek to squeeze more capability into constrained environments.

