清华复旦斯坦福联合开发的Agent开发框架Eko,颠覆自动化工作流程

清华复旦斯坦福联合开发的Agent开发框架Eko,颠覆自动化工作流程

Eko Agent

一、Eko诞生的背景与抢先“Operator”的故事

OpenAI一直以来都是人工智能领域的领军者,当传出其即将发布“Operator”,一款能让Agent接管用户电脑和浏览器完成各种任务的工具时,整个行业都为之期待。然而,清华、复旦、斯坦福等高校的研究团队,凭借其卓越的科研实力和创新精神,率先推出了名为“Eko”的Agent开发框架,成功截胡“Operator”。

“Eko”的出现并非偶然。随着人工智能技术的不断成熟,企业和个人对于工作流程自动化的需求日益增长。传统的人工操作不仅效率低下,还容易出现错误。而Agent技术的发展,为实现工作流程自动化提供了可能。“Eko”正是在这样的背景下应运而生,旨在为开发者提供一个便捷、高效的开发框架,快速构建可用于生产的“虚拟员工”,帮助人们完成各种复杂的任务。

二、Eko让工作流程自动化的具体示例

  1. 自动收集雅虎财经数据
    在金融领域,及时准确地获取市场数据至关重要。Eko可以自动在雅虎财经上收集纳斯达克的最新数据,包括主要股票的价格变化、市值、交易量等关键信息。收集完成后,它还能对这些数据进行深入分析,并生成可视化报告。这一功能极大地节省了金融分析师的时间和精力,使他们能够将更多的注意力放在对数据的解读和投资策略的制定上。例如,对于一家投资公司来说,每天需要花费大量人力去收集和整理各类财经数据,而Eko的出现,让这一繁琐的工作实现了自动化,提高了数据收集的效率和准确性。
  2. 登录页面自动化测试
    在软件开发和互联网行业,确保网站和应用程序的登录功能正常运行是至关重要的。Eko可以执行复杂的登录页面自动化测试任务。比如,给定正确的账户和密码“admin/666666”,它会随机组合用户名和密码进行测试,验证登录验证是否正常工作,包括用户名不能为空、密码不能为空、用户名不正确、密码不正确等各种情况。最后,它会尝试使用正确的账户和密码登录,验证登录是否成功,并生成测试报告并导出。这对于保证软件和网站的质量、提升用户体验具有重要意义。以一个新上线的电商平台为例,通过Eko的自动化测试,可以快速发现登录页面可能存在的漏洞和问题,及时进行修复,避免给用户带来不好的体验。
  3. 清理文件
    在日常办公中,随着时间的推移,电脑中的文件会越来越多,占据大量的存储空间。Eko能够清理当前目录下大于1MB的所有文件,帮助用户轻松管理文件系统,释放磁盘空间。这一功能在企业办公环境中尤为实用,许多公司的员工电脑中会积累大量的临时文件、无用的大文件等,通过Eko的自动清理,可以提高电脑的运行速度,提升工作效率。

三、Eko的核心技术创新点

  1. 混合智能体表示
    Eko提出了“Mixed Agentic representation”,创新性地将表达高层次设计的自然语言与开发者低层次实现的程序语言无缝结合。自然语言具有灵活性和易理解性,能够方便地描述任务的目标和大致流程;而程序语言则能够精确地实现具体的操作和逻辑。通过这种结合,开发者可以更高效地构建智能体,既能够以自然语言的方式描述任务的整体框架,又能利用程序语言实现细节功能。例如,在描述一个数据分析任务时,开发者可以先用自然语言描述“从指定数据源获取数据,对数据进行清洗和分析,生成可视化图表”,然后再用程序语言实现具体的数据获取、清洗和图表生成的代码。
  2. 跨平台Agent框架
    Eko提出的环境感知架构,使得同一套框架和编程语言可以同时支持浏览器使用、电脑使用以及作为浏览器插件使用。这一架构由通用核心、环境特定工具和环境桥接三个关键层次构成。

    • 通用核心:提供了与环境无关的基本功能,如工作流管理,它负责协调和控制整个任务的执行流程,确保各个环节有序进行;工具注册管理,用于管理不同环境下的工具注册,使得开发者能够方便地调用各种工具;LLM(大语言模型)集成,将强大的语言模型融入框架,为智能体提供自然语言理解和生成等能力;钩子系统,为开发者提供了在不同阶段插入自定义逻辑的接口。
    • 环境特定工具:每种环境(如浏览器扩展、Web环境、Node.js环境)都有优化的工具集。例如,在浏览器环境中,有专门用于操作网页元素的工具;在Node.js环境中,有面向命令行界面操作和文件系统管理的工具。这些工具根据不同环境的特点进行了优化,提高了在特定环境下的工作效率。
    • 环境桥接:负责环境的检测、工具注册、资源管理和安全控制。它能够自动检测当前所处的环境,并根据环境的特点注册相应的工具,确保不同平台之间能够顺利互动和通信。同时,它还能对资源进行合理管理,保障系统的安全运行。比如,在浏览器扩展和Web环境中,采用严格的权限控制和API密钥管理,防止非法访问;在Node.js环境中,基于用户权限进行文件操作和命令执行,在需要时会在执行前请求用户确认。
  3. 生产级干预机制
    与现有Agent框架普遍强调的自治性不同,Eko框架提供了显性的生产级干预机制。这意味着智能体工作流可以随时被中断和调整,从而保障人类对生产级智能体工作流的有效监管和治理。Eko提供了三种不同层级的钩子:

    • 工作流钩子:位于工作流的最上层,用于整体控制和监控自动化流程的启动和结束。例如,在工作流开始之前,可以进行资源初始化,如分配内存、连接数据库等;在工作流结束后,可以进行清理和处理最终结果,如关闭数据库连接、保存处理结果等。
    • 子任务钩子:位于工作流的中间层,允许在每个子任务开始前和结束后进行监控和处理。比如,在每个子任务前记录日志,以便在出现问题时能够追溯任务执行的过程;在任务完成后对中间结果进行处理,如数据格式转换、数据验证等。
    • 工具钩子:是最细粒度的钩子,允许在每个工具执行前后进行验证和修改。例如,在工具执行前验证输入参数,确保工具接收到的数据是正确和有效的;在工具执行后处理返回结果,如对结果进行过滤、汇总等。

四、Eko与传统Agent框架的优势对比

  1. 安全性
    传统Agent框架在安全性方面可能存在一些不足,而Eko针对不同环境实施了适当的安全措施。在浏览器扩展和Web环境中,采用严格的权限控制和API密钥管理,只有经过授权的操作才能执行,有效防止了恶意攻击和数据泄露。在Node.js环境中,虽然允许更广泛的系统级访问,但基于用户权限进行文件操作和命令执行,并且在需要时会在执行前请求用户确认,保障了系统的安全。
  2. 工具注册
    传统Agent框架可能需要开发者手动注册工具,操作繁琐且容易出错。而Eko通过loadTools()等工具,自动注册适用于当前环境的工具。这使得开发者可以在多个环境中无缝地切换,并确保工具的正确加载。例如,当开发者从浏览器环境切换到Node.js环境时,Eko能够自动识别环境变化,并注册相应的工具,大大提高了开发效率。
  3. 任务规划
    传统Agent框架在任务规划方面可能缺乏系统性和高效性。Eko团队提出的层次化规划框架,将任务的拆解分为Planning layer和Execution layer。Planning layer负责将用户的需求(自然语言或代码语言表示)和现有工具集拆解成一个有领域特定语言表示的任务图,该任务图由LLM一次性合成,描述了子任务之间的依赖关系。Execution layer则根据每个任务调用LLM来合成具体的执行行为和工具调用。这种层次化规划提高了任务规划的效率和准确性,使得智能体能够更合理地安排任务执行顺序。
  4. 视觉 – 交互感知
    在处理复杂网页任务时,传统Agent框架可能存在精度和效率低下的问题。Eko的视觉 – 交互要素联合感知框架(VIEP)通过将视觉识别与元素上下文信息结合,显著提升了在复杂网页中的任务精度和效率。它通过提取网页中的交互元素(如A11y树),并将其映射到领域特定语言,生成高效的伪HTML代码,简化了元素的表征。与传统的A11y + Screen shot方案相比,VIEP在视觉信号方面,引入了Set-of-Mark,确保每个元素的视觉标识符与伪HTML中的标识符一一对应,提升了元素识别的精度。同时,为了优化性能,截图分辨率被压缩至原始的60%,画质压缩至50%,减少了资源消耗,同时保持了足够的识别质量。与传统的HTML表示相比,VIEP通过简化交互元素和生成紧凑的伪HTML结构,避免了直接处理庞大HTML内容的开销,大幅提高了处理速度和准确度。

五、Eko团队成员背景与发展潜力

  1. 团队成员背景
    • 陆逸文:清华大学博士生,研究兴趣为具身智能平台和智能体。在具身智能领域的研究积累,为Eko框架的设计和实现提供了重要的理论支持和技术思路。
    • 罗卓伟:FellouAI首席工程专家,目前从事人工智能相关领域工作。其丰富的工程实践经验,有助于将前沿的科研成果转化为实际可用的产品,确保Eko框架的稳定性和实用性。
    • 马骁腾:清华大学自动化系博士后,博士毕业于清华大学。主要研究兴趣为强化学习和智能体。强化学习方面的专业知识,为Eko在任务执行和优化过程中提供了强大的算法支持。
    • 陈家棋:复旦大学硕士生,斯坦福大学访问学生学者。主要研究领域为计算机视觉和智能体。在计算机视觉方面的研究,为Eko在处理网页视觉元素等任务中提供了关键技术。
  2. 发展潜力与行业影响
    • 金融行业:Eko可以在金融行业得到广泛应用,除了前面提到的自动收集财经数据外,还可以用于风险评估、投资组合管理等任务。例如,通过自动化的数据分析和模型计算,为投资者提供更准确的风险评估报告,帮助他们做出更明智的投资决策。
    • 互联网行业:在互联网行业,Eko可以用于网站的自动化测试、内容管理、用户行为分析等。比如,自动检测网站的性能指标,及时发现并解决潜在的问题;根据用户行为数据,自动生成个性化的推荐内容,提升用户体验和平台的竞争力。
    • 软件开发行业:在软件开发过程中,Eko可以协助进行代码审查、测试用例生成、软件部署等工作。例如,自动审查代码是否符合规范,生成全面的测试用例,提高软件的质量和开发效率。

六、Eko面临的挑战和问题

  1. 技术挑战
    尽管Eko在技术上有诸多创新,但随着人工智能技术的不断发展,仍面临着一些挑战。例如,随着大语言模型的不断更新和优化,如何更好地与新的模型进行集成,进一步提升智能体的性能,是需要解决的问题。此外,在处理更加复杂和多样化的任务时,如何提高智能体的泛化能力和适应性,也是技术研发的重点。
  2. 安全和隐私问题
    随着Eko在不同行业的应用,安全和隐私问题变得尤为重要。尽管Eko已经采取了一系列安全措施,但在面对日益复杂的网络攻击手段时,如何进一步保障用户数据的安全和隐私,防止数据泄露和滥用,是需要持续关注和解决的问题。
  3. 用户接受度和培训成本
    对于一些传统行业的用户来说,引入Eko这样的自动化工具可能需要一定的学习和适应过程。如何提高用户对新技术的接受度,降低培训成本,让更多的用户能够轻松上手使用Eko,也是推广过程中需要考虑的问题。

七、Eko的相关链接

  • 官网:https://eko.fellou.ai/
  • Github链接:https://github.com/FellouAI/eko
  • 文档地址:https://eko.fellou.ai/docs/

 

© 版权声明

相关文章

暂无评论

暂无评论...