Pierwsze kroki z Lokalnym AI

Zbuduj własne, prywatne AI. Zobacz kompleksowe zestawienie poradników – od instalacji pierwszej aplikacji po zaawansowanych agentów. Sprawdź poradnik

EmbeddingGemma 2: multimodalne wektoryzowanie danych bezpośrednio na urządzeniach końcowych

zajawka nowosci
Streszczenie AI

Google DeepMind wypuściło otwartoźródłowy, sub‑1B model EmbeddingGemma 2, który wjednocza tekst, kod, grafikę, wideo i dźwięk w jedną 768‑wymiarową przestrzeń i nadaje się do uruchamiania na urządzeniach mobilnych i edge bez przesyłania danych do chmury. Model oparty na modularnej architekturze Gemma 4 pozwala ładować tylko potrzebne enkodery (tekst 270 M, obraz 170 M, audio 300 M), a technika MRL umożliwia redukcję rozmiaru wektorów do 256 / 128 d w celu oszczędności dyskowego z nieznacznym spadkiem jakości. Embeddings można bezpiecznie wykorzystać w systemach AI dzięki wsparciu dla bfloat16/float32, licencjonowaniu Apache 2.0 i integracji z popularnymi frameworkami takimi jak Transformers, Sentence‑Transformers czy llama.cpp.

Spis treści:

Google DeepMind zaprezentowało otwartoźródłowy model EmbeddingGemma 2, który przenosi zadania wektoryzacji tekstu, kodu, grafiki, wideo oraz dźwięku do wspólnej przestrzeni matematycznej. Jest to kompaktowe rozwiązanie klasy sub-1B (łącznie 740 milionów parametrów) udostępnione na liberalnej licencji Apache 2.0. Zostało zaprojektowane z myślą o uruchamianiu lokalnym na urządzeniach mobilnych, laptopach i w środowiskach edge, bez konieczności transferu wrażliwych danych do zewnętrznych chmur obliczeniowych.

Architektura modułowa i optymalizacja pamięciowa

Kluczowym wyróżnikiem architektury bazującej na rodzinie Gemma 4 jest jej modułowość. Zamiast wymuszać ładowanie monolitycznego bloku wag, EmbeddingGemma 2 rozbija poszczególne zmysły na niezależne kodery, które programista może ładować selektywnie w zależności od potrzeb aplikacji. Rdzeniem systemu jest moduł tekstowo-kodowy o wielkości 270M parametrów (130M parametrów sieci bazowej typu Transformer oraz 140M parametrów warstwy embeddera). Gdy zadanie wymaga analizy wizualnej lub dźwiękowej, aplikacja dołącza odpowiednio koder obrazu (170M) bądź koder audio (300M).

W praktyce oznacza to ogromne oszczędności pamięci operacyjnej (RAM/VRAM), co ma krytyczne znaczenie dla stabilności systemów wbudowanych i urządzeń z systemem Android lub iOS. Na urządzeniach klasy Google Pixel 11 Pro skwantyzowany wariant modelu alokuje około 191 MB aktywnej pamięci RAM w trybie przetwarzania samego tekstu oraz około 567 MB przy załadowaniu wszystkich koderów multimodalnych.

Moduł / Konfiguracja
Liczba parametrów
Przybliżony narzut RAM (skwantyzowany)
Obsługiwane typy danych
Tekstowy kręgosłup (Backbone + Embedder) 270M ~191 MB Tekst (100+ języków), kod źródłowy
Koder wizyjny (Vision Encoder) +170M (łącznie 440M) ~340 MB Statyczne obrazy, klatki wideo
Koder dźwiękowy (Audio Encoder) +300M (łącznie 570M) ~420 MB Mowa (mono, 16 kHz), sygnały audio
Pełny system multimodalny 740M ~567 MB Tekst, kod, obrazy, wideo, dźwięk

Unifikacja reprezentacji i elastyczne wektory MRL

Model mapuje wszystkie typy danych wejściowych do wspólnej 768-wymiarowej przestrzeni wektorowej. Oznacza to, że wektor zapytania tekstowego, transkrypcji audio czy wyciętej klatki wideo znajduje się w tej samej relacji geometrycznej, umożliwiając obliczanie podobieństwa cosinusowego wprost pomiędzy odmiennymi modalnościami bez konieczności stosowania wieloetapowych potoków z modelami OCR, Speech-to-Text czy generowania podpisów.

Do zarządzania rozmiarem indeksów wektorowych zaimplementowano technikę Matryoshka Representation Learning (MRL). Umożliwia ona obcinanie bazowego wektora 768-wymiarowego do rozmiarów 512, 256, a nawet 128 wymiarów. Skrócenie wektora do 256 wymiarów pozwala na niemal trzykrotną redukcję zapotrzebowania na pamięć dyskową i pamięć bazy wektorowej przy pomijalnym spadku jakości wyszukiwania. Wymiar 128d zapewnia aż 6-krotną kompresję, choć Google rekomenduje stosowanie go głównie w scenariuszach czysto tekstowych, gdyż w zadaniach multimodalnych spadek precyzji staje się zauważalny.

Wektor obcięty za pomocą techniki MRL traci swoją jednostkową długość euklidesową. Przed obliczeniem podobieństwa cosinusowego lub indeksowaniem wektor należy obowiązkowo znormalizować (L2 normalization), w przeciwnym razie scoring rankingowy ulegnie degradacji bez zgłaszania błędów przez bibliotekę.

Kolejnym usprawnieniem jest rozszerzenie okna kontekstowego do 8 192 tokenów, czyli czterokrotnie więcej niż w pierwotnym EmbeddingGemma. Budżet ten jest współdzielony przez wszystkie media w ramach jednego wejścia. Pojedynczy token tekstu zajmuje 1 token, domyślna reprezentacja obrazu pobiera 280 tokenów, ramka wideo 140 tokenów, natomiast sekunda nagrania audio mono (16 kHz) pochłania 25 tokenów. Pozwala to na jednoczesne wektoryzowanie dokumentów zawierających przeplatany tekst, wykresy i krótkie pliki audio o długości do 5,5 minuty w ramach jednego wywołania.

Wymagania precyzji numerycznej i sterowanie prefiksami zadań

Podczas wdrożenia modelu w środowiskach produkcyjnych kluczowe jest zachowanie rygoru w zakresie formatów zmiennoprzecinkowych. Z uwagi na szeroki zakres dynamiczny aktywacji, EmbeddingGemma 2 nie może być uruchamiany w formacie float16 – taka konfiguracja prowadzi do pojawiania się wartości NaN lub cichej utraty precyzji wag bez generowania wyjątku runtime. Na sprzęcie wspierającym nowoczesne instrukcje akceleracji należy domyślnie stosować bfloat16, a w przypadku braku wsparcia sprzętowego (np. na starszych procesorach CPU) – pełny format float32.

Wydajność modelu w zadaniach tekstowych opiera się na wstępnym definiowaniu prefiksów instrukcji (task instruction prefixes). Google wytrenowało model w rozróżnianiu zadań asymetrycznych (takich jak klasyczne wyszukiwanie dokumentów, Question Answering czy weryfikacja faktów) oraz symetrycznych (klasyfikacja, grupowanie, analiza podobieństwa zdań). W zadaniach wyszukiwania zapytań tekst używa prefiksu task: search result | query: {treść}, podczas gdy indeksowany dokument przyjmuje strukturę title: {tytuł} | text: {treść}. W przypadku braku tytułu stosowana jest flaga title: none. Dla danych binarnych (audio, wideo, obraz) prefiksów się nie stosuje.

Wyniki w testach porównawczych

Nowa iteracja zanotowała wyraźny skok parametrów jakościowych, w szczególności w domenach technicznych. W wielojęzycznym benchmarku MTEB Text (v2) model osiągnął 61.36 punktu, utrzymując stabilną pozycję swojego poprzednika, natomiast w wyszukiwaniu kodu źródłowego (MTEB Code v1) wynik wzrósł z 68.76 do 78.68 punktu (skok o niemal 10 punktów bazowych).

Modalność
Benchmark referencyjny
Metryka
EmbeddingGemma 2 (768d)
EmbeddingGemma 1
Kod źródłowy MTEB Code (v1) NDCG@10 78.68 68.76
Wielojęzyczny tekst MTEB Multilingual (v2) Średnia zadań 61.36 61.15
Obraz statyczny MIEB Lite Średnia typów 64.64 brak (brak mod.)
Dokumenty wizualne MMEB v2 (VisDoc) NDCG@5 67.84 brak
Wideo MMEB v2 (Video) Hit@1 50.67 brak
Dźwięk / Audio MSEB Retrieval MRR@10 69.54 brak

Praktyczne zastosowania w architekturze systemów AI

Kompaktowy profil pamięciowy oraz otwarta licencja pozwalają na wykorzystanie EmbeddingGemma 2 w kilku kluczowych wzorcach architektonicznych:

  • Prywatne, multimodalne potoki On-Device RAG: Połączenie EmbeddingGemma 2 z lokalnym małym modelem językowym (np. Gemma 4 w wersji skwantyzowanej) pozwala na realizację pełnego potoku Retrieval-Augmented Generation na telefonie lub stacji roboczej. System może przeszukiwać prywatne pliki PDF, zrzuty ekranu, notatki głosowe i kod bez wysyłania jakichkolwiek bajtów do API dostawców zewnętrznych.
  • Błyskawiczny routing intencji (Zero-Shot Intent Classification): Zamiast utrzymywać osobny klasyfikator zapytań użytkownika, można dokonać wektoryzacji etykiet systemowych oraz przychodzącego promptu. Dzięki niskim opóźnieniom rzędu milisekund model sprawdza się jako silnik decyzyjny kierujący zapytania do wyspecjalizowanych narzędzi w ramach architektur agentowych.
  • Wyszukiwarki multimediów w aplikacjach mobilnych: Aplikacje galerii czy dyktafonów mogą indeksować metadane i sygnały wizualno-dźwiękowe w lokalnej bazie wektorowej (np. z wykorzystaniem biblioteki SQLite-vec, Qdrant Edge lub llama.cpp), dając użytkownikowi możliwość odnalezienia fragmentu wideo na podstawie zapytania głosowego lub opisu tekstowego.
  • Optymalizacja kosztów pamięci wektorowej (MRL): W środowiskach o ograniczonej pojemności pamięci RAM korpusy danych mogą być przechowywane w 256 wymiarach, redukując rozmiar indeksów HNSW o ponad 60%, przy jednoczesnym zachowaniu możliwości precyzyjnego rerankingu na pełnych wektorach 768d.

Model jest już w pełni zintegrowany z ekosystemem open source, obejmującym frameworki Transformers, Sentence-Transformers, LiteRT, MediaPipe, llama.cpp, Ollama oraz Unsloth, co pozwala na natychmiastowe testowanie i deployment w docelowych środowiskach runtime.

embeddinggemma-2

Ollama Library

EmbeddingGemma 2 is a multimodal embedding model from Google built on the Gemma 4 architecture.

Rozmiary:
270m 440m 570m 740m
$ ollama run embeddinggemma-2

Źródła

🧠 Utrwal wiedzę z tego artykułu!

Kliknij pojęcie, by przypomnieć sobie definicję.

Lokalny serwer modeli językowych (Ollama)
?
Ollama to oprogramowanie open-source służące do lokalnego uruchamiania i zarządzania dużymi modelami językowymi (LLM) bezpośrednio na komputerze użytkownika. Narzędzie to...
Czytaj pełną definicję
DeepMind
?
DeepMind (obecnie Google DeepMind) to brytyjskie laboratorium badawcze zajmujące się sztuczną inteligencją, założone w 2010 roku i przejęte przez Google...
Czytaj pełną definicję
Gemma 4
?
Gemma 4 to rodzina zaawansowanych, otwartych modeli AI od Google DeepMind, zbudowana na bazie technologii Gemini 3 i udostępniona na...
Czytaj pełną definicję

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *

Powiązane posty

Powrót do góry