写点什么

用户实操:如何以龙蜥操作系统为底座在 CPU 上运行 DeepSeek-R1

  • 2025-02-18
    陕西
  • 本文字数:2403 字

    阅读完需:约 8 分钟

编者按:DeepSeek 一经发布,火爆海内外。龙蜥操作系统 Anolis OS 8 凭借其原生 AI 能力,实现了 DeepSeek 的本地化部署,显著降低了在生产环境中部署人工智能技术的门槛,真正使得 AI 技术普惠广大用户。

以下文章转载自数穹探索,介绍了如何在 CPU 上使用 llama.cpp 推理 671B 版本的 DeepSeek R1,以及实际效果。

1.硬件配置和环境

这台服务器主要是内存带宽比较足够,实测可以达到 400 多 GB/s 的内存带宽,对跑 DeepSeek-R1 671B 非常有帮助。

(python312) [root@localhost Linux]# ./mlcIntel(R) Memory Latency Checker - v3.11aMeasuring idle latencies for random access (in ns)...                Numa nodeNuma node            0       0         120.7 Measuring Peak Injection Memory Bandwidths for the systemBandwidths are in MB/sec (1 MB/sec = 1,000,000 Bytes/sec)Using all the threads from each core if Hyper-threading is enabledUsing traffic with the following read-write ratiosALL Reads        :      484293.33:1 Reads-Writes :      426926.22:1 Reads-Writes :      419594.61:1 Reads-Writes :      398684.9Stream-triad like:      419383.6
复制代码

2.编译 llama.cpp

git clone https://github.com/ggerganov/llama.cpp.gitmkdir buildcd buildcmake ..cmake --build . --config Release 
复制代码

3.下载模型文件(以及量化)

下载 DeepSeek R1,速度优先选择的 Q4 量化的版本,效果优先选择 Q8 量化,CPU 推理选择 gguf 格式的模型。也可以下载官方版本后使用 llama.cpp 提供的 convert_hf_to_gguf.py 转化。

/home/github/llama.cpp/convert_hf_to_gguf.py /data/models/DeepSeek-R1/
复制代码

为了下载的模型小一点,直接下载了量化好的版本,否则由于网速的问题,下载实在太慢,完整的版本有 642G 大小,我自己下载了 3 天。若不能访问 huggingface,可以从 https://hf-mirror.com/deepseek-ai/DeepSeek-R1 下载完整版本。

直接下载 Q4 量化的版本,以及合并 gguf 文件。

git clone --no-checkout https://hf-mirror.com/bartowski/DeepSeek-R1-GGUF
##只下载Q4量化d的版本,网速问题,下载了20多个小时git lfs pull --include="DeepSeek-R1-Q4_K_M/*" &
## 合并gguf文件/home/github/llama.cpp/build/bin/llama-gguf-split --merge /data/models/DeepSeek-R1-GGUF/DeepSeek-R1-Q4_K_M/DeepSeek-R1-Q4_K_M-00001-of-00011.gguf /data/models/DeepSeek-R1-GGUF/DeepSeek-R1-Q4_K_M.gguf
复制代码

4.模型推理

命令行方式交互访问,默认 96 个线程,K_Cache 使用了 Q8_0 量化,以提升速度,默认 fp16。

/home/github/llama.cpp/build/bin/llama-cli    -m /data/models/DeepSeek-R1-GGUF/DeepSeek-R1-Q4_K_M.gguf   -n 2048   -p "作为一个资深的电商行业分析师,电商平台在2024年都面临了很大的增长挑战,分析一下唯品会作为电商特卖平台在2025年的机会以及如何提升用户的规模和ARPU值?"   -no-cnv  --chat-template deepseek2   -ctk q8_0 
复制代码

Cli 方式的推理,96 个线程,~400GB 内存实际使用。

llama_perf_sampler_print:    sampling time =     107.81 ms /  2094 runs   (    0.05 ms per token, 19422.16 tokens per second)llama_perf_context_print:        load time =    7545.67 msllama_perf_context_print: prompt eval time =    1133.01 ms /    46 tokens (   24.63 ms per token,    40.60 tokens per second)llama_perf_context_print:        eval time =  238743.03 ms /  2047 runs   (  116.63 ms per token,     8.57 tokens per second)llama_perf_context_print:       total time =  240134.43 ms /  2093 tokens
复制代码

Web UI 方式

/home/github/llama.cpp/build/bin/llama-server   -m /data/models/DeepSeek-R1-GGUF/DeepSeek-R1-Q4_K_M.gguf   -n 4096   --host xxx.xxx.xxx.xxx   --port 10088    --chat-template deepseek2   --parallel 1   --ctx-size 16384 -ctk q8_0 
复制代码

默认是 1 并发,尝试过并发多余 1,会有各种问题,最终放弃。


效果简单小结

速度:~9Token/s,个人用基本没问题。

效果:Q4 的效果比官方版本略差,但是依然可用;部分题目 Q8 量化正确,Q4 会回答错误,如这个算数脑筋急转弯。

有一堆煤 第一次运走了总比例的7/13,第二次运走了8/13吨,问哪次运的煤堆更重?
复制代码



更多模型在 CPU 上推理速度汇总

同时测试了更多模型的 CPU 推理的速度,INPUT 1000 Token,Output 300 左右。



关于龙蜥操作系统 Anolis OS


龙蜥操作系统 Anolis OS 8 是 OpenAnolis 龙蜥社区发行的开源 Linux 发行版,支持多计算架构,提供稳定、高性能、安全、可靠的操作系统支持。Anolis OS 8 中通过引入龙蜥生态软件仓库(EPAO),实现一键安装部署 AI 开发环境,解决了 AI 组件之间繁琐的依赖关系,加速 AI 应用的开发、部署流程。


用户通过 Anolis OS 8 所提供的原生 AI 能力,结合 Alibaba Cloud AI Containers(简称 AC2)容器化 AI 运行环境的预配置,得以免去自行部署 CUDA 驱动及安装 PyTorch/vLLM 等繁琐步骤,极大地简化了部署流程,有效规避了因组件与驱动版本不兼容所引发的潜在问题,更专注于核心业务逻辑,而无需被底层技术细节所困扰。这一创新组合显著降低了在生产环境中部署人工智能技术的门槛,真正使得 AI 技术普惠广大用户。那如何在 Anolis OS 8 上使用 AC2 容器部署生产可用的 DeepSeek 推理服务,可点击这里查看详细部署教程。

—— 完 ——

发布于: 刚刚阅读数: 4
用户头像

还未添加个人签名 2021-07-20 加入

OpenAnolis龙蜥社区 由国内外头部企业联合建立的操作系统开源社区。加入我们,一起打造面向未来的开源操作系统。 社区官网:openanolis.cn|微信公众号:OpenAnolis龙蜥

评论

发布
暂无评论
用户实操:如何以龙蜥操作系统为底座在 CPU 上运行 DeepSeek-R1_AI_OpenAnolis小助手_InfoQ写作社区