🚀 gte-large-gguf
このモデルは、General Text Embeddings (GTE) の大規模バージョンをGGUF形式に変換したもので、テキスト埋め込みタスクに最適化されています。
🚀 クイックスタート
このモデルは、テキスト埋め込みを生成するためのものです。以下の手順で使用を開始できます。
llama.cppを使用した例
単一の埋め込みを計算するには、llama.cppをビルドして以下のコマンドを実行します。
./embedding -ngl 99 -m [filepath-to-gguf].gguf -p 'search_query: What is TSNE?'
また、トークンの総数がコンテキスト長を超えない限り、複数のテキストをまとめて埋め込みを計算することもできます。
texts.txt
ファイルに以下の内容を記述します。
search_query: What is TSNE?
search_query: Who is Laurens Van der Maaten?
複数の埋め込みを計算するには、以下のコマンドを実行します。
./embedding -ngl 99 -m [filepath-to-gguf].gguf -f texts.txt
LM Studioを使用した例
以下のリンクから0.2.19ベータ版をダウンロードします。
Windows MacOS Linux
インストール後、アプリを開きます。ホーム画面は以下のように表示されます。

メイン検索バーで "ChristianAzinn" を検索するか、左側のメニューの "Search" タブを開いて同じ名前を検索します。

表示されたモデルから選択し(この例では bge-small-en-v1.5-gguf
を使用)、ダウンロードする量子化方式を選択します。このモデルは比較的小さいため、Q8_0をおすすめします。一般的に、リストの下に行くほど(または数字が大きくなるほど)、ファイルサイズは大きくなり、パフォーマンスは向上します。

モデルのダウンロードが成功すると、緑色のチェックマークと "Downloaded" という文字が表示されます。ネットワーク速度によっては時間がかかる場合があります。

モデルのダウンロードが完了したら、左側のメニューの "Local Server" タブを開き、テキスト埋め込みモデルのローダーを開きます。このローダーはバージョン0.2.19より前では表示されないため、正しいバージョンをダウンロードしていることを確認してください。

表示されるドロップダウンから先ほどダウンロードしたモデルを選択してロードします。VRAMに収まらない場合は、右側のメニューでGPUオフロードなどの設定を調整する必要がある場合があります。

最後に、"Start Server" ボタンをクリックします。

コンソールに以下のようなテキストが表示されれば、使用可能です。これをOpenAIの埋め込みAPIの代替として、埋め込みAPIを必要とするアプリケーションで使用することができます。また、エンドポイントに直接クエリを送信してテストすることもできます。

APIエンドポイントへの例としてのcurlリクエストは以下の通りです。
curl http://localhost:1234/v1/embeddings \
-H "Content-Type: application/json" \
-d '{
"input": "Your text string goes here",
"model": "model-identifier-here"
}'
詳細については、LM Studioのテキスト埋め込みドキュメントを参照してください。
✨ 主な機能
- 多様な量子化方式:複数の量子化方式が提供されており、メモリ使用量と精度のバランスを調整できます。
- 広範な互換性:llama.cppとLM Studioに対応しており、既存のツールとシームレスに統合できます。
- 大規模コーパスでの学習:大規模な関連テキストペアのコーパスで学習されており、様々なドメインとシナリオに対応しています。
📦 インストール
このモデルは、Hugging Faceから直接ダウンロードできます。必要な量子化方式のファイルを選択してダウンロードしてください。
📚 ドキュメント
元の説明
General Text Embeddings (GTE) モデルです。Towards General Text Embeddings with Multi-stage Contrastive Learning
GTEモデルはアリババのDAMO Academyによって開発され、主にBERTフレームワークに基づいています。現在、GTE-large、GTE-base、GTE-smallの3種類のサイズのモデルが提供されています。GTEモデルは大規模な関連テキストペアのコーパスで学習されており、幅広いドメインやシナリオをカバーしています。これにより、GTEモデルは情報検索、意味的なテキスト類似性、テキストの再ランキングなど、様々なテキスト埋め込みの下流タスクに適用できます。
説明
このリポジトリには、gte-large埋め込みモデルのGGUF形式のファイルが含まれています。
これらのファイルは、llama.cppのPR 5500、コミット 34aa045de を使用して、消費者向けのRTX 4090で変換および量子化されました。
このモデルは、最大512トークンのコンテキストをサポートしています。
互換性
これらのファイルは、コミット 4524290e8 以降の llama.cpp およびバージョン0.2.19以降の LM Studio と互換性があります。
メタ情報
量子化方法の説明
詳細を表示するにはクリック
利用可能な方法は以下の通りです。
* GGML_TYPE_Q2_K - 16ブロックを含むスーパーブロックでの「タイプ1」の2ビット量子化。各ブロックには16の重みがあります。ブロックのスケールと最小値は4ビットで量子化されます。これにより、実質的に重みあたり2.5625ビット (bpw) が使用されます。
* GGML_TYPE_Q3_K - 16ブロックを含むスーパーブロックでの「タイプ0」の3ビット量子化。各ブロックには16の重みがあります。スケールは6ビットで量子化されます。これにより、3.4375 bpwが使用されます。
* GGML_TYPE_Q4_K - 8ブロックを含むスーパーブロックでの「タイプ1」の4ビット量子化。各ブロックには32の重みがあります。スケールと最小値は6ビットで量子化されます。これにより、4.5 bpwが使用されます。
* GGML_TYPE_Q5_K - 「タイプ1」の5ビット量子化。GGML_TYPE_Q4_Kと同じスーパーブロック構造で、5.5 bpwになります。
* GGML_TYPE_Q6_K - 「タイプ0」の6ビット量子化。16ブロックのスーパーブロックで、各ブロックには16の重みがあります。スケールは8ビットで量子化されます。これにより、6.5625 bpwが使用されます。
以下の「提供されるファイル」表を参照して、どのファイルがどの方法を使用しているかを確認してください。
提供されるファイル
📄 ライセンス
このモデルはMITライセンスの下で提供されています。
謝辞
LM StudioチームとオープンソースAIに取り組むすべての方々に感謝します。
このREADMEは、別の優れた埋め込みモデルである nomic-ai-embed-text-v1.5-gguf のREADMEや、伝説的な TheBloke のREADMEにインスパイアされています。