モデル概要
モデル特徴
モデル能力
使用事例
🚀 SauerkrautLM Mixtral 8X7B
SauerkrautLM Mixtral 8X7B は、Mixtral アーキテクチャに基づくモデルで、複数の言語をサポートし、テキスト生成タスクに使用できます。SFT と DPO の微調整とアライメントが行われており、良好な性能を備えています。
🚀 クイックスタート
このセクションでは、SauerkrautLM Mixtral 8X7B モデルの基本情報、使用方法、および関連する注意事項について説明します。
✨ 主な機能
- 多言語サポート:英語、ドイツ語、フランス語、イタリア語、およびスペイン語をサポートします。
- 微調整アライメント:SFT と DPO による微調整とアライメントが行われ、モデルの性能が向上しています。
- 複数の量子化形式:複数の量子化形式のファイルが提供されており、必要に応じて選択できます。
📦 インストール
GGUF ファイルのダウンロード
手動ダウンロードの注意事項:ほとんどの場合、レポジトリ全体をクローンする必要はありません!複数の異なる量子化形式が提供されており、ほとんどのユーザーは単一のファイルを選択してダウンロードするだけです。
以下のクライアント/ライブラリは、自動的にモデルをダウンロードし、利用可能なモデルのリストを提供します。
- LM Studio
- LoLLMS Web UI
- Faraday.dev
text-generation-webui
でのダウンロード
「Download Model」の下で、モデルレポジトリのアドレスを入力します:TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF。そして、下にダウンロードする具体的なファイル名を入力します。例えば:sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf。最後に「Download」をクリックします。
コマンドラインでのダウンロード(複数のファイルを同時にダウンロードできます)
huggingface-hub
Python ライブラリの使用をおすすめします。
pip3 install huggingface-hub
次に、以下のコマンドを使用して、任意の単一のモデルファイルを現在のディレクトリに高速でダウンロードできます。
huggingface-cli download TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
より高度な huggingface-cli のダウンロード方法(クリックして表示)
ワイルドカードを使用して、複数のファイルを同時にダウンロードすることもできます。
huggingface-cli download TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF --local-dir . --local-dir-use-symlinks False --include='*Q4_K*gguf'
huggingface-cli
を使用したダウンロードに関する詳細なドキュメントは、HF -> Hub Python Library -> Download files -> Download from the CLI を参照してください。
高速接続(1Gbit/s 以上)でダウンロードを高速化するには、hf_transfer
をインストールします。
pip3 install hf_transfer
そして、環境変数 HF_HUB_ENABLE_HF_TRANSFER
を 1
に設定します。
HF_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
Windows コマンドラインのユーザーは、ダウンロードコマンドの前に set HF_HUB_ENABLE_HF_TRANSFER=1
を実行して、環境変数を設定できます。
💻 使用例
基本的な使用法
llama.cpp
のコマンド例
2023 年 8 月 27 日以降の llama.cpp
バージョン(コミット ID d0cee0d 以降)を使用することを確認してください。
./main -ngl 35 -m sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf --color -c 32768 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "<|im_start|>system\n{system_message}<|im_end|>\n<|im_start|>user\n{prompt}<|im_end|>\n<|im_start|>assistant"
-ngl 32
:GPU にオフロードするレイヤー数に変更します。GPU 加速がない場合は、このパラメーターを削除してください。-c 32768
:必要なシーケンス長に変更します。拡張シーケンスモデル(8K、16K、32K など)の場合、必要な RoPE スケーリングパラメーターは GGUF ファイルから読み取られ、llama.cpp によって自動的に設定されます。ただし、より長いシーケンス長はより多くのリソースを必要とするため、この値を小さくする必要がある場合があります。
チャット形式の対話を行いたい場合は、-p <PROMPT>
パラメーターを -i -ins
に置き換えます。
その他のパラメーターとその使用方法については、llama.cpp ドキュメント を参照してください。
text-generation-webui
での実行
詳細な説明は、text-generation-webui のドキュメント text-generation-webui/docs/04 ‐ Model Tab.md で見つけることができます。
Python コードからの実行
llama-cpp-python または ctransformers ライブラリを使用して、Python コードから GGUF モデルを使用できます。ただし、2023 年 11 月 27 日現在、ctransformers はしばらく更新されておらず、一部の最新モデルと互換性がない可能性があるため、llama-cpp-python の使用をおすすめします。
llama-cpp-python パッケージのインストール
システムに応じて、以下のコマンドのいずれかを実行します。
# GPU 加速なしの基本的な ctransformers
pip install llama-cpp-python
# NVidia CUDA 加速をサポート
CMAKE_ARGS="-DLLAMA_CUBLAS=on" pip install llama-cpp-python
# OpenBLAS 加速をサポート
CMAKE_ARGS="-DLLAMA_BLAS=ON -DLLAMA_BLAS_VENDOR=OpenBLAS" pip install llama-cpp-python
# CLBLast 加速をサポート
CMAKE_ARGS="-DLLAMA_CLBLAST=on" pip install llama-cpp-python
# AMD ROCm GPU 加速をサポート(Linux のみ)
CMAKE_ARGS="-DLLAMA_HIPBLAS=on" pip install llama-cpp-python
# macOS システムの Metal GPU 加速をサポート
CMAKE_ARGS="-DLLAMA_METAL=on" pip install llama-cpp-python
# Windows の PowerShell で CMAKE_ARGS 変数を設定する場合、例えば NVidia CUDA の場合
$env:CMAKE_ARGS = "-DLLAMA_OPENBLAS=on"
pip install llama-cpp-python
簡単な llama-cpp-python のサンプルコード
from llama_cpp import Llama
# GPU にオフロードするレイヤー数を設定します。システムに GPU 加速がない場合は、0 に設定します。
llm = Llama(
model_path="./sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf", # まずモデルファイルをダウンロードしてください
n_ctx=32768, # 使用する最大シーケンス長 - 注意:より長いシーケンス長はより多くのリソースを必要とします
n_threads=8, # 使用する CPU スレッド数。システムと性能に合わせて調整してください
n_gpu_layers=35 # GPU 加速がある場合は、GPU にオフロードするレイヤー数を設定します
)
# 簡単な推論の例
output = llm(
"<|im_start|>system\n{system_message}<|im_end|>\n<|im_start|>user\n{prompt}<|im_end|>\n<|im_start|>assistant", # プロンプトメッセージ
max_tokens=512, # 最大 512 トークンを生成
stop=["</s>"], # 例の停止トークン - この特定のモデルに必ずしも適用されるとは限りません!使用前に確認してください
echo=True # プロンプトメッセージをエコーするかどうか
)
# チャット完了 API
llm = Llama(model_path="./sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf", chat_format="llama-2") # 使用するモデルに合わせてチャット形式を設定します
llm.create_chat_completion(
messages = [
{"role": "system", "content": "You are a story writing assistant."},
{
"role": "user",
"content": "Write a story about llamas."
}
]
)
高度な使用法
LangChain との組み合わせ使用
以下は、llama-cpp-python と ctransformers を LangChain と組み合わせて使用するガイドです。
📚 ドキュメント
モデル情報
属性 | 詳細 |
---|---|
モデル作成者 | VAGO solutions |
モデル名 | SauerkrautLM Mixtral 8X7B |
モデルタイプ | mixtral |
パイプラインラベル | text-generation |
ベースモデル | VAGOsolutions/SauerkrautLM-Mixtral-8x7B |
学習データセット | Open-Orca/SlimOrca、argilla/distilabel-math-preference-dpo |
推論 | false |
サポート言語 | 英語、ドイツ語、フランス語、イタリア語、スペイン語 |
ライブラリ名 | transformers |
ライセンス | apache-2.0 |
量子化者 | TheBloke |
ラベル | mistral、finetune、sft、dpo、chatml、augmentation、german、mixtral |
プロンプトテンプレート
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
利用可能なレポジトリ
- GPU 推論用の AWQ モデル
- GPU 推論用の GPTQ モデル(複数の量子化パラメータオプションあり)
- CPU+GPU 推論用の 2、3、4、5、6、および 8 ビットの GGUF モデル
- VAGO solutions のオリジナルの未量子化の fp16 形式の PyTorch モデル(GPU 推論とさらなる変換用)
互換性
これらの量子化された GGUFv2 ファイルは、2023 年 8 月 27 日以降の llama.cpp(コミット ID d0cee0d)と互換性があります。
また、多くのサードパーティの UI やライブラリとも互換性があります - この README の上部のリストを参照してください。
量子化方法の説明
詳細を表示するにはクリック
新しい利用可能な方法は以下の通りです。 - GGML_TYPE_Q2_K:「type-1」の 2 ビット量子化。スーパーブロックは 16 個のブロックを含み、各ブロックには 16 個の重みがあります。ブロックのスケーリングファクターと最小値は 4 ビットで量子化されます。最終的には、各重みに有効に 2.5625 ビット(bpw)が使用されます。 - GGML_TYPE_Q3_K:「type-0」の 3 ビット量子化。スーパーブロックは 16 個のブロックを含み、各ブロックには 16 個の重みがあります。スケーリングファクターは 6 ビットで量子化されます。最終的には 3.4375 bpw が使用されます。 - GGML_TYPE_Q4_K:「type-1」の 4 ビット量子化。スーパーブロックは 8 個のブロックを含み、各ブロックには 32 個の重みがあります。スケーリングファクターと最小値は 6 ビットで量子化されます。最終的には 4.5 bpw が使用されます。 - GGML_TYPE_Q5_K:「type-1」の 5 ビット量子化。GGML_TYPE_Q4_K と同じスーパーブロック構造を持ち、最終的には 5.5 bpw が使用されます。 - GGML_TYPE_Q6_K:「type-0」の 6 ビット量子化。スーパーブロックには 16 個のブロックがあり、各ブロックには 16 個の重みがあります。スケーリングファクターは 8 ビットで量子化されます。最終的には 6.5625 bpw が使用されます。どのファイルがどの方法を使用しているか、およびその使用方法については、以下の「提供されるファイル」の表を参照してください。
提供されるファイル
名前 | 量子化方法 | ビット数 | サイズ | 必要な最大 RAM | 使用シーン |
---|---|---|---|---|---|
sauerkrautlm-mixtral-8x7b.Q2_K.gguf | Q2_K | 2 | 15.64 GB | 18.14 GB | 最小ですが、品質の損失が顕著です - ほとんどのシーンでは推奨されません |
sauerkrautlm-mixtral-8x7b.Q3_K_M.gguf | Q3_K_M | 3 | 20.36 GB | 22.86 GB | 非常に小さいですが、品質の損失が大きいです |
sauerkrautlm-mixtral-8x7b.Q4_0.gguf | Q4_0 | 4 | 26.44 GB | 28.94 GB | 旧バージョン;小さいですが、品質の損失が非常に大きいです - Q3_K_M の使用をおすすめします |
sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf | Q4_K_M | 4 | 26.44 GB | 28.94 GB | 中程度で、品質がバランスしています - 推奨 |
sauerkrautlm-mixtral-8x7b.Q5_0.gguf | Q5_0 | 5 | 32.23 GB | 34.73 GB | 旧バージョン;中程度で、品質がバランスしています - Q4_K_M の使用をおすすめします |
sauerkrautlm-mixtral-8x7b.Q5_K_M.gguf | Q5_K_M | 5 | 32.23 GB | 34.73 GB | 大きいですが、品質の損失が非常に少ないです - 推奨 |
sauerkrautlm-mixtral-8x7b.Q6_K.gguf | Q6_K | 6 | 38.38 GB | 40.88 GB | 非常に大きいですが、品質の損失が極めて少ないです |
sauerkrautlm-mixtral-8x7b.Q8_0.gguf | Q8_0 | 8 | 49.62 GB | 52.12 GB | 非常に大きいですが、品質の損失が極めて少ないです - 推奨されません |
注意:上記の RAM 数値は、GPU へのオフロードが行われていないことを前提としています。レイヤーを GPU にオフロードすると、RAM 使用量が減少し、代わりに VRAM が使用されます。
🔧 技術詳細
GGUF は、llama.cpp チームによって 2023 年 8 月 21 日に導入された新しい形式で、GGML の代替品です。GGML はもはや llama.cpp でサポートされていません。
以下は、GGUF をサポートする既知のクライアントとライブラリの不完全なリストです。
- llama.cpp:GGUF のソースプロジェクトで、CLI とサーバーオプションを提供します。
- text-generation-webui:最も広く使用されている Web UI で、多くの機能と強力な拡張機能を備え、GPU 加速をサポートします。
- KoboldCpp:機能が充実した Web UI で、すべてのプラットフォームと GPU アーキテクチャの GPU 加速をサポートし、特に物語作成に適しています。
- GPT4All:無料でオープンソースのローカル実行 GUI で、Windows、Linux、および macOS をサポートし、全 GPU 加速を備えています。
- LM Studio:Windows と macOS(Silicon)に適した使いやすく強力なローカル GUI で、GPU 加速をサポートします。2023 年 11 月 27 日現在、Linux バージョンはテスト段階です。
- LoLLMS Web UI:多くの面白く独特な機能を備えた素晴らしい Web UI で、完全なモデルライブラリを含み、モデルの選択が容易です。
- Faraday.dev:魅力的で使いやすいロールベースのチャット GUI で、Windows と macOS(Silicon および Intel)に対応し、GPU 加速をサポートします。
- llama-cpp-python:GPU 加速、LangChain サポート、および OpenAI 互換 API サーバーをサポートする Python ライブラリです。
- candle:性能に重点を置いた Rust ML フレームワークで、GPU サポートを含み、使いやすいです。
- ctransformers:GPU 加速、LangChain サポート、および OpenAI 互換 AI サーバーをサポートする Python ライブラリです。ただし、2023 年 11 月 27 日現在、ctransformers はしばらく更新されておらず、多くの最新モデルをサポートしていません。
📄 ライセンス
このモデルは apache-2.0 ライセンスで提供されています。
その他の情報
Discord
さらなるサポートや、これらのモデルや人工知能関連のトピックについて議論するには、TheBloke AI の Discord サーバー に参加してください。
謝辞と貢献方法
chirper.ai チームに感謝します!gpus.llm-utils.org の Clay にも感謝します!
多くの人から貢献の方法を尋ねられています。私は喜んでモデルを提供し、皆さんのお手伝いをしたいと思っています。また、これらのことや、微調整/学習などの新しいプロジェクトをもっと時間をかけて行いたいと思っています。
もし貢献する能力と意欲がある方がいらっしゃれば、大変感謝します。これにより、私はさらに多くのモデルを提供し、新しい人工知能プロジェクトを進めることができます。
寄付者は、すべての AI/LLM/モデルに関する問題やリクエストに対して優先的なサポートを受け、プライベートな Discord ルームへのアクセスや、その他の特典を享受することができます。
- Patreon:https://patreon.com/TheBlokeAI
- Ko-Fi:https://ko-fi.com/TheBlokeAI
特別な感謝:Aemon Algiz。
Patreon での特別な言及:Michael Levine、阿明、Trailburnt、Nikolai Manek、John Detwiler、Randy H、Will Dee、Sebastain Graf、NimbleBox.ai、Eugene Pentland、Emad Mostaque、Ai Maven、Jim Angel、Jeff Scroggin、Michael Davis、Manuel Alberto Morcote、Stephen Murray、Robert、Justin Joy、Luke @flexchar、Brandon Frisco、Elijah Stavena、S_X、Dan Guido、Undi.、Komninos Chatzipapas、Shadi、theTransient、Lone Striker、Raven Klaugh、jjj、Cap'n Zoog、Michel-Marie MAUDET (LINAGORA)、Matthew Berman、David、Fen Risland、Omer Bin Jawed、Luke Pendergrass、Kalila、OG、Erik Bjäreholt、Rooh Singh、Joseph William Delisle、Dan Lewis、TL、John Villwock、AzureBlack、Brad、Pedro Madruga、Caitlyn Gatomon、K、jinyuan sun、Mano Prime、Alex、Jeffrey Morgan、Alicia Loh、Illia Dulskyi、Chadd、transmissions 11、fincy、Rainer Wilmers、ReadyPlayerEmma、knownsqashed、Mandus、biorpg、Deo Leter、Brandon Phillips、SuperWojo、Sean Connelly、Iucharbius、Jack West、Harry Royden McLaughlin、Nicholas、terasurfer、Vitor Caleffi、Duane Dunston、Johann-Peter Hartmann、David Ziegler、Olakabola、Ken Nordquist、Trenton Dambrowitz、Tom X Nguyen、Vadim、Ajan Kanaga、Leonard Tan、Clay Pascal、Alexandros Triantafyllidis、JM33133、Xule、vamX、ya boyyy、subjectnull、Talal Aujan、Alps Aficionado、wassieverse、Ari Malik、James Bentley、Woland、Spencer Kim、Michael Dempsey、Fred von Graf、Elle、zynix、William Richards、Stanislav Ovsiannikov、Edmond Seymore、Jonathan Leane、Martin Kemka、usrbinkat、Enrico Ros
すべての寛大なスポンサーや寄付者に感謝します!もう一度 a16z の寛大な支援に感謝します。



