🚀 Openhermes 2.5 Mistral 7B - GPTQ
このモデルは、Tekniumによって作成されたOpenHermes-2.5-Mistral-7BのGPTQモデルファイルを提供します。複数のGPTQパラメータのパーミュテーションが用意されており、ハードウェアと要件に合わせて最適なものを選択できます。
🚀 クイックスタート
このセクションでは、Openhermes 2.5 Mistral 7B - GPTQモデルの基本的な使い方を説明します。
✨ 主な機能
- 複数のGPTQパラメータを提供し、ハードウェアと要件に合わせて最適なものを選択できます。
- 複数の推論サーバー/ウェブUIで動作することが知られています。
📦 インストール
text-generation-webuiでのダウンロード
main
ブランチからダウンロードするには、「Download model」ボックスにTheBloke/OpenHermes-2.5-Mistral-7B-GPTQ
を入力します。
- 別のブランチからダウンロードするには、ダウンロード名の末尾に
:branchname
を追加します。例えば、TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ:gptq-4bit-32g-actorder_True
コマンドラインからのダウンロード
huggingface-hub
Pythonライブラリを使用することをお勧めします。
pip3 install huggingface-hub
main
ブランチをOpenHermes-2.5-Mistral-7B-GPTQ
というフォルダにダウンロードするには:
mkdir OpenHermes-2.5-Mistral-7B-GPTQ
huggingface-cli download TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ --local-dir OpenHermes-2.5-Mistral-7B-GPTQ --local-dir-use-symlinks False
別のブランチからダウンロードするには、--revision
パラメータを追加します:
mkdir OpenHermes-2.5-Mistral-7B-GPTQ
huggingface-cli download TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ --revision gptq-4bit-32g-actorder_True --local-dir OpenHermes-2.5-Mistral-7B-GPTQ --local-dir-use-symlinks False
git
を使用する場合(推奨しません)
特定のブランチをgit
でクローンするには、次のようなコマンドを使用します:
git clone --single-branch --branch gptq-4bit-32g-actorder_True https://huggingface.co/TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ
💻 使用例
text-generation-webuiでの使用方法
- Modelタブをクリックします。
- Download custom model or LoRAの下に、
TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ
を入力します。
- 特定のブランチからダウンロードするには、例えば
TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ:gptq-4bit-32g-actorder_True
のように入力します。
- Downloadをクリックします。
- モデルのダウンロードが開始されます。完了すると「Done」と表示されます。
- 左上のModelの横にある更新アイコンをクリックします。
- Modelのドロップダウンで、先ほどダウンロードしたモデル
OpenHermes-2.5-Mistral-7B-GPTQ
を選択します。
- モデルが自動的にロードされ、使用可能になります。
- カスタム設定が必要な場合は、設定を行ってから右上のSave settings for this modelをクリックし、続いてReload the Modelをクリックします。
- 準備ができたら、Text Generationタブをクリックしてプロンプトを入力し、開始します。
Text Generation Inference (TGI)からのモデルの提供
TGIバージョン1.1.0以降を使用することをお勧めします。公式のDockerコンテナはghcr.io/huggingface/text-generation-inference:1.1.0
です。
例のDockerパラメータ:
--model-id TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ --port 3000 --quantize gptq --max-input-length 3696 --max-total-tokens 4096 --max-batch-prefill-tokens 4096
TGIとやり取りするための例のPythonコード(huggingface-hub 0.17.0以降が必要):
pip3 install huggingface-hub
from huggingface_hub import InferenceClient
endpoint_url = "https://your-endpoint-url-here"
prompt = "Tell me about AI"
prompt_template=f'''<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
'''
client = InferenceClient(endpoint_url)
response = client.text_generation(prompt,
max_new_tokens=128,
do_sample=True,
temperature=0.7,
top_p=0.95,
top_k=40,
repetition_penalty=1.1)
print(f"Model output: {response}")
PythonコードからのGPTQモデルの使用方法
必要なパッケージをインストールします。
pip3 install transformers optimum
pip3 install auto-gptq --extra-index-url https://huggingface.github.io/autogptq-index/whl/cu118/ # Use cu117 if on CUDA 11.7
AutoGPTQを事前構築されたホイールを使用してインストールする際に問題がある場合は、ソースからインストールしてください:
pip3 uninstall -y auto-gptq
git clone https://github.com/PanQiWei/AutoGPTQ
cd AutoGPTQ
git checkout v0.4.2
pip3 install .
その後、次のコードを使用できます:
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
model_name_or_path = "TheBloke/OpenHermes-2.5-Mistral-7B-GPTQ"
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path)
model = AutoModelForCausalLM.from_pretrained(model_name_or_path, device_map="auto")
pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
prompt = "Tell me about AI"
prompt_template=f'''<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
'''
output = pipe(prompt_template, max_new_tokens=128, do_sample=True, temperature=0.7, top_p=0.95, top_k=40, repetition_penalty=1.1)
print(f"Model output: {output[0]['generated_text']}")
📚 ドキュメント
プロンプトテンプレート: ChatML
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
互換性のあるクライアント/サーバー
これらのGPTQモデルは、以下の推論サーバー/ウェブUIで動作することが知られています。
これは完全なリストではない可能性があります。他のものを知っている場合は、教えてください!
提供されるファイルとGPTQパラメータ
複数の量子化パラメータが提供されており、ハードウェアと要件に合わせて最適なものを選択できます。
各個別の量子化は異なるブランチにあります。異なるブランチから取得する方法については、以下を参照してください。
ほとんどのGPTQファイルはAutoGPTQで作成されています。Mistralモデルは現在、Transformersで作成されています。
GPTQパラメータの説明
- Bits: 量子化されたモデルのビットサイズ。
- GS: GPTQグループサイズ。数値が大きいほどVRAMの使用量が少なくなりますが、量子化精度が低下します。「None」は可能な最低値です。
- Act Order: TrueまたはFalse。
desc_act
とも呼ばれます。Trueの場合、より高い量子化精度が得られます。一部のGPTQクライアントでは、Act Orderとグループサイズを使用するモデルに問題がありましたが、現在は一般的に解決されています。
- Damp %: 量子化のためにサンプルが処理される方法に影響を与えるGPTQパラメータ。デフォルトは0.01ですが、0.1の方がわずかに精度が向上します。
- GPTQ dataset: 量子化中に使用されるキャリブレーションデータセット。モデルのトレーニングに適したデータセットを使用すると、量子化精度を向上させることができます。GPTQキャリブレーションデータセットは、モデルのトレーニングに使用されるデータセットとは異なることに注意してください。トレーニングデータセットの詳細については、元のモデルリポジトリを参照してください。
- Sequence Length: 量子化に使用されるデータセットシーケンスの長さ。理想的には、これはモデルのシーケンス長と同じです。一部の非常に長いシーケンスモデル(16+K)では、より短いシーケンス長を使用する必要がある場合があります。ただし、シーケンス長を短くすると、量子化されたモデルのシーケンス長が制限されるわけではありません。長い推論シーケンスでの量子化精度にのみ影響します。
- ExLlama Compatibility: このファイルがExLlamaでロードできるかどうか。現在、ExLlamaは4ビットのLlamaとMistralモデルのみをサポートしています。
🔧 技術詳細
このモデルは、Tekniumによって作成されたOpenHermes-2.5-Mistral-7Bをベースにしています。量子化は、Massed Computeによって提供されたハードウェアを使用して行われました。
📄 ライセンス
このモデルは、Apache 2.0ライセンスの下で提供されています。