モデル概要
モデル特徴
モデル能力
使用事例
🚀 Pygmalion 2 13B - GGUF
Pygmalion 2 13Bは、テキスト生成に特化したモデルです。このモデルは、様々なデータセットを用いて訓練され、特定のトークンを使ったプロンプト形式で応答を生成します。
🚀 クイックスタート
このモデルを使用するには、まずGGUF形式のモデルファイルをダウンロードします。その後、対応するクライアントやライブラリを使って推論を行います。
✨ 主な機能
- 多様なデータセットで訓練:Pygmalion 2 13Bは、PygmalionAI/PIPPA、Open-Orca/OpenOrcaなど複数のデータセットを用いて訓練されています。
- 特定のプロンプト形式:
<|system|>
、<|user|>
、<|model|>
というトークンを使ったプロンプト形式で応答を生成できます。 - 多くのクライアントやライブラリに対応:llama.cpp、text-generation-webui、KoboldCppなど多くのクライアントやライブラリで使用できます。
📦 インストール
GGUFファイルのダウンロード
手動でダウンロードする場合は、通常はリポジトリ全体をクローンする必要はありません。以下のクライアントやライブラリを使うと、自動的にモデルをダウンロードして選択できます。
- LM Studio
- LoLLMS Web UI
- Faraday.dev
text-generation-webuiでのダウンロード
Download Modelの下に、モデルリポジトリ TheBloke/Pygmalion-2-13B-GGUF
を入力し、その下にダウンロードする特定のファイル名(例:pygmalion-2-13b.q4_K_M.gguf
)を入力して、Downloadをクリックします。
コマンドラインでのダウンロード
huggingface-hub
Pythonライブラリを使うことをおすすめします。
pip3 install huggingface-hub>=0.17.1
その後、以下のコマンドで任意のモデルファイルを高速でダウンロードできます。
huggingface-cli download TheBloke/Pygmalion-2-13B-GGUF pygmalion-2-13b.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
💻 使用例
llama.cppでの実行例
llama.cpp
を d0cee0d36d5be95a0d9088b674dbb27354107221 以降のコミットを使っていることを確認してください。
./main -ngl 32 -m pygmalion-2-13b.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
に置き換えます。
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-13B-GGUF", model_file="pygmalion-2-13b.q4_K_M.gguf", model_type="llama")
📚 詳細ドキュメント
モデルの概要
このリポジトリには、PygmalionAIのPygmalion 2 13B のGGUF形式のモデルファイルが含まれています。
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サポートや使いやすさも考慮されています。
利用可能なリポジトリ
- GPU推論用のAWQモデル
- 複数の量子化パラメータオプションを持つGPU推論用のGPTQモデル
- CPU+GPU推論用の2、3、4、5、6、8ビットのGGUFモデル
- GPU推論とさらなる変換用の、PygmalionAIの元の量子化されていないfp16モデル(pytorch形式)
プロンプトテンプレート
このモデルは、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ファイルは、2023年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.4375bpwが使用されます。
- GGML_TYPE_Q4_K:8ブロックを含むスーパーブロックでの「タイプ1」の4ビット量子化。各ブロックには32の重みがあります。スケールと最小値は6ビットで量子化されます。これにより、4.5bpwが使用されます。
- GGML_TYPE_Q5_K:「タイプ1」の5ビット量子化。GGML_TYPE_Q4_Kと同じスーパーブロック構造で、5.5bpwになります。
- GGML_TYPE_Q6_K:「タイプ0」の6ビット量子化。16ブロックを含むスーパーブロックで、各ブロックには16の重みがあります。スケールは8ビットで量子化されます。これにより、6.5625bpwが使用されます。
どのファイルがどの方法を使用しているか、およびその方法については、以下の提供されるファイルの表を参照してください。
提供されるファイル
名前 | 量子化方法 | ビット数 | サイズ | 必要な最大RAM | 使用例 |
---|---|---|---|---|---|
pygmalion-2-13b.Q2_K.gguf | Q2_K | 2 | 5.43 GB | 7.93 GB | 最も小さいが、品質が大幅に低下する - ほとんどの目的には推奨されない |
pygmalion-2-13b.Q3_K_S.gguf | Q3_K_S | 3 | 5.66 GB | 8.16 GB | 非常に小さいが、品質が大幅に低下する |
pygmalion-2-13b.Q3_K_M.gguf | Q3_K_M | 3 | 6.34 GB | 8.84 GB | 非常に小さいが、品質が大幅に低下する |
pygmalion-2-13b.Q3_K_L.gguf | Q3_K_L | 3 | 6.93 GB | 9.43 GB | 小さいが、品質が大幅に低下する |
pygmalion-2-13b.Q4_0.gguf | Q4_0 | 4 | 7.37 GB | 9.87 GB | レガシー;小さいが、品質が非常に大幅に低下する - Q3_K_Mを使用することを推奨 |
pygmalion-2-13b.Q4_K_S.gguf | Q4_K_S | 4 | 7.41 GB | 9.91 GB | 小さいが、品質が大きく低下する |
pygmalion-2-13b.Q4_K_M.gguf | Q4_K_M | 4 | 7.87 GB | 10.37 GB | 中程度で、品質がバランスが良い - 推奨 |
pygmalion-2-13b.Q5_0.gguf | Q5_0 | 5 | 8.97 GB | 11.47 GB | レガシー;中程度で、品質がバランスが良い - Q4_K_Mを使用することを推奨 |
pygmalion-2-13b.Q5_K_S.gguf | Q5_K_S | 5 | 8.97 GB | 11.47 GB | 大きいが、品質の低下が少ない - 推奨 |
pygmalion-2-13b.Q5_K_M.gguf | Q5_K_M | 5 | 9.23 GB | 11.73 GB | 大きいが、品質の低下が非常に少ない - 推奨 |
pygmalion-2-13b.Q6_K.gguf | Q6_K | 6 | 10.68 GB | 13.18 GB | 非常に大きいが、品質の低下が極めて少ない |
pygmalion-2-13b.Q8_0.gguf | Q8_0 | 8 | 13.83 GB | 16.33 GB | 非常に大きいが、品質の低下が極めて少ない - 推奨されない |
注:上記のRAMの数値は、GPUオフロードがないことを前提としています。レイヤーがGPUにオフロードされると、RAMの使用量が減少し、代わりにVRAMが使用されます。
🔧 技術的詳細
- モデルの作成者:PygmalionAI
- モデルタイプ:llama
- 訓練データセット:
- PygmalionAI/PIPPA
- Open-Orca/OpenOrca
- Norquinal/claude_multiround_chat_30k
- jondurbin/airoboros-gpt4-1.4.1
- databricks/databricks-dolly-15k
📄 ライセンス
このモデルはLlama 2のライセンスに基づいています。



