- 文档首页
容器服务
AI 云原生
推理套件
Helm 模板 AI 应用
Deepseek 实践
快速部署基于 SGLang 的 DeepSeek-R1-0528 满血版
Deepseek 实践
快速部署基于 SGLang 的 DeepSeek-R1-0528 满血版
快速部署基于 SGLang 的 DeepSeek-R1-0528 满血版
本文主要介绍使用容器服务(VKE)快速部署基于 SGLang 的 DeepSeek-R1-0528 满血版模型推理服务。
本方案结合火山引擎的多项加速技术,提供在 Kubernetes 集群中快速部署 DeepSeek-R1-0528 大语言模型的方法:
- DeepSeek-R1-0528 模型:由中国 AI 初创公司深度求索(DeepSeek)发布,DeepSeek-R1-0528是DeepSeek R1一次小升级。在最新更新中,通过利用增加的计算资源和在后训练过程中引入算法优化机制,显著提高了其推理和推断能力的深度
- GDKV 模型加速:由火山引擎提供的基于 RDMA + GDR(GPU Direct RDMA)技术实现的模型极速加载方案。
- 弹性极速缓存 EIC(以下简称 EIC):由火山引擎存储团队面向大语言模型推理场景推出的高性能分布式 KV Cache 缓存服务。
方案核心优势:
- 模型极速加载:通过多重加速技术将 DeepSeek-R1-0528 模型加载时间压缩至 13 秒,提速 40 多倍。
- 缓存池化:通过整合 GPU 集群闲置内存和磁盘,构建分布式缓存池,突破单机内存墙限制。
- 实例规格:ecs.hpcpni3ln.45xlarge * 2 台
- 观测:托管 Prometheus(VMP)、应用性能监控全链路版(APMPlus)
- 本实践涉及较多组件,相互间有依赖,配置复杂,为了获得符合预期的结果,请务必根据本文指引操作。
- 同时开启 GDKV 模型加速和 EIC 时,实例节点的内存可能成为瓶颈。如有性能需求,建议只开启 EIC。操作方式请参见:EIC 性能测试方法。
- 为了获得符合预期的结果,同时符合容器服务的 使用限制,请按照本文方案(或在本文推荐的资源上)操作。如需替换方案,您可以联系对应的火山引擎客户经理咨询。
- 完整的部署流程,依赖部分火山引擎邀测能力,请联系火山引擎客户经理申请如下功能的邀测试用:
高性能计算集群,用于实现高性能计算 GPU 实例(计算节点)的逻辑隔离,同一集群内实例间 RDMA 网络互联互通。详情请参见 创建高性能计算集群。 说明
高性能集群所在的 地域和可用区 需要与 VKE 节点的 地域和可用区 一致。
在容器服务中创建集群,需要注意以下列举的参数配置。其余参数说明和详细的操作步骤,请参见 创建集群。您也可以使用 异构计算托管集群模板 快速创建本场景使用的 VKE 集群。 EIC 通过以存代算、GDR 零拷贝等方式大幅降低推理 GPU 资源消耗,优化推理时延。
- 根据界面提示配置实例参数,其中部分参数按如下说明配置,其余参数按需自定义配置。
-
-
- 单击页面右下角的 创建实例。实例状态显示 运行中,表示 EIC 实例创建成功。
- 如果创建实例时发生错误,实例状态将转变为 创建失败,您可以将鼠标悬浮到实例状态上查询具体失败原因。确认原因后单击实例对应的 删除 按钮来销毁实例,然后重新创建实例。若无法自行处理,请联系火山引擎客户经理获取相关技术支持。
本文使用 LeaderWorkerSet(LWS)来编排多节点的推理负载 (例如 DeepSeek R1 需要跨两个节点部署),LWS 支持把一组 Pod 作为 Replicate 的对象。
- 在左侧导航栏,选择 应用中心 > 应用模板,下拉到页面底部,单击 更多应用模板。
- 找到 leader-worker-set,鼠标悬停在该应用模板区域,然后单击 部署。
- 在 部署应用 页面,配置 leader-worker-set 服务参数。
- 应用部署完成后会显示在 Helm 应用 页面。选择目标项目、集群、命名空间,找到已基于 leader-worker-set 模板部署的应用,单击应用名称,进入详情页面查看该应用的基本信息、关联创建的工作负载、服务、其他资源等。
步骤三:部署 deepseek-r1-0528-sglang
容器服务基于 SGLang 框架提供 DeepSeek-R1-0528 模型应用,可通过 应用模版 快速部署。
- 在 应用模板 页面,找到 deepseek-r1-0528-sglang 应用模板,单击 立即部署。
- 在 部署应用 页面,配置 deepseek-r1-0528-sglang 服务参数。
instanceID: "eicydx97nk******"
remoteURL: "eic://192.168.xx.xx:12500;192.168.xx.xx:12500;192.168.xx.xx:12500"
netLocalInterfaceNames: "eth1;eth2;eht3;eth4"
machinePool: "pd0ve352******"
- 应用部署完成后会显示在 Helm 应用 页面。选择目标项目、集群、命名空间,找到已部署的 deepseek-r1-0528-sglang 应用,单击名称,进入详情页面查看该应用的基本信息、关联创建的工作负载、服务、其他资源等。
-
说明
其中,<应用名称>-api-svc格式的服务是该应用对外暴露的服务(Service)名称,后续配置路由、模型验证等步骤,需要关联该服务。
- 在 VKE 集群的 有状态负载 页面,查看 deepseek-r1-0528-sglang 应用对应的负载状态。
- 在 容器服务控制台 左侧导航栏,选择 集群,找到目标集群并单击集群名称。
- 在目标集群管理页面选择 工作负载 > 有状态负载,然后搜索 deepseek-r1-0528-sglang 应用对应的名称,查看相关负载的状态。
-
通过 APIG Ingress 配置模型路由。APIG Ingress 基于火山引擎 API 网关(API Gateway,APIG) 提供托管的云原生网关功能,实现高可用、高扩展的 Ingress 流量管理方式,满足在云原生应用场景下对业务流量稳定性和高可用性的需求。 - 在集群管理页面的左侧导航栏中,选择 服务与路由 > 路由规则,单击 创建路由规则。使用 API 网关对外暴露集群内的模型服务。部分参数按如下说明配置,其余配置详情,请参见 通过控制台创建 APIG Ingress。
- 创建消费者:在左侧导航栏选择 消费者管理,单击 创建消费者。
- 生成 API-KEY :在消费者列表中,单击目标消费者名称,进入消费者详情页面。在 API Key 信息区域,单击 生成 API Key。
-
- 在弹出的对话框内容选择 自动创建 API Key 认证信息。
-
-
- 启用 Key Auth 插件:在左侧导航栏选择 插件管理 > Key Auth插件,单击 创建插件,配置插件参数。
- 生效级别:选择 路由级别,并配置插件所属实例、服务和路由。
- 认证配置:选择 header,并配置来源为 Authorization,表示在请求头中的 Authorization 附带 API Key 认证信息。
-
- 在生产环境,请在域名提供商中配置 Ingress 的访问域名,且确保 Ingress 访问域名的 A 记录已配置 Ingress 的公网 IP 地址或者私网 IP 地址。
基础观测提供 AI 资源及推理服务的监控指标,深度观测提供推理应用的全链路性能监控服务。
- 在集群管理页面的左侧导航栏中,选择 云原生观测 > 概览,单击 立即启用,开启云原生观测和容器服务观测。更多配置详情,请参见 开启观测、容器服务观测。
- 开启观测后,SGLang 的应用指标会被采集到托管 Prometheus(VMP)服务,您可以在托管 Prometheus 控制台中使用 Explore 查询指标,示例如下:
-
- 您可以使用 VMP 预置面板查看 SGLang 应用监控,在 VMP 服务控制台,选择 监控看板,搜索sglang,可查看到如下示例所示的 SGLang 应用看板:
-
- 登录上述 Grafana ,选择导入如下看板 JSON 文件:
-
SGLang Dashboard-1747206543364.json
-
-
- 搜索以sglang为关键字的服务,单击服务名,进入观测看板页面。
- 在 服务总览、LLM性能、Token用量 等页签,可查看大模型核心指标与服务黄金指标,例如:大模型调用次数、Token 使用量、响应耗时、TTFT、TPOT、QPS、请求错误率等。
说明
TTFT、TPOT 指标需要流式调用才会产生相应指标。
curl localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
"model": "/data/models/DeepSeek-R1-0528",
"continuous_usage_stats": true
-
- 在 运行时监控 页签,可查看运行时相关监控信息,例如:CPU 耗时、CPU 使用率、内存使用、GC 对象数量、线程数量、上下文切换数量等。
-
- 从 SGLang 应用的 Trace 分析页签,可以根据不同条件检索链路信息。单击目标 Trace ID,前往单链路详情页面。在列表视图中查看 Trace 信息。
-
部署 deepseek-r1-0528-sglang 应用模板后,关联创建的<应用名称>-api-svc格式名称的服务,提供 HTTP API 端点(8080 端口)。使用服务端点,可以按照 OpenAI 兼容 API 方式去调用。
示例代码如下所示。
说明
其中:
- 将http://******中的******替换为您<应用名称>-api-svc服务的端点。
- content参数的值,输入您与模型的对话内容。
curl http://******/v1/chat/completions \
-H "Content-Type: application/json" \
"model": "/data/models/DeepSeek-R1-0528",
"content": "Who are you?"
您可以在 deepseek-r1-0528-sglang 应用对应 Helm 应用详情页 的 工作负载 区域,单击关联创建的 StatefulSet(有状态负载)名称,跳转到 有状态负载 页面,单击页面右上角 控制台,登录应用对应 Pod,进行 API 调用。
开启 API 网关的认证鉴权功能时,需要在请求中添加认证 Token。
示例代码如下所示。
说明
其中:
- 将http://example.com中的example.com替换为 步骤四:配置路由 中获取的 Ingress 后端服务访问域名。
- eyJhbGciOiJSUzI******替换为 步骤四:配置路由 中生成的 API Key。
- content参数的值,输入您与模型的对话内容。
curl http://example.com/v1/chat/completions -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer eyJhbGciOiJSUzI******" \
"model": "/models/deepseek",
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who won the world series in 2020?"}
最近更新时间:2026.03.16 14:54:00