DeepSeek-R1 大模型部署

news/2025/2/10 8:14:12/文章来源:https://www.cnblogs.com/menkeyi/p/18707043

一、硬件与系统环境要求

1.1 硬件配置

  • GPU: 8× NVIDIA A100 80GB (PCIe)
  • 显存要求: 每卡80GB,8卡总显存640GB
  • 系统内存: ≥32GB (用于交换空间)

1.2 软件环境

  • 操作系统: Linux(验证环境发行版 Ubuntu 22.04 LTS)
  • 驱动版本: NVIDIA Driver 535.171.04

二、环境准备

2.1 创建隔离的Python环境

conda create -n deepseek-r1 python=3.12  
conda activate deepseek-r1  

2.2 验证GPU状态

nvidia-smi  

确认所有8张GPU显存状态显示为0MiB / 81920MiB(空闲可用)


三、获取模型与框架

3.1 下载量化版模型文件

git clone https://huggingface.co/cognitivecomputations/DeepSeek-R1-AWQ  

3.2 克隆vLLM框架

git clone --branch v0.7.2 --depth 1 https://github.com/vllm-project/vllm.git  
cd vllm && pip install -e .  # 安装vLLM框架  

四、启动API服务

4.1 执行启动命令

python -m vllm.entrypoints.openai.api_server \  
--served-model-name deepseek-r1 \  
--model /share/menkeyi/DeepSeek-R1-AWQ \  
--trust-remote-code \  
--host 0.0.0.0 \  
--port 8080 \  
--max-model-len 2048 \       # 最大上下文长度设为2048token  
--tensor-parallel-size 8 \    # 使用全部8卡并行  
--gpu_memory_utilization 0.8 \  
--enforce-eager \            # 禁用CUDA优化提升兼容性  
--dtype float16  

五、服务功能验证

5.1 发送测试请求

curl -X POST "http://10.192.128.18:8080/v1/chat/completions" \  
-H "Content-Type: application/json" \  
-d '{  "model": "deepseek-r1",  "messages": [{"role": "user", "content": "你好"}]  
}'  

5.2 预期响应

{  "id": "cmpl-8e3e7f2a6e3f4e7",  "object": "chat.completion",  "created": 1732365827,  "model": "deepseek-r1",  "choices": [{  "index": 0,  "message": {"role": "assistant", "content": "您好!有什么可以帮助您的吗?"},  "finish_reason": "stop"  }]  
}  

vllm常用推理参数:

一、网络参数

参数 类型 默认值 说明
--host string localhost API服务监听地址,生产环境建议设为0.0.0.0以允许外部访问
--port int 8000 API服务监听端口号
--uvicorn-log-level enum info 控制Uvicorn框架日志粒度,可选:debug,trace,info,warning,error,critical
--allowed-origins list 允许跨域请求的来源列表(例:http://example.com
--allow-credentials flag False 允许发送Cookies等凭证信息
--ssl-keyfile/--ssl-certfile path HTTPS所需的私钥和证书文件路径

二、硬件资源管理

参数 类型 默认值 说明
--tensor-parallel-size int 1 张量并行度(必须等于物理GPU数量)
--gpu-memory-utilization float 0.9 GPU显存利用率阈值(0.9=90%显存上限)
--block-size enum 16 连续Token块大小,取值8/16/32/64/128
--device enum auto 执行设备类型(cuda/tpu/hpu/xpu/cpu等)

三、异构存储配置

参数 类型 默认值 说明
--swap-space int 4 每个GPU的CPU换页空间大小(GiB)
--cpu-offload-gb int 0 每GPU使用CPU内存扩展显存的GiB数(需高速CPU-GPU互联)
--max-cpu-loras int =max_loras CPU内存缓存的最大LoRA适配器数量

四、模型基础参数

参数 类型 默认值 说明
--model string 必填 模型名称(如gpt-3.5-turbo)或本地路径
--dtype enum auto 计算精度控制,常用float16/bfloat16
--max-model-len int 自动获取 模型最大支持的上下文长度
--tokenizer-mode enum auto Tokenizer模式(auto自动选择快速实现)

五、高级加载控制

参数 类型 默认值 说明
--load-format enum auto 权重加载协议,优先safetensors更安全
--config-format enum auto 配置格式hf/mistral或自动检测
--trust-remote-code flag False 加载HuggingFace自定义代码时必须启用,有安全风险
--hf-overrides JSON 动态覆盖HuggingFace模型配置(如调整隐藏层维度)

六、推理参数限制

参数 类型 默认值 说明
--max-num-seqs int 256 单批次允许多少序列并行处理
--max-num-batched-tokens int 动态调整 每个推理阶段处理的Token总数上限
--max-logprobs int 5 返回每个位置的概率最高前N个token
--speculative-disable-by-batch-size int 排队请求超过该阈值时关闭推测解码

七、安全与许可控制

参数 类型 默认值 说明
--api-key string API访问密钥,设置后所有请求需包含Authorization
--allowed-local-media-path path 允许服务端访问的本地媒体路径(仅可信环境启用)
--cert-reqs enum SSL证书验证级别(参考Python ssl模块)

八、量化配置

参数 类型 默认值 说明
--quantization enum 权重量化方法,如awq/gptq/marlin
--kv-cache-dtype enum auto KV缓存量化类型(fp8/fp8_e5m2等)
--lora-dtype enum auto LoRA适配器的量化精度设置
--calculate-kv-scales flag False 动态计算FP8量化比例

调优建议

  1. 操作建议

    • 显存使用较高时优先调整--gpu-memory-utilization--block-size
    • 多GPU环境严格保证tensor-parallel-size与GPU数量一致
    • 高安全场景必须设置--api-key--allowed-origins白名单
  2. 性能关键控制点

    • CPU换页大小 (swap-space) 与批处理容量 (max-num-seqs) 的平衡
    • 权重量化 (quantization) 和KV缓存量化 (kv-cache-dtype) 的组合选择
    • Token块大小 (block-size) 对内存利用率和吞吐量的影响

2025年02月09日更新

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/881528.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zerto 10.0 Update 6 下载 - 适用于本地、混合和多云环境的灾难恢复和数据保护

Zerto 10.0 Update 6 下载 - 适用于本地、混合和多云环境的灾难恢复和数据保护Zerto 10.0 U6 - 适用于本地、混合和多云环境的灾难恢复和数据保护 勒索软件防护、灾难恢复和多云移动性的统一解决方案 请访问原文链接:https://sysin.org/blog/zerto-10/ 查看最新版。原创作品,…

OpenWrt 24.10 OVF:在 ESXi 8.0、Fusion 13 和 Workstation 17 上运行 OpenWrt 的简单方法

OpenWrt 24.10 OVF:在 ESXi 8.0、Fusion 13 和 Workstation 17 上运行 OpenWrt 的简单方法OpenWrt 24.10 OVF:在 ESXi 8.0、Fusion 13 和 Workstation 17 上运行 OpenWrt 的简单方法 OpenWrt 24.10.0 x86_64 OVF 请访问原文链接:https://sysin.org/blog/openwrt-ovf/ 查看最…

SQL Server 2022新功能:将数据库备份到S3兼容的对象存储

SQL Server 2022新功能:将数据库备份到S3兼容的对象存储 本文介绍将S3兼容的对象存储用作数据库备份目标所需的概念、要求和组件。 数据库备份和恢复功能在概念上类似于使用SQL Server备份到Azure Blob存储的URL作为备份设备类型。 要注意的是,不只是amazon S3对象存储,只要…

护眼神器!LightBulb电脑屏幕护眼软件,你值得拥有!

点击上方蓝字关注我 前言 LightBulb是一个免费的护眼软件,它可以帮助我们在晚上或长时间看电脑屏幕时,减少眼睛的不舒服和疲劳。这个软件会随着一天时间的推移,自动调整电脑屏幕的颜色。比如,在白天,它会让屏幕颜色更偏向冷蓝色,就像阳光下的颜色;到了晚上,它会让屏幕颜…

【JWT安全】攻防指南全面梳理

一、简单介绍 JWT(JSON Web Token)是一种用于身份认证和授权的开放标准,它通过在网络应用间传递被加密的JSON数据来安全地传输信息使得身份验证和授权变得更加简单和安全,JWT对于渗透测试人员而言可能是一种非常吸引人的攻击途径,因为它们不仅是让你获得无限访问权限的关键而…

【CodeForces训练记录】Codeforces Round 1003 (Div. 4)

训练情况赛后反思 题面读的有点疑惑,怀疑自己阅读理解不大行了,简单题狂WA,C2二分调半天没出,水平严重退步 A题 最后两个字母 us 换成 i点击查看代码 #include <bits/stdc++.h> // #define int long long #define endl \nusing namespace std;void solve(){string s;…

[流程图/技术调研] drawio : 流程图绘制工具

引言 流程图绘制工具: draw.io 简介urlhttps://www.drawio.com/ (官网首页) https://github.com/jgraph/drawio (github)【官网简介】 drawio 这个项目,是一个可配置的图表/白板可视化应用程序。drawio 是由 JGraph Ltd 和 draw AG 共同拥有和开发的。 在运行这个项目的同时,…

国家中小学智慧教育平台新教材及音频下载神器

点击上方蓝字关注我 前言 国家中小学智慧教育平台是一个专门给老师、孩子们提供学习资源的网站,上面有很多专业的教学视频、课件和教材。不过,这些学习资料都只能在网上看,如果没有网络就连不上了。 而这个下载器的作用就像是一个“搬运工”,它可以把这些网上的视频、课件和…

【牛客训练记录】牛客周赛 Round 80

训练情况赛后反思 玩了一两天发现自己水平直接下降一个档次,简单的C题模拟没写出来 A题 直接判断剩下还能放几个棋子,如果小于零就无法放置,否则直接输出即可点击查看代码 #include <bits/stdc++.h> // #define int long long #define endl \nusing namespace std;voi…

【蓝桥训练记录】第 26 场 蓝桥入门赛

训练情况赛后反思 唐完了,二分没看出来 A题 字母排序点击查看代码 #include <iostream> using namespace std; int main() {cout<<"aekns";return 0; }B题 统计两个字符串中 01 的数量,异或找两个不同的数字的出现次数取最小值,再求和即可点击查看代码…

手把手教你一招永久解决DeepSeek服务器繁忙!

前几天A梦分享过DeepSeek的三种使用方式:移动应用APP、网页版本和本地部署。由于DeepSeek的用户数量庞大,导致请求频次较高,用户常常会遇到"服务器繁忙,请稍后重试"的提示。而选择本地部署则可以避免这种问题,并且支持离线使用。正因如此,官方推荐用户选择本地…

[AI/GPT] AI大模型的基础概念

概述:AI大模型 基础概念 幻觉现象 = 一本正经胡说八道AI幻觉,是指大语言模型【编造】它认为是真实存在的、甚至看起来合理或可信的信息。 大模型出现幻觉,简而言之就是“胡说八道”。 准确而言,是指模型生成的内容与现实世界事实或用户输入不一致的现象。 研究人员将大模型…