到目前为止,用户不得不fork和维护vLLM的内部版本,以便在其中运行专有模型。
在Hugging Face Transformer中添加类似于AutoModelForCausalLM.register(config_class, model_class)
的模型注册是否是一个好主意?
这样一来,用户可以在他们的私有Git仓库中定义他们的模型。例如,在https://github.com/my/private_model.git中,我可以有mymodel.py
:
import torch
import vllm
# Register MyModel to vllm.model_executor.model_loader._MODEL_REGISTRY
vllm.register(model_class=MyModel)
class MyModel(torch.nn.Module):
def __init__(self, config: MyModelConfig) -> None:
super().__init__()
vocab_size = ((config.vocab_size + 63) // 64) * 64
self.embed_tokens = vllm.parallel_utils.layers.VocabParallelEmbedding(
vocab_size,
config.hidden_size,
)
self.norm = vllm.layers.RMSNorm(config.hidden_size, eps=config.rms_norm_eps)
然后,我可以使用以下命令运行一个vLLM服务来提供预训练的MyModel
:
pip install -e ~/w/mymodel
python -m vllm.entrypoints.api_server -m mymodel
或者
python -m vllm.entrypoint.api_server -e ~/w/mymodel/mymodel.py
1条答案
按热度按时间wgxvkvu91#
@WoosukKwon@simon-mo@zhuohan123 这是一个你想实现的功能吗?