註冊模型¶
vLLM 依賴於模型登錄檔來確定如何執行每個模型。預先註冊的架構列表可以在此處找到。
如果您的模型不在該列表中,則必須將其註冊到 vLLM。本頁面提供瞭如何操作的詳細說明。
內建模型¶
要將模型直接新增到 vLLM 庫,請先 Fork 我們的GitHub 倉庫,然後從原始碼構建。這將使您能夠修改程式碼庫並測試您的模型。
在實現了您的模型(請參閱教程)後,將其放入 vllm/model_executor/models 目錄。然後,將您的模型類新增到 vllm/model_executor/models/registry.py 中的 _VLLM_MODELS,以便在匯入 vLLM 時自動註冊。最後,更新我們的支援的模型列表以推廣您的模型!
重要
每個部分中的模型列表應按字母順序維護。
外部模型¶
您可以透過使用外掛載入外部模型,而無需修改 vLLM 程式碼庫。
要註冊模型,請使用以下程式碼
# The entrypoint of your plugin
def register():
from vllm import ModelRegistry
from your_code import YourModelForCausalLM
ModelRegistry.register_model("YourModelForCausalLM", YourModelForCausalLM)
如果您的模型匯入了初始化 CUDA 的模組,請考慮延遲匯入它,以避免出現 RuntimeError: Cannot re-initialize CUDA in forked subprocess 之類的錯誤。
# The entrypoint of your plugin
def register():
from vllm import ModelRegistry
ModelRegistry.register_model(
"YourModelForCausalLM",
"your_code:YourModelForCausalLM",
)
重要
如果您的模型是多模態模型,請確保模型類實現了 SupportsMultiModal 介面。在此閱讀更多。