尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

具身智能下一战:数据之争,还是模型推理的“o1时刻”?

具身智能下一战:数据之争,还是模型推理的“o1时刻”? 具身智能下一场竞争是数据之战还是“具身 o1 时刻”如果你在 2024 年以后才开始关注具身智能大概率会听到两种听起来都很“性感”的说法。一种认为具身智能当前最大的瓶颈是数据。谁掌握了海量的机器人操作数据谁就能在模型训练中占据先机。于是我们看到各路团队开始卷数据采集远程操作、遥操作、仿真合成、视频挖掘甚至“数据工厂”变成一个正式工种。另一种声音则认为数据只是燃料真正的分水岭在于模型是否会迎来属于自己的“o1 时刻”——也就是当机器人模型从“感知-映射-动作”的统计模式进化到具备某种程度的推理、规划、自我修正能力时整个行业的天花板才会被真正打开。这两种说法在社交媒体上常常被塑造成非此即彼的路线之争。但作为一个做机器人算法和模型训练的工程师我的判断更偏向一个“保守但务实”的结论数据和推理不是二选一而是具身智能能力爬坡的两个阶段。数据决定模型的下限推理决定模型的上限。而“具身 o1 时刻”大概率不是等来的是在数据达到一定规模、质量、多样性之后用特定的训练方法“逼”出来的。这篇文章我想从技术角度拆一拆这件事。1. 这篇文章真正要解决的问题先说清楚这篇长文不是一篇行业综述也不是帮你押注哪条技术路线“会赢”。我更想把它写成一份“工程师视角的行业判断技术拆解”。针对“数据”和“o1 时刻”我准备讨论下面这几个问题具身智能里的“数据”和 NLP/CV 里说的数据本质区别在哪里为什么单纯堆数据可能达不到 OpenAI o1 那种推理能力跃迁的效果所谓的“具身 o1 时刻”到底指的是什么能力它依赖的模型结构、训练方法、数据组织形式是什么作为一个普通开发者或中小团队如果现在想切入具身智能应该把精力放在数据还是算法推理上我尽量不写成那种“全行业都在转向具身智能未来已来”的空话。咱们就沿着技术实现的路径从数据采集、数据清洗、模型训练、推理测评这几个环节把逻辑捋一遍。读完这篇文章你可以得到一个相对清晰的判断框架以及几条可以落地的技术实践路径。2. 具身智能的核心概念与当前瓶颈2.1 具身智能不等于“机器人大模型”先做个基础概念的澄清。“具身智能”这个词很多人第一次听到会以为就是把 GPT 接到机器人上让机器人能听懂人话、像个高级语音助手那样执行指令。这个理解不完全错但过于简化。具身智能Embodied AI强调的是一个智能体可以在物理世界或高保真仿真环境中通过传感器感知环境、通过执行器对环境施加影响并根据反馈不断调整自身行为。它的核心不是单模态的语言理解而是“感知-决策-行动”的闭环。从这个定义出发你就明白了具身智能不是一个单独的模型而是一个系统问题。系统里至少包含感知模块视觉、触觉、力觉、深度估计、分割、跟踪决策规划模块任务规划、运动规划、轨迹生成控制执行模块底层运动控制、力控、柔顺控制学习框架如何从数据中学习策略、如何保证安全当“具身智能”这个词被提出来时大家以为最大的难点在“智能”上也就是决策规划。但真正做起来才发现最脏最累的活全部集中在数据上。2.2 具身智能数据为什么比文本和图像数据麻烦得多做 NLP 的人对数据的要求是“干净、成规模、有逻辑”做 CV 的人对数据的要求是“多样性、标注准确、场景覆盖”。但到了具身智能这里数据问题变得更复杂甚至可以说是“地狱难度”。主要有四个原因。第一数据是多模态且强时间相关的。一段机器人操作数据不只是几张图片。它包含 RGB 视频、深度图、力觉反馈、关节角度、关节力矩、末端速度还有指令文本并且这些数据是严格按时间轴对齐的。少了任何一个模态模型在部署时都可能出现“感知缺失”。第二数据的“正确动作”没有唯一标准。给定一个桌面抓取任务人类可以有多种完成方式从左侧抓、从右侧抓、垂直下抓、先用夹爪拨一下再抓……在 NLP 任务里文本标签还有相对明确的答案但在机器人操作任务里轨迹本身就是一个高维连续分布。如何定义数据质量、如何筛选“好轨迹”本身就是研究问题。第三动态数据难以清洗。图像分类数据里出现一只“三只耳朵的猫”人眼可以快速判断标注错误并剔除。但机器人操作数据里一个看似没问题的轨迹可能因为力矩过大、对物体施加了过大的力导致模型学到一种“暴力操作”模式。这种隐蔽的数据问题让数据清洗变得极其困难。第四真实数据的采集成本极高。一个熟练的操作员用遥操作设备采集一条“叠衣服”的演示数据可能要好几分钟。如果要做大规模数据涉及的设备折旧、人力成本和场地成本都很高。这也是为什么许多团队转向仿真合成数据。2.3 当前瓶颈其实是一个“循环死锁”具身智能目前的状况很像一个先有鸡还是先有蛋的问题模型推理能力不够所以需要更多高质量数据来训练但高质量数据需要人来采集采集规模上不去数据规模上不去模型能力就无法突破模型能力不突破机器人就没法自主产出更多可用的训练数据。这个死锁是理解“数据派”和“o1派”争论的关键背景。数据派看到的是死锁的突破口必须靠把数据规模做上去——用仿真、AIGC、遥操作等各种手段把数据量扩大到某一个临界点模型才能产生质变。o1派看到的是单纯扩大数据量如果训练方法和模型架构不升级模型只是在模仿更多动作轨迹永远等不来真正的推理能力跃迁。从工程实践来看我更倾向于认为当前阶段数据问题依然是主要矛盾。而“o1时刻”是否到来取决于我们能否把数据问题解决到一个“足够好”的状态并且在训练方法上做出针对性的改变。3. “具身 o1 时刻”到底指的是什么3.1 从 ChatGPT 到 o1 的升级逻辑要理解“具身 o1 时刻”先回顾一下纯语言模型里 o1 发生了什么变化。GPT-4 这类模型在碰到复杂数学题时会直接给出一个答案。结果不对它也没办法自我纠正因为它的训练目标是“立即预测下一个 token”没有在推理过程中给自己留出思考和回退的空间。o1 的变革在于它把“思考过程”显式地引入到了推理链条中。模型在输出最终答案之前会先产生一段内部的推理链Chain of Thought不断自我检查、拆解问题、验证中间步骤。这种训练方式要求模型在长程推理上有更高的能力同时也需要训练数据里不仅仅包含“答案”还包含“推理过程”。换句话说o1 时刻的本质是模型从“直接映射输入到输出”进化到了“在内部进行多步推理后再输出”。3.2 具身智能里的“o1 时刻”应该是什么形态把同样的逻辑迁移到机器人领域所谓的“具身 o1 时刻”我认为至少应该包含以下几层能力第一任务拆解。机器人不再只是“看到杯子执行抓取”而是面对一个抽象指令比如“整理桌面”能够自主拆解成识别物体、规划顺序、逐个抓取、放置到指定区域、处理异常情况等子任务。第二失败预测与自我纠错。在执行过程中如果夹爪没有抓稳物体中途掉落模型应该能够感知到失败并自动重新调整策略。这不是简单的“重试”而是基于对当前状态的反馈重新规划动作。第三长时序规划。叠衣服、做菜、组装零件这些任务的时间跨度可能是几十秒到几分钟。模型需要在一个较长的动作序列中保持目标一致性而不是每秒钟都在“重新决定”。第四跨场景泛化。在训练环境中学到的能力可以迁移到未见过的新场景。比如训练时用的是红色杯子、白色桌子部署时换成蓝色杯子、木质桌面模型依然能完成任务。如果这些能力真正出现了那就是具身智能的 o1 时刻。3.3 现在离“具身 o1 时刻”还有多远从当前公开的技术进展来看我的判断是部分模块有雏形但整体还差得很远。一些端到端操作模型已经在“任务拆解”和“语言条件控制”上表现不错比如你告诉机械臂“把苹果放到碗里”它可以按指令执行。但一旦场景出现扰动比如碗被碰倒了或者苹果滚到了托盘边缘模型的恢复能力依然很弱。这是“具身 o1 时刻”最大的瓶颈在语言模型里推理错误只会造成一次低质量的回答在具身智能里推理错误会造成物理世界中的不可逆后果。这个差异决定了具身智能的推理能力训练要比 o1 在语言领域面临的挑战复杂得多。4. 数据在具身智能中的真实角色4.1 数据不是越多越好而是“结构”要合理很多团队在数据上的误区是以为把数据量怼到百万级、千万级模型能力就会自然涌现。从实际经验来看对于端到端的机器人操作模型数据的结构和质量远比单纯的数量重要。举个例子。假设你要训练一个“抓取桌面物体”的模型你采集了 10 万条演示。但如果你这 10 万条数据里有 8 万条都是从同一个角度、同一个高度、抓同一个位置的物体那么模型学到的其实是“在特定位置执行特定动作”而不是“根据物体的位置感知调整抓取策略”。遇到新场景模型立刻失效。更合理的做法是增加物体种类、位置、姿态的多样性增加光照条件、背景纹理的变化增加不同夹具的演示数据加入大量“失败尝试”数据让模型学会预判失败。4.2 数据采集的技术路线差异目前具身智能数据的来源主要有四条技术路线。路线一人工遥操作采集Teleoperation这是最传统也最可靠的方式。操作者通过 VR 设备、主从机械臂、空间鼠标等设备远程控制机器人完成操作任务同时记录传感信息和运动指令。优点是数据质量高动作自然缺点是成本高、速度慢而且操作者的水平会直接影响数据质量。路线二自动化数据采集通过预设程序让机器人在仿真或真实环境中自动执行大量任务同时记录数据。这种方式的缺点是机器人的自动行为往往比较单一缺乏人类演示中那种丰富的策略多样性。路线三仿真合成数据在仿真环境如 MuJoCo、PyBullet、Isaac Sim中生成训练数据。优点是成本低、规模大、可以自动生成标签缺点是存在 Sim2Real Gap仿真里学到的策略迁移到真实世界时会打折。路线四互联网视频数据挖掘从视频网站和公开视频数据中解析人类操作行为提取动作信息。本质上是一种从非结构化数据中“蒸馏”操作知识的方式。目前这个方向进展很快但底层的视频理解、动作对齐问题还很多。4.3 代码示例一个最基础的数据清洗流程无论数据来源是哪种清洗和预处理都是绕不开的一步。下面是一个用 Python 处理机器人操作数据的最小示例。假设我们从遥操作设备导出的数据格式是 CSV每条记录包含时间戳、六个关节角度、六个关节速度和夹爪开合状态。# 文件路径data_cleaning_example.py import pandas as pd import numpy as np from scipy import signal def clean_robot_data(input_path, output_path, joint_cols): 机器人操作数据清洗示例 :param input_path: 原始CSV路径 :param output_path: 清洗后CSV路径 :param joint_cols: 关节角度列名列表 df pd.read_csv(input_path) # 1. 删除关节角度超出物理限位的异常样本 for col in joint_cols: df df[(df[col] -3.14) (df[col] 3.14)] # 2. 用中值滤波平滑关节角度去除传感器跳变 smoothed df[joint_cols].apply( lambda x: signal.medfilt(x, kernel_size5) ) df[joint_cols] smoothed # 3. 过滤掉机器人处于“未激活”状态的数据行 df df[df[robot_state] ACTIVE] # 4. 去重针对时间戳完全相同的异常记录 df df.drop_duplicates(subset[timestamp]) # 5. 时间戳对齐重采样到 30Hz df[timestamp] pd.to_datetime(df[timestamp]) df df.set_index(timestamp).resample(30L).mean().ffill().reset_index() df.to_csv(output_path, indexFalse) print(f数据清洗完成共保留 {len(df)} 条样本) if __name__ __main__: joint_columns [ joint_1_angle, joint_2_angle, joint_3_angle, joint_4_angle, joint_5_angle, joint_6_angle ] clean_robot_data(raw_demo.csv, clean_demo.csv, joint_columns)这段代码做了几件在数据工程里很常规、但极其重要的事情删除超出关节限位的数据。很多采集数据在机械臂碰到奇异位形时角度读数会漂移直接留着会污染训练。用中值滤波平滑数据。传感器跳变在力控模式下尤其常见不处理的话模型会学到高频抖动。过滤机器人未激活状态的数据。采集过程中操作者可能中途去调整设备这部分数据是无效的。按固定频率重新采样保证训练时时间步对齐。真实场景里的清洗流程会比这个复杂得多比如还要做多传感器时间同步、三维轨迹平滑、多视角数据对齐等。但这个最小示例足以说明一个问题在追求“更多数据”之前先确保手上的数据是可靠的。5. 如何把数据优势转化为“类 o1”的推理能力5.1 从行为克隆到“自主反思”的训练方法现在回到核心问题数据规模上去了怎么才能在模型里逼出推理能力目前行业里比较被看好的训练框架大致是朝着下面这个方向演进的先行为克隆BC→ 再做强化学习RL→ 再做交叉反思训练。行为克隆是最传统的模仿学习方法让模型直接学习数据里的动作映射。它的局限是模型泛化能力差只会模仿见过的场景。强化学习则让模型在环境中试错通过奖励函数优化策略。它的好处是模型可以学会“未见过”的应对策略但也需要大量的环境交互。“交叉反思训练”是更具实验性的方向让模型同时学习“执行任务”和“评估任务是否成功”两种能力。也就是说模型在训练时不仅被要求输出动作还被要求预测“如果执行这个动作接下来会发生什么”。经过这种训练模型相当于自带了一个“内部模拟器”可以提前推演动作后果这就是具身智能版 o1 的核心。5.2 代码示例一个简化版的“动作执行成功预测”双头模型下面给出一段伪代码级的 PyTorch 示例展示如何将“执行”和“反思”两个任务结合在一个模型里。# 文件路径embodied_dual_head_model.py import torch import torch.nn as nn import torch.nn.functional as F class EmbodiedDualHeadModel(nn.Module): 具身智能双头模型动作生成头 成功预测头 def __init__(self, obs_dim, action_dim, hidden_dim512): super().__init__() # 共享编码器将多模态观测编码为特征向量 self.enc nn.Sequential( nn.Linear(obs_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, hidden_dim), nn.ReLU(), ) # 动作头输出控制指令如关节角速度 self.action_head nn.Sequential( nn.Linear(hidden_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, action_dim), ) # 反思头输出“该动作是否会导致成功”的概率 self.reflect_head nn.Sequential( nn.Linear(hidden_dim action_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, 1), ) def forward(self, obs, actionNone): feat self.enc(obs) # 生成动作 action_pred self.action_head(feat) # 如果训练时提供了真实动作就基于真实动作评估成功概率 eval_action action if action is not None else action_pred reflect_input torch.cat([feat, eval_action], dim-1) success_prob torch.sigmoid(self.reflect_head(reflect_input)) return action_pred, success_prob def compute_loss(self, obs, action_gt, success_gt): action_pred, success_prob self.forward(obs, action_gt) # 行为克隆损失让预测动作接近真实动作 bc_loss F.mse_loss(action_pred, action_gt) # 反思损失让成功预测接近真实结果 reflect_loss F.binary_cross_entropy( success_prob, success_gt.unsqueeze(1) ) # 联合训练权重可调 total_loss bc_loss 0.5 * reflect_loss return total_loss, bc_loss, reflect_loss从代码结构上看这个模型的核心思想是共享编码器从当前观测中提取状态特征比如视觉特征、关节角度、力觉反馈。动作头基于状态特征生成下一步动作。反思头接收“状态特征动作”的组合预测这个动作是否会导致成功。在训练时我们同时优化两个目标让生成的动作接近人类演示的动作。让反思头能准确判断“如果执行这个动作任务会不会成功”。当模型完成训练后部署时是可以做“提前推演”的。在真实执行动作指令前模型可以生成多个候选动作再用反思头分别计算预测成功率优先选择成功率最高的动作。这个流程和 OpenAI o1 在语言模型中先“思考”再“输出”的逻辑是相似的。5.3 为什么这种训练方式需要“特殊的数据结构”如果你的训练数据里只有“成功演示轨迹”那这个双头模型是训练不出来的。因为反思头需要看到“失败样例”才能学会判断。于是数据工程师面临一个有意思的挑战数据集里必须刻意加入大量“失败演示”。比如机器人在抓取时偏了 5 厘米最终没能抓起杯子这样的轨迹也要进数据集。目前的行业共识是高质量数据不只是“做得好的数据”而是“成功的演示失败的尝试纠错过程”三者并存的完整数据。这正是“数据之争”和“o1时刻”交汇的地方。要在具身智能里复现 o1 级别的推理能力数据层面必须发生一次结构升级。6. 数据增强与仿真中小团队的现实路径6.1 中小团队面临的现实困境这里必须说点现实的东西。大厂可以自建遥操作台、雇佣大量数据标注与采集人员在真实环境里积累百万级操作轨迹。但中小团队没有这个资源。如果只是跟在大厂后面堆数据大概率是堆不过的。那中小团队的机会在哪里两条路做更垂直的数据场景用相对小的数据规模解决一个具体问题形成“小而精”的数据壁垒。用仿真数据AIGC辅助生成尽可能降低数据采集成本通过域随机化缩小 Sim2Real 差距。6.2 仿真数据增强的代码示例下面用一个基于 MuJoCo 的简化示例演示如何做域随机化Domain Randomization这算仿真数据增强里最常用也最有效的手段。# 文件路径domain_randomization_example.py import numpy as np def randomize_scene(random_params): 根据随机化参数生成场景配置 # 1. 光照随机化让光照方向、明暗随机变化 light_dir [ random_params[light_theta], random_params[light_phi], ] light_intensity random_params[light_intensity] # 2. 纹理随机化改变桌面材质颜色 table_color [ random_params[table_r], random_params[table_g], random_params[table_b], ] # 3. 物体属性随机化质量、摩擦系数、尺寸 object_mass random_params[object_mass] friction random_params[object_friction] object_size random_params[object_size] # 4. 相机位姿随机化 camera_pose [ random_params[cam_x], random_params[cam_y], random_params[cam_z], random_params[cam_yaw], ] # 返回一个结构化的场景配置字典 return { light: {dir: light_dir, intensity: light_intensity}, table: {color: table_color}, object: {mass: object_mass, friction: friction, size: object_size}, camera: {pose: camera_pose}, } def generate_random_params(seed42): 生成一组随机化参数覆盖常用范围 rng np.random.default_rng(seed) params { # 光照方位角 0~360 度俯仰角 20~80 度 light_theta: rng.uniform(0, 2 * np.pi), light_phi: rng.uniform(0.35, 1.40), light_intensity: rng.uniform(0.6, 1.5), # 桌面颜色RGB 在 0.2~0.9 之间 table_r: rng.uniform(0.2, 0.9), table_g: rng.uniform(0.2, 0.9), table_b: rng.uniform(0.2, 0.9), # 物体质量 0.05kg ~ 0.5kg object_mass: rng.uniform(0.05, 0.5), # 摩擦系数 0.3 ~ 1.2 object_friction: rng.uniform(0.3, 1.2), # 物体尺寸缩放 0.8 ~ 1.2 object_size: rng.uniform(0.8, 1.2), # 相机位置波动 cam_x: rng.uniform(-0.05, 0.05), cam_y: rng.uniform(-0.05, 0.05), cam_z: rng.uniform(0.9, 1.1), cam_yaw: rng.uniform(-0.15, 0.15), } return params if __name__ __main__: # 批量生成 100 组随机场景 for i in range(100): params generate_random_params(seedi) scene randomize_scene(params) # 实际项目中这里会调用仿真器接口 # 将 scene 配置应用到 MuJoCo / Isaac Sim 中执行采样 print(f场景 {i}: {scene})这段代码的重点在于通过改变机器人任务中不太影响物理正确性的参数光照、颜色、物体属性、相机视角我们可以从同一个仿真任务里采样出大量“语义一致但表现不同”的数据。模型在这样多样性的数据上训练泛化能力会明显增强。6.3 从仿真到真机迁移的注意事项仿真数据虽然香但如果直接拿仿真模型上真机一定会出现性能下降。这是 Sim2Real Gap原因包括仿真器里的物体物理属性和真实世界有差异比如摩擦、弹性、阻尼仿真中的视觉渲染和真实图像分布不同模型可能过度依赖仿真纹理特征仿真器的时间步长和真实控制频率不完全一致。比较通用的做法是 Domain Randomization 配合“域适配”比如在真实数据上做少量 Fine-tune或者用 CycleGAN 类方法对仿真图像做风格迁移。这些方法在实际项目中各有取舍但总原则只有一个仿真数据解决“广覆盖”真实数据解决“精度”两者缺一不可。7. 常见问题与判断误区回到最初的问题下一场竞争到底是数据还是“具身 o1 时刻”我从工程视角整理了几个常见误区方便大家对照自己的理解。问题观点误区分析更符合工程实际的判断数据已经够多了瓶颈在模型推理现有的公开操作数据规模相比语言模型仍很小。很多团队号称海量数据但有效、结构化、含失败演示的高质量数据更少数据规模和质量仍未达到瓶颈推理能力欠缺部分是数据不足导致的只要数据规模上来推理能力会自然涌现没有任何直接证据表明简单的行为克隆在数据量足够时能涌现推理能力数据是必要条件训练方法如反思、强化学习也需要同步升级“具身 o1 时刻”会突然到来像 ChatGPT 一样一夜爆发物理世界的交互验证周期比文本长很多模型迭代验证速度慢很难突然爆发更可能是渐进式突破某个细分任务先达到类 o1 水平再逐步扩展中小团队应该全力做仿真数据放弃真机数据仿真数据在简单抓取任务可行但接触丰富的操作如装配、布料操作仿真精度不足中小团队的出路是垂直场景仿真预训练少量真机微调8. 最佳实践与工程建议8.1 如果你的团队正在做具身智能项目以下几条建议来自实际项目经验不一定适用于所有团队但大概率能帮你少走弯路。第一先定义清楚要解决的任务边界。不要一开始就奔着“通用操作模型”去做。先选择一个窄但真实的任务场景比如“桌面零件的拾取与分拣”“单一型号的手机充电头插拔”。在任务边界内把数据质量、模型性能、部署稳定性都跑通再考虑扩展任务范围。第二数据采集和清洗要跟上模型迭代速度。很多团队把数据采集看成一次性工作采集两三个月后就开始训练训练完发现数据有各种问题再回头补采。这个过程在真实项目里非常常见。更好的方式是建立“数据-训练-评测-补充数据”的快速循环让数据工程和模型训练并行推进。第三在模型设计里提前为“反思”能力留接口。即使你当前只做行为克隆也可以在模型结构里加一个辅助预测头比如预测任务是否成功、预测下一个状态。这个辅助头可以在未来切换训练目标时派上大用场避免到时候重新设计模型结构。第四建立独立的评测集和评测标准。具身智能模型的一个痛点是评测不一致。同一个模型换个物体位置、换一个光照条件性能波动很大。建议团队建立一套固定的评测流程包括固定任务、固定场景、固定评估指标每次模型迭代都在同一套评测集上对比这样才能看到真实进展。第五留意安全和合规边界。具身智能和纯粹的数字模型不同它的操作会作用在真实物理世界。如果做的是机械臂抓取、移动操作等任务在调试阶段要确保有急停机制、力控保护、空间限位。尤其涉及人机协作场景时安全距离监测和运行环境隔离是必须做的基础防护。8.2 如果你准备从视觉或 NLP 转行做具身智能首先要做好心理准备这是一个系统工程不是只懂一个模型就能解决所有问题。建议的学习路径是掌握机器人学基础坐标变换、运动学、动力学、PID 控制、轨迹规划。掌握一个仿真环境MuJoCo 或 Isaac Sim。跑通一个端到端操作模型的完整流程从数据采集到模型训练再到仿真验证。再深入 RL 和模仿学习算法理解行为克隆、DAgger、PPO、TD3 这些基础算法。具身智能是一个“什么都得会一点”的领域但也正因为如此每个环节都有技术创新的机会。9. 总结与后续实践方向回到文章的标题。数据还是“具身 o1 时刻”我的技术判断是两者根本不在同一维度上。数据是物理层面的基础工程推理能力是智能层面的能力涌现。没有足够的数据推理能力就是无源之水没有训练方法的升级数据量再大也只是“更高精度的模仿”。如果你是一个正在投入具身智能方向的开发者我更建议你现在把精力放在数据上尤其是高质量的、结构化的、包含失败示例的数据。这不是一个性感的答案但它是最确定能产生复利的方向。“具身 o1 时刻”大概率会来但它不是等来的而是被数据、算法、评测体系一步步逼出来的。等你把数据问题解决到一定程度再回头看那个时刻可能已经悄悄到了。下一步你可以从这篇文章里选的代码示例出发搭一个最小的数据清洗流程跑一个最简的仿真数据增强管线然后尝试把“成功预测”加入你的策略模型——这条路比争论路线之争要实在得多。
返回列表