使用 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 token ID、取樣設定與最大輸出長度。呼叫時的參數可以覆寫這些設定。

  • model.safetensors 或 model-x-of-y.safetensors 模型權重的片段。分片可避免產生單一巨大檔案。分片邊界不一定對應至層。

  • model.safetensors.index.json

    將每個參數名稱對映至包含它的分片,例如 model.layers.0… → model-00001-of-00024.safetensors。 通常也會記錄權重總大小。

  • tokenizer_config.json

    Tokenizer 中繼資料:Tokenizer 類別、最大長度、特殊 token、正規化選項,以及通常包含聊天範本。

  • tokenizer.json

    完整序列化的「快速 tokenizer」管線,包括詞彙、切分、正規化、BPE 規則與後處理。

  • vocab.json

    將文字 token 或位元組表示法對映至整數 token ID。

  • merges.txt

    描述較小符號如何組合的有序 BPE 合併規則。

評論

在 GitHub 上閱讀或評論(發表評論需要登入)