搜 索

DeepSeek 从入门到放弃

  • 14阅读
  • 2025年01月25日
  • 0评论
首页 / AI/大数据 / 正文

前言:这个世界怎么了?

2025 年 1 月 20 日,DeepSeek-R1 正式发布。

然后,我的朋友圈炸了。我的 Twitter 炸了。我的技术群炸了。连我妈都问我:"儿子,那个深度求索是不是很厉害?"

我:???

当你妈都开始关心 AI 的时候,你就知道,这事儿不简单了。

有人说这是"DeepSeek 时刻",堪比当年 ChatGPT 横空出世。有人说中国 AI 终于站起来了。还有人说硅谷的大佬们一夜之间睡不着觉了。

作为一个在 AI 领域摸爬滚打的老韭菜,我觉得有必要冷静下来,好好聊聊:

DeepSeek 到底是何方神圣?它真的值得这波热度吗?


一、DeepSeek 是谁?从哪来?到哪去?

1.1 身世之谜

DeepSeek(深度求索)并不是突然冒出来的野生 AI,而是有正经"户口本"的:

timeline title DeepSeek 发展时间线 2023年7月 : 深度求索公司成立 : 创始人梁文锋(幻方量化创始人) 2023年11月 : DeepSeek Coder 发布 : 代码生成能力初露锋芒 2024年5月 : DeepSeek-V2 发布 : MoE架构引发关注 2024年12月 : DeepSeek-V3 发布 : 671B参数 仅用557万美元训练 2025年1月20日 : DeepSeek-R1 正式发布 : 推理能力对标 OpenAI o1 : 全球震动 "DeepSeek时刻"

没错,DeepSeek 的爹是幻方量化——一家搞量化交易的公司。

你可能会问:一个搞金融的,怎么跑来做 AI 了?

答案很简单:有钱,有算力,有野心。

幻方量化本身就需要大量算力来做交易策略,据说囤了上万张 A100。当 OpenAI 证明大模型这条路走得通之后,梁文锋大手一挥:"既然有这么多卡,不如顺便训个模型?"

这就像你买了一台顶配游戏电脑,本来是为了打游戏,结果发现拿来挖矿也挺香。

1.2 为什么叫"深度求索"?

官方解释是:追求 AGI(通用人工智能),探索智能的本质。

我的理解是:在 AI 这条路上,走得足够深,才能找到出路。

或者用另一种方式理解:Deep(深度学习)+ Seek(搜索/探索)= DeepSeek

好了,名字解释完了。接下来进入正题。


二、什么是大模型?(给小白的 30 秒科普)

在聊 DeepSeek 之前,我们先快速过一遍大模型的基础概念。老司机可以直接跳到下一节。

2.1 大模型 = 超大号的"文字接龙选手"

大模型的本质是一个概率预测器:给定一段文字,预测下一个最可能出现的词。

graph LR A["输入: 今天天气"] --> B["大模型"] B --> C["输出概率分布"] C --> D["真好 (35%)"] C --> E["不错 (28%)"] C --> F["很热 (20%)"] C --> G["... (17%)"]

就这么简单?对,就这么简单。

但当你把这个"文字接龙"玩到极致——几千亿个参数、几万亿 token 的训练数据、几万张 GPU——奇迹就发生了:

模型开始"涌现"出各种能力:理解上下文、逻辑推理、代码编写、多语言翻译……

这就是所谓的 Scaling Law(规模定律):模型越大,数据越多,能力越强。

2.2 大模型的核心组件

graph TB subgraph "大模型核心架构" A["Transformer 架构"] --> B["自注意力机制
Self-Attention"] A --> C["前馈神经网络
FFN"] A --> D["位置编码
Positional Encoding"] B --> E["理解上下文关系"] C --> F["存储知识和模式"] D --> G["理解词序"] end

关键概念速览:

概念一句话解释
Transformer2017年谷歌提出的神经网络架构,大模型的基础
参数量模型的"脑容量",参数越多,能记住的东西越多
Token模型处理文本的基本单位,大约 1 token ≈ 0.75 个英文单词
上下文窗口模型一次能"看到"的文本长度
推理模型根据输入生成输出的过程

好,基础知识补完,我们正式进入 DeepSeek 的世界。


三、DeepSeek 的核心创新点

3.1 创新一:MLA(Multi-Head Latent Attention)

传统的多头注意力机制(MHA)有个问题:KV Cache 太大了

什么是 KV Cache?简单说,模型在推理时需要缓存之前所有 token 的 Key 和 Value,以便计算注意力。上下文越长,缓存越大,显存越爆炸。

DeepSeek 的解决方案是 MLA(多头潜在注意力)

graph LR subgraph "传统 MHA" A1["K,V"] --> B1["每个头独立缓存"] B1 --> C1["显存占用: O(n × d × h)"] end subgraph "DeepSeek MLA" A2["K,V"] --> B2["低秩压缩到潜在空间"] B2 --> C2["推理时解压"] C2 --> D2["显存占用: 大幅降低"] end

核心思想:不直接缓存完整的 KV,而是压缩到一个低维的"潜在空间",用的时候再解压。

效果:KV Cache 减少了 93.3%!

这就像你本来要搬一柜子的书,现在只需要带一个目录,到了目的地再按目录还原。

3.2 创新二:DeepSeekMoE(混合专家架构)

MoE(Mixture of Experts)不是 DeepSeek 发明的,但 DeepSeek 把它玩出了新花样。

传统大模型:每次推理都要激活所有参数。参数越多,计算越慢,越费钱。

MoE 的思路:把模型拆成多个"专家",每次只激活一部分。

graph TB subgraph "DeepSeek MoE 架构" Input["输入 Token"] --> Router["路由器
Gate"] Router --> |"选择 Top-K"| E1["专家 1
擅长代码"] Router --> |"选择 Top-K"| E2["专家 2
擅长数学"] Router --> |"未选择"| E3["专家 3
擅长写作"] Router --> |"未选择"| E4["专家 N
..."] E1 --> Combine["结果聚合"] E2 --> Combine Combine --> Output["输出"] end style E3 fill:#ccc,stroke:#999 style E4 fill:#ccc,stroke:#999

DeepSeek-V3 的参数配置:

  • 总参数量:671B(6710亿)
  • 每次激活参数:37B(370亿)
  • 专家数量:256 个路由专家 + 1 个共享专家

这意味着什么?模型有 671B 的"知识储备",但每次推理只用 37B 的计算量。

性价比直接拉满。

3.3 创新三:FP8 混合精度训练

训练大模型通常用 FP16 或 BF16 精度。DeepSeek 大胆使用了 FP8:

  • FP16:16位浮点数,精度高,显存占用大
  • FP8:8位浮点数,精度低,显存占用小
graph LR subgraph "精度对比" A["FP16
16位"] --> B["显存: 2x"] C["FP8
8位"] --> D["显存: 1x"] end E["DeepSeek 方案"] --> F["前向: FP8"] E --> G["反向: FP8"] E --> H["关键层: BF16"]

风险:FP8 精度低,容易训崩。

DeepSeek 的解决方案:精细的量化策略 + 关键位置保持高精度。

效果:训练成本大幅降低,且模型性能没有明显下降。

3.4 创新四:辅助损失无关的负载均衡

MoE 有个经典问题:负载不均衡

如果路由器总是把 token 发给少数几个专家,其他专家就会"失业",造成资源浪费。

传统方案:加一个辅助损失(auxiliary loss),惩罚不均衡的路由。但这会干扰主任务的训练。

DeepSeek 的方案:无辅助损失的负载均衡

graph TB subgraph "传统方案" A1["主损失"] --> L1["总损失"] A2["辅助损失
负载均衡"] --> L1 L1 --> R1["可能互相干扰"] end subgraph "DeepSeek 方案" B1["主损失"] --> L2["总损失"] B2["动态偏置调整
不参与梯度"] --> Router["路由器"] L2 --> R2["训练更稳定"] end

核心思想:通过动态调整路由器的偏置项来实现负载均衡,而不是加额外的损失函数。

效果:训练更稳定,模型性能更好。

3.5 创新五:R1 的强化学习训练范式

DeepSeek-R1 最炸裂的创新在于它的训练方法:

graph TB subgraph "DeepSeek-R1 训练流程" A["DeepSeek-V3 Base"] --> B["冷启动
少量 CoT 数据微调"] B --> C["大规模 RL 训练
GRPO 算法"] C --> D["拒绝采样 + SFT"] D --> E["第二轮 RL"] E --> F["DeepSeek-R1"] end subgraph "关键突破" G["纯 RL 也能涌现
推理能力"] H["不需要监督数据
的 CoT 标注"] end

核心发现:

  1. 不需要大量人工标注的 CoT(思维链)数据
  2. 纯强化学习就能让模型学会"思考"
  3. 模型会自发产生反思、验证等行为

这颠覆了之前的认知:大家以为要训练一个会推理的模型,必须先有大量高质量的推理数据。DeepSeek 证明:让模型自己探索,给对了奖励,它自己就能学会推理。


四、为什么老外这么激动?

4.1 成本震撼

DeepSeek-V3 的训练成本:557 万美元

对比一下:

模型估算训练成本
GPT-4~1亿美元
Llama 3 405B~数千万美元
Claude 3未公开,估计数千万
DeepSeek-V3557万美元

成本只有 GPT-4 的 5% 左右。

这意味着什么?OpenAI 的护城河可能没有想象中那么深。

4.2 开源震撼

DeepSeek-R1 完全开源,MIT 协议。

你可以:

  • 免费下载模型权重
  • 免费商用
  • 任意修改和分发

而 OpenAI 的 o1?闭源,API 收费,而且还限制使用。

4.3 性能震撼

在多个权威 benchmark 上,DeepSeek-R1 的表现:

graph LR subgraph "性能对比 (部分)" A["AIME 2024
数学竞赛"] --> A1["R1: 79.8%
o1: 79.2%"] B["MATH-500"] --> B1["R1: 97.3%
o1: 96.4%"] C["Codeforces"] --> C1["R1: 2029分
o1: 1891分"] D["GPQA Diamond
博士级科学"] --> D1["R1: 71.5%
o1: 75.7%"] end

在数学和代码上,DeepSeek-R1 甚至略胜 OpenAI o1。

4.4 地缘政治震撼

在美国对中国实施 AI 芯片禁令的背景下,一家中国公司用"受限"的硬件条件,训出了和美国顶级 AI 公司对标的模型。

这让很多人开始质疑:

  1. 芯片禁令真的有用吗?
  2. 美国的 AI 领先优势还能保持多久?
  3. 是否需要重新评估 AI 竞争格局?

据说 DeepSeek 发布后,Nvidia 股价一度暴跌超过 10%。


五、如何高效使用 DeepSeek

5.1 使用方式总览

graph TB subgraph "DeepSeek 使用方式" A["官方渠道"] --> A1["chat.deepseek.com
网页版"] A --> A2["API
api.deepseek.com"] A --> A3["手机 App"] B["第三方集成"] --> B1["OpenRouter"] B --> B2["各类 AI 聚合平台"] C["本地部署"] --> C1["Ollama"] C --> C2["vLLM"] C --> C3["SGLang"] end

5.2 官方 API 使用

DeepSeek API 兼容 OpenAI 格式,切换成本极低:

from openai import OpenAI

client = OpenAI(
    api_key="your-deepseek-api-key",
    base_url="https://api.deepseek.com"
)

# 使用 DeepSeek-V3
response = client.chat.completions.create(
    model="deepseek-chat",
    messages=[
        {"role": "user", "content": "解释一下什么是 MoE 架构"}
    ]
)

# 使用 DeepSeek-R1(推理模型)
response = client.chat.completions.create(
    model="deepseek-reasoner",
    messages=[
        {"role": "user", "content": "证明根号2是无理数"}
    ]
)

5.3 R1 的正确使用姿势

DeepSeek-R1 是推理模型,和普通对话模型的使用方式不太一样:

graph TB subgraph "R1 最佳实践" A["适合场景"] --> A1["数学证明"] A --> A2["复杂推理"] A --> A3["代码难题"] A --> A4["逻辑分析"] B["不太适合"] --> B1["简单问答"] B --> B2["日常闲聊"] B --> B3["创意写作"] B --> B4["情感陪伴"] end

R1 的特点

  1. 会输出思考过程:返回中会包含 <think> 标签,里面是模型的推理链
  2. 响应较慢:因为要"思考",所以比普通模型慢
  3. 更适合难题:简单问题用 R1 是杀鸡用牛刀

使用建议

# 好的 prompt
"请一步步分析这个问题,然后给出最终答案:[复杂问题]"

# 不太好的 prompt  
"今天天气怎么样?"  # 这种问题不需要用 R1

5.4 本地部署指南

如果你想在本地跑 DeepSeek,这里有几个选择:

1. 使用 Ollama(最简单)

# 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh

# 运行 DeepSeek R1 蒸馏版(7B,适合普通电脑)
ollama run deepseek-r1:7b

# 如果显存够大,可以试试 32B
ollama run deepseek-r1:32b

2. 显存需求参考

模型版本参数量最低显存需求
R1-Distill-Qwen-1.5B1.5B4GB
R1-Distill-Qwen-7B7B16GB
R1-Distill-Qwen-32B32B64GB+
R1-Distill-Llama-70B70B140GB+
R1 完整版671B多机多卡,别想了

六、DeepSeek 的坑与问题

6.1 服务稳定性问题

最近几天,DeepSeek 的服务……怎么说呢……

graph LR A["发送请求"] --> B{"服务状态"} B --> |"30%"| C["正常响应"] B --> |"40%"| D["服务繁忙
请稍后重试"] B --> |"20%"| E["响应超时"] B --> |"10%"| F["未知错误"]

没办法,全世界都在薅,服务器扛不住。

建议

  • 工作时间(北京时间)尽量避开
  • 凌晨使用体验最好
  • API 用户记得加重试逻辑

6.2 上下文长度限制

DeepSeek-V3 官方支持 128K 上下文,但实际使用中:

  • API:确实支持 128K
  • 网页版:实际可用长度有限制
  • R1:因为要输出思考过程,实际可用的输入长度会更短

6.3 中文 vs 英文表现差异

虽然是中国公司,但 DeepSeek 的训练数据中英文占比更高。在某些任务上:

  • 英文表现 > 中文表现
  • 代码和数学主要是英文
  • 中文日常对话其实还不错

6.4 R1 的"过度思考"问题

R1 有时候会陷入过度思考:

用户:1+1等于几?

R1:让我仔细思考这个问题...
首先,我需要理解什么是加法...
加法是一种基本的数学运算...
从集合论的角度来看...
(思考了 500 字)
答案是 2。

简单问题建议直接用 DeepSeek-V3(deepseek-chat),别用 R1。

6.5 知识时效性

DeepSeek 的知识截止日期大约在 2024 年中。对于最新的事件和信息,它可能不知道或者会胡说。

6.6 敏感内容限制

作为中国公司,DeepSeek 在某些话题上有限制。这不是技术问题,你懂的。


七、DeepSeek vs 其他模型

7.1 综合对比

graph TB subgraph "2025年初 大模型格局" A["GPT-4/o1
OpenAI"] --> |"优势"| A1["生态完善
产品成熟"] A --> |"劣势"| A2["贵
闭源"] B["Claude 3
Anthropic"] --> |"优势"| B1["长文本
安全性好"] B --> |"劣势"| B2["创意略弱
API贵"] C["Gemini
Google"] --> |"优势"| C1["多模态
搜索整合"] C --> |"劣势"| C2["幻觉问题"] D["DeepSeek
深度求索"] --> |"优势"| D1["便宜
开源
推理强"] D --> |"劣势"| D2["服务不稳
内容限制"] end

7.2 价格对比

模型输入价格 ($/1M tokens)输出价格 ($/1M tokens)
GPT-4o$2.50$10.00
GPT-4 Turbo$10.00$30.00
Claude 3.5 Sonnet$3.00$15.00
DeepSeek-V3$0.27$1.10
DeepSeek-R1$0.55$2.19

DeepSeek 的价格大约是竞品的 1/10 到 1/5

这个定价策略,基本上就是在说:"我不是针对谁,我是说在座的各位……"


八、我的使用建议

8.1 场景匹配指南

graph TB A["你的需求是什么?"] --> B{"需要复杂推理?"} B --> |"是"| C["DeepSeek-R1"] B --> |"否"| D{"预算紧张?"} D --> |"是"| E["DeepSeek-V3"] D --> |"否"| F{"需要最新信息?"} F --> |"是"| G["GPT-4o + 联网
或 Perplexity"] F --> |"否"| H{"需要处理长文本?"} H --> |"是"| I["Claude 3"] H --> |"否"| J["根据具体任务选择"]

8.2 我的个人工作流

作为一个经常需要处理各种 AI 任务的开发者,我的建议是:

  1. 日常编码:DeepSeek-V3(便宜好用)
  2. 复杂算法题:DeepSeek-R1
  3. 长文档处理:Claude
  4. 需要联网搜索:GPT-4o 或 Perplexity
  5. 敏感话题讨论:Claude 或 GPT

不要迷信任何一个模型,根据任务选择工具。


九、放弃的艺术

写到这里,按照「从入门到放弃」系列的传统,我应该告诉你为什么要"放弃"。

但这次不一样。

DeepSeek 的出现,让我看到了一种可能性:AI 不一定是硅谷巨头的专属游戏。

当然,DeepSeek 还有很多问题:服务不稳定、内容限制、生态不完善……

但它证明了:

  • 用更少的资源,也能训出顶级模型
  • 开源可以和闭源竞争
  • 中国团队在 AI 领域的工程能力不容小觑

所以这次,我选择不放弃

我选择继续关注 DeepSeek 的发展,继续尝试它的新功能,继续在它便宜的 API 上薅羊毛。

毕竟,能省一分是一分


十、参考资料

  1. DeepSeek-V3 Technical Report
  2. DeepSeek-R1 Technical Report
  3. DeepSeek 官方网站
  4. DeepSeek GitHub
  5. HuggingFace - DeepSeek 模型库

📝 后记

写完这篇文章的时候,DeepSeek 的服务器又崩了。

我试着用他们的 API 来帮我润色文章,结果返回了一个"服务繁忙"。

我:行吧,真是很有"DeepSeek特色"的体验。

不过没关系,等服务器恢复了,我一定第一时间去试试用 R1 来证明黎曼猜想。

开玩笑的。

我先去证明 1+1=2 。


评论区
暂无评论
avatar