language: ja
license: apache-2.0
library_name: sentence-transformers
tags:
- sentence-transformers
- feature-extraction
- sentence-similarity
- transformers
datasets:
- s2orc
- flax-sentence-embeddings/stackexchange_xml
- ms_marco
- gooaq
- yahoo_answers_topics
- code_search_net
- search_qa
- eli5
- snli
- multi_nli
- wikihow
- natural_questions
- trivia_qa
- embedding-data/sentence-compression
- embedding-data/flickr30k-captions
- embedding-data/altlex
- embedding-data/simple-wiki
- embedding-data/QQP
- embedding-data/SPECTER
- embedding-data/PAQ_pairs
- embedding-data/WikiAnswers
pipeline_tag: sentence-similarity
all-MiniLM-L6-v2 GGUFモデル
適切なモデルフォーマットの選択
適切なモデルフォーマットを選択するには、ハードウェアの性能とメモリ制約を考慮する必要があります。
BF16 (Brain Float 16) – BF16アクセラレーションが利用可能な場合に使用
- 高速な計算を可能にしつつ、良好な精度を維持する16ビット浮動小数点フォーマット。
- FP32と同様のダイナミックレンジを提供しつつ、メモリ使用量を削減。
- BF16アクセラレーションをサポートするハードウェア(デバイスの仕様を確認)に推奨。
- FP32と比較してメモリフットプリントを削減しつつ、高性能な推論を実現。
📌 BF16を使用する場合:
✔ ハードウェアがBF16をネイティブサポート(例: 新しいGPU、TPU)。
✔ 高精度を維持しつつメモリを節約したい場合。
✔ モデルを別のフォーマットに再量子化する予定がある場合。
📌 BF16を避ける場合:
❌ ハードウェアがBF16をサポートしていない(FP32にフォールバックし、遅くなる可能性あり)。
❌ BF16最適化がない古いデバイスとの互換性が必要な場合。
F16 (Float 16) – BF16より広くサポート
- 16ビット浮動小数点フォーマットで、高精度だがBF16より値の範囲が狭い。
- FP16アクセラレーションをサポートする多くのデバイス(GPUや一部のCPU)で動作。
- BF16より若干精度が低いが、推論には一般的に十分。
📌 F16を使用する場合:
✔ ハードウェアがFP16をサポートしているが、BF16はサポートしていない場合。
✔ 速度、メモリ使用量、精度のバランスが必要な場合。
✔ GPUなどFP16計算に最適化されたデバイスで実行する場合。
📌 F16を避ける場合:
❌ デバイスがネイティブFP16サポートを欠く(期待より遅くなる可能性あり)。
❌ メモリ制約が厳しい場合。
量子化モデル (Q4_K, Q6_K, Q8など) – CPU & 低VRAM推論用
量子化によりモデルサイズとメモリ使用量を削減しつつ、可能な限り精度を維持。
- 低ビットモデル (Q4_K) → メモリ使用量最小、精度は低め。
- 高ビットモデル (Q6_K, Q8_0) → 精度向上、より多くのメモリを必要。
📌 量子化モデルを使用する場合:
✔ CPUで推論を実行し、最適化されたモデルが必要な場合。
✔ デバイスのVRAMが少なく、フル精度モデルをロードできない場合。
✔ 合理的な精度を保ちつつメモリフットプリントを削減したい場合。
📌 量子化モデルを避ける場合:
❌ 最大精度が必要な場合(フル精度モデルが適している)。
❌ ハードウェアが高精度フォーマット(BF16/F16)に十分なVRAMを有する場合。
超低ビット量子化 (IQ3_XS, IQ3_S, IQ3_M, Q4_K, Q4_0)
これらのモデルは極端なメモリ効率を最適化しており、低電力デバイスやメモリが深刻な制約となる大規模展開に理想的。
-
IQ3_XS: 超低ビット量子化(3ビット)で極端なメモリ効率。
- 使用例: 超低メモリデバイス向け(Q4_Kでも大きすぎる場合)。
- トレードオフ: 高ビット量子化より精度が低い。
-
IQ3_S: 最大のメモリ効率のために小さいブロックサイズ。
- 使用例: IQ3_XSが過剰な低メモリデバイス向け。
-
IQ3_M: IQ3_Sより精度を向上させる中ブロックサイズ。
- 使用例: IQ3_Sが制限となる低メモリデバイス向け。
-
Q4_K: 4ビット量子化でブロック単位最適化により精度向上。
- 使用例: Q6_Kが大きすぎる低メモリデバイス向け。
-
Q4_0: 純粋な4ビット量子化、ARMデバイス向けに最適化。
- 使用例: ARMベースデバイスや低メモリ環境向け。
モデルフォーマット選択の概要表
モデルフォーマット |
精度 |
メモリ使用量 |
デバイス要件 |
最適な使用例 |
BF16 |
最高 |
高 |
BF16対応GPU/CPU |
メモリ削減した高速推論 |
F16 |
高 |
高 |
FP16対応デバイス |
BF16が利用できないGPU推論 |
Q4_K |
中〜低 |
低 |
CPUまたは低VRAMデバイス |
メモリ制約が厳しい環境向け |
Q6_K |
中 |
中 |
メモリ豊富なCPU |
量子化モデルの中でも精度重視 |
Q8_0 |
高 |
中 |
VRAMが十分なCPU/GPU |
量子化モデル中最も高精度 |
IQ3_XS |
非常に低 |
非常に低 |
超低メモリデバイス |
極端なメモリ効率と低精度 |
Q4_0 |
低 |
低 |
ARMまたは低メモリデバイス |
llama.cppがARMデバイス向けに最適化 |
含まれるファイルと詳細
all-MiniLM-L6-v2-bf16.gguf
- モデル重みをBF16で保持。
- 別のフォーマットに再量子化する場合に使用。
- BF16アクセラレーションをサポートするデバイスに最適。
all-MiniLM-L6-v2-f16.gguf
- モデル重みをF16で保持。
- FP16をサポートするがBF16が利用できないデバイス向け。
all-MiniLM-L6-v2-bf16-q8_0.gguf
- 出力&埋め込みはBF16のまま。
- その他の層はQ8_0に量子化。
- BF16をサポートしつつ量子化版が必要な場合に使用。
all-MiniLM-L6-v2-f16-q8_0.gguf
- 出力&埋め込みはF16のまま。
- その他の層はQ8_0に量子化。
all-MiniLM-L6-v2-q4_k.gguf
- 出力&埋め込みはQ8_0に量子化。
- その他の層はQ4_Kに量子化。
- メモリ制約のあるCPU推論に適している。
all-MiniLM-L6-v2-q4_k_s.gguf
- 最小のQ4_Kバリアント、精度を犠牲にメモリ使用量を削減。
- 非常に低メモリ環境向け。
all-MiniLM-L6-v2-q6_k.gguf
- 出力&埋め込みはQ8_0に量子化。
- その他の層はQ6_Kに量子化。
all-MiniLM-L6-v2-q8_0.gguf
- 完全なQ8量子化モデルで高精度を実現。
- より多くのメモリを必要とするが高精度。
all-MiniLM-L6-v2-iq3_xs.gguf
- IQ3_XS量子化、極端なメモリ効率を最適化。
- 超低メモリデバイス向け。
all-MiniLM-L6-v2-iq3_m.gguf
- IQ3_M量子化、中ブロックサイズで精度向上。
- 低メモリデバイスに適している。
all-MiniLM-L6-v2-q4_0.gguf
- 純粋なQ4_0量子化、ARMデバイス向けに最適化。
- 低メモリ環境向け。
- より高精度なIQ4_NLを推奨。
🚀 これらのモデルが役立った場合
「いいね」❤をクリックしてください。また、Network Monitor Assistantで私のネットワーク監視アシスタントをテストしていただけると大変嬉しいです。
💬 チャットアイコン(メインページとダッシュボードの右下)をクリックし、LLMを選択してください。TurboLLM -> FreeLLM -> TestLLMの間で切り替えられます。
現在テスト中の内容
ネットワーク監視サービスに対する関数呼び出しを実験中です。小さなオープンソースモデルを使用しています。「どれだけ小さくても機能するか」という疑問に取り組んでいます。
🟡 TestLLM – llama.cppを使用し、CPU VMの6スレッドで現在のテストモデルを実行(約15秒でロード。推論速度は遅く、一度に1つのユーザープロンプトのみ処理可能—スケーリングは作業中です!)。興味があれば、その仕組みを共有します!
その他の利用可能なAIアシスタント
🟢 TurboLLM – gpt-4o-miniを使用し高速!注意: OpenAIモデルは高価なためトークンに制限あり。ただし、ログインまたは無料ネットワーク監視エージェントをダウンロードすると追加トークンを獲得可能。またはTestLLMを使用。
🔵 HugLLM – オープンソースのHugging Faceモデル(約8B)を実行し高速だが品質は低め。Hugging Face APIの可用性に依存し、2倍のトークンを獲得可能。