Cradle:使AI Agent像人一样通过控制键盘鼠标来完成计算机任务
Cradle简介
Cradle是由北京人工智能研究院(BAAI)、新加坡南洋理工大学和北京大学计算机学院的联合研究团队开发的一款新型智能代理框架。该框架旨在通过模拟人类与计算机的交互方式——即通过屏幕图像和声音输入以及键盘鼠标操作输出——来实现对各种计算机任务的掌握。Cradle结合了信息收集、自我反思、任务推断、技能策划、行动规划以及记忆存储等多个模块,以应对多模态观察、精确控制、长期记忆与推理以及高效探索等挑战。通过在复杂的AAA级游戏《荒野大镖客:救赎2》(Red Dead Redemption II)中的应用,Cradle展示了其在通用计算机控制(GCC)设置下的泛化和自我提升能力。

Cradle主要功能
- 信息收集:从屏幕截图和可能的音频输入中提取多模态信息,包括文本和视觉信息,以理解当前环境和任务需求。
- 自我反思:评估先前执行的动作是否成功,并分析失败的原因,以便采取补救措施或改进决策。
- 任务推断:根据当前情境和历史经验,推断并选择最合适的下一步任务。
- 技能策划:生成或更新与给定任务相关的技能,这些技能以代码函数的形式存在,便于机器学习和执行。
- 行动规划:根据推断的任务和选定的技能,规划一系列具体的键盘和鼠标操作。
- 记忆存储与检索:维护一个记忆模块,存储过去的经验和知识,以支持长期决策和快速反应。
Cradle技术原理
- 多模态学习:Cradle能够处理和理解来自屏幕截图的图像和文本信息,以及可能的音频输入,实现对复杂环境的感知。
- 强化学习与决策:通过自我反思和任务推断模块,Cradle能够进行强化学习,不断优化其决策过程。
- 代码生成:利用大型多模态模型(如GPT-4V)生成执行复杂任务所需的代码函数,实现技能的策划和行动的规划。
- 内存管理:通过 episodic 和 procedural 记忆,Cradle能够存储和检索关键信息,支持长期的任务执行和知识复用。
- 环境交互:Cradle通过生成的代码函数,将高级任务转化为具体的键盘和鼠标操作,与计算机环境进行交互。
- 自我提升:通过不断的实践和自我反思,Cradle能够自主发现更好的策略和解决方案,实现自我提升和泛化能力的提升。
Cradle应用场景
- 桌面软件操作:自动化执行日常办公软件中的复杂任务,如文档编辑、表格处理等。
- 网页浏览与交互:模拟人类用户浏览网页,进行信息检索、在线购物或填写表单等操作。
- 游戏环境:在视频游戏中,执行角色控制、战斗策略、资源管理和任务完成等。
- 数字艺术创作:辅助用户在图形设计软件中进行创作,如Photoshop中的图像编辑和绘画。
- 教育与培训:在模拟环境中进行技能训练,例如飞行模拟器训练或手术模拟。
- 虚拟助手:作为个人或企业的虚拟助手,自动执行日程管理、邮件分类和客户服务等任务。
Cradle项目入口
- 官方项目主页:https://baai-agents.github.io/Cradle/
-
GitHub代码库:https://github.com/BAAI-Agents/Cradle
-
arXiv技术论文:https://arxiv.org/pdf/2403.03186
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...