DeepSeek-R1本机摆设(VLLM+OpenWebUI)

打印 上一主题 下一主题

主题 949|帖子 949|积分 2847

本文搭建情况

系统:Ubuntu 22.04.4 LTS
Python版本:Python 3.10
显卡:RTX 4090D
一、DeepSeek-R1-14b原始模型和q8量化模型

1.从modelscope下载模型
官方原始模型:https://modelscope.cn/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-14B
第三方量化模型:https://modelscope.cn/models/okwinds/DeepSeek-R1-Distill-Qwen-14B-Int8-W8A16
先安装modelscope
  1. pip install modelscope
复制代码
选择你需要的量化参数模型,这是下载14B的q8量化模型(本文使用的模型):
  1. from modelscope import snapshot_download
  2. # 指定模型
  3. model_name = "okwinds/DeepSeek-R1-Distill-Qwen-14B-Int8-W8A16"
  4. custom_path = "/home"
  5. model_dir = snapshot_download(model_name,cache_dir=custom_path)
  6. print(f"model download to {model_dir}")
复制代码

这是下载原始模型:
  1. from modelscope import snapshot_download
  2. # 指定模型
  3. model_name = "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B"
  4. custom_path = "/home"
  5. model_dir = snapshot_download(model_name,cache_dir=custom_path)
  6. print(f"model download to {model_dir}")
复制代码
安装vllm,安装不乐成的话需要先安装pytorch和cuda:
  1. pip install vllm
复制代码
更新uvloop:
  1. pip install --upgrade uvloop
复制代码
假如运行q8量化模型:
  1. cd /home/okwinds
  2. vllm serve DeepSeek-R1-Distill-Qwen-14B-Int8-W8A16
复制代码
vllm serve命令可添加参数阐明:
参数阐明--tensor-parallel-size指定使用的GPU数目--gpu-memory-utilization设置每张GPU的显存利用率上限,取值范围为0~1(比方:0.9表现限制为90%的显存使用)。--max-model-len设置模型支持的最大输入序列长度(以token为单位)。该参数限制了模型接收的最大token数目,从而控制内存和计算资源的使用。--host --port 指定模型API的主机和端口。--enforce-eager启用即时执行模式(Eager Execution),即模型推剖析在每个利用执行时立即举行,而非先构建完备的利用图。这是示例vllm serve DeepSeek-R1-Distill-Qwen-14B-Int8-W8A16 --max-model-len 21152 --enforce-eager --gpu_memory_utilization=0.9 --enable-chunked-prefill --host 0.0.0.0 --port 6666 默认运行在端口8000,在命令行测试模型是否正常可用(q8量化模型):
  1. curl http://localhost:8000/v1/chat/completions \
  2.   -H "Content-Type: application/json" \
  3.   -d '{
  4.         "model": "DeepSeek-R1-Distill-Qwen-14B-Int8-W8A16",  # 指定模型名称
  5.         "messages": [                                          
  6.           {"role": "system", "content": "You are a helpful assistant."},  # 系统消息
  7.           {"role": "user", "content": "Hello, introduce yourself."}       # 用户消息
  8.         ],
  9.         "max_tokens": 2000,   # 最大生成token数
  10.         "temperature": 0.7,   # 控制生成文本的随机性
  11.         "top_p": 0.9          # 控制生成文本的多样性
  12.       }'
复制代码
有正常回复就行。
二、摆设Open WebUI

保举各人使用Docker的方式来跑WebUi镜像。
Docker拉取并运行Open WebUI。
  1. docker run -d -e HF_ENDPOINT=https://hf-mirror.com -p 3000:8080 --add-host=host.docker.internal:host-gateway -v C:\ollama-web-ui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
复制代码
需要等候一段时间,访问 http://localhost:3000/ ,注册管理员账户。
点击设置

点击管理员设置

点击外部毗连后,在左侧框中输入本机的API地点,并在末尾加上/v1。假如是在本机利用,直接填写本机地点,留意地点以http开头。右侧框中填写一个空格(默认值为vllm API token)。开启新对话,选择模型。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

前进之路

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表