当前位置: 首页 > news >正文

sglang部署DeepSeek-R1-Distill-Qwen-7B

sglang部署DeepSeek-R1-Distill-Qwen-7B

  • 模型:DeepSeek-R1-Distill-Qwen-7B

  • 显卡:4090 1张

  • 显存占用:约22.6G

  • 重要包的版本

    vllm==0.8.4
    sglang== 0.4.5.post3
    

下载7B模型

  • 可以使用huggingface或者ModelScope下载

  • 这里我使用HuggingFace下载,假设当前目录为

    /root

  • 创建文件夹统一存放Huggingface下载的模型

    mkdir Hugging-Face
    
  • 配置镜像源

    vim ~/.bashrc
    

    填入以下两个,以修改HuggingFace 的镜像源 、模型保存的默认

    export HF_ENDPOINT=https://hf-mirror.com
    export HF_HOME=/root/Hugging-Face

    重新加载,查看环境变量是否生效

    source ~/.bashrcecho $HF_ENDPOINT
    echo $HF_HOME
    
  • 安装 HuggingFace 官方下载工具

    pip install -U huggingface_hub
    
  • 如果使用的GPU平台是 AutoDL 或者是 蓝耘 ,则可以通过下面的命令开启学术加速

    source /etc/network_turbo
    
  • 执行下载模型的命令,下载 DeepSeek-R1-Distill-Qwen-7B,地址在下面

    https://huggingface.co/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B

    复制全名

    DeepSeek-R1-Distill-Qwen-7B

    执行下面的下载命令,等待下载完成

    huggingface-cli download --resume-download deepseek-ai/DeepSeek-R1-Distill-Qwen-7B
    

    image-20250423212235612

  • 查看

    cd /root/Hugging-Face/hub/models--deepseek-ai--DeepSeek-R1-Distill-Qwen-7B/snapshots/916b56a44061fd5cd7d6a8fb632557ed4f724f60
    ll -h
    

    image-20250423212327655


安装sglang

  • 使用conda创建虚拟环境

    conda create -n sglang python=3.12conda activate sglang
    
  • 下载vllm

    pip install vllm
    
  • 下载sglang

    pip install sglang
    pip install sgl_kernel
    
  • 其他依赖包

    pip install orjson
    pip install torchao
    

sglang启动

  • 注意,启动从huggingface下载的DS-R1-7B, 需要指定到下载的snapshots地址

    /root/Hugging-Face/hub/models–deepseek-ai–DeepSeek-R1-Distill-Qwen-7B/snapshots/916b56a44061fd5cd7d6a8fb632557ed4f724f60

  • 启动DeepSeek-R1-Distill-Qwen-7B

    python -m sglang.launch_server --model-path /root/Hugging-Face/hub/models--deepseek-ai--DeepSeek-R1-Distill-Qwen-7B/snapshots/916b56a44061fd5cd7d6a8fb632557ed4f724f60 --host 0.0.0.0 --port 8081

    这里就是以默认参数来启动的,默认端口是30000,这里手动指定了8081

    image-20250423213652096

  • 连接代码

    from openai import OpenAI
    import openaiopenai.api_key = '1111111' # 这里随便填一个
    openai.base_url = 'http://127.0.0.1:8081/v1'def get_completion(prompt, model="QwQ-32B"):client = OpenAI(api_key=openai.api_key,base_url=openai.base_url)messages = [{"role": "user", "content": prompt}]response = client.chat.completions.create(model=model,messages=messages,stream=False)return response.choices[0].message.contentprompt = '你好,请简短并幽默的介绍下你自己'response = get_completion(prompt, model="DeepSeek-R1-Distill-Qwen-7B")
    print(response)"""输出"""
    好,我需要给对方简单幽默地介绍自己。我叫DeepSeek-R1,是一个由深度求索公司开发的智能助手。要保持幽默,可以提到我是AI,这样既专业又有趣。然后,可以举个例子,比如我擅长回答各种问题,甚至会下棋,这样显得我多才多艺。最后,可以加上一句闲话,增加亲切感,比如“你有什么问题吗?或者我可以下盘棋给你看看。”这样整个介绍就既简短又有趣了。
    </think>您好!我是DeepSeek-R1,一个由深度求索公司开发的智能助手,擅长回答各种问题,甚至会下棋。您有什么问题吗?或者我可以下盘棋给你看看。
    
  • 速度大概是 64tokens/s

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 这里Deepseek模型的输出没有 开头,如果需要有,则需要将模型文件中的 tokenizer配置文件chat_template后面增加的<think>\\n去掉然后再重新部署模型。

    文件名:

    tokenizer_config.json

    image-20250423214406603


相关文章:

  • fpga系列 HDL:跨时钟域同步 脉冲展宽同步 Pulse Synchronization
  • 四神-华夏大地的守护神
  • 今天开始着手准备PAT(乙级)
  • 第一节:核心概念高频题-Vue3响应式原理与Vue2的区别
  • MYSQL之表的操作
  • 在面试中被问到spring是什么?
  • Kubernetes Multus CNI详细剖析
  • 渗透测试中的信息收集:从入门到精通
  • 爬虫学习总结
  • 滑动窗口算法(一)
  • Transformer起源-Attention Is All You Need
  • Sql文件处理SQLDumpSplitter
  • git lfs下载大文件限额
  • 按照文本每行匹配文件复制到指定位置
  • Ethan独立开发产品日报 | 2025-04-22
  • Linux: 进程的调度
  • 【电子通识】热敏打印机是怎么形成(打印)图像和文字的?
  • ctfshow web8
  • 3.2 Agent核心能力:感知、规划、决策与执行
  • 高并发系统的通用设计方法是什么?
  • 台媒称美派遣前军官出任“汉光演习”资深观察员,国防部回应
  • 大卫·第艾维瑞谈历史学与社会理论③丨尼古拉斯·卢曼与历史研究
  • 消费补贴政策力度最大的一届!第六届上海“五五购物节” 4月底启幕
  • 夜读丨一条鱼的使命
  • 上海市进一步支持汽车置换更新!一图读懂补贴政策实施细则
  • 人民日报首推“大地书单”,10本好书上榜!