Open R1 更新:DeepSeek-V3 0324 上线 Hugging Face
Open R1: Update #4
DeepSeek-V3 的更新版 DeepSeek-V3-0324 本周出现在 Hugging Face Hub 上,架构与原始 V3 相同,许可证由自定义模型许可改为 MIT。
梳理了 DeepSeek-V3 更新版在数学与代码基准上的提升幅度,并给出本地部署与量化方案。
欢迎 DeepSeek-V3 0324
本周,来自 DeepSeek 的新模型悄然登陆 Hub。它是 DeepSeek-V3 的更新版本,而 DeepSeek-V3 是 R1 推理模型背后的基础模型。目前关于这个新模型分享的信息还不多,但我们确实知道一些事情!
目前我们所知道的
该模型与原始 DeepSeek-V3 具有相同的架构,并且现在采用了 MIT 许可证,而之前的 V3 模型使用的是自定义模型许可证。此次模型发布重点在于提升指令遵循能力以及代码和数学能力。让我们来看看吧!
它有多好?
DeepSeek 团队在一系列数学和编码任务上对该模型进行了评估,我们可以看到该模型相较其他前沿模型的强大能力:
显然,该模型处于顶级水平:经常与 GPT-4.5 持平,并且总体上强于 Claude-Sonnet-3.7。
总而言之,该模型在各项基准测试上都有显著提升
- MMLU-Pro:75.9 → 81.2(+5.3)(衡量整体理解能力的好基准)
- GPQA:59.1 → 68.4(+9.3)
- AIME:39.6 → 59.4(+19.8)(数学能力的代表指标)
- LiveCodeBench:39.2 → 49.2(+10.0)(编码能力的指标)
具体来说,在模型卡片中,DeepSeek 提到了以下方面的针对性改进:
- Front-End Web Development
- 提升代码的可执行性
- 更美观的网页和游戏前端
- Chinese Writing Proficiency
- Enhanced style and content quality
- 与 R1 的写作风格保持一致
- 提升中长篇写作的质量
- Feature Enhancements
- 改进多轮交互式重写
- 优化翻译质量和信件写作
- Enhanced style and content quality
- Chinese Search Capabilities
- 增强报告分析请求,提供更详细的输出
- Function Calling Improvements
- 提高 Function Calling 的准确性,修复此前 V3 版本中的问题
所以问题可能会冒出来:他们究竟是怎么做到的?让我们稍微推测一下!
他们是怎么做到的?
鉴于命名和架构,可以相当有把握地假设,这个新模型是基于之前的 V3 模型,并在其基础上训练的。他们改进模型可能有两个方面:
- 持续预训练:从 V3 模型开始,可以继续预训练过程,方式包括 a) 使用更新、更及时的数据,以及 b) 使用经过更好筛选、因此质量更高的数据。这将提升对近期事件的事实准确性,并总体提升能力。
- 改进后训练:尤其是在指令遵循和风格方面,后训练起着最重要的作用。很可能他们改进了后训练数据配比,甚至可能改进了算法。
在该团队发布技术报告之前,我们无法确定他们具体调整了什么,但后训练流程的可能性很大,也可能还加入了一些预训练。那么接下来看看如何使用这些模型吧!
如何使用该模型
推理提供商
你可以使用 Hugging Face 的推理提供商来快速试用这个模型。它可通过 Fireworks、Hyperbolic 和 Novita 使用。
以下是一个使用 huggingface_hub 库的示例。你也可以像这个示例中那样使用 OpenAI 客户端库。
from huggingface_hub import InferenceClient
client = InferenceClient(
provider="fireworks-ai",
#api_key="your hf or provider token"
)
messages = [
{
"role": "user",
"content": "My first is second in line; I send shivers up your spine; not quite shining bright. I glitter in the light."
}
]
completion = client.chat.completions.create(
model="deepseek-ai/DeepSeek-V3-0324",
messages=messages,
temperature=0.3,
)
print(completion.choices[0].message['content'])
# ...**Final Answer: ice**
文本生成推理
TGI 也在其最新版本中支持运行 DeepSeek V3-0324。你可以直接在 H100s 节点上使用带标签的 docker 镜像来运行它
docker run --gpus all --shm-size 1g -p 8080:80 -v $ volume:/data \
ghcr.io/huggingface/text-generation-inference:3.2.1 --model-id deepseek-ai/DeepSeek-V3-0324
SGLang
SGLang 支持开箱即用地运行 DeepSeek V3-0324,同时还支持 Multi Latent Attention 和 Data Parallelism 优化。要使用它,你只需在 H100 节点上运行以下内容即可。更多信息请参阅此处。
docker pull lmsysorg/sglang:latest
docker run --gpus all --shm-size 32g -p 30000:30000 -v ~/.cache/huggingface:/root/.cache/huggingface --ipc=host --network=host --privileged lmsysorg/sglang:latest \
python3 -m sglang.launch_server --model deepseek-ai/DeepSeek-V3-0324 --tp 8 --trust-remote-code --port 30000
来自 Unsloth 和 Llama.cpp 的动态量化
运行像 DeepSeek V3-0324 这样的大型 LLM 可能会非常消耗算力,并且需要大量的 GPU VRAM 才能运行。这就是量化发挥作用的地方,它允许最终用户使用相同的模型,但 VRAM 消耗要低得多,只是在下游性能上会有小的代价。
Unsloth AI 创建了动态量化,使人们能够以相当于一个 H100 节点一半的算力运行 DeepSeek V3,并且可以在 llama.cpp 上运行,而在基准测试中的性能下降没有那么严重。在此了解更多信息:https://huggingface.co/unsloth/DeepSeek-V3-0324-GGUF
它安全吗?
自从首批 GPT 模型发布以来,安全地运行语言模型一直是人们关注的中心。随着 DeepSeek 模型及其来源地引发巨大关注,这个问题再次引起了新的兴趣。让我们来看看哪些事情做起来是安全的,以及在哪些方面保持一些谨慎是个好主意。这并不是 DeepSeek 特有的,而是适用于任何开放模型!
首先——连下载模型都是安全的吗?
下载并运行模型
是的,下载模型是安全的。Hub 端有一些预防措施可以确保下载和运行模型是安全的:
- Safetensors:
safetensors格式用于在 Hub 上存储 DeepSeek 模型权重,确保不可能进行隐藏的代码执行;这是旧的 PyTorchpickle格式存在的一个风险。因此,任何恶意代码都无法隐藏在权重文件中。请阅读 Safetensors 博客了解更多信息。 - 建模代码: 要运行模型,建模代码也需要与权重文件一起下载。这里有三种机制来提高安全性:1. 这些文件在 hub 上完全可见,2. 用户需要显式设置
trust_remote_code=True才能执行与模型相关的任何代码,3. 安全扫描器会检查 hub 上的文件,并标记任何恶意代码文件。如果你想格外小心,可以使用revision设置固定模型版本,以确保你下载的是已经过审查的建模代码版本。
所以下载权重是安全的,而经过代码审查后,执行建模代码也是安全的。这意味着你可以在本地运行 DeepSeek 模型,而不必担心后门或恶意代码执行。
那么,除了下载和运行模型之外,主要风险会是什么?这取决于你如何使用模型输出!
模型输出
以下建议并不特定于任何模型,并且同时适用于开放模型和封闭模型:无论是考虑源自模型内置秘密行为的风险,还是模型意外产生不良输出的风险。
我们将涵盖三个领域的风险:对齐、代码生成和代理。
对齐不匹配:每个模型提供商都会选择其模型如何对齐以及对齐到哪些价值观。这些价值观是什么以及如何被选择通常是不透明的,而且它们也可能随时间发生变化(参见这项研究)。开放模型的优势在于,对齐可以在后期通过自定义微调来改变,正如Perplexity 的 DeepSeek 1776的例子所示。
通常,用户应当意识到任何 LLM 都会以某种方式存在偏见,并据此对待模型的输出。
代码生成:LLM 最流行的用例之一是作为编程助手。然而,这也正是无差别使用模型输出可能产生最负面影响的地方。模型是在大量已发布的代码上训练的,既有新的也有旧的。这通常包括潜在的恶意代码或包含已知漏洞的代码。因此,模型在提出代码解决方案时可能会产生类似的漏洞。
那么,在使用 LLM 进行代码开发时,如何防止安全问题?对提议的更改进行彻底的代码审查,并使用适当的工具扫描代码中的漏洞,就像你对待任何其他代码贡献一样。
代理:在过去几个月中,代理应用引起了极大关注,赋予 LLM 更多自主权和代理能力也带来了风险。重要的是要谨慎对待代理拥有何种系统访问权限以及你向它们提供哪些信息。一些良好实践:
- 沙箱:不要在你自己可以访问和控制计算机的机器上运行代理。这可以避免泄露私人信息或意外删除重要文件。
- 私人信息:不要与 LLM 分享登录凭据等私人信息。如果你需要让模型访问某个系统,请使用具有严格访问规则的专用访问密钥。
- 人类参与:对于你想要用代理自动化的高风险流程,确保有人类参与进行最终确认。
TL;DR:运行这些模型安全吗?是的,下载并运行这些模型是安全的,但是,与任何模型一样,你应当采取预防措施,以适当的安全措施来使用模型的生成内容。
来源:Hugging Face Blog · hf-mirror.com

