ホームページ > テクノロジー周辺機器 > AI > ジェミニ埋め込みと多言語E5-large&jinaの比較

ジェミニ埋め込みと多言語E5-large&jinaの比較

Christopher Nolan
リリース: 2025-03-20 15:02:13
オリジナル
775 人が閲覧しました

Gemini Embedding:Google Gemini AIフレームワークの下にある多言語テキスト埋め込みモデル

単語の埋め込みは、機械翻訳、質問と回答、情報の取得など、ヒンディー語の自然言語処理(NLP)タスクに不可欠です。これらの埋め込みは、単語のセマンティックプロパティをキャプチャし、より正確でコンテキスト指向のNLPアプリケーションを可能にします。多数のヒンディー語のスピーカーとヒンディー語の数が増えていることを考えると、これらの言語のNLPパフォーマンスを改善するには、高品質の埋め込みが重要です。カスタマイズされた埋め込みは、インドの言語ファミリーのユニークな言語特性とリソースの制限を具体的に解決できます。新しくリリースされたジェミニ埋め込みモデルは、多言語のテキスト埋め込みの大幅な進歩を表しており、Googleの強力なGemini AIフレームワークを活用して、100を超える言語で最先端のパフォーマンスを実現しています。

Gemini Embeddingモデルは、分類、検索、セマンティック検索などのタスクに優れており、効率と精度が向上します。 Gemini Embeddingは、より大きな入力スケールと高次元の出力をサポートすることにより、より豊富なテキスト表現を提供し、さまざまなアプリケーションで広く使用できるようにします。

学習目標

  • Gemini EmbeddingとGemini LLMとの統合について学びます。
  • Gemini Embedを使用してヒンディー語のドキュメントを取得するための実用的なチュートリアル。
  • Jina AIの埋め込みおよび多言語-E5-Largeとの比較分析。
  • 多言語のテキスト検索機能とアプリケーションに関する洞察。

*この記事は、***データサイエンスブログマラソンの一部として公開されています。 ***

目次

  • ジェミニの埋め込みとは何ですか?
  • Gemini Embeddingの主要な機能
  • ジェミニ埋め込みモデルアーキテクチャ
  • 他の多言語埋め込みモデルとの比較
  • Gemini Embeddingを使用した検索とJina Ai Embeddingおよび多言語-E5-Largeと比較
    • ステップ1。必要なライブラリをインストールします
    • ステップ2。データをロードします
    • ステップ3。データをブロックします
    • ステップ4。データをベクトルデータベースに保存します
    • ステップ5。データベースをクエリします
    • ステップ6。JinaAI埋め込みと比較します
  • 埋め込まれた検索出力の比較
    • 説明する
  • 結論は
  • よくある質問

ジェミニの埋め込みとは何ですか?

2025年3月、GoogleはGemini APIで使用できる新しい実験的なGemini Embedding Text Model(Gemini-Embedding-Exp-03-07)をリリースしました。

高度な埋め込みモデルは、ジェミニモデルから生じていました。これは、言語と微妙なコンテキストのニュアンスについてのジェミニの深い理解を継承すると言われており、さまざまなアプリケーションで広く使用できるようにします。 MTEB多言語ランキングで最初にランクされています。

ジェミニ埋め込みと多言語E5-large&jinaの比較

Gemini Embeddingは、同様のセマンティクスを持つテキスト入力が互いに近いベクトル空間のベクトルにマッピングされる密なベクトルとしてテキストを表します。現在、100を超える言語をサポートしており、その埋め込みは検索や分類などのさまざまなタスクに使用できます。

Gemini Embeddingの主要な機能

  • 強力な多言語機能:このモデルは、英語などの高リソース言語だけでなく、アッサムやマケドニアなどの低リソース言語でも、100を超える言語で優れたパフォーマンスを示しています。
  • 最大8000個の入力タグの処理:この強力な機能により、モデルは切り捨てなしで長いドキュメントまたは複雑なクエリをシームレスに処理できるようになり、多くの既存の組み込みモデルを超える方法でコンテキストと意味を維持できます。
  • 3K寸法の出力寸法:このモデルは、最大3072までの埋め込みディメンションを生成し、タスク固有の最適化のために768や1536などのサブ次元性をサポートします。
  • 印象的なパフォーマンス:ジェミニ埋め込みは、平均タスクスコアが68.32で、大規模なテキストエンミングベンチマーク(MTEB)で最初にランク付けされ、最も近い競合他社を大幅に超えています。

ジェミニ埋め込みモデルアーキテクチャ

ジェミニ埋め込みと多言語E5-large&jinaの比較

Gemini Embeddingのコアは、変圧器アーキテクチャに基づいており、Gemini LLMから初期化されています。この基礎は、モデルの言語構造とセマンティクスの深い理解を提供します。このモデルは、双方向の注意メカニズムを使用して入力シーケンスを処理して、埋め込みを生成するときに単語またはフレーズの完全なコンテキストを考慮することができます。

  1. 入力シーケンスtはM(双方向の注意を伴う変圧器、ジェミニから初期化)で処理され、マーカー埋め込みシーケンスが得られます。
  2. 入力内のすべての情報を表す単一の埋め込みを生成するには、プーリング関数が適用されます。
  3. 最後に、線形投影が適用され、埋め込みをターゲットディメンションにスケーリングし、最終的な出力埋め込みになります。

損失関数:Gemini Embeddingモデルは、バッチ内の否定的な例でノイズ比較推定(NCE)損失を使用してトレーニングされます。正確な損失は、トレーニングフェーズによってわずかに異なります。一般的に、トレーニングの例には、クエリ、正のターゲット、および(オプションの)難しいターゲットが含まれます。

トレーニング戦略

  1. 事前調整:この段階では、モデルはクエリターゲットペアを含む大規模な多様なデータセットでトレーニングされています。この露出は、タスクをコーディングするための大規模な言語モデルのパラメーターを調整し、適応性の基礎を築きます。
  2. 微調整:第2フェーズでは、モデルは、クエリポジティブディフフィックネガティブな例のトリプルを含むタスク固有のデータセットを使用します。このプロセスでは、より小さなバッチサイズと適切にキュレーションされたデータセットを使用して、ターゲットタスクのパフォーマンスを向上させます。

また読む:gemini埋め込み:ジェミニからのユニバーサル埋め込み

他の多言語埋め込みモデルとの比較

ヒンディー語のドキュメントの検索を最新のジェミニ埋め込みと比較し、ジーナAIの埋め込みおよび多言語E5-large埋め込みと比較します。次の表に示すように、Gemini EmbeddingとJina Ai Embeddingは、最大数のタグの点で高く、モデルが長いドキュメントまたは複雑なクエリを処理できるようにします。さらに、次の表に示すように、ジェミニの埋め込みは、単語間のより詳細で微妙なセマンティックな関係をキャプチャするより高い埋め込み次元を持ち、モデルが複雑な言語パターンと意味の微妙な違いを表すことができます。

パラメーターの数 埋め込まれた寸法 最大マーク 言語数 人形の埋め込み
Gemini-Embedding-Exp-03-07 未知 3072 8192 100 2048、1024、512、256、128の寸法など、さまざまなサイズへの埋め込みの切り捨てをサポートしています。
Jinaai/Jina-embeddings-V3 572百万 1024 8194 100 柔軟な埋め込みサイズ(32、64、128、256、512、768、1024)をサポートし、切り捨てられた埋め込みをアプリケーションに適合させることができます
多言語-E5-Large-Instruct 5億6,000万 1024 514 94 Na

Gemini Embeddingを使用した検索とJina Ai Embeddingおよび多言語-E5-Largeと比較

以下の実用的なチュートリアルでは、ヒンディー語のドキュメントの検索と新しくリリースされた最新のジェミニ埋め込みと比較してから、Jina ai埋め込みおよび多言語E5-large埋め込みと比較します。

ステップ1。必要なライブラリをインストールします

<code>!pip install langchain-community !pip install chromadb</code>
ログイン後にコピー

ステップ2。データをロードします

Webサイトのヒンディー語データを使用して、ヒンディー語の検索でのGemini Embeddingのパフォーマンスを評価しました。

 <code>from langchain_community.document_loaders import WebBaseLoader loader = WebBaseLoader("https://ckbirlahospitals.com/rbh/blog/pregnancy-early-symptoms-in-hindi") data = loader.load()</code>
ログイン後にコピー

ステップ3。データをブロックします

次のコードでは、recursiveCharacterTextSplitterを使用して、大きなテキストドキュメントを重複せずに500文字のチャンクに分割します。次に、この分割をDataVariableに適用し、結果をAll_Splitsに保存します。 gemini埋め込みAPIのレート制限により、10個のスプリットのみを使用します。

 <code>from langchain_text_splitters import RecursiveCharacterTextSplitter text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=0) all_splits = text_splitter.split_documents(data) all_splits = all_splits[:10]</code>
ログイン後にコピー

ステップ4。データをベクトルデータベースに保存します

最初に、「GeminiembedingFunction」というクラスを作成します。これは、APIの埋め込みを照会し、入力クエリの埋め込み値を返すのに役立ちます。次に、「create_chroma_db」という関数を作成して、データと埋め込みを保存するChromaDBにコレクションを作成します。

 <code>import chromadb from chromadb import Documents, EmbeddingFunction, Embeddings class GeminiEmbeddingFunction(EmbeddingFunction): def __call__(self, input: Documents) -> Embeddings: title = "Custom query" return client.models.embed_content( model="gemini-embedding-exp-03-07", contents=input).embeddings[0].values def create_chroma_db(documents, name): chroma_client = chromadb.Client() db = chroma_client.create_collection(name=name, embedding_function=GeminiEmbeddingFunction()) for i, d in enumerate(documents): db.add( documents=d.page_content, ids=str(i) ) return db db = create_chroma_db(all_splits, "datab")</code>
ログイン後にコピー

ステップ5。データベースをクエリします

<code>def get_relevant_passage(query, db): passage = db.query(query_texts=[query], n_results=1)['documents'][0][0] return passage passage = get_relevant_passage("आपको प्रेगनेंसी टेस्ट कब करवाना चाहिए?", db) print(passage)</code>
ログイン後にコピー
ログイン後にコピー

ステップ6。JinaAI埋め込みと比較します

次のコードでは、ハグするフェイストランスモデルを使用して、カスタム埋め込み関数を定義し、テキスト入力を処理して埋め込みを生成する方法を定義しています。

  1. 変圧器からのオートトケン剤とオートメーターは、前処理されたモデル(Jinaai/Jina-embeddings-V3)をロードし、ChromaDBから埋め込み機能をインポートして、カスタム埋め込みを作成するために使用されます。
  2. 平均的な関数:この関数は、モデルでプーリング操作を実行することにより、モデルの隠された状態を集約し、注意マスクを取得しながらシーケンスの長さを平均します(塗りつぶしマークを無視します)。
  3. CustomHuggingfaceクラス:テキストをトークン化し、モデルにフィードし、平均的な_pool関数を使用して埋め込みを計算します。結果は埋め込みリストとして返されます。
 <code>from transformers import AutoTokenizer, AutoModel from chromadb import EmbeddingFunction tokenizer = AutoTokenizer.from_pretrained('jinaai/jina-embeddings-v3') model = AutoModel.from_pretrained('jinaai/jina-embeddings-v3') # the model returns many hidden states per document so we must aggregate them def average_pool(last_hidden_states, attention_mask): last_hidden = last_hidden_states.masked_fill(~attention_mask[...,None].bool(), 0.0) return last_hidden.sum(dim=1) / attention_mask.sum(dim=1)[...,None] class CustomHuggingFace(EmbeddingFunction): def __call__(self, texts): queries = [f'query: {text}' for text in texts] batch_dict = tokenizer(texts, max_length=512, padding=True, truncation=True, return_tensors='pt') outputs = model(**batch_dict) embeddings = average_pool(outputs.last_hidden_state, batch_dict['attention_mask']) return embeddings.tolist()</code>
ログイン後にコピー

クエリ

<code>def get_relevant_passage(query, db): passage = db.query(query_texts=[query], n_results=1)['documents'][0][0] return passage passage = get_relevant_passage("आपको प्रेगनेंसी टेस्ट कब करवाना चाहिए?", db) print(passage)</code>
ログイン後にコピー
ログイン後にコピー

多言語-E5-Large Embedを選択するために、トークン剤とモデルを「intfloat/multilingual-e5-large-instruct」に置き換えるだけです。

埋め込まれた検索出力の比較

質問番号 クエリ ジェミニ埋め込み Jinaai/Jina-embeddings-V3 intfloat/multhingual-e5-rarge-intruct
1 आपकोपपです。 妊娠の初期症状についてもっと知りたい場合は、このブログ投稿はあなたにぴったりです。妊娠検査はいつ必要ですか? -間違い 妊娠の初期症状についてもっと知りたい場合は、このブログ投稿はあなたにぴったりです。妊娠検査はいつ必要ですか? -間違い 妊娠の初期症状についてもっと知りたい場合は、このブログ投稿はあなたにぴったりです。妊娠検査はいつ必要ですか? -間違い
2 妊娠केkuchシンボル 妊娠の初期症状は何ですか?妊娠中、女性では多くのホルモンの変化が起こります。妊娠の初期の症状には、吐き気、嘔吐、頻繁な排尿、疲労が含まれます。これについては、このブログ投稿で説明します。 -正しい 妊娠の兆候:早期症状に関する完全な情報!ホームクイックコンサルテーション患者ログイン当社はお問い合わせください:08062136530緊急電話:07340054470メインメニューを開いて患者と訪問者にサービスを提供する国際患者にサービスを提供します。産婦人科|妊娠の初期症状は何ですか?妊娠妊娠の早期症状 -エラー 妊娠の初期症状は何ですか?妊娠中、女性では多くのホルモンの変化が起こります。妊娠の初期の症状には、吐き気、嘔吐、頻繁な排尿、疲労が含まれます。これについては、このブログ投稿で説明します。 -正しい
3 गग婦するまみथするएंटीबするएंटीबするदवするलेनेसेबचなりबच? 妊娠の最初の数日間、卵と精子が受精し、出血や腹痛などの症状を引き起こします。この期間中、健康な妊娠のために、女性は抗生物質を服用することを避けることをお勧めします。これは母親や赤ちゃんにとって危険である可能性があるためです。妊娠の早期症状は、常に月経や嘔吐が遅れるとは限りません。さらに、他の症状が発生する可能性があり、 -正しいなどの特別な注意が必要です 妊娠の最初の数日間、卵と精子が受精し、出血や腹痛などの症状を引き起こします。この期間中、健康な妊娠のために、女性は抗生物質を服用することを避けることをお勧めします。これは母親や赤ちゃんにとって危険である可能性があるためです。妊娠の早期症状は、常に月経や嘔吐が遅れるとは限りません。さらに、他の症状が発生する可能性があり、 -正しいなどの特別な注意が必要です すべての女性が知っておくべきこと。妊娠関連の質問については、婦人科医に連絡してすべての合併症を排除することをお勧めします。 -間違い
4 कबकबなりकबするするげथ#दव#€लेनेबचなりするか? 妊娠の最初の数日間、卵と精子が受精し、出血や腹痛などの症状を引き起こします。この期間中、健康な妊娠のために、女性は抗生物質を服用することを避けることをお勧めします。これは母親や赤ちゃんにとって危険である可能性があるためです。妊娠の早期症状は、常に月経や嘔吐が遅れるとは限りません。さらに、他の症状が発生する可能性があり、 -正しいなどの特別な注意が必要です 妊娠の最初の数日間、卵と精子が受精し、出血や腹痛などの症状を引き起こします。この期間中、健康な妊娠のために、女性は抗生物質を服用することを避けることをお勧めします。これは母親や赤ちゃんにとって危険である可能性があるためです。妊娠の早期症状は、常に月経や嘔吐が遅れるとは限りません。さらに、他の症状が発生する可能性があり、 -正しいなどの特別な注意が必要です すべての女性が知っておくべきこと。妊娠関連の質問については、婦人科医に連絡してすべての合併症を排除することをお勧めします。 -間違い
5 गग婦कक現。 遅延月経:これは妊娠の最も早く最も一般的な症状です。この症状のみに基づいて妊娠の確認は完全に正しいものではありません。ただし、月経が1週間以上遅れている場合は、妊娠検査をお勧めします。乳房の変化:妊娠中、乳房は腫れ、柔らかくなり、色が変わります。それは主に乳首(areola)のサイズと色の変化です。 -正しい これを念頭に置いて、妊娠を確認する方法は?妊娠の最初の月の世話をする方法は?妊娠検査方法は?妊娠中はどうすればいいですか?妊娠中は性別が発生する必要がありますか?妊娠中はどんな果物を食べるべきですか?妊娠中はどれくらいの水を飲むべきですか?母親になる喜びは、世界で最大の幸福です。妊娠中、女性の身体的および心理的変化には多くの変化があります。これらの変化を妊娠の早期症状と呼びます -エラー 妊娠の初期症状は何ですか?妊娠中、女性では多くのホルモンの変化が起こります。妊娠の初期の症状には、吐き気、嘔吐、頻繁な排尿、疲労が含まれます。これについては、このブログ投稿で説明します。 -正しい
6 गग左でभधपहले 妊娠の兆候:早期症状に関する完全な情報!ホームクイックコンサルテーション患者ログイン当社はお問い合わせください:08062136530緊急電話:07340054470メインメニューを開いて患者と訪問者にサービスを提供する国際患者にサービスを提供します。産婦人科|妊娠の初期症状は何ですか?妊娠妊娠の早期症状 -エラー これを念頭に置いて、妊娠を確認する方法は?妊娠の最初の月の世話をする方法は?妊娠検査方法は?妊娠中はどうすればいいですか?妊娠中は性別が発生する必要がありますか?妊娠中はどんな果物を食べるべきですか?妊娠中はどれくらいの水を飲むべきですか?母親になる喜びは、世界で最大の幸福です。妊娠中、女性の身体的および心理的変化には多くの変化があります。これらの変化を妊娠の早期症状と呼びます -エラー 妊娠の初期症状は何ですか?妊娠中、女性では多くのホルモンの変化が起こります。妊娠の初期の症状には、吐き気、嘔吐、頻繁な排尿、疲労が含まれます。これについては、このブログ投稿で説明します。 - 正しい
7 ग左手 妊娠検査を受けるのに最適な時期は、月経が少なくとも7日遅れた後です。自宅の妊娠検査ツールを使用して、自宅のHCGレベルを検出できます。妊娠中、このホルモンのレベルは大幅に増加します。注意する必要があることの1つは、早期テストも間違った結果につながる可能性があるため、期間が遅れてテストがマイナスである場合は、テストする前に少なくとも3日間待つことをお勧めします。 -正しい これを行う正しい方法もあります。これについては、テストツールマニュアルでも確認できます。正確な結果を得るには、HCGホルモンの正しいレベルを測定できるため、朝の最初の尿を使用する必要があります。また、妊娠の早期症状が発生し、検査結果が陰性である場合は、すぐに血液検査について医師に相談してください。いずれにせよ、質問がある場合は医師に相談する必要があります。 -正しい 妊娠の初期症状は何ですか?妊娠中、女性では多くのホルモンの変化が起こります。妊娠の初期の症状には、吐き気、嘔吐、頻繁な排尿、疲労が含まれます。これについては、このブログ投稿で説明します。 -間違い

説明する

上記のヒンディー語の出力からわかるように、Gemini Embeddingを使用して、Jina AI EmbeddingとMultilingual-E5-Largeを使用しながら、7つのクエリから5つの正しい出力を取得します。正しい応答は3つしかありません。

これは、MTEBベンチマークに反映されているように、ジェミニの埋め込みはうまく機能し、他の埋め込みモデルよりもヒンディー語などの多言語を扱うことを示しています。

結論は

要するに、ジェミニの埋め込みは、特にヒンディー語などのヒンディー語で、多言語NLPの大幅な進歩を表しています。強力な多言語機能、大規模な入力サイズのサポート、MTEBなどのベンチマークでの優れたパフォーマンスにより、Geminiは検索、分類、セマンティック検索などのタスクに優れています。実用的な比較を通じて、ジェミニのパフォーマンスは他のモデルよりも優れており、より高い精度と効率を提供し、多言語NLPを促進するための貴重なツールになります。

主な利益

  • ヒンディー語の単語埋め込みの重要性:高品質の埋め込みにより、翻訳、質疑応答、検索などのNLPタスクが強化され、言語の課題とリソースギャップの問題が解決します。
  • Gemini Embedding Model :GoogleのGemini Embeddingは、低リソース言語を含む100を超える言語をカバーする多言語テキスト処理にAIフレームワークを利用しています。
  • 主な機能:8000のマーカーと3072次元の埋め込みをサポートし、長いドキュメントと複雑なクエリの効率的な処理を可能にします。
  • 印象的なパフォーマンス:平均タスクスコアは68.32で、MTEB多言語ランキングで1位にランクされており、多言語NLPでそのパワーを示しています。

この記事に示されているメディアは、Analytics Vidhyaが所有しておらず、著者の裁量で使用できます。

よくある質問

Q1。ジェミニ埋め込みモデルは何ですか? A:Gemini EmbeddingモデルはGoogleのGemini AIに基づいており、ヒンディー語を含む100を超える言語に一流の多言語テキスト埋め込みを提供します。

Q2。 A:Gemini Embeddingは多言語サポートに優れており、8000のマーカーと出力3072寸法を処理し、分類、検索、セマンティック検索の効率を確保できます。

Q3。回答:ジェミニ埋め込みは、アッサムやマケドニアなどの英語や低リソースの言語などの高リソース言語でうまく機能します。 MTEB多言語のランキングでナンバーワンにランクされており、その強力な多言語機能を示しています。

Q4。 A:モデルはGemini LLMから初期化され、双方向の注意を払ったトランスアーキテクチャを使用して、コンテキストと意味をキャプチャする高品質のテキスト埋め込みを生成します。

Q5。 A:Gemini Embeddingは、トレーニングのためにバッチ内の否定的な例でノイズ比較推定(NCE)損失を使用します。 2つのトレーニングフェーズを通過します。大規模なデータセットでの事前調整とタスク固有のデータセットで、NLPパフォーマンスを改善します。

以上がジェミニ埋め込みと多言語E5-large&jinaの比較の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート