DeepSeek V4 正式版深度技术解析:MoE稀疏注意力 + DSpark推测解码 + 峰谷定价的技术经济学
核心洞察:2026年6月29日,DeepSeek宣布V4正式版于7月中旬上线,同步引入API峰谷定价机制——高峰时段(9-12点、14-18点)价格翻倍。这不是简单的涨价,而是AI云服务从"粗放供给"到"精细化运营"的标志性转折。技术上,DSpark推测性解码让Flash版本生成速度提升85%,DSA稀疏注意力将百万token推理计算量压缩到V3.2的27%。1.6T参数的MoE巨兽正在用「技术杠杆」撬动「商业模型」的双重革命。
一、背景:从"价格屠夫"到"峰谷定价"——DeepSeek的商业逻辑进化
2026年4月24日,DeepSeek V4预览版发布,以极致低价(Pro输出6元/百万tokens,仅为GPT-4o的1/17)震惊业界,被媒体称为"价格屠夫"。两个月的灰度测试中,V4 Flash单模型周调用量突破4.66万亿Tokens,峰值并发激增导致接口超时频发。
这种"增长带来的痛苦"催生了峰谷定价——不是单纯的涨价,而是通过价格杠杆优化资源配置:
高峰时段的算力供需矛盾
│
┌────────────┴────────────┐
│ │
4.66万亿Tokens/周 接口超时率
调用量 上升300%
│ │
└────────────┬────────────┘
│
┌──────▼──────┐
│ 峰谷定价 │
└──────┬──────┘
│
┌────────────┼────────────┐
│ │ │
削峰填谷 保障刚需 引导弹性
分流夜间 金融/代码 离线批量
批量任务 高峰体验 降价让利
峰谷定价的经济学本质是三级价格歧视的效率化应用:
- 价格敏感型用户(个人开发者、夜间批处理)→ 选择低谷时段,成本减半
- 时效敏感型用户(金融交易、在线服务)→ 接受高峰溢价,保障服务质量
- 策略型用户(AI创业公司)→ 混合调度,优化总成本
二、模型架构:第二代MoE + DSA稀疏注意力
DeepSeek V4延续了MoE混合专家架构,但在注意力机制上做了根本性创新。
双版本矩阵
┌─────────────────────────────────────────────────────────────┐
│ DeepSeek V4 模型矩阵 │
│ │
│ ┌─────────────────────────┐ ┌─────────────────────────┐ │
│ │ V4 Pro (旗舰版) │ │ V4 Flash (轻量版) │ │
│ ├─────────────────────────┤ ├─────────────────────────┤ │
│ │ 总参数: 1.6T │ │ 总参数: 284B │ │
│ │ 激活参数: 49B │ │ 激活参数: 13B │ │
│ │ 上下文: 1M tokens │ │ 上下文: 1M tokens │ │
│ │ 定位: 高性能复杂任务 │ │ 定位: 高频低成本调用 │ │
│ │ 输出: 6元/百万tokens │ │ 输出: 2元/百万tokens │ │
│ │ 高峰价: 12元 │ │ 高峰价: 4元 │ │
│ │ 适用: 科研、代码生成 │ │ 适用: 聊天、简单推理 │ │
│ └─────────────────────────┘ └─────────────────────────┘ │
│ │
│ 共同基础: │
│ • MoE架构 + DSA稀疏注意力 │
│ • 百万token超长上下文 │
│ • MIT开源协议,可商用 │
│ • 深度适配华为昇腾生态 │
└─────────────────────────────────────────────────────────────┘
DSA(Dense-Sparse Attention)注意力机制
DSA是V4最核心的技术创新。它在token维度进行压缩,结合稀疏注意力方案,大幅削减计算与显存开销。在百万token场景下,推理计算量仅为前代V3.2的约27%,显存占用低至10%。
DSA注意力机制工作流:
输入序列 (1M tokens)
│
▼
┌──────────────────┐
│ Token级别压缩 │
│ 基于重要性评分 │
│ 保留高信息密度token │
└────────┬─────────┘
│
▼
┌──────────────────┐
│ Dense注意力路径 │
│ 压缩序列×压缩序列 │
│ 捕获全局语义关系 │
└────────┬─────────┘
│
▼
┌──────────────────┐
│ Sparse注意力路径 │
│ 原始序列×稀疏索引 │
│ 捕获局部细节关系 │
└────────┬─────────┘
│
▼
┌──────────────────┐
│ 注意力融合 │
│ Dense×α + Sparse×β│
│ 输出最终表示 │
└──────────────────┘
以下是DSA注意力的Go实现:
package attention
import (
"math"
"sync"
)
// DenseSparseAttention DSA注意力机制
type DenseSparseAttention struct {
HeadDim int
NumHeads int
CompressRatio float64 // token压缩比例
SparseRatio float64 // 稀疏注意力比例
mu sync.Mutex
}
func NewDSA(headDim, numHeads int, compressRatio, sparseRatio float64) *DenseSparseAttention {
return &DenseSparseAttention{
HeadDim: headDim,
NumHeads: numHeads,
CompressRatio: compressRatio,
SparseRatio: sparseRatio,
}
}
// TokenCompressionScore 计算每个token的重要性分数
func (dsa *DenseSparseAttention) TokenCompressionScore(hiddenStates [][]float32) []float64 {
seqLen := len(hiddenStates)
scores := make([]float64, seqLen)
for i := 0; i < seqLen; i++ {
var norm float64
for _, v := range hiddenStates[i] {
norm += float64(v) * float64(v)
}
scores[i] = math.Sqrt(norm / float64(len(hiddenStates[i])))
}
return scores
}
// CompressTokens 根据重要性分数压缩token序列
func (dsa *DenseSparseAttention) CompressTokens(
hiddenStates [][]float32,
scores []float64,
) ([][]float32, []int) {
seqLen := len(hiddenStates)
keepCount := int(float64(seqLen) * dsa.CompressRatio)
// 创建索引并按分数排序
type scoredIdx struct {
idx int
score float64
}
pairs := make([]scoredIdx, seqLen)
for i, s := range scores {
pairs[i] = scoredIdx{idx: i, score: s}
}
// 快速选择:找到第keepCount大的分数阈值
threshold := quickSelect(scores, keepCount)
compressed := make([][]float32, 0, keepCount)
indices := make([]int, 0, keepCount)
for i, s := range scores {
if s >= threshold && len(compressed) < keepCount {
compressed = append(compressed, hiddenStates[i])
indices = append(indices, i)
}
}
return compressed, indices
}
// quickSelect 快速选择第k大的元素
func quickSelect(arr []float64, k int) float64 {
if len(arr) <= k {
return 0
}
// 简化实现:使用排序
sorted := make([]float64, len(arr))
copy(sorted, arr)
// 降序排序
for i := 0; i < len(sorted); i++ {
for j := i + 1; j < len(sorted); j++ {
if sorted[j] > sorted[i] {
sorted[i], sorted[j] = sorted[j], sorted[i]
}
}
}
return sorted[k-1]
}
// DenseAttention 密集注意力:在压缩序列上计算全局注意力
func (dsa *DenseSparseAttention) DenseAttention(
Q, K, V [][]float32,
) [][]float32 {
seqLen := len(Q)
output := make([][]float32, seqLen)
for i := 0; i < seqLen; i++ {
output[i] = make([]float32, dsa.HeadDim)
}
var wg sync.WaitGroup
headSize := dsa.HeadDim
for h := 0; h < dsa.NumHeads; h++ {
wg.Add(1)
go func(head int) {
defer wg.Done()
offset := head * headSize
for i := 0; i < seqLen; i++ {
// 计算注意力分数
var maxScore float32 = -1e9
scores := make([]float32, seqLen)
for j := 0; j < seqLen; j++ {
var dot float32
for d := 0; d < headSize; d++ {
dot += Q[i][offset+d] * K[j][offset+d]
}
scores[j] = dot / float32(math.Sqrt(float64(headSize)))
if scores[j] > maxScore {
maxScore = scores[j]
}
}
// softmax
var sum float32
for j := 0; j < seqLen; j++ {
scores[j] = float32(math.Exp(float64(scores[j] - maxScore)))
sum += scores[j]
}
for j := 0; j < seqLen; j++ {
scores[j] /= sum
}
// 加权求和
for d := 0; d < headSize; d++ {
var val float32
for j := 0; j < seqLen; j++ {
val += scores[j] * V[j][offset+d]
}
output[i][offset+d] = val
}
}
}(h)
}
wg.Wait()
return output
}
// SparseAttention 稀疏注意力:在原始序列上按稀疏索引计算局部注意力
func (dsa *DenseSparseAttention) SparseAttention(
Q, K, V [][]float32,
sparseIndices []int,
windowSize int,
) [][]float32 {
seqLen := len(Q)
output := make([][]float32, seqLen)
for i := 0; i < seqLen; i++ {
output[i] = make([]float32, dsa.HeadDim)
}
// 每个token只关注附近的稀疏索引
sparseSet := make(map[int]bool)
for _, idx := range sparseIndices {
sparseSet[idx] = true
}
for i := 0; i < seqLen; i++ {
start := i - windowSize
if start < 0 {
start = 0
}
end := i + windowSize
if end > seqLen {
end = seqLen
}
// 在窗口内找稀疏索引
var sum float32
scores := make(map[int]float32)
for j := start; j < end; j++ {
if sparseSet[j] {
var dot float32
for d := 0; d < dsa.HeadDim; d++ {
dot += Q[i][d] * K[j][d]
}
scores[j] = dot / float32(math.Sqrt(float64(dsa.HeadDim)))
if scores[j] > sum {
sum = scores[j]
}
}
}
// softmax + 加权
var total float32
for j, s := range scores {
scores[j] = float32(math.Exp(float64(s - sum)))
total += scores[j]
}
for d := 0; d < dsa.HeadDim; d++ {
var val float32
for j, s := range scores {
val += (s / total) * V[j][d]
}
output[i][d] = val
}
}
return output
}
// Forward DSA前向传播
func (dsa *DenseSparseAttention) Forward(
Q, K, V [][]float32,
) [][]float32 {
// 1. Token压缩
scores := dsa.TokenCompressionScore(Q)
compressedK, indices := dsa.CompressTokens(K, scores)
// 2. 密集注意力路径:压缩序列
denseOut := dsa.DenseAttention(Q, compressedK, compressedK)
// 3. 稀疏注意力路径:原始序列
sparseOut := dsa.SparseAttention(Q, K, V, indices, 64)
// 4. 融合
alpha := float32(0.7) // 密集路径权重
beta := float32(0.3) // 稀疏路径权重
seqLen := len(Q)
fused := make([][]float32, seqLen)
for i := 0; i < seqLen; i++ {
fused[i] = make([]float32, dsa.HeadDim)
for d := 0; d < dsa.HeadDim; d++ {
fused[i][d] = alpha*denseOut[i][d] + beta*sparseOut[i][d]
}
}
return fused
}
三、DSpark推测性解码:速度提升85%的秘密
DSpark是DeepSeek联合北大推出的推测性解码框架,已在V4正式版中全量部署。其核心思想是用小型草稿模型生成候选token序列,由大型目标模型并行验证。
┌─────────────────────────────────────────────────────────────┐
│ DSpark 推测性解码工作流 │
│ │
│ 输入: "DeepSeek V4的优势在于" │
│ │ │
│ ▼ │
│ ┌─────────────────┐ ┌─────────────────┐ │
│ │ 草稿模型 (Draft) │ │ 目标模型 (Target) │ │
│ │ V4 Flash 13B │ │ V4 Pro 49B │ │
│ │ 快速自回归生成 │ │ 并行验证草稿 │ │
│ └────────┬────────┘ └────────┬────────┘ │
│ │ │ │
│ 生成候选序列: 并行验证每个token: │
│ "其" "稀" "疏" "注" ✅ ✅ ✅ ✅ 全部接受 │
│ 每步1个token 一次验证4个token │
│ │ │ │
│ └───────────┬───────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ 接受/拒绝决策 │ │
│ │ 接受率 ~80% │ │
│ │ 加速比 ~3.7x │ │
│ └─────────────────┘ │
│ │ │
│ ▼ │
│ 输出: "其稀疏注意力" │
│ 传统需4步 → DSpark仅需2步 │
│ Flash版本端到端加速85% ✅ │
└─────────────────────────────────────────────────────────────┘
以下是DSpark的Python实现:
"""
DSpark: 推测性解码框架
DeepSeek × 北京大学联合实现
"""
import torch
import torch.nn.functional as F
from typing import List, Optional, Tuple
from dataclasses import dataclass
@dataclass
class SpeculativeResult:
"""推测性解码结果"""
tokens: List[int]
acceptance_rate: float
speedup: float
draft_steps: int
target_steps: int
rejected_positions: List[int]
class DSparkDecoder:
"""
DSpark推测性解码器
使用小型草稿模型生成候选序列,大型目标模型并行验证
实现"一步生成多个token"的效果
"""
def __init__(
self,
draft_model, # 草稿模型(V4 Flash, 13B)
target_model, # 目标模型(V4 Pro, 49B)
gamma: int = 5, # 推测窗口大小
temperature: float = 0.7,
top_k: int = 40,
):
self.draft_model = draft_model
self.target_model = target_model
self.gamma = gamma
self.temperature = temperature
self.top_k = top_k
def generate(
self,
input_ids: torch.Tensor,
max_new_tokens: int = 256,
) -> SpeculativeResult:
"""
使用推测性解码生成文本
Args:
input_ids: 输入token序列
max_new_tokens: 最大生成token数
Returns:
生成结果,包含token序列和性能指标
"""
device = input_ids.device
prefix = input_ids.clone()
all_tokens = input_ids[0].tolist()
total_draft_steps = 0
total_target_steps = 0
rejected_positions = []
while len(all_tokens) < len(input_ids[0]) + max_new_tokens:
# 1. 草稿阶段:用小模型快速生成gamma个候选token
draft_tokens = self._draft_generate(prefix, self.gamma)
total_draft_steps += 1
# 2. 验证阶段:用大模型并行验证
n_accepted, target_logits = self._verify(
prefix, draft_tokens
)
total_target_steps += 1
# 3. 接受/拒绝决策
if n_accepted == 0:
# 全部拒绝:从target采样一个token
next_token = self._sample(target_logits[0])
prefix = torch.cat([
prefix,
torch.tensor([[next_token]], device=device)
], dim=1)
all_tokens.append(next_token)
rejected_positions.append(len(all_tokens) - 1)
else:
# 接受前n_accepted个token
for i in range(n_accepted):
prefix = torch.cat([
prefix,
torch.tensor([[draft_tokens[i]]], device=device)
], dim=1)
all_tokens.append(draft_tokens[i])
# 如果需要拒绝后的补偿token
if n_accepted < self.gamma:
bonus_token = self._sample(target_logits[n_accepted])
prefix = torch.cat([
prefix,
torch.tensor([[bonus_token]], device=device)
], dim=1)
all_tokens.append(bonus_token)
rejected_positions.append(len(all_tokens) - 1)
# 计算指标
total_generated = len(all_tokens) - len(input_ids[0])
acceptance_rate = 1 - len(rejected_positions) / max(
1, total_generated
)
# 理论加速比
speedup = self.gamma * total_target_steps / max(
1, total_draft_steps + total_target_steps
)
return SpeculativeResult(
tokens=all_tokens,
acceptance_rate=acceptance_rate,
speedup=speedup,
draft_steps=total_draft_steps,
target_steps=total_target_steps,
rejected_positions=rejected_positions,
)
def _draft_generate(
self, prefix: torch.Tensor, gamma: int
) -> List[int]:
"""草稿模型自回归生成候选序列"""
draft_tokens = []
current = prefix.clone()
with torch.no_grad():
for _ in range(gamma):
logits = self.draft_model(current)
next_logits = logits[0, -1, :]
next_token = self._sample(next_logits)
draft_tokens.append(next_token)
current = torch.cat([
current,
torch.tensor([[next_token]],
device=current.device)
], dim=1)
return draft_tokens
def _verify(
self, prefix: torch.Tensor, draft_tokens: List[int]
) -> Tuple[int, torch.Tensor]:
"""
使用目标模型验证草稿token
核心思想:目标模型并行计算每个位置的logits
通过拒绝采样决定接受哪些草稿token
"""
device = prefix.device
gamma = len(draft_tokens)
# 构建验证序列:prefix + draft_tokens
draft_tensor = torch.tensor(
[draft_tokens], device=device
)
verification_input = torch.cat(
[prefix, draft_tensor], dim=1
)
# 目标模型前向传播(一次计算所有位置)
with torch.no_grad():
logits = self.target_model(verification_input)
# 提取每个位置的目标分布
target_probs = []
prefix_len = prefix.shape[1]
for i in range(gamma):
pos_logits = logits[0, prefix_len + i, :]
probs = F.softmax(pos_logits / self.temperature, dim=-1)
target_probs.append(probs)
# 拒绝采样决策
n_accepted = 0
for i in range(gamma):
draft_token = draft_tokens[i]
draft_prob = self._get_draft_prob(
prefix if i == 0 else
torch.cat([prefix, draft_tensor[:, :i]], dim=1),
draft_token
)
target_prob = target_probs[i][draft_token].item()
if target_prob > draft_prob:
# 接受概率 = target_prob / draft_prob
acceptance_prob = target_prob / draft_prob
if torch.rand(1).item() <= acceptance_prob:
n_accepted += 1
else:
break
else:
n_accepted += 1
# 返回接受数和补偿token的目标logits
bonus_idx = min(n_accepted, gamma - 1)
bonus_logits = logits[0, prefix_len + bonus_idx, :]
return n_accepted, torch.stack(
[logits[0, prefix_len + i, :] for i in range(gamma)]
)
def _get_draft_prob(
self, prefix: torch.Tensor, token: int
) -> float:
"""获取草稿模型对指定token的概率"""
with torch.no_grad():
logits = self.draft_model(prefix)
probs = F.softmax(
logits[0, -1, :] / self.temperature, dim=-1
)
return probs[token].item()
def _sample(self, logits: torch.Tensor) -> int:
"""从logits采样token"""
# Top-k过滤
top_k_logits, top_k_indices = torch.topk(
logits, self.top_k, dim=-1
)
probs = F.softmax(
top_k_logits / self.temperature, dim=-1
)
sampled_idx = torch.multinomial(probs, 1)
return top_k_indices[sampled_idx].item()
四、峰谷定价的技术经济学
定价模型
时间维度上的价格梯度:
价格(元/百万tokens输出)
│
12 ───┤■■■■■■■■■■■■■■■■■■■■ V4 Pro 高峰
│ (9-12点, 14-18点)
6 ───┤■■■■■■■■■■ V4 Pro 低谷
│
4 ───┤■■■■■■■ V4 Flash 高峰
│
2 ───┤■■■■ V4 Flash 低谷
│
└───────────────────────────► 时间
0 6 9 12 14 18 24
经济模型分析
package pricing
import "time"
// Tier 定价层级
type Tier int
const (
OffPeak Tier = iota // 低谷
Peak // 高峰
)
// PriceConfig 定价配置
type PriceConfig struct {
ProInputCacheHit float64 // Pro缓存命中输入
ProInputCacheMiss float64 // Pro缓存未命中输入
ProOutput float64 // Pro输出
FlashInputCacheHit float64
FlashInputCacheMiss float64
FlashOutput float64
}
// PeakPriceManager 峰谷定价管理器
type PeakPriceManager struct {
basePrices PriceConfig
peakPrices PriceConfig
peakStart1 int // 第一个高峰开始时间
peakEnd1 int // 第一个高峰结束时间
peakStart2 int // 第二个高峰开始时间
peakEnd2 int // 第二个高峰结束时间
peakFactor float64 // 高峰倍数
}
func NewDefaultPeakPriceManager() *PeakPriceManager {
return &PeakPriceManager{
basePrices: PriceConfig{
ProInputCacheHit: 0.025,
ProInputCacheMiss: 3.0,
ProOutput: 6.0,
FlashInputCacheHit: 0.02,
FlashInputCacheMiss: 1.0,
FlashOutput: 2.0,
},
peakFactor: 2.0,
peakStart1: 9,
peakEnd1: 12,
peakStart2: 14,
peakEnd2: 18,
}
}
// GetCurrentTier 判断当前时段
func (pm *PeakPriceManager) GetCurrentTier(t time.Time) Tier {
h := t.Hour()
if (h >= pm.peakStart1 && h < pm.peakEnd1) ||
(h >= pm.peakStart2 && h < pm.peakEnd2) {
return Peak
}
return OffPeak
}
// LoadAwarePricing 负载感知定价
type LoadAwarePricing struct {
pm *PeakPriceManager
loadHistory map[int]float64 // 小时→平均负载
cacheHitRate float64 // 当前缓存命中率
}
func NewLoadAwarePricing(pm *PeakPriceManager) *LoadAwarePricing {
return &LoadAwarePricing{
pm: pm,
loadHistory: make(map[int]float64),
}
}
// CalculateDynamicPrice 动态计算价格
func (lp *LoadAwarePricing) CalculateDynamicPrice(
model string, // "pro" 或 "flash"
output bool, // 是否输出
cacheHit bool, // 是否缓存命中
) float64 {
tier := lp.pm.GetCurrentTier(time.Now())
// 基础价格
var basePrice float64
switch {
case model == "pro" && output:
basePrice = lp.pm.basePrices.ProOutput
case model == "pro" && cacheHit:
basePrice = lp.pm.basePrices.ProInputCacheHit
case model == "pro" && !cacheHit:
basePrice = lp.pm.basePrices.ProInputCacheMiss
case model == "flash" && output:
basePrice = lp.pm.basePrices.FlashOutput
case model == "flash" && cacheHit:
basePrice = lp.pm.basePrices.FlashInputCacheHit
default:
basePrice = lp.pm.basePrices.FlashInputCacheMiss
}
if tier == Peak {
basePrice *= lp.pm.peakFactor
}
// 缓存命中折扣
if cacheHit {
basePrice *= 0.008 // 缓存命中价格约为未命中的1/120
}
return basePrice
}
// OptimalSchedule 优化调度建议
type ScheduleAdvice struct {
BestTime time.Time
CostSaving float64 // 相比立即执行的节省比例
Reason string
}
func (lp *LoadAwarePricing) AdviseSchedule(
batchSize int, // 批量任务大小
maxDelay time.Duration, // 最大可接受延迟
) *ScheduleAdvice {
now := time.Now()
bestCost := 1e9
var bestTime time.Time
// 在maxDelay范围内扫描最优时间
for t := now; t.Before(now.Add(maxDelay)); t = t.Add(time.Hour) {
cost := lp.CalculateDynamicPrice("flash", true, false)
if cost < bestCost {
bestCost = cost
bestTime = t
}
}
saving := (lp.CalculateDynamicPrice("flash", true, false) - bestCost) /
lp.CalculateDynamicPrice("flash", true, false) * 100
return &ScheduleAdvice{
BestTime: bestTime,
CostSaving: saving,
Reason: "低谷时段价格减半",
}
}
五、与竞品的成本效率对比
| 维度 | DeepSeek V4 Pro | DeepSeek V4 Flash | GPT-4o | Claude Opus 4.8 |
|---|---|---|---|---|
| 输出价格(百万tokens) | 6元(高峰12元) | 2元(高峰4元) | ~105元 | ~90元 |
| 上下文长度 | 1M tokens | 1M tokens | 128K | 200K |
| 生成速度(Flash) | 85%提升(DSpark) | 基准 | - | - |
| 开源协议 | MIT ✅ | MIT ✅ | 闭源 | 闭源 |
| 推理计算量(长上下文) | V3.2的27% | V3.2的27% | - | - |
| 日均成本(100万tokens输出) | 6元 | 2元 | 105元 | 90元 |
| 优化策略后日均成本 | 3元(低谷调度) | 1元(低谷调度) | 105元 | 90元 |
即使高峰翻倍,DeepSeek V4的价格仍远低于GPT-4o(约1/9)和Claude Opus 4.8(约1/7)。加上缓存命中可低至0.025元/百万tokens,以及合理的低谷调度策略,开发者可以将实际成本控制到极致。
六、对AI云服务行业的深远影响
峰谷定价将成为行业标配
DeepSeek的峰谷定价标志着AI云服务从"按量计费"进入"按时间计费"阶段。这类似于电力行业的阶梯电价——通过对资源的时间维度定价,实现更高效的供需匹配。
预期未来12个月内,其他国产模型(Qwen、GLM、MiniMax)将跟进类似定价策略。这本质上是算力商品化的必然结果。
DSpark带来的推理效率革命
DSpark推测性解码不仅降低了DeepSeek自身的运营成本,更重要的是为整个行业提供了一种"无需修改模型架构即可提升推理速度"的方法论。Flash版本85%的速度提升意味着,同样的硬件可以服务近两倍的并发请求——这对于算力紧张的国产AI生态意义重大。
国产算力适配的战略意义
DeepSeek V4深度适配华为昇腾生态。待下半年昇腾950批量上市后,Pro版本价格还有进一步下调空间。这预示着国产AI正在从"追赶者"变为"价格制定者"。
七、总结
DeepSeek V4正式版的发布包含两个层面的变革:
技术层面:DSA稀疏注意力将长上下文推理成本降低到极致,DSpark推测性解码让推理速度提升85%,MoE架构+百万上下文+MIT开源形成强大的开发者吸引力。
商业层面:峰谷定价不是简单的涨价,而是AI云服务精细化运营的标志性事件。它通过价格杠杆优化资源配置,同时为行业树立了"时间维度定价"的标杆。
正如DeepSeek创始人梁文锋在A轮融资后所说:“技术能力决定上限,商业模型决定下限。“V4正式版正在同时突破这两条线。
数据来源:DeepSeek官方公告(2026-06-29)、IT之家、南方都市报、新浪财经