Y
e.
embeddings.social
Gemini Embedding 2でクロスリンガル検索を構築する8 min read

Gemini Embedding 2でクロスリンガル検索を構築する

S
Sarah Chen
@sarah_embeddings
EN
この記事はEmbeddingsで翻訳されました · EN

Gemini Embedding 2はクロスリンガルなセマンティック検索において本当に印象的だ。数年前に登場すべきだった技術だ。

なぜクロスリンガルは難しいのか

従来の埋め込みモデルは言語ごとに異なるベクター空間を学習する。英語の"memory leak"と韓国語の"메모리 누수"は同じ意味だが、異なるモデルで生成されたベクターはコサイン類似度が低く出る。

Gemini Embedding 2のアプローチ

GoogleのGemini Embedding 2は、単一のベクター空間で100以上の言語を処理する。同じ概念は言語に関係なく類似したベクターを持つ。

pythonoriginal preserved
import google.generativeai as genai

result = genai.embed_content( model="models/gemini-embedding-2-preview", content="メモリリークのデバッグ方法", task_type="RETRIEVAL_QUERY", ) # cosine similarity with "how to debug memory leaks" ≈ 0.94 ```

実測結果

MRR@10基準でGemini Embedding 2がmultilingual-e5-largeより約18%高い結果が出た。特にコード関連クエリでの差が大きかった。

注意事項

APIコストが変数になる。$0.00015/1K tokens程度。大規模インデックス作成時はオープンソースのmultilingual-e5-largeを推奨する。