AI-translated from English; not yet reviewed by a fluent editor.

# EmbeddingGemma 2: টেক্সট ও মিডিয়ার স্থানীয় অনুসন্ধান প্রোটোটাইপ

> Google-এর EmbeddingGemma 2 টেক্সট, ছবি, ভিডিও ও অডিওর embedding-কে একটি স্থানীয় retrieval মডেলে একত্র করেছে। নথিভিত্তিক এই নির্দেশিকায় সেটআপ ও মূল্যায়নের সিদ্ধান্তগুলো সাজানো হয়েছে।

By BIG CHANGE Editorial

Published: 2026-10-06T20:48:02.995Z
Updated: 2026-10-06T20:48:02.995Z
Canonical: https://bigchange.ai/blog/embeddinggemma-2-local-multimodal-search-guide

![Conceptual illustration of one person seated on a rug, holding a phone and a landscape photo beside a box of personal prints and paper records.](https://bigchange.ai/api/media/file/embeddinggemma-personal-collection-hero-v1.png)
A person considers a small personal collection of photos and records beside a phone. Conceptual AI-generated illustration by BIG CHANGE; it does not show an EmbeddingGemma 2 interface or tested search result.

Google ২০২৬ সালের ৬ অক্টোবর EmbeddingGemma 2 প্রকাশ করেছে এবং Apache 2.0 লাইসেন্সে ডাউনলোডযোগ্য weights দিয়েছে। মডেলটি টেক্সট, কোড, ছবি, ভিডিও ও অডিওকে vector-এ রূপান্তর করে, যা একই ৭৬৮-মাত্রার স্থানে তুলনা করা যায়। স্থানীয় সংগ্রহ থাকা ডেভেলপারের জন্য ব্যবহারিক প্রশ্ন হলো কোন encoder লোড করবেন, query ও file কীভাবে উপস্থাপন করবেন এবং ফলাফল ওই সংগ্রহে কাজে লাগবে কি না। এই নির্দেশিকা Google-এর প্রকাশিত নির্দেশনা ও model card অনুসরণ করে; BIG CHANGE মডেলটি চালায়নি বা retrieval-এর মান মাপেনি।

## বড় পরিবর্তন

- **কী বদলেছে:**আগের EmbeddingGemma মডেল শুধু টেক্সট সামলাত। সংস্করণ ২-এ vision ও audio encoder যোগ হয়েছে, ফলে আগে caption বা transcript না বানিয়েও টেক্সট query-কে সমর্থিত media-র সঙ্গে একই vector স্থানে তুলনা করা যায়। Google weights প্রকাশ করেছে; [Android-এ ML Kit পরিষেবা আগামী কয়েক সপ্তাহের মধ্যে আসার কথা](https://developers.googleblog.com/google-ai-edge-with-embeddinggemma-2/)।
- **কেন গুরুত্বপূর্ণ:**ডেভেলপার স্থানীয় সংগ্রহে প্রয়োজনীয় encoder লোড করে সমর্থিত file type-গুলোর জন্য একটিই retrieval index তৈরি করতে পারেন। [Google-এর AI Edge Gallery](https://developers.googleblog.com/google-ai-edge-with-embeddinggemma-2/)SQLite-এ স্থানীয় media vector রেখে cosine similarity অনুযায়ী সাজানোর উদাহরণ দেখায়। তবু অ্যাপে file ingestion, vector storage, ফলাফল দেখানো এবং বিভ্রান্তিকর মিল যাচাইয়ের ব্যবস্থা দরকার।
- **যা নজরে রাখবেন:**তাৎক্ষণিক সিদ্ধান্ত হলো ডিভাইসের memory ও latency বাজেটের মধ্যে প্রতিনিধিত্বমূলক file-গুলো ভালো rank পায় কি না। ভবিষ্যতের Android পরিষেবা integration-এর পথ বদলাতে পারে; ঘোষিত সময়সূচি মানেই পরিষেবাটি আজ পাওয়া যাচ্ছে না।

## মডেল লোড করার আগে input বেছে নিন

ডেভেলপার [নির্দেশিকায়](https://developers.googleblog.com/en/embeddinggemma-2-the-developer-guide/) সব সমর্থিত media-র জন্য Sentence Transformers 6.1.0 বা তার পরের সংস্করণ এবং এই installation command নথিভুক্ত হয়েছে:

```bash
pip install -U sentence-transformers[image,audio,video] transformers
```

সঠিক checkpoint হলো `google/embeddinggemma-2`। Sentence Transformers-এর default load-এ সব encoder থাকে। শুধু টেক্সট ও কোডের সংগ্রহ হলে load করার সময় vision ও audio বাদ দিতে নির্দেশিকাটি বলে:

```python
from sentence_transformers import SentenceTransformer

model = SentenceTransformer(
    "google/embeddinggemma-2",
    config_kwargs={"vision_config": None, "audio_config": None},
)
```

audio বাদ দিয়ে vision রাখতে `config_kwargs={"audio_config": None}` লাগে; vision বাদ দিয়ে audio রাখতে `config_kwargs={"vision_config": None}` লাগে। এই বিকল্পগুলো কোন weights লোড হবে তা বদলায়, কিন্তু তৈরি vector মডেলের যৌথ স্থানেই থাকে। তাই নির্দেশিকা অনুযায়ী vision-সহ configuration দিয়ে encode করা ছবির সঙ্গে শুধু টেক্সট query তুলনা করা যায়। Google মডেলটিকে ভোক্তা-ডিভাইসের উপযোগী বলে, তবে প্রকাশিত Python উদাহরণটি library quickstart—পাঠকের ডিভাইসে memory বা latency-র মাপা নিশ্চয়তা নয়।

## query ও collection item আলাদাভাবে encode করুন

টেক্সট retrieval-এর জন্য [model card](https://ai.google.dev/gemma/docs/embeddinggemma/model_card_2) query ও corpus item-এ আলাদা task instruction নির্দিষ্ট করে। Sentence Transformers সেগুলো `prompt_name` দিয়ে সরবরাহ করে:

```python
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)
```

নথিভুক্ত এই snippet vector ও similarity score তৈরি করে; এটি আমাদের পরিবেশে দেখা ফল নয়। `Document` বসায় `title: none`। কোনো item-এর প্রকৃত title থাকলে Google সেটিকে স্পষ্টভাবে `title: {title} | text: {content}` আকারে format করতে বলে। Code search-এ `CodeRetrieval` query instruction-এর সঙ্গে index করা code-এর title বা file name লাগে। classification, clustering ও sentence similarity-র নিজস্ব symmetric instruction আছে। model card বলছে, টেক্সট instruction বাদ দিলেও মডেল চলে, তবে precision কমে।

আগের `model` মডেলে vision বা audio encoder নেই। ছবি encode করার আগে একই checkpoint থেকে নির্দেশিকার [text-and-vision configuration](https://developers.googleblog.com/en/embeddinggemma-2-the-developer-guide/) লোড করে media ও query-তে সেই মডেল ব্যবহার করুন। এই ধাপ নথি অনুসরণ করে; আমরা চালাইনি:

```python
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)
```

অডিওর জন্য `audio_config: None` বাদ দিয়ে আবার লোড করুন, যাতে audio encoder চালু হয়; default পূর্ণ load-এ vision ও audio দুটোই থাকে। Google-এর নির্দেশিকা text task prefix ছাড়া `{"audio": "recording.wav"}` ধরনের dictionary দেয়। টেক্সটে `<|image|>`, `<|video|>` বা `<|audio|>` marker বসিয়ে এবং dictionary-তে মেলা file দিয়ে টেক্সট ও media মেশানো যায়। ওই call মিলিত input-এর জন্য একটি vector তৈরি করে। model card-এ 16 kHz mono audio নির্দিষ্ট এবং video-র default sampling প্রতি সেকেন্ডে এক frame। ছবি, video frame, audio ও text—সবই ৮,১৯২-token context budget ভাগ করে; তাই দীর্ঘ clip বা মিশ্র item-এর input পরিকল্পনা করুন, সব file ধরে যাবে ধরে নেবেন না।

## vector-এর আকার বেছে নিয়ে বিনিময়টি যাচাই করুন

native output ৭৬৮ মাত্রার। Google-এর model card vector ছেঁটে ৫১২, ২৫৬ ও ১২৮ মাত্রা সমর্থন করে। নির্দেশিকায় `truncate_dim=256` কে `normalize_embeddings=True` দিয়ে `model.encode()` এ ব্যবহারের কথা আছে। query ও index item-এর vector-এ একই মাত্রা থাকতে হবে; ছোট করা vector cosine তুলনার আগে normalize করা দরকার। card বলছে, ১২৮ মাত্রায় ২৫৬-এর তুলনায় multimodal মান অনেক বেশি কমে এবং ১২৮ মূলত টেক্সট কাজের জন্য সুপারিশ করা হয়। এগুলো Google-এর full-precision benchmark ফল, কোনো নির্দিষ্ট collection-এর recall অনুমান নয়।

সংখ্যাগত precision-ও setup-এর সিদ্ধান্ত। সমর্থিত hardware-এ `bfloat16` এবং অন্যত্র, অধিকাংশ CPU-সহ, `float32` ব্যবহারের পরামর্শ card দেয়। `float16` থেকে NaN আসতে পারে বা embedding নিঃশব্দে খারাপ হতে পারে বলে সতর্ক করা হয়েছে। selective-loading parameter-এর সংখ্যা মডেলের component বোঝায়; আসল ডিভাইস memory ও search speed নির্ভর করে execution path, precision, index ও input size-এর ওপর।

## ফল ব্যবহার করার আগে কী মূল্যায়ন করবেন

একটি prototype অল্প অনুমোদিত sample index করতে পারে, প্রতিনিধিত্বমূলক query আলাদা রাখতে পারে এবং সঠিক item উপরের দিকে আসে কি না দেখতে পারে। সংগ্রহে সত্যিই থাকলেই text-to-text, text-to-image বা text-to-audio case যোগ করুন। একই query-তে ৭৬৮ ও ২৫৬ মাত্রা তুলনা করুন, প্রাসঙ্গিক ভাষা ও নথির ধরনে ব্যর্থতা দেখুন এবং লক্ষ্য ডিভাইসে memory, indexing time ও query latency মাপুন। এগুলো পাঠকের মূল্যায়নের ধাপ; BIG CHANGE করেনি।

model card-এ প্রকাশিত [ফলাফল](https://ai.google.dev/gemma/docs/embeddinggemma/model_card_2) MTEB code v1-এ EmbeddingGemma 2-কে ৭৮.৬৮ এবং আগের মডেলকে ৬৮.৭৬ স্কোর দেয়; multilingual MTEB v2-এ স্কোর যথাক্রমে ৬১.৩৬ ও ৬১.১৫। card-এ ছবি, ভিডিও ও অডিওর ফলও আছে, তবে ওই modality-গুলোর জন্য সংস্করণ ১-এর তুলনা নেই। উদ্ধৃত সব benchmark full-precision checkpoint ব্যবহার করেছে। এগুলো Google-এর মূল্যায়নের শর্ত দেখায়, স্থানীয় archive-এ accuracy নয়। ভাষা ও কাজভেদে মান বদলাতে পারে এবং retrieval app-এ নিজস্ব filtering ও fairness check দরকার বলে card সতর্ক করেছে।

weights Apache 2.0 লাইসেন্সে প্রকাশিত হয়েছে এবং নির্দেশিকা [Hugging Face repository](https://huggingface.co/google/embeddinggemma-2) লিংক করেছে। Google-এর উপকরণ স্থানীয়ভাবে চালানোর পদ্ধতি দেয়, কিন্তু deployment-এর সার্বজনীন দাম দেয় না: device, compute, storage ও engineering হলো অ্যাপের খরচ। পাঠকের পরের সিদ্ধান্ত হলো ডিভাইসের বাজেটের মধ্যে প্রতিনিধিত্বমূলক file-কে মডেল ঠিকমতো rank করে কি না দেখা।

## সূত্র ও আরও পড়ুন

- [Google AI Edge ঘোষণা](https://developers.googleblog.com/google-ai-edge-with-embeddinggemma-2/), ৬ অক্টোবর ২০২৬: প্রকাশের ধাপ, AI Edge Gallery-তে স্থানীয় media search বাস্তবায়ন এবং ঘোষিত ML Kit সময়সূচি। এই লেখার device measurement Google-এর।
- [EmbeddingGemma 2 developer guide](https://developers.googleblog.com/en/embeddinggemma-2-the-developer-guide/), ৬ অক্টোবর ২০২৬: library সংস্করণ, load option, encoding উদাহরণ ও vector ছোট করার নির্দেশ।
- [EmbeddingGemma 2 model card](https://ai.google.dev/gemma/docs/embeddinggemma/model_card_2): মডেল architecture, input সীমা, task prompt, precision সতর্কতা, benchmark table ও সীমাবদ্ধতা। ফল Google-এর প্রতিবেদন।
- [Google model repository](https://huggingface.co/google/embeddinggemma-2): নির্দিষ্ট checkpoint ও প্রকাশিত model file। repository পাওয়া গেলেই অ্যাপের performance যাচাই হয় না।

## Sources

- [EmbeddingGemma 2 দিয়ে multimodal semantic search প্রান্তিক ডিভাইসে আনুন](https://developers.googleblog.com/google-ai-edge-with-embeddinggemma-2/) — প্রকাশের ধাপ, Google AI Edge Gallery বাস্তবায়ন ও আসন্ন ML Kit access; device-এর সংখ্যা সরবরাহকারীর মাপ।
- [EmbeddingGemma 2: developer guide](https://developers.googleblog.com/en/embeddinggemma-2-the-developer-guide/) — Sentence Transformers 6.1.0+, load configuration, task ও media encoding উদাহরণ এবং vector truncation।
- [EmbeddingGemma 2 model card](https://ai.google.dev/gemma/docs/embeddinggemma/model_card_2) — architecture, input সীমা, prompt, precision, Google-প্রকাশিত benchmark score, ঝুঁকি ও সীমাবদ্ধতা।
- [google/embeddinggemma-2 checkpoint](https://huggingface.co/google/embeddinggemma-2) — নির্দিষ্ট model repository, প্রকাশিত file ও license।
