モデル概要
モデル特徴
モデル能力
使用事例
🚀 Pygmalion 2 7B - GGUF
このモデルは、テキスト生成タスクに特化したモデルで、特定のトークンを用いたプロンプト形式で学習されています。多様なクライアントやライブラリでの利用が可能です。
🚀 クイックスタート
このリポジトリには、PygmalionAIのPygmalion 2 7B のGGUF形式のモデルファイルが含まれています。以下に、このモデルの概要や使い方を説明します。

TheBlokeのLLM関連の作業は、andreessen horowitz (a16z) からの助成金によって支援されています。
- モデル作成者: PygmalionAI
- ベースモデル: Pygmalion 2 7B
✨ 主な機能
- テキスト生成タスクに特化したモデルです。
- 3つの異なるロールを表すトークン (
<|system|>
,<|user|>
,<|model|>
) を用いたプロンプト形式で学習されています。 - 多様なクライアントやライブラリでの利用が可能です。
📦 インストール
GGUFファイルのダウンロード方法
手動でダウンロードする方への注意: 通常、リポジトリ全体をクローンする必要はありません!複数の異なる量子化形式が提供されており、ほとんどのユーザーは1つのファイルを選んでダウンロードするだけです。
以下のクライアントやライブラリは、利用可能なモデルのリストを提供し、自動的にモデルをダウンロードします。
- LM Studio
- LoLLMS Web UI
- Faraday.dev
text-generation-webui
でのダウンロード方法
「Download Model」の下で、モデルリポジトリ TheBloke/Pygmalion-2-7B-GGUF
を入力し、その下にダウンロードする具体的なファイル名(例: pygmalion-2-7b.q4_K_M.gguf
)を入力して、「Download」をクリックします。
コマンドラインでのダウンロード方法
huggingface-hub
Pythonライブラリを使用することをおすすめします。
pip3 install huggingface-hub>=0.17.1
次に、以下のようなコマンドで任意のモデルファイルを高速で現在のディレクトリにダウンロードできます。
huggingface-cli download TheBloke/Pygmalion-2-7B-GGUF pygmalion-2-7b.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
huggingface-cliの高度なダウンロード方法
パターンを指定して複数のファイルを一度にダウンロードすることもできます。
huggingface-cli download TheBloke/Pygmalion-2-7B-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
に設定します。
HUGGINGFACE_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download TheBloke/Pygmalion-2-7B-GGUF pygmalion-2-7b.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
Windowsのコマンドラインユーザーは、ダウンロードコマンドを実行する前に set HUGGINGFACE_HUB_ENABLE_HF_TRANSFER=1
を実行してください。
💻 使用例
llama.cppでの実行例
llama.cpp
を d0cee0d36d5be95a0d9088b674dbb27354107221 以降のコミットを使用していることを確認してください。
./main -ngl 32 -m pygmalion-2-7b.q4_K_M.gguf --color -c 4096 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "<|system|>Enter RP mode. Pretend to be {{char}} whose persona follows:\n{{persona}}\n\nYou shall reply to the user while staying in character, and generate long responses."
-ngl 32
をGPUにオフロードするレイヤー数に変更します。GPUアクセラレーションがない場合は削除してください。-c 4096
を希望するシーケンス長に変更します。拡張シーケンスモデル(例: 8K, 16K, 32K)の場合は、必要なRoPEスケーリングパラメータがGGUFファイルから読み取られ、llama.cppによって自動的に設定されます。- チャットスタイルの会話を行いたい場合は、
-p <PROMPT>
引数を-i -ins
に置き換えます。
その他のパラメータや使い方については、llama.cppのドキュメント を参照してください。
text-generation-webuiでの実行方法
詳細な手順は text-generation-webui/docs/llama.cpp.md を参照してください。
Pythonコードからの実行方法
llama-cpp-python または ctransformers ライブラリを使用して、PythonからGGUFモデルを使用できます。
ctransformersを使用してこのモデルをPythonからロードする方法
まずパッケージをインストールします
# GPUアクセラレーションなしの基本的なctransformers
pip install ctransformers>=0.2.24
# またはCUDA GPUアクセラレーション付き
pip install ctransformers[cuda]>=0.2.24
# またはROCm GPUアクセラレーション付き
CT_HIPBLAS=1 pip install ctransformers>=0.2.24 --no-binary ctransformers
# またはmacOSシステムのMetal GPUアクセラレーション付き
CT_METAL=1 pip install ctransformers>=0.2.24 --no-binary ctransformers
これらのGGUFモデルの1つをロードする簡単なコード例
from ctransformers import AutoModelForCausalLM
# gpu_layersをGPUにオフロードするレイヤー数に設定します。システムでGPUアクセラレーションが利用できない場合は0に設定します。
llm = AutoModelForCausalLM.from_pretrained("TheBloke/Pygmalion-2-7B-GGUF", model_file="pygmalion-2-7b.q4_K_M.gguf", model_type="llama", gpu_layers=50)
print(llm("AI is going to"))
📚 ドキュメント
プロンプトテンプレート: カスタム
このモデルは、3つの異なるロールを表すトークン (<|system|>
, <|user|>
, <|model|>
) を用いたプロンプト形式で学習されています。
<|system|>
プロンプトは、背景情報を注入するために使用でき、<|user|>
プロンプトはユーザー入力を示すために使用します。<|model|>
トークンは、モデルが応答を生成することを示すために使用します。これらのトークンは複数回出現し、会話履歴を形成するために連鎖させることができます。
システムプロンプトは、モデルが様々なモードに「入る」ことを可能にし、応答の長さを指定するように設計されています。以下はその例です。
<|system|>Enter RP mode. Pretend to be {{char}} whose persona follows:
{{persona}}
You shall reply to the user while staying in character, and generate long responses.
互換性
これらの量子化されたGGUFv2ファイルは、8月27日以降のllama.cpp(d0cee0d36d5be95a0d9088b674dbb27354107221 のコミット)と互換性があります。また、多くのサードパーティのUIやライブラリとも互換性があります。詳細はこのREADMEの上部のリストを参照してください。
量子化方法の説明
詳細を表示するにはクリック
利用可能な新しい方法は以下の通りです。
- 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が使用されます。
どのファイルがどの方法を使用しているか、およびその方法については、以下の「提供されるファイル」表を参照してください。
提供されるファイル
名前 | 量子化方法 | ビット数 | サイズ | 必要な最大RAM | 使用ケース |
---|---|---|---|---|---|
pygmalion-2-7b.Q2_K.gguf | Q2_K | 2 | 2.83 GB | 5.33 GB | 最も小さいが、品質が大幅に低下する - ほとんどの目的には推奨されません |
pygmalion-2-7b.Q3_K_S.gguf | Q3_K_S | 3 | 2.95 GB | 5.45 GB | 非常に小さいが、品質が大きく低下する |
pygmalion-2-7b.Q3_K_M.gguf | Q3_K_M | 3 | 3.30 GB | 5.80 GB | 非常に小さいが、品質が大きく低下する |
pygmalion-2-7b.Q3_K_L.gguf | Q3_K_L | 3 | 3.60 GB | 6.10 GB | 小さいが、品質が大幅に低下する |
pygmalion-2-7b.Q4_0.gguf | Q4_0 | 4 | 3.83 GB | 6.33 GB | レガシー; 小さいが、品質が非常に大きく低下する - Q3_K_Mを使用することを推奨 |
pygmalion-2-7b.Q4_K_S.gguf | Q4_K_S | 4 | 3.86 GB | 6.36 GB | 小さいが、品質が大きく低下する |
pygmalion-2-7b.Q4_K_M.gguf | Q4_K_M | 4 | 4.08 GB | 6.58 GB | 中程度で、バランスの良い品質 - 推奨 |
pygmalion-2-7b.Q5_0.gguf | Q5_0 | 5 | 4.65 GB | 7.15 GB | レガシー; 中程度で、バランスの良い品質 - Q4_K_Mを使用することを推奨 |
pygmalion-2-7b.Q5_K_S.gguf | Q5_K_S | 5 | 4.65 GB | 7.15 GB | 大きいが、品質の低下が少ない - 推奨 |
pygmalion-2-7b.Q5_K_M.gguf | Q5_K_M | 5 | 4.78 GB | 7.28 GB | 大きいが、品質の低下が非常に少ない - 推奨 |
pygmalion-2-7b.Q6_K.gguf | Q6_K | 6 | 5.53 GB | 8.03 GB | 非常に大きいが、品質の低下が極めて少ない |
pygmalion-2-7b.Q8_0.gguf | Q8_0 | 8 | 7.16 GB | 9.66 GB | 非常に大きいが、品質の低下が極めて少ない - 推奨されません |
注意: 上記のRAM数値は、GPUオフロードを行わない場合を想定しています。レイヤーをGPUにオフロードすると、RAMの使用量が減少し、代わりにVRAMが使用されます。
🔧 技術詳細
モデルの基本情報
属性 | 詳情 |
---|---|
モデルタイプ | llama |
学習データ | PygmalionAI/PIPPA、Open-Orca/OpenOrca、Norquinal/claude_multiround_chat_30k、jondurbin/airoboros-gpt4-1.4.1、databricks/databricks-dolly-15k |
GGUF形式について
GGUFは、2023年8月21日にllama.cppチームによって導入された新しい形式です。これはGGMLの代替形式であり、現在ではllama.cppではGGMLがサポートされなくなっています。GGUFはGGMLに比べて多くの利点があり、例えば、より良いトークン化や特殊トークンのサポートがあります。また、メタデータをサポートし、拡張性を持つように設計されています。
以下は、GGUFをサポートすることが知られているクライアントやライブラリの不完全なリストです。
- llama.cpp。GGUFのソースプロジェクトです。CLIとサーバーオプションを提供します。
- text-generation-webui、最も広く使用されているウェブUIで、多くの機能と強力な拡張機能があります。GPUアクセラレーションをサポートしています。
- KoboldCpp、完全な機能を持つウェブUIで、すべてのプラットフォームとGPUアーキテクチャでGPUアクセラレーションが可能です。特にストーリーテリングに適しています。
- LM Studio、WindowsとmacOS (Silicon) 用の使いやすく強力なローカルGUIで、GPUアクセラレーションがあります。
- LoLLMS Web UI、多くの興味深い独自の機能を持つ素晴らしいウェブUIで、モデルの選択が容易な完全なモデルライブラリがあります。
- Faraday.dev、WindowsとmacOS (SiliconとIntelの両方) 用の魅力的で使いやすいキャラクターベースのチャットGUIで、GPUアクセラレーションがあります。
- ctransformers、GPUアクセラレーション、LangChainサポート、およびOpenAI互換のAIサーバーを備えたPythonライブラリです。
- llama-cpp-python、GPUアクセラレーション、LangChainサポート、およびOpenAI互換のAPIサーバーを備えたPythonライブラリです。
- candle、パフォーマンスに重点を置いたRustのMLフレームワークで、GPUサポートと使いやすさを備えています。
📄 ライセンス
このモデルは、Llama 2のライセンスに基づいて提供されています。



