欢迎光临
我们一直在努力

腾讯Tairos具身智能三模型开源:30B VLM + 62B世界模型 + VLA全栈深度解析

一、引言:具身智能的\”安卓时刻\”

2026年WAIC现场,腾讯Robotics X与混元团队围绕Tairos平台,一口气开源了三套具身智能模型——Hy-Embodied-VLM-1.0(30B多模态视觉语言模型)、Hy-Embodied-RxBrain-1.0(62B世界模型)和Hy-Embodied-VLA-0.5(视觉语言动作模型),分别对应机器人的\”看懂、想象、行动\”三阶段。

这是全球首次由一个团队在同一技术框架下,同时开源感知、规划、执行三层的具身智能基础模型。如果把机器人行业比作智能手机时代,硬件公司负责造不同形态的\”手机\”,腾讯试图提供一套可以跨设备运行的\”通用智能软件栈\”——这可能是具身智能领域的\”安卓时刻\”。

本文深度解析三模型的架构设计、技术实现、代码实现细节和产业意义。

二、三模型架构全景

2.1 分层解耦的工程哲学

腾讯的拆法非常直接:VLM负责看,RxBrain负责想,VLA负责做。这套划分并非严格的神经科学结构,但极其适合工程落地:

┌──────────────────────────────────────────────────────────────┐
│ Tairos 具身智能平台 │
├──────────────────────────────────────────────────────────────┤
│ ┌─────────────────────┐ ┌───────┐ ┌─────────────────────┐ │
│ │ Hy-Embodied-VLM-1.0 │ │Tairos │ │ Hy-Embodied-VLA-0.5 │ │
│ │ 30B MoE 视觉语言 │ │ 框架 │ │ VLA 动作执行模型 │ │
│ │ 感知层 \”右脑\” │ │ 调度 │ │ 执行层 \”小脑\” │ │
│ └─────────┬───────────┘ └───┬───┘ └──────────┬──────────┘ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ Hy-Embodied-RxBrain-1.0 62B 世界模型 │ │
│ │ 规划层 \”大脑\” — 语言推理+视觉预测 │ │
│ └──────────────────────────────────────────────────┘ │
│ │
│ 数据栈: 5万小时具身数据 + 1万小时UMI操作数据 │
│ 跨本体适配: 越疆/节卡/宇树/星尘/智元等 │
└──────────────────────────────────────────────────────────────┘

2.2 为什么需要三层分离?

一个语言模型可以告诉你\”杯子通常放在桌上\”,但机器人面对真实世界需要回答:

  • 杯子离桌边还有多远?
  • 杯柄朝哪?
  • 手臂伸过去会不会撞到旁边的碗?
  • 抓起来以后,水会不会洒?

这就是具身智能与聊天机器人的分水岭——前者的推理落在物理世界中,必须面对重力、摩擦、遮挡、碰撞、延迟和失败。将感知、规划、执行解耦成独立模型,每一层都可以被单独优化、替换、升级。

三、Hy-Embodied-VLM-1.0:30B的\”右脑\”

3.1 架构设计

Hy-Embodied-VLM-1.0是一套面向机器人场景的视觉语言模型,总参数约300亿,采用MoE混合专家架构,每个Token只激活约30亿参数。

// VLMConfig VLM配置
type VLMConfig struct {


TotalParams int // 总参数量 30B
ActiveParams int // 每Token激活参数 3B
NumExperts int // 专家数 8
TopKExperts int // Top-K 2
VisionEncoder string // 视觉编码器 \”SigLIP-G/14\”
ImageSize int // 输入图像尺寸 448
NumVisionTokens int // 视觉Token数 256
TextVocabSize int // 文本词表 128000
TextHiddenDim int // 文本隐藏维度 4096
}

// EmbodiedVLM 具身视觉语言模型
type EmbodiedVLM struct {


Config VLMConfig
VisionEnc *SigLIPEncoder // 视觉编码器
VisualProj *VisualProjection // 视觉投影到文本空间
TextEmb *TokenEmbedding // 文本嵌入
MoELayers []*MoETransformerLayer // MoE层
OutputHead *LMHead
}

// VisualProjection 视觉投影 — 将视觉Token映射到文本嵌入空间
type VisualProjection struct {


Linear *DenseLayer
LayerNorm *LayerNorm
PositionID *PositionEmbedding
}

func (v *VisualProjection) Forward(visualTokens [][]float32) [][]float32 {


// 1. 线性投影到文本空间
projected := v.Linear.Forward(visualTokens)

// 2. 层归一化
normalized := v.LayerNorm.Forward(projected)

// 3. 添加位置编码(区分不同视觉区域)
posEmbedded := v.PositionID.Forward(normalized)

return posEmbedded
}

// MoETransformerLayer MoE Transformer层
type MoETransformerLayer struct {


Attention *MultiHeadAttention
AttnNorm *LayerNorm

// MoE路由
Router *MoERouter

// 专家FFN
Experts []*FeedForward
SharedExpert *FeedForward

OutputNorm *LayerNorm
}

// MoERouter MoE路由
type MoERouter struct {


Weights [][]float32 // [hidden_dim, num_experts]
TopK int // 选择Top-K个专家
NoiseScale float32 // 训练时加噪
}

func (r *MoERouter) Route(hidden [][]float32) ([][]int, [][]float32) {


batchSize := len(hidden)
seqLen := len(hidden[0])

expertIndices := make([][]int, batchSize)
expertWeights := make([][]float32, batchSize)

for b := 0; b < batchSize; b++ {


for s := 0; s < seqLen; s++ {


// 计算路由分数
logits := matVecMul(hidden[b][s], r.Weights)

// 训练时加噪(鼓励探索)
if r.NoiseScale > 0 {


noise := make([]float32, len(logits))
for i := range noise {


noise[i] = float32(rand.NormFloat64() * float64(r.NoiseScale))
}
logits = add(logits, noise)
}

// 选择Top-K专家
type expertScore struct {


idx int
score float32
}
ranked := make([]expertScore, len(logits))
for i, s := range logits {


ranked[i] = expertScore{

idx: i, score: s}
}
sort.Slice(ranked, func(i, j int) bool {


return ranked[i].score > ranked[j].score
})

indices := make([]int, r.TopK)
weights := make([

赞(0)
未经允许不得转载:171主机测评 » 腾讯Tairos具身智能三模型开源:30B VLM + 62B世界模型 + VLA全栈深度解析
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址