BladeLLM は、コマンドライン文 blade_llm_quantize を使用してモデル量子化を実行します。量子化されたモデルは、BladeLLM で推論とデプロイに直接使用できます。このトピックでは、blade_llm_quantize でサポートされている構成パラメーターについて説明します。
使用例
BladeLLM は、コマンドライン文 blade_llm_quantize を実行することで、モデル量子化操作を実行します。コマンドの例は次のとおりです。
blade_llm_quantize \
--model Qwen/Qwen-7B-Chat \
--output_dir Qwen-7B-Chat-int8 \
--quant_algo minmax \
--quant_mode weight_only_quant \
--bit 8量子化されたモデルは、BladeLLM で推論とデプロイに直接使用できます。詳細については、「サービス デプロイ パラメーター」をご参照ください。
パラメーターの説明
blade_llm_quantize でサポートされているパラメーターは次のとおりです。
パラメーター | タイプ | 必須 | 説明 |
model | str | はい | 元の浮動小数点モデルが格納されているディレクトリ。 |
output_dir | str | はい | 量子化モデルを格納するディレクトリ。 |
bit | int | いいえ | 量子化ビット数。有効な値: [8, 4]。デフォルト値: 8。 |
quant_mode | str | いいえ | 量子化モード。有効な値:
|
quant_dtype | str | いいえ | モデルを整数型に量子化するか、浮動小数点型に量子化するか。有効な値:
|
quant_algo | str | いいえ | 量子化アルゴリズム。有効な値: minmax、gptq、awq、smoothquant、smoothquant+、smoothquant_gptq。 minmax アルゴリズムはキャリブレーションデータを必要としません。 デフォルト値: minmax。 |
block_wise_quant | bool | いいえ | ブロック単位の量子化 (サブチャネル量子化とも呼ばれます) を有効にするかどうか。デフォルトの block_size は 64 です (gptq アルゴリズムの group_size パラメーターと同じ)。現在、このオプションは、quant_mode が weight_only_quant に設定されている場合にのみサポートされています。
|
calib_data | str のリスト | いいえ | キャリブレーションデータ。一部の量子化アルゴリズム (gptq など) では、重みの微調整などの処理にキャリブレーションデータが必要です。キャリブレーションに使用するテキストをリストで直接渡すことができます。 デフォルト値: ['hello world!']。 |
calib_data_file | str | いいえ | jsonl ファイルで渡されるキャリブレーションデータ。フォーマット:
デフォルト値: なし。 |
cpu_offload | bool | いいえ | 現在の GPU メモリが量子化のために浮動小数点モデルを読み込むのに不十分で、メモリ不足 (OOM) エラーが発生する可能性がある場合は、このオプションを有効にして、量子化中に一部のパラメーターを CPU に読み込みます。 デフォルト値: False。 |
max_gpu_memory_utilization | float | いいえ | cpu_offload が True の場合に有効になります。 cpu_offload に対して推定される最大ビデオメモリ比率を制御するために使用されます。値が小さいほど、より多くのモデルレイヤーが読み込まれます。 cpu_offload を有効にしても OOM が発生する場合は、このパラメーターを適切に減らしてください。 デフォルト値: 0.9。 |
fallback_ratio | float | いいえ | 量子化前の浮動小数点計算にフォールバックするレイヤーの比率を指定します。 fallback_ratio > 0 の場合、自動混合精度量子化が有効になります。初期量子化精度が要件を満たさない場合は、このパラメーターを試してください。各レイヤーの量子化感度が計算され、指定された比率の計算レイヤーがロールバックされて量子化精度が向上します。 デフォルト値: 0.0。 |
tokenizer_dir | str | いいえ | トークナイザー ディレクトリを指定します。指定しない場合は、モデル ディレクトリと同じです。 デフォルト値: なし。 |
tensor_parallel_size | int | いいえ | テンソル並列度を指定します。元の浮動小数点モデルを複数のカードにロードする必要がある場合は、このパラメーターに数を指定します。 デフォルト値: 1。 |
pipeline_parallel_size | int | いいえ | パイプライン並列度を指定します。元の浮動小数点モデルを複数のカードにロードする必要がある場合は、このパラメーターに数を指定します。 デフォルト値: 1。 |