正文
注意:对于中国的用户,从我们的镜像仓库拉取镜像时,可能需要在镜像名称前加上
aibrix-container-registry-cn-beijing.cr.volces.com/
。例如,不要只使用
aib
rix/vllm-openai:v0.7.3.self.post1
,而应该使用
aibrix-contain
er-re
gistry-cn-beijing.cr.volces.com/aibrix/vllm-openai:v0.7.3.self.post1
。同样的规则也适用于
aibrix/runtime:v0.2.1
。
用户可以根据自己的云服务提供商,为
模型权重
https://huggingface.co/deepseek-ai/D
eepSeek-R1
选择不同的存储选项。这里,我们将讨论四种常见的场景:
-
HuggingFace
:一个 Pod 可以直接从 HuggingFace 检索模型权重。然而,需要注意的是,不建议对 DeepSeek R1 从 HuggingFace 获取权重。这是因为张量大小各不相同,会导致大量的随机读取,从而显著降低网络和 I/O 效率。
-
持久卷(Persistent Volume)
:像 AWS(使用 Lustre)或谷歌云这样的云服务提供商,通过其
容器存储接口(CSI)
https://kubernetes-csi.github.io/docs/
提供持久磁盘。用户可以轻松地将
持久卷声明(PVC)
https://kubernetes.io/docs/concepts/storage/persistent-volumes/
挂载到 Pod 上,从而能够无缝访问存储在这些持久磁盘上的模型权重。
-
结合 AI 运行时的对象存储
:用户可以选择将模型权重存储在对象存储服务中,如亚马逊 S3 或谷歌云存储(GCS)。在这种情况下,AIBrix AI 运行时将自动将模型下载到主机卷上。这种方法利用了对象存储在存储大量数据方面的优势,提供了灵活性和可扩展性。
-
本地磁盘
:对于本地磁盘存储,需要额外的过程将模型权重下载到本地磁盘上。我们假设存在一个可用的本地卷,并且可以成功地挂载到 Pod 上。这种选择可能适用于本地存储能带来性能优势的环境,或者当存在特定的安全或延迟要求时。
存储选项
|
描述
|
示例文件
|
HuggingFace
|
no volume needed
|
https://github.com/vllm-project/aibrix/blob/main/samples/deepseek-r1/deepseek-r1-huggingface.yaml
|
Persistent Volume
|
models volume, PVC
|
https://github.com/vllm-project/aibrix/blob/main/samples/deepseek-r1/deepseek-r1-pvc.yaml
|
Object Storage(S3 / GCS) with AIBrix AI Runtime
|
models volume, HostPath
|
https://github.com/vllm-project/aibrix/blob/main/samples/deepseek-r1/deepseek-r1-ai-runtime.yaml
|
Local Disk
|
models volume, HostPath + InitContainer
|
https://github.com/vllm-project/aibrix/blob/main/samples/deepseek-r1/deepseek-r1-local-nvme.yaml
|
为了利用 RDMA 在网络通信中实现最佳性能,我们需要配置 Pod 配置以使用 RDMA。在注解中配置