Skip to main content
Version: Next

将模型注册到 vLLM

*在线运行 vLLM 入门教程:零基础分步指南

vLLM 依赖模型注册表来确定如何运行每个模型。预注册的架构列表可以在此处找到。

如果您的模型不在此列表中,您必须将其注册到 vLLM。本页提供了如何执行此操作的详细说明。

内置模型

要将模型直接添加到 vLLM 库中,首先 fork 我们的 GitHub 仓库,然后从源码构建。这将使您能够修改代码库并测试您的模型。

在您实现模型后(参见教程),将其放入 vllm/model_executor/models 目录中。然后,将您的模型类添加到 vllm/model_executor/models/registry.py 中的 _VLLM_MODELS 中,以便在导入 vLLM 时自动注册。最后,更新我们的支持模型列表以推广您的模型!

重要信息

每个部分中的模型列表应按字母顺序维护。

外部模型

您可以使用插件加载外部模型,而无需修改 vLLM 代码库。

另请参阅

vLLM 的插件系统

要注册模型,请使用以下代码:

from vllm import ModelRegistry
from your_code import YourModelForCausalLM
ModelRegistry.register_model("YourModelForCausalLM", YourModelForCausalLM)

如果您的模型导入了初始化 CUDA 的模块,请考虑延迟导入,避免出现类似 RuntimeError: Cannot re-initialize CUDA in forked subprocess 的错误:

from vllm import ModelRegistry


ModelRegistry.register_model("YourModelForCausalLM", "your_code:YourModelForCausalLM")

重要信息

如果您的模型是多模态模型,请确保模型类实现了 SupportsMultiModal 接口。有关更多信息,请阅读此处

注意

虽然您可以直接将这些代码片段放入使用 vllm.LLM 的脚本中,但推荐的方式是将这些片段放入 vLLM 插件中。这确保了与各种 vLLM 功能(如分布式推理和 API 服务器)的兼容性。