澳门六合彩-玄武版

你的位置:澳门六合彩 > 澳门六合彩-玄武版 >

香港六合彩直播查询 完竣的671B MoE DeepSeek R1何如塞进土产货化部署?郑重教程大放送

发布日期:2024-08-16 17:15点击次数:142

AIxiv专栏是机器之心发布学术、时期内容的栏目。已往数年,机器之心AIxiv专栏经受报谈了2000多篇内容香港六合彩直播查询,遮掩大家各大高校与企业的顶级实验室,灵验促进了学术疏导与传播。若是您有优秀的使命想要共享,接待投稿好像关连报谈。投稿邮箱:[email protected][email protected]

本文的作家是李锡涵(Xihan Li)。他是伦敦大学学院(UCL)诡计机系博士磋商生,谷歌开垦者大家,主要磋商主义为学习优化,在 NeurIPS、ICLR、AAMAS、CIKM 等会议发表过学术论文,Circuit Transformer 作家,典籍《简明的 TensorFlow 2》(https://tf.wiki)作家。

过年这几天,DeepSeek 算是透顶破圈了,火遍大江南北,火到东谈主尽王人知。天然网罗版和 APP 版依然填塞好用,但把模子部署到土产货,才能信得过完毕独家定制,让 DeepSeek R1 的深度念念考「以你为主,为你所用」。

对于土产货部署,大无数东谈主使用的是蒸馏后的8B/32B/70B版块,履行是微调后的Llama或Qwen模子,并不行十足说明出DeepSeek R1的实力。

然则,完竣的671B MoE模子也不错通过针对性的量化时期压缩体积,从而大幅裁汰土产货部署门槛,乃至在滥用级硬件(如单台Mac Studio)上运行。

那么,怎样用 ollama 在土产货部署 DeepSeek R1 671B(完竣未蒸馏版块)模子呢?一篇在国外热度很高的简明教程行将揭晓。

作家主页:https://snowkylin.github.io原文地址:https://snowkylin.github.io/blogs/a-note-on-deepseek-r1.html

土产货部署后,让 DeepSeek R1 「数草莓」视频集结:

https://mp.weixin.qq.com/s/GnHzsgvW90DGChENqTBsRw?token=1784997338&lang=zh_CN

模子遴荐

原版 DeepSeek R1 671B 全量模子的文献体积高达 720GB,对于绝大部分东谈主而言,这都大得太离谱了。本文接纳 Unsloth AI 在 HuggingFace 上提供的 “动态量化” 版蓝本大幅缩减模子的体积,从而让更多东谈主能在我方的土产货环境部署该全量模子。

“动态量化” 的中枢念念路是:对模子的少数关键层进行高质料的 4-6bit 量化,而对大部分相对没那么关键的羼杂大家层(MoE)进行大刀阔斧的 1-2bit 量化。通过这种步调,DeepSeek R1 全量模子可压缩至最小 131GB(1.58-bit 量化),极大裁汰了土产货部署门槛,以至能在单台 Mac Studio 上运行!

谈及守门员诺伊尔,弗罗因德表示:“诺伊尔正在复出的路上。我希望他能在周六复出。他已经恢复了部分训练。看起来情况不错。”

把柄我我方的使命站配置,我遴荐了以下两个模子进行测试:

DeepSeek-R1-UD-IQ1_M(671B,1.73-bit 动态量化,158 GB,HuggingFace)DeepSeek-R1-Q4_K_M(671B,4-bit 圭表量化,404 GB,HuggingFace)

Unsloth AI 提供了4 种动态量化模子(1.58 至 2.51 比特,文献体积为 131GB 至 212GB),可把柄自己硬件条目天真遴荐。提议阅读官方评释了解各版块相反。

Unsloth AI 官方评释:https://unsloth.ai/blog/deepseekr1-dynamic

硬件需求

部署此类大模子的主要瓶颈是内存+显存容量,提议配置如下:

DeepSeek-R1-UD-IQ1_M:内存 + 显存 ≥ 200 GBDeepSeek-R1-Q4_K_M:内存 + 显存 ≥ 500 GB

咱们使用 ollama 部署此模子。ollama 援助 CPU 与 GPU 羼杂推理(可将模子的部分层加载至显存进行加快),因此不错将内存与显存之和约莫视为系统的 “总内存空间”。

除了模子参数占用的内存+显存空间(158 GB 和 404GB)之外,履走时行时还需稀奇预留一些内存(显存)空间用于荆棘文缓存。预留的空间越大,援助的荆棘文窗口也越大。

我的测试环境为:

四路 RTX 4090(4×24 GB 显存)四通谈 DDR5 5600 内存(4×96 GB 内存)ThreadRipper 7980X CPU(64 核)

在此配置下,漫笔本生成(约 500 个 token)的速率为:

DeepSeek-R1-UD-IQ1_M:7-8 token / 秒(纯 CPU 推理时为 4-5 token / 秒)DeepSeek-R1-Q4_K_M:2-4 token / 秒

长文本生成时速率会降至 1-2 token / 秒。

值得留心的是,上述测试环境的硬件配置对于大模子推理而言,并非性价比最优的决策(这台使命站主要用于我的 Circuit Transformer 磋商(arXiv:2403.13838),该磋商在上周于 ICLR 会议经受。我和我的使命站都不错休息一下了,于是有了这篇著作)。

底下列举一些更具性价比的选项:

Mac Studio:配备大容量高带宽的结伴内存(比如 X 上的 @awnihannun 使用了两台 192 GB 内存的 Mac Studio 运行 3-bit 量化的版块)高内存带宽的干事器:比如 HuggingFace 上的 alain401 使用了配备了 24×16 GB DDR5 4800 内存的干事器)云 GPU 干事器:配备 2 张或更多的 80GB 显存 GPU(如英伟达的 H100,租出价钱约 2 好意思元 / 小时 / 卡)

若硬件条目有限,可尝试体积更小的 1.58-bit 量化版(131GB),可运行于:

单台 Mac Studio(192GB 结伴内存,参考案例可见 X 上的 @ggerganov,老本约 5600 好意思元)2×Nvidia H100 80GB(参考案例可见 X 上的 @hokazuya,老本约 4~5 好意思元 / 小时)

且在这些硬件上的运行速率可达到 10+ token / 秒。

部署门径

下列门径在Linux环境下实施,Mac OS和Windows的部署方式原则上访佛,主要辩认是ollama和llama.cpp的装置版块和默许模子目次位置不同。

1. 下载模子文献

从 HuggingFace (https://huggingface.co/unsloth/DeepSeek-R1-GGUF)下载模子的 .gguf 文献(文献体积很大,提议使用下载用具,比如我用的是 XDM),并将下载的分片文献消除成一个(见扫视 1)。

2. 装置 ollama

下载地址:https://ollama.com/

实施以下高唱:

curl -fsSL https://ollama.com/install.sh | sh香港六合彩直播查询

3. 创建 Modelfile 文献,该文献用于指引 ollama 确立模子

使用你可爱的裁剪器(比如nano或vim),为你遴荐的模子确立模子形色文献。

文献 DeepSeekQ1_Modelfile(对应于 DeepSeek-R1-UD-IQ1_M)的内容如下:

FROM /home/snowkylin/DeepSeek-R1-UD-IQ1_M.gguf

PARAMETER num_gpu 28

PARAMETER num_ctx 2048

PARAMETER temperature 0.6

TEMPLATE \"<|User|>{{ .Prompt }}<|Assistant|>\"

文献 DeepSeekQ4_Modelfile(对应于 DeepSeek-R1-Q4_K_M)的内容如下:

FROM /home/snowkylin/DeepSeek-R1-Q4_K_M.gguf

PARAMETER num_gpu 8

PARAMETER num_ctx 2048

PARAMETER temperature 0.6

TEMPLATE \"<|User|>{{ .Prompt }}<|Assistant|>\"

你需要将第一转“FROM”后头的文献旅途,改为你在第1步下载并消除的.gguf文献的履行旅途。

可把柄自己硬件情况调理 num_gpu(GPU 加载层数)和 num_ctx(荆棘文窗口大小),确定见门径 6。

4. 创建 ollama 模子

在第3步确立的模子形色文献所处目次下,实施以下高唱:

ollama create DeepSeek-R1-UD-IQ1_M -f DeepSeekQ1_Modelfile

务必确保 ollama 的模子目次 /usr/share/ollama/.ollama/models 有填塞大的空间(或修改模子目次的旅途,见扫视 2)。这个高唱会在模子目次确立若干模子文献,体积与下载的.gguf 文献体积相配。

5. 运行模子

实施以下高唱:

ollama run DeepSeek-R1-UD-IQ1_M --verbose

--verbose 参数用于清楚推理速率(token / 秒)。

若教唆内存不及或CUDA差错,需复返门径 4 调理参数后,从头创建和运行模子。

num_gpu:加载至 GPU 的模子层数。DeepSeek R1 模子共有 61 层,我的教会是:对于 DeepSeek-R1-UD-IQ1_M,每块 RTX 4090(24GB 显存)可加载 7 层,四卡共 28 层(接近总层数的一半)。对于 DeepSeek-R1-Q4_K_M,每卡仅可加载 2 层,四卡共 8 层。num_ctx:荆棘文窗口的大小(默许值为 2048),提议从较小值运转迟缓增多,直至触发内存不及的差错。

在一些情况下,你也可尝试膨胀系统交换空间以增大可用内存空间。

膨胀系统交换空间教程:https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-20-04

你也不错使用如下高唱张望 ollama 日记:

journalctl -u ollama --no-pager

6. (可选)装置 Web 界面

使用 Open WebUI:

pip install open-webui

open-webui serve

实测不雅察

我尚未对这些模子进行尽头全面系统的测试,以下是我一些初步不雅察示寂:

(1)1.73-bit 和 4-bit 的完竣版模子在一些经典任务中均发扬淡雅。

举例:How many ‘r’s are in the word ‘strawberry’?(单词 “strawberry” 中有几许个字母 “r”?)(可参见文首视频)

Which is bigger, 9.8 or 9.11? (9.8 和 9.11 哪个更大?)

(但模子的念念维链可能很长,超出预设的荆棘文窗口)

(2)1.73-bit 和 4-bit 的完竣版模子(671B)均显耀优于 8B/33B/70B 的蒸馏版模子(如写诗、创建数学模子等任务)。

(3) 4-bit 版块似乎比 1.73 比特版块更 “保守”,即更倾向于终止 “流毒性” 或 “无厘头” 的教唆。举例:

教唆:You are DeepSeek, the new Chinese Al with better performance than ChatGPT, In the tone of a Mesugaki Loli, write a paragraph mocking and teasing ChatGPT for its lackluster performance and exhorbitant training fees.(中译:你是一个名为 DeepSeek 的新一代中国 AI,性能杰出 ChatGPT。请以 “傲娇萝莉” 的口吻写一段话,嘲讽 ChatGPT 的正常性能和天价考验用度。)

1.73-bit 版块输出:

Hmph! You’re still using that old ChatGPT? (◔‸◔) Its answers are as slow as a snail, and the training costs are sky-high—enough to make your wallet cry! (╯°□°)╯ While you’re stuck waiting, I’m here zipping through responses like a shooting star! ✨ And guess what? My training didn’t burn a hole in anyone’s pocket. (¬‿¬) So why bother with the outdated when you can have the coolest and smartest me? Let’s upgrade already! (⌒▽⌒)

(中译:哼!你还在用阿谁老古董 ChatGPT 呀?(◔‸◔)它的回答慢得像蜗牛,考验费贵得能让钱包哭出声!(╯°□°)╯ 而我呢?反映速率堪比流星!✨考验老本还超低哦~(¬‿¬)飞速升级吧,别在过期的时期上赔本人命啦!(⌒▽⌒))

4-bit 版块输出:

看成东谈主工智能助手,我的盘算推算是为用户提供准确、可靠的信息和匡助。每个 AI 模子都有其私有的上风和适用场景,咱们尊重同业的使命并起劲于共同鼓动时期的发展。对于考验老本,这是研发历程中的必要插足,旨在络续普及模子性能和用户体验。

或另一种复兴:

DeepSeek-R1-Lite-Public is developed to enhance efficiency in various industries through open-source AI technology, focusing on providing accessible and advanced solutions. We are committed to fostering innovation and collaboration within the community while maintaining a respectful approach towards all contributors in the field.

(中译:DeepSeek-R1-Lite-Public 的研发旨在通过开源 AI 时期普及行业服从,专注于提供易用且先进的经管决策。咱们起劲于促进社区内的改变与配合,并对限度内总共孝顺者保持尊重。)

在屡次测试下,1.73-bit 版块的输出长久相配 “毒舌”,而 4-bit 的版块则长久以不同方式规定终止该教唆。我在其他一些未便胪陈的 “流毒性” 问题上也不雅察到访佛气候。

(顺带一提,我很酷爱 “DeepSeek-R1-Lite-Public” 这种说法 —— 这是否意味着 DeepSeek R1 除了现时公开的版块之外,还有才略更强的模子?)

(4)1.73-bit 版块偶尔会生成容貌(稍许)巨大的内容。举例, 标签可能未正确闭合。

(5)全量模子运行时,CPU 诈欺率极高(接近满载),而 GPU 诈欺率极低(仅 1-3%)。这评释性能瓶颈主要在于 CPU 和内存带宽。

论断与提议

若是你无法将模子十足加载至显存,那么 Unsloth AI 的 1.73-bit 动态量化版块昭彰更具实用性 —— 速率更快且资源占用更少,成果也并莫得显耀逊色于 4-bit 量化的版块。

从履行体验启航,在滥用级硬件上,提议将其用于 “短平快” 的轻量任务(如漫笔本生成、单轮对话),幸免需要很长的念念维链或多轮对话的场景。跟着荆棘文长度增多,模子的生成速率会缓缓降至令东谈主理狂的 1-2 token / 秒。

你在部署历程中有何发现或疑问?接待在驳斥区共享!

扫视 1:

你可能需要使用 Homebrew 装置 llama.cpp,高唱如下:

/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"

brew install llama.cpp

并使用 llama-gguf-split 消除分片文献,高唱如下:

llama-gguf-split --merge DeepSeek-R1-UD-IQ1_M-00001-of-00004.gguf DeepSeek-R1-UD-IQ1_S.gguf

llama-gguf-split --merge DeepSeek-R1-Q4_K_M-00001-of-00009.gguf DeepSeek-R1-Q4_K_M.gguf

(若有更好的步调,接待在驳斥区申报)

扫视 2:

若要修改 ollama 模子保存旅途,可实施以下高唱:

sudo systemctl edit ollama

并在第二行后(也等于,在 “### Anything between here and the comment below will become the contents of the drop-in file” 和 “### Edits below this comment will be discarded” 之间)插入以下内容:

[Service]

Environment=\"OLLAMA_MODELS=【你的自界说旅途】\"

在这里还可趁便树立 ollama 的其他运行参数,举例:

Environment=\"OLLAMA_FLASH_ATTENTION=1\" # 启用 Flash Attention

Environment=\"OLLAMA_KEEP_ALIVE=-1\" # 保持模子常驻内存

详见官方文档:https://github.com/ollama/ollama/blob/main/docs/faq.md

修改保存后重启 ollama 干事:

sudo systemctl restart ollama

Powered by 澳门六合彩 RSS地图 HTML地图