ACT-2 深度解析:家用机器人如何把“会做”推进到“可靠地做”
0. 简介
Sunday Robotics 在 2026 年 7 月公开的 ACT-2 面向陌生家庭中的衣物折叠,处理的是机器人在实验室会做、换到真实环境却频繁失效的问题。官方预览没有披露完整网络结构,而是公开了“多样化人类数据预训练、少量域内数据后训练、跨家庭固定权重评测”的可靠性配方:同一检查点在 785 次自主尝试中完成 778 次,成功率为 99.1%±0.3%。下面结合 ACT-2 官方数据、原始 ACT 论文、开源代码以及 Tony Zhao 访谈中披露的团队与数据运营信息,拆解可以确认的机制、实现流程、方法论取舍与仍待验证的边界。

1. 从演示到可靠性:ACT-2 真正要解决的指标变化
1.1 一段成功视频无法回答“换个家还能不能做”
机器人演示最容易制造的误解,是把一次成功当成能力已经成立。相机位置、衣物初态、床单颜色、操作者是否在镜头外干预,都会显著改变难度;只给成功片段,读者看不到失败分布,也无法比较两套系统。ACT-2 把问题改写为三个同时报告的量:任务做得多好、结论覆盖哪些环境与物体、每到一个新家庭需要付出多少适配成本。可靠性必须和作用范围、适配成本一起解释,否则 99% 既可能代表跨家庭能力,也可能只是同一件衣服反复测试的结果。
直觉理解:驾校学员在熟悉场地连续倒车入库十次,不等于他能在陌生车库、不同光线和不同车位宽度下稳定完成。成功率是分数,场景范围是试卷,现场微调次数则是考前是否看过答案;三者缺一项,分数就没有可比性。
1.2 Solve 把成功率放回可审查的边界
Sunday 将这种声明方式命名为 Solve:在预先声明的 scope 内,以明确的 adaptation cost 达到可靠表现。衣物折叠的范围包括 9 类常见衣物、XXS 到 8XL 的尺寸、不同材质和颜色、床上或地面篮筐等初态,以及机器人位于床的左侧、右侧或床尾;袜子、内衣、胸罩和配饰不在本次范围内。目标家庭与目标衣物没有参与任务专用后训练或模型选择,评测期间权重固定。这里的关键是,“零适配”指每个目标家庭不再采集专属数据,并不等于模型从未做过折衣训练。
2. 先把谱系讲清:ACT、ACT-1 与 ACT-2 不是同一份实现
2.1 原始 ACT 是动作序列生成算法
2023 年的 ACT(Action Chunking with Transformers) 来自 ALOHA 工作,目标是让低成本双臂机器人从人类遥操作示范中学习精细操作。它把下一步动作预测改成未来 k k k 步动作块预测,并用时间集成融合重叠动作块;训练时再用 CVAE 建模人类示范里的多种合法动作风格。论文报告,原始系统用每项约 10 至 20 分钟数据学习 6 个真实双臂任务,其中开调料杯、装电池等任务达到 80% 至 90% 量级。这是 ACT-2 的技术祖先,不是 ACT-2 的公开源码,两者不能因为名称相同就混为一谈。
2.2 ACT-2 公开的是训练配方与评测,不是网络蓝图
ACT-1 于 2025 年公开时强调由传感化人类数据训练基础模型;ACT-2 进一步强调大规模预训练如何让少量后训练改进迁移到未见家庭。Sunday 的 ACT-2 预览没有给出层数、参数量、动作头数量、CVAE 是否仍被使用,也没有证明参考材料所称的“短时序物理头与长任务规划头”就是正式结构。这里要厘清的是:原始 ACT 的 CVAE、Transformer 解码器和时间集成有论文与代码证据;ACT-2 的具体内部架构目前仍属未公开信息。严肃解读可以用前者解释谱系,但不能把它偷换成后者的实现细节。

3. ACT-2 的公开核心:预训练规模如何缩小泛化差距
3.1 泛化差距是域内与域外收益之差
ACT-2 官方把后训练后的域内成功率记为 S in ( D ) S_{\text{in}}(D) Sin(D),域外成功率记为 S out ( D ) S_{\text{out}}(D) Sout(D),其中 D D D 表示预训练数据规模。博客可以把它整理成下面的泛化差距。 G ( D ) G(D) G(D) 越小,说明在公司内部机器人上学到的改进越可能迁移到未见家庭,而不是只记住后训练房间、衣物或拍摄条件。这个指标不追求一个抽象的“通用性分数”,它直接回答工程团队最关心的问题:内部修掉一个失败,部署现场是否也会同步受益。
G ( D ) = S in ( D ) − S out ( D ) G(D)=S_{\text{in}}(D)-S_{\text{out}}(D) G(D)=Sin(D)−Sout(D)
官方表格显示,在相同后训练流程下,预训练规模从 0% 提升到 12%、25%、50% 和 100% 时,泛化差距分别为 82、10、8、4 和 0 个百分点;对应域外成功率从 14% 上升到 90%、92%、96% 和 100%。这里的关键是,这组试验描述的是特定折衣后训练设置下的缩放趋势,并非所有机器人任务都遵循同一曲线。预训练的价值不是直接把所有任务做满,而是让局部修正更容易外溢到域外条件。
难点提示:可以把基础模型想成一张覆盖城市道路的地图,后训练像在地图上标出某个施工路口的绕行方案。地图只覆盖一条街时,这条经验离开街区就失效;地图覆盖完整城市后,同一种路口结构在别处也能被识别,局部绕行规则才有迁移价值。
3.2 数据质量决定同样预算能换来多少能力
Sunday 还比较了高质量子采样与均匀子采样。在 12.5%、25% 和 50% 的数据规模下,高质量子采样成功率分别为 75.6%、87.9% 和 92.3%,均匀子采样则为 43.8%、53.6% 和 64.1%;两者在 25% 数据规模下相差 34.3 个百分点。官方同时报告验证损失与真实成功率存在强相关,使团队能在昂贵真机评测前先筛数据配比。这里值得注意,官方没有公开“高质量”的完整过滤规则,因此我们能确认数据选择有效,却不能据此复刻同一数据配方。

4. 动作分块:原始 ACT 如何压缩长任务的有效时域
4.1 从预测一步改为预测未来 k k k 步
单步行为克隆学习 π θ ( a t ∣ o t ) \pi_{\theta}(a_t\mid o_t) πθ(at∣ot),每执行一步就重新预测一次。只要某一步误差把机器人带到训练集很少出现的状态,后续误差就会继续累积。ACT 改为一次预测未来 k k k 步动作序列,把长度为 T T T 的任务从约 T T T 次相互依赖的决策缩短为约 T / k T/k T/k 个动作块。直观理解是,抓住衣角、对齐边缘、完成一次折叠各自形成局部运动单元,模型学习单元内部的时序关联,而不是把每一帧都当成孤立选择。
π θ ( a t : t + k − 1 ∣ o t ) , H effective ≈ ⌈ T k ⌉ \pi_{\theta}\!\left(a_{t:t+k-1}\mid o_t\right), \qquad H_{\text{effective}}\approx \left\lceil\frac{T}{k}\right\rceil πθ(at:t+k−1∣ot),Heffective≈⌈kT⌉
这条公式里, o t o_t ot 是当前多相机图像与关节状态, a t : t + k − 1 a_{t:t+k-1} at:t+k−1 是未来 k k k 个目标关节位置, H effective H_{\text{effective}} Heffective 是近似有效决策时域。这里要厘清的是,动作分块没有消除闭环控制:原始 ACT 可以每一步重新查询模型,再用时间集成融合重叠预测。块越大,时域越短,但过大又会接近开环控制;论文消融中,平均成功率从 k = 1 k=1 k=1 的 1% 升至 k = 100 k=100 k=100 的 44%,继续增大后略有回落。

4.2 查询向量把未来动作位置变成并行输出槽
公开仓库里的 DETRVAE 把 num_queries 直接作为动作块长度。每个 query 对应未来块中的一个相对位置,Transformer 解码器并行产生
k
k
k 个隐藏状态,再由线性动作头映射到关节空间。下面来回顾一下原始 ACT 如何把动作块长度写进模型结构。ACT-2 是否沿用同一实现没有公开证据,这段代码的作用是帮助读者理解名称中的 Action Chunking。
# detr/models/detr_vae.py
self.num_queries = num_queries
self.camera_names = camera_names
self.transformer = transformer
self.encoder = encoder
hidden_dim = transformer.d_model
self.action_head = nn.Linear(hidden_dim, state_dim)
self.is_pad_head = nn.Linear(hidden_dim, 1)
self.query_embed = nn.Embedding(num_queries, hidden_dim)
这段实现有两个工程含义。第一,动作块不是先输出一个长向量再切片,而是由一组有位置含义的 query 直接索引未来动作槽;第二,is_pad_head 让长度不足
k
k
k 的序列能与补齐掩码共同训练。后续 action_head(hs) 会把每个 query 的隐藏状态映射为一个关节动作,因此输出天然具有 [batch, chunk, action_dim] 结构。动作块长度同时影响控制时域、显存占用和反应速度,它不是越大越好的容量旋钮。
工程价值:动作块像驾驶员提前规划一小段并线路径,而不是每移动一厘米就重新决定方向。规划太短会不断摇方向盘,规划太长又来不及应对旁车变化;合适的块长度需要同时覆盖一个可辨认的动作单元,并保留足够高的重规划频率。
5. CVAE:原始 ACT 怎样处理人类示范中的多种合法轨迹
5.1 训练时读取未来动作,推理时丢弃编码器
同一件衣服可以从左边先折,也可以从右边先折;同一观测对应多条合法动作轨迹时,普通回归容易取平均,生成一条谁都不像的动作。原始 ACT 用 CVAE(Conditional Variational Autoencoder) 将动作序列与关节状态编码成潜变量 z z z,解码器再根据图像、关节状态和 z z z 预测动作块。训练阶段,编码器看得到专家未来动作;推理阶段,未来动作不存在,编码器被丢弃并令 z = 0 z=0 z=0。这种训练/推理不对称是论文明确披露的设计,但不能直接推断 ACT-2 仍使用同一潜变量路径。
# detr/models/detr_vae.py
if is_training:
action_embed = self.encoder_action_proj(actions)
qpos_embed = self.encoder_joint_proj(qpos)
qpos_embed = torch.unsqueeze(qpos_embed, axis=1)
cls_embed = self.cls_embed.weight
cls_embed = torch.unsqueeze(cls_embed, axis=0).repeat(bs, 1, 1)
encoder_input = torch.cat([cls_embed, qpos_embed, action_embed], axis=1)
代码把 [CLS]、当前关节状态和未来动作块拼成序列,随后取 [CLS] 输出预测均值
μ
\mu
μ 与对数方差
log
σ
2
\log\sigma^2
logσ2。这里的关键是,图像没有送入 CVAE 编码器;论文解释这是为加快训练,图像仍由策略解码器处理。编码器学的是“这段专家动作属于哪种执行风格”,而不是重新做一遍视觉理解。潜变量用来吸收示范的多模态变化,视觉闭环仍由解码器承担,两条职责被有意分开。
5.2 重参数化与 KL 正则不是随机炫技
CVAE 通过重参数化
z
=
μ
+
σ
⊙
ϵ
z=\mu+\sigma\odot\epsilon
z=μ+σ⊙ϵ 让随机采样可以反向传播,并用 KL 散度约束后验不要偏离标准高斯。训练目标由带掩码的动作重建误差与 KL 正则组成,其中
β
\beta
β 是权重。原始论文称使用 L1 比 L2 得到更精确的动作建模;开源配置示例把 kl_weight 设为 10。这个目标的作用不是让机器人执行时随机试动作,而是让训练阶段把示范差异压入一个连续、受约束的潜空间。
L ACT = ∥ a ^ t : t + k − 1 − a t : t + k − 1 ∥ 1 ⏟ L recon + β D K L ( q ϕ ( z ∣ a , o ) ∥ N ( 0 , I ) ) ⏟ L reg \mathcal{L}_{\text{ACT}} =\underbrace{\left\|\hat a_{t:t+k-1}-a_{t:t+k-1}\right\|_1}_{\mathcal{L}_{\text{recon}}} +\beta\,\underbrace{D_{\mathrm{KL}}\!\left(q_{\phi}(z\mid a,o)\,\|\,\mathcal{N}(0,I)\right)}_{\mathcal{L}_{\text{reg}}} LACT=Lrecon ∥a^t:t+k−1−at:t+k−1∥1+βLreg DKL(qϕ(z∣a,o)∥N(0,I))
其中 a ^ \hat a a^ 是预测动作块, a a a 是专家动作块, q ϕ q_{\phi} qϕ 是训练期编码器, β \beta β 控制潜变量携带多少动作风格信息。原始 ACT 消融很有说服力:在确定性脚本数据上移除 CVAE 几乎不影响结果,而在人类示范上,平均成功率从 35.3% 降到 2%。CVAE 的收益针对的是人类数据的多模态性,不是对所有数据集都无条件有效,这也解释了为什么单看网络复杂度会误判它的价值。
# policy.py
all_l1 = F.l1_loss(actions, a_hat, reduction='none')
l1 = (all_l1 * ~is_pad.unsqueeze(-1)).mean()
loss_dict['l1'] = l1
loss_dict['kl'] = total_kld[0]
loss_dict['loss'] = loss_dict['l1'] + loss_dict['kl'] * self.kl_weight
return loss_dict
代码中的补齐位置通过 ~is_pad 从 L1 中排除,KL 则按 batch 汇总后乘权重。进一步看,这个实现没有直接监督 is_pad_hat,模型主要依赖数据端掩码控制有效动作范围;工程复现时若任务长度差异很大,需要检查掩码平均是否稀释短序列误差。这里值得注意,参考材料把 CVAE 描述成 ACT-2 的“多样化动作正则”,但官方 ACT-2 页面没有确认这一点,文章只能把它作为 ACT 谱系中已验证的机制。
6. 时间集成:动作块怎样在执行阶段保持闭环与平滑
6.1 同一时刻会收到多个历史动作块的预测
如果模型每 k k k 步才看一次新图像,执行会在块边界突然切换,也更难处理衣物滑动。原始 ACT 的时间集成选择每一步重新查询策略,于是时刻 t t t 会同时拥有多份对 a t a_t at 的预测:它们分别来自 t t t、 t − 1 t-1 t−1、 t − 2 t-2 t−2 等时刻生成的重叠动作块。系统对这些“预测同一物理时刻”的动作做指数加权,而不是把相邻时刻的动作直接平滑。后者会引入时间偏移,前者则保留动作目标的时刻一致性。
a ~ t = ∑ i = 0 n t − 1 w i a ^ t ( i ) ∑ i = 0 n t − 1 w i , w i = exp ( − m i ) \tilde a_t= \frac{\sum_{i=0}^{n_t-1} w_i\,\hat a_t^{(i)}}{\sum_{i=0}^{n_t-1}w_i}, \qquad w_i=\exp(-m i) a~t=∑i=0nt−1wi∑i=0nt−1wia^t(i),wi=exp(−mi)
式中 a ^ t ( i ) \hat a_t^{(i)} a^t(i) 是第 i i i 个历史动作块对同一时刻 t t t 的预测, m m m 控制不同历史预测的权重衰减。论文文字把 w 0 w_0 w0 定义为最旧预测的权重,公开代码按缓存顺序生成指数权重;复现时应确认缓存索引方向是否与期望的新旧偏好一致。时间集成增加推理计算,却不增加训练成本,它用部署阶段的重复查询换取更平滑的闭环动作。
6.2 公开代码如何落地重叠动作块
下面片段来自 imitate_episodes.py 的真机/仿真评测循环。all_time_actions 保存每个查询时刻对未来各时刻的预测,执行到
t
t
t 时取出所有非零候选,再用
k
=
0.01
k=0.01
k=0.01 的指数权重求和。与公式对应,代码不会平均
a
t
−
1
a_{t-1}
at−1 和
a
t
+
1
a_{t+1}
at+1,只融合不同查询对
a
t
a_t
at 的估计。这种区别对精细接触很重要,因为错一帧的目标位置可能把夹爪推离衣角。
# imitate_episodes.py
all_time_actions[[t], t:t+num_queries] = all_actions
actions_for_curr_step = all_time_actions[:, t]
actions_populated = torch.all(actions_for_curr_step != 0, axis=1)
actions_for_curr_step = actions_for_curr_step[actions_populated]
k = 0.01
exp_weights = np.exp(-k * np.arange(len(actions_for_curr_step)))
exp_weights = exp_weights / exp_weights.sum()
raw_action = (actions_for_curr_step * exp_weights).sum(dim=0, keepdim=True)
这段代码也暴露了一个老实现的工程局限:它用“动作向量是否全非零”判断槽位是否写入,若合法动作恰好含全零向量,就可能被误当成空槽。更稳妥的实现应维护独立布尔有效位。这里的关键是从源码理解机制,而不是把 2024 年前后的研究代码直接当成生产栈。ACT-2 要在移动底盘、升降躯干和双臂上稳定运行,必然还需要调度、碰撞约束、故障恢复与系统延迟控制,但官方预览尚未公开这些模块。
难点提示:时间集成像几位测量员在不同时间站位,却都估计同一个钉子应该落在哪里。把这些估计加权平均可以减少单次测量噪声;若误把相邻三个钉子的位置拿来平均,木板上的孔位就会整体偏移。关键不是“平滑”两个字,而是候选预测必须指向同一执行时刻。
7. 数据引擎:真实、多样与高质量并不互相矛盾
7.1 “脏数据”应理解为覆盖真实分布,而非放弃质检
很多博主用“脏数据”概括 Sunday 的策略,这个词容易把两个概念混在一起。真实家庭里的褶皱、遮挡、光照变化、家具差异和人的扰动应该保留,因为它们正是部署分布的一部分;传感器错位、时间戳漂移、动作与图像不同步、采集者误操作却仍然需要过滤。Sunday 官方对 ACT-2 的表述是“高质量、高多样、传感化人类数据”,并强调数据选择在相同规模与算力下显著影响成功率。真正有价值的不是越乱越好,而是保留任务相关变化,同时清除破坏监督关系的噪声。
7.2 Skill Capture Glove 试图缩小人类动作到机器人动作的映射损失
Sunday 的 Skill Capture Glove 用传感化可穿戴设备记录人类家务动作,官网称已向 Memory Developers 发出数千副手套。与固定实验室遥操作相比,分布式采集能获得更多家庭、物体和行为风格;与纯互联网视频相比,手套又能提供更接近机器人控制所需的动作信号。这里的难点不只是数量,还是 embodiment alignment:人手自由度、接触位置和受力方式与机械手不同,采集硬件必须尽量让动作表示可映射,并对无法执行的人类动作做筛选。

进一步看,公开信息没有给出 ACT-2 的总预训练小时数、动作维度、同步误差、数据淘汰率,也没有证明“1000 万片段”与这次旗舰模型的训练集完全对应。用户参考文中的这些数量可以作为二手线索,却不适合写成模型卡事实。一个可复现的数据管线至少要记录设备版本、家庭分布、任务标签、失败类型、同步质量、隐私授权和训练/验证去重规则。数据规模只有与覆盖范围、传感质量和泄漏控制一起报告,才有技术含义。
工程价值:数据集像一批驾驶记录。雨天、夜路和拥堵不是脏点,而是必须保留的真实难例;GPS 跳点、相机掉帧和油门信号错位才是应清理的坏记录。把所有不整齐画面都删掉会造成“洁净但失真”,把所有故障信号都留下则会破坏监督。
8. 后训练闭环:为什么单条示范能学会并不等于单条数据足够部署
8.1 单示范迁移测试的是基础模型杠杆率
…详情请参照古月居
8.3 ACT-2 的定位不在“又一种动作头”
ACT-2 目前最有辨识度的部分,不是官方尚未公开的网络模块,而是把预训练规模、后训练样本效率、域内/域外差距和部署 scope 连成一套产品迭代逻辑。它与原始 ACT 的连接在于动作块式模仿学习谱系,与 π 0 \pi_0 π0、OpenVLA 的连接在于广泛预训练后快速获得新技能,与 RT-1 的连接在于真实机器人数据缩放。笔者的核心判断是:ACT-2 是 ACT 动作学习谱系向“预训练驱动的跨家庭可靠性”延伸,不是已经公开结构的新型 Transformer 论文。
9. 方法论:ACT-2 更像一个全栈学习系统
9.1 先搭基础设施,再放大研究产能
Tony Zhao 在 Conviction 访谈里反复讲到一个容易被技术解读忽略的顺序:Sunday 早期没有先堆研究员,而是先招工程师,把硬件、数据运营、机器人评测和机器学习基础设施搭起来。这个判断和 ACT-2 的公开结果能对上,因为跨家庭可靠性不是单次训练脚本能证明的能力,它要求机器人稳定执行、失败被记录、数据可回收、模型能复训、评测能复测。换句话说,研究产出的斜率取决于基础设施是否先把反馈回路接通;没有这条回路,研究员很容易在少量干净样本和局部算力上得到过于乐观的结论。
工程价值:这有点像先修赛车场和计时系统,再招车手调校赛车。没有稳定赛道、传感器和维修通道,车手只能凭感觉说车变快了;一旦基础设施存在,每一次调参都能被同一把尺子测量,也就更容易把偶然成功变成可复现进步。
9.2 全栈不是全自研,而是压缩反馈周期
两篇材料都把 Sunday 描述成全栈公司,但这里要厘清的是,全栈不等于所有零件都自己造。Tony 的说法更接近“未知足够多时,关键接口要握在自己手里”:硬件、软件、数据、模型、评测和供应链在同一目标函数下协作,才能把失败定位从数月级外包沟通压缩到天级内部迭代。进一步看,ACT-2 的 Solve 评测、少量后训练和域外复测本来就是跨模块协议,任何一环脱节都会让闭环失真。全栈的核心价值不是所有权,而是迭代速度、可观测性和归因能力。
9.3 Memory Developers 把数据采集变成组织能力
Conviction 访谈里最值得并入正文的细节,是 Sunday 把在家戴手套采集数据的人称为 Memory Developers,并尝试把同一套文化延伸到这支非传统队伍。它补足了“脏数据”叙事里缺少的一层:真实家庭数据不是自然流进数据库的资源,而是由采集者、设备、软件流程、任务说明、激励机制和质量反馈共同生产出来的监督信号。核心问题在于,如果采集者与工程团队是对抗关系,系统漏洞会被放大,长尾失败也不会被认真回传;如果他们共享目标,采集网络反而会变成早期故障发现与流程改进的一部分。数据飞轮先是组织飞轮,然后才是模型飞轮。
直觉理解:把 Memory Developers 当成普通外包标注员,就像把试飞员当成只负责按按钮的人。真正有价值的反馈往往来自“这个姿态总是打滑”“这只手套这里会漂移”“这个任务说明会诱导错误动作”这类现场细节;没有信任和反馈通道,这些细节不会进入训练系统。
9.4 硬件被当成 AI 载体,而不是一次性交付设备
Tony 还给了一个产品方法论判断:家用机器人不同于蓝牙音箱这类传统硬件,后者通常随着新品发布而贬值,前者如果模型、数据和部署闭环持续变强,可能随时间获得更多任务能力。这个判断不能替代成本、可靠性和安全性的产品验证,但它解释了 Sunday 为什么愿意重投入硬件同构、数据采集和在家评测:机器人机体是智能进入家庭的执行端,也是收集长尾失败的传感端。直观理解是,Memo 的价值不只来自出厂那一天的机械规格,而来自后续模型更新能否稳定转化为真实劳动替代。ACT-2 的方法论重点,是把硬件发布变成学习系统上线,而不是把模型演示包装成一次性产品卖点。
10. 结论
读完整条证据链,可以留下五个判断。第一,动作分块通过预测未来 k k k 步降低有效时域,时间集成再把重叠预测恢复成高频闭环;第二,原始 ACT 的 CVAE 主要解决人类示范的多模态性,不能在没有来源时写成 ACT-2 已确认结构;第三,ACT-2 的公开突破是预训练规模让局部后训练收益跨域迁移,并用固定权重、零家庭适配的 Solve 评测展示可靠性;第四,真实数据的价值来自分布覆盖、传感对齐和质量控制共同作用,“脏”不能成为保留同步错误与错误标注的借口;第五,Sunday 的组织取舍说明,基础设施、全栈协作和数据运营本身就是机器人基础模型的一部分,而不是论文方法之外的公司八卦。
ACT-2 最值得学习的不是一个尚未公开的网络秘方,而是“广覆盖预训练、少量针对性后训练、域内外双重评测、真实失败回流、全栈组织支撑”的可靠性工程。99.1% 的折衣成功率为这条路线提供了强证据,原始 ACT 的动作分块、CVAE 与时间集成则给出了可复现的算法入口;等完整技术报告、代码、数据说明和独立评测公开后,才能判断这套配方能否同样跨越收纳、清洁和精细工具使用的长尾。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)