Open R1:更新 #4

欢迎 DeepSeek-V3 0324
本周,DeepSeek 的新模型悄然登陆 Hub。它是 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)(MATH 能力的代理)
- LiveCodeBench:39.2 → 49.2 (+10.0)(编码能力的指标)
具体来说,在模型卡中,DeepSeek 提到了以下领域的有针对性改进
- 前端 Web 开发
- 提高代码的可执行性
- 更美观的网页和游戏前端
- 中文写作能力
- 增强风格和内容质量
- 与 R1 写作风格保持一致
- 中长篇写作质量更高
- 功能增强
- 改进多轮交互式重写
- 优化翻译质量和书信写作
- 增强风格和内容质量
- 中文搜索能力
- 增强报告分析请求,输出更详细
- 函数调用改进
- 提高函数调用准确性,修复之前 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) 优化。要使用它,您只需在 H100s 节点上运行以下命令即可。更多信息请查看此处。
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: Hub 上使用
safetensors
格式存储 DeepSeek 模型权重,确保不会发生隐藏的代码执行;这在较旧的 PyTorchpickle
格式中是一个风险。因此,恶意代码无法隐藏在权重文件中。更多信息请阅读Safetensors 博客。 - 模型代码: 要运行模型,除了权重文件之外,还需要下载模型代码。有三种机制可以提高安全性:1. 文件在 Hub 上完全可见,2. 用户需要显式设置
trust_remote_code=True
才能执行与模型相关的任何代码,3. 安全扫描程序会在 Hub 上的文件上运行并标记任何恶意代码文件。如果您想格外小心,可以使用revision
设置锁定模型版本,以确保下载的模型代码版本已通过审核。
因此,下载权重是安全的,经过代码审查,执行模型代码也是安全的。这意味着您可以在本地运行 DeepSeek 模型,而无需担心后门或恶意代码执行的风险。
那么,除了下载和运行模型之外,主要的风险是什么?这取决于您如何使用模型输出!
模型输出
以下建议不特定于任何模型,适用于开放模型和封闭模型:无论是考虑模型内置秘密行为带来的风险,还是模型意外产生不良输出带来的风险。
我们将涵盖三个方面的风险:对齐、代码生成和代理。
对齐不匹配: 每个模型提供商都会选择其模型如何以及与哪些价值观对齐。这些价值观是什么以及如何选择通常是不透明的,并且它们也可能随时间而变化(请参阅此研究)。开放模型的优势在于,对齐可以通过自定义微调在稍后阶段进行更改,正如 Perplexity 的 DeepSeek 1776 所示。


通常,用户应该意识到任何大型语言模型都会以某种方式存在偏差,并相应地对待模型输出。
代码生成: 大型语言模型最受欢迎的用例之一是作为编码助手。然而,这也是不加区分地使用模型输出可能产生最负面影响的地方。模型经过大量已发布代码的训练,无论是新的还是旧的。这通常包括潜在的恶意代码或包含已知漏洞的代码。因此,模型在提出代码解决方案时可能会产生类似的漏洞。
那么,在使用大型语言模型进行代码开发时,如何防止安全问题呢?对建议的更改进行彻底的代码审查,并使用适当的工具扫描代码是否存在漏洞,就像您对任何其他代码贡献所做的那样。
代理: 在过去几个月里,代理应用程序引起了极大的兴趣,赋予大型语言模型更多的自主性和代理性也带来了风险。重要的是要谨慎对待代理拥有的系统访问权限以及您提供给它们的信息。一些良好的实践
- 沙盒: 不要在您的机器上运行代理,因为它们可以访问和控制您的计算机。这可以避免泄露私人信息或意外删除重要文件。
- 私人信息: 不要与 LLM 共享私人信息,例如登录凭据。如果您需要授予模型访问系统的权限,请使用具有严格访问规则的专用访问密钥。
- 人工参与: 对于您希望通过代理自动化的重要流程,请确保有人工参与以进行最终确认。
TL;DR: 运行模型安全吗?是的,下载和运行模型是安全的,但是,与任何模型一样,您应该采取预防措施,并使用适当的安全措施来使用模型的生成。