Inference with vLLM

最終更新: 2025-03-01 23:50:26 +0800 +0800
tags: Llm | Vllm | Pytorch
原文は英語で書かれています。あなたはAI翻訳版を読んでいます。
  • 生成モデル: llm = LLM(model=..., task="generate") (task=generate のみ)
  • プーリングモデル: llm = LLM(model=..., task="embed")(task={embed,classify,reward} のみ)
  • 成功すると、生成モデルはテキストを返し、プーリングモデルは隠れ状態を返します。

カスタムモデルの統合 #

  1. git clone --depth 1 https://github.com/vllm-project/vllm/
  2. Transformers リポジトリにファイルを追加し、vllm/model_executor/models ディレクトリに配置します。

既存のモデルエグゼキューター #

https://github.com/vllm-project/vllm/tree/main/vllm/model_executor/models

Hugging Face Transformer リポジトリ #

  • .gitattributes

    Git の動作を設定します。通常は大きな重みファイルの Git LFS 追跡を設定します。 推論時には使用されません。

  • config.json

    モデルアーキテクチャとハイパーパラメーター(モデル種別、層数、隠れサイズ、 アテンションヘッド数、語彙サイズ、位置エンコーディング、dtype、アーキテクチャ クラス)を定義します。

  • generation_config.json

    EOS/PAD トークン ID、サンプリング設定、最大出力長など、デフォルトの生成動作を 定義します。呼び出し時のパラメーターで上書きできます。

  • model.safetensors or model-x-of-y.safetensors モデルの重みの一部です。シャーディングにより、巨大な単一ファイルを避けます。 シャードの境界は必ずしも層に対応しません。

  • model.safetensors.index.json

    すべてのパラメーター名を、それを含むシャードに対応付けます。たとえば model.layers.0… → model-00001-of-00024.safetensors のようになります。 通常は重みの合計サイズも記録します。

  • tokenizer_config.json

    トークナイザーのメタデータ(トークナイザークラス、最大長、特殊トークン、 正規化オプション、多くの場合はチャットテンプレート)です。

  • tokenizer.json

    語彙、分割、正規化、BPE ルール、後処理を含む、「fast tokenizer」パイプライン 全体のシリアライズデータです。

  • vocab.json

    テキストトークンまたはバイト表現を整数のトークン ID に対応付けます。

  • merges.txt

    小さな記号をより大きなトークンへ結合する方法を記述した、順序付き BPE マージ ルールです。

コメント

GitHub で閲覧・コメントする(投稿にはログインが必要です)