Google DeepMind put EmbeddingGemma 2 out yesterday: 740M parameters, built on the Gemma 4 backbone, five input types mapped into a single 768-dimensional space, Apache 2.0, downloadable now. No staged rollout, no waitlist, no “available to select partners.”

That is a more consequential release than the model-of-the-week cycle will admit, because embeddings are the layer almost everyone actually builds on. Search, recommendations, dedup, clustering, every retrieval pipeline behind every chatbot a company has shipped in the last two years. Most of those teams rent that layer from a hosted API, pay per million tokens forever, and have no copy of the thing their index depends on. A 740M-parameter checkpoint runs on a single modest GPU, or a laptop if you’re patient. The recurring-cost argument for renting just got weaker.

One space, five doors

The design claim worth paying attention to is the shared space. Five input types land in the same 768 dimensions, which means a text query can retrieve a non-text item directly, with cosine similarity and nothing else in between.

Anyone who has built multimodal retrieval knows what that removes. No separate index per modality. No captioning images first and pretending the caption is the image. No hand-tuned fudge factor to make scores from two different models comparable, which is the step that quietly breaks every time you swap a component. One model, one vector store, one distance metric.

768 dimensions is also a choice, not a default. It is cheap to store and fast to search at scale, and it caps how much each modality can occupy. You’re betting that a compact shared representation beats several specialized ones glued together.

The number nobody will hand you

That bet is where I’d push back on the enthusiasm. Joint embedding spaces have a long history of being decent at everything and best-in-class at nothing. Squeezing five input types into one geometry usually costs per-modality precision somewhere, and the place it shows up is your corpus, not a leaderboard. If your retrieval is 95% text with occasional images, a strong text-only encoder may still beat this. You will not know from the model card.

The switching cost is the other thing people underrate. Adopting a new embedding model means re-embedding everything you have, rebuilding your index, and re-tuning whatever thresholds you set on top. That is a real migration, and it’s exactly why the license line matters more than the parameter count. A hosted endpoint can be deprecated on a vendor’s timeline, and then you do the migration whether you planned to or not. An Apache 2.0 checkpoint sitting on your own disk cannot be taken away, which makes the re-embedding bill a one-time cost instead of a liability with someone else’s hand on the switch.

So: weights are up, 740M parameters, 768 dimensions, five input types. Measure it on your own data before you re-embed a few hundred million documents.