DeepSeek在V3和R1之间如何选择?
什么是 DeepSeek-V3 和 DeepSeek-R1?
DeepSeek 是一家AI初创公司,在开发出成本远低于 OpenAI o1 的 DeepSeek-R1 后,获得了国际关注。正如 OpenAI 拥有众所周知的 ChatGPT 应用程序一样,DeepSeek 也拥有类似的聊天机器人,并提供了两种模型:DeepSeek-V3 和 DeepSeek-R1。
什么是 DeepSeek-V3?
DeepSeek-V3 是我们与 DeepSeek 应用程序交互时使用的默认模型。它是一个多功能的大型语言模型(LLM),作为一个通用工具脱颖而出,能够处理广泛的任务。

该模型与其他知名的语言模型竞争,例如 OpenAI 的 GPT-4o。
DeepSeek-V3 的一个关键特性是它使用了混合专家模型(Mixture-of-Experts, MoE)方法。这种方法允许模型从不同的“专家”中选择以执行特定任务。在您给出提示后,模型只会激活与任务最相关的部分,从而节省计算资源,同时提供精确的结果。要了解更多信息,请查看这篇关于混合专家模型(MoE)的博客文章。
从本质上讲,对于大多数日常任务来说,DeepSeek-V3 是一个可靠的选择,这些任务通常是我们对大型语言模型(LLM)的需求。然而,与大多数 LLM 一样,它通过“下一个词预测”来工作,这限制了它解决需要推理的问题的能力,也无法生成训练数据中未编码的新答案。
什么是 DeepSeek-R1?
DeepSeek-R1 是一个强大的推理模型,专为解决需要高级推理和深度问题解决的任务而构建。它非常适合处理那些不仅仅是重复编写过数千次的代码的编程挑战,以及逻辑性很强的问题。
可以将其视为当您需要解决的任务需要高层次的认知操作(类似于专业或专家级推理)时的首选工具。
我们通过点击“DeepThink (R1)”按钮来激活它:

DeepSeek-R1 的独特之处在于其强化学习的特殊应用。为了训练 R1,DeepSeek 在 V3 奠定的基础上进行了扩展,利用了其广泛的能力和庞大的参数空间。他们通过让模型为问题解决场景生成多种解决方案来进行强化学习。随后,使用基于规则的奖励系统来评估答案和推理步骤的正确性。这种强化学习方法促使模型随着时间的推移不断完善其推理能力,从而有效地学会自主探索和开发推理路径。
DeepSeek-R1 是 OpenAI 的 o1 的直接竞争对手。

DeepSeek 与 OpenAI 模型的对比
V3 和 R1 的一个区别在于,当我们与 R1 聊天时,不会立即得到回复。模型首先会使用思维链推理(chain-of-thought reasoning)来思考问题。只有在完成思考后,它才会开始输出答案。
进一步解释:
思维链推理(Chain-of-Thought Reasoning):
这是一种让模型逐步推理的方法,类似于人类解决问题的过程。模型会先分解问题,逐步分析,最后得出答案。
延迟响应:
与 V3 的即时响应不同,R1 的响应时间较长,因为它需要先完成复杂的推理过程。
通常情况下,R1 的响应速度比 V3 慢得多,因为其思考过程可能需要几分钟才能完成,我们将在后面的示例中看到这一点。
V3 和 R1 的区别
让我们从多个方面来了解 DeepSeek-R1 和 DeepSeek-V3 之间的区别:
推理能力
DeepSeek-V3 不具备推理能力。正如我们提到的,它是一个“下一个词预测”模型。这意味着它只能回答那些答案已经编码在训练数据中的问题。
由于用于训练这些模型的数据量非常庞大,它几乎能够回答任何主题的问题。与其他大型语言模型(LLM)一样,它在自然对话和创造性任务中表现出色。它是我们用于写作、内容创作或回答那些可能已经被解决过无数次的通用问题的理想模型。
另一方面,DeepSeek-R1 在解决复杂问题、逻辑推理和逐步分析任务方面表现出色。它专为应对需要深入分析和结构化解决方案的复杂查询而设计。当面对复杂的编程挑战或详细的逻辑谜题时,R1 是值得依赖的工具。

速度和效率
DeepSeek-V3 得益于其混合专家模型(Mixture-of-Experts, MoE)架构,能够更快、更高效地响应。这使得 V3 非常适合对速度要求较高的实时交互场景。
DeepSeek-R1 通常需要更长的时间来生成响应,但这是因为它的重点是提供更深层次、更结构化的答案。额外的时间用于确保解决方案的全面性和深思熟虑。
内存和上下文处理:
这两个模型都能处理高达64,000个输入标记,但是DeepSeek-R1在长时间交互中特别擅长保持逻辑和上下文。这使得它非常适合需要持续推理和理解的任务,比如长时间对话或复杂项目。
API用户的最佳选择:
对于使用API的用户来说,DeepSeek-V3提供了一种更自然流畅的交互体验。它在语言和对话方面的优势使得用户交互感觉流畅且引人入胜。
R1的响应时间对于许多应用来说可能是个问题,所以我建议只有在绝对必要时才使用它。
请注意,在使用API时,模型名称不是V3和R1。V3模型名为deepseek-chat,而R1名为deepseek-reasoner。
价格差异:
在选择使用哪种模型时,值得注意的是V3的价格比R1便宜。虽然这个博客专注于功能性,但权衡每种模型的成本以及我们特定的需求和预算也很重要。有关成本的更多详细信息,请查看他们的API定价文档。
DeepSeek-R1与V3:来自DeepSeek Chat的示例
示例1:问题解决与逻辑任务
让我们通过问以下问题来比较这两个模型的推理能力:
“使用数字[0-9]制作三个数字:x, y, z,使得 x+y=z。”
例如,一个可能的解决方案是:x = 26, y = 4987, z = 5013。使用了所有0-9的数字,且x + y = z。
当我们向V3提出这个问题时,它立即开始生成一个冗长的答案,并最终错误地得出结论,说没有解决方案:

另一方面,R1在推理大约5分钟后可以找到解决方案:

这表明R1更适合需要数学推理的问题,因为除非在模型训练过程中使用了许多类似的问题,否则像V3这样的下一个字预测走得正确。
示例2:创建写作
现在,让我们专注于创意写作。让我们要求这两个模型写一个有关人群中孤独的小篇幅故事。
写一个关于人群中孤独的小篇幅。
这是 V3 的输出:

我们立即得到一个符合主题的故事。我们可能喜欢它,也可能不喜欢,这很主观,但答案与我们提出的问题一致。
当使用推理时,模型通过推理来构建故事。我们不会在这里展示所有细节,但它将任务分解为如下步骤:
首先,我应该设定场景...
接下来,感官细节...
我需要展示它们的内部状态…
以一个感人的画面结束...
让我检查一下我是否涵盖了所有要素...
我们可以看到创作过程非常结构化,这可能会降低输出的创意。

我认为我们只有在感兴趣推理过程的情况下才应该使用 R1 来完成这类任务,因为我们想要的输出并不是逻辑思维过程的结果,而是一种创造性的结果。
示例 3:编码辅助
在这个第三个例子中,我们要求 DeepSeek 帮助我们修复一个略微错误的 Python 函数,该函数旨在解决以下问题:
参赛者在开始和结束比赛时必须写下他们的名字。我们知道有一个人没有完成比赛。这个 Python 函数试图找出那个人的名字,但它不起作用。修复它。
def find_person(names):
freq = {}
for name in names:
if name not in freq:
freq[name] = 0
freq[name] += 1
for name in names:
if freq[name] == 1:
return name
return None
在发送给 AI 之前,让我们先弄清楚代码哪里出错了。
由于每个人在开始和结束比赛时都会写下自己的名字,这个代码试图通过找到只出现一次的名字来解决问题。每个完成比赛的人会写下自己的名字两次,而没有完成比赛的人只写一次。然而,这个代码错误地假设所有名字都是不同的。
正确答案不是频率等于 1 的名字,而是奇数频率的名字。所以解决方案是将第二个 for 循环检查 freq[name] == 1: 替换为 if freq[name] % 2 == 1 以找到奇数频率的名字。
这是 V3 的回复:

V3 模型无法找到正确答案。它不仅通过引入两个输入列表来改变问题参数,即使我们有了两个不同的列表,提供的解决方案也无法工作。
相比之下,R1 即使解决方案改变了代码,也能找到代码中的问题,而不是修复提供的代码:

该模型在寻找答案时相当慢。高亮部分显示了模型意识到代码错误的时候。
何时选择 DeepSeek-R1 与 DeepSeek-V3
选择 DeepSeek-R1 和 DeepSeek-V3 之间的正确模型取决于您希望通过我们的任务或项目实现什么目标。
我的常规推荐工作流程是对于大多数任务使用 V3,如果遇到 V3 找不到答案的死循环,则切换到 R1。然而,这个工作流程假设我们可以确定我们得到的答案是否正确。根据问题,我们可能并不总是能够做出这种区分。
例如,当编写一个总结某些数据的简单脚本时,我们可以运行代码并查看它是否按预期工作。然而,如果我们正在构建一个复杂的算法,验证代码是否正确并不那么简单。
以下是在何时选择其中一个而不是另一个:
| 任务 | 模型 |
|---|---|
| 写作,内容创作,翻译 | V3 |
| 任务中您可以评估输出质量 | V3 |
| 通用编码问题 | V3 |
| 人工智能助手 | V3 |
| 研究 | R1 |
| 复杂数学、编码或逻辑问题 | R1 |
| 长且反复的对话来解决一个问题 | R1 |
| 感兴趣了解达到答案的思维过程 | R1 |
结论
V3非常适合日常任务,如写作、内容创作和快速编码问题,以及构建以自然流畅对话为关键的人工智能助手。它也非常适合快速评估输出质量的任务。
然而,对于需要深入推理的复杂挑战,如研究、复杂的编码或数学问题,或扩展的解决问题对话,DeepSeek R1 是一个更好的选择。

浙公网安备 33010602011771号