新智元报道
新智元报道
【新智元导读】Eko是一个强大的Agent开发框架,开发者能用自然语言和简单代码快速构建「虚拟员工」,完成从简单指令到复杂工作流的任务,如股票分析、自动化测试等;通过混合智能体表示、跨平台架构和生产级干预机制等创新技术,实现高效、灵活且安全的自动化工作流程。
抢在OpenAI发布Operator之前,清华、复旦和斯坦福的研究者联合提出了名为Eko的 Agent开发框架,开发者可以通过简洁的代码和自然语言,快速构建可用于生产的「虚拟员工」。AI智能体能够接管用户的电脑和浏览器,代替人类完成各种任务,为工作流程提供自动化支持。
核心技术创新有三点:
-
混合智能体表示:提出了Mixed Agentic representation,通过无缝结合表达高层次设计的自然语言(Natural Language)与开发者低层次实现的程序语言(Programming Language)。 -
跨平台Agent框架:提出环境感知架构,实现同一套框架和编程语言,同时支持浏览器使用、电脑使用、作为浏览器插件使用。 -
生产级干预机制:现有Agent框架普遍强调自治性(Autonomous),即无需人类干预,而Eko框架提供了显性的生产级干预机制,确保智能体工作流可以随时被中断和调整,从而保障人类对生产级智能体工作流的有效监管和治理。
Homepage: https://eko.fellou.ai
Github link:https://github.com/FellouAI/eko
Eko:革新生产级智能体开发的框架
用实际的例子来感受一下这个Agent框架的开发难度:只需要一句话,就可以让Eko生成一个全Agent帮你做股票分析。这不就是妥妥的生产力工具吗!真是解放双手!
在雅虎财经上收集纳斯达克的最新数据,包括主要股票的价格变化、市值、交易 量,分析数据并生成可视化报告。
当前登录页面自动化测试: 1. 正确的账户和密码是:admin / 666666 2. 请随机组合用户名和密码进行测试,以验证登录验证是否正常工作,例如:用户名不能为空、密码不能为空、用户名不正确、密码不正确 3. 最后,尝试使用正确的账户和密码登录,验证登录是否成功 4. 生成测试报告并导出
清理当前目录下大于1MB的所有文件
环境感知架构(Environment-Aware Architecture)
主要场景
-
通用核心:这一层提供了与环境无关的基本功能,如工作流管理、工具注册管理、LLM(大语言模型)集成和钩子系统。 -
环境特定工具:每种环境(如浏览器扩展、Web环境、Node.js环境)都提供了优化的工具集。 -
环境桥接:这一层负责环境的检测、工具注册、资源管理和安全控制,确保不同平台之间能够顺利互动和通信。
层次化规划(Hierachical planning)
研究人员提出层次化感知框架,将任务的拆解分为两层,包括Planning layer 和 Execution layer。其中Planning layer负责将用户的需求(自然语言或代码语言表示)和现有工具集拆解成一个有领域特定语言(Domain-specific language)表示的任务图(Task graph)。
任务图是一个有向无环图,描述了子任务之间的依赖关系。该任务图由LLM一次性合成。在Execution layer中,根据每个任务调用LLM来合成具体的执行行为和工具调用。
// Javascript
await eko.execute(workflow, {
hooks: {
beforeToolUse: async (tool, context, input) => {
console.log(`准备执行工具:${tool.name},输入参数:`, input);
return input;
},
afterToolUse: async (tool, context, result) => {
console.log(`工具执行完成:${tool.name},输出结果:`, result);
return result;
}
}
});
-
工作流钩子(Workflow Hooks)这些钩子位于工作流的最上层,用于整体控制和监控自动化流程的启动和结束。例如,你可以在工作流开始之前进行资源初始化,或在工作流结束后进行清理和处理最终结果。 -
子任务钩子(Subtask Hooks)这些钩子位于工作流的中间层,允许你在每个子任务开始前和结束后进行监控和处理。例如,你可以在每个子任务前记录日志,或在任务完成后对中间结果进行处理。 -
工具钩子(Tool Hooks)这是最细粒度的钩子,允许你在每个工具执行前后进行验证和修改。例如,你可以在工具执行前验证输入参数,或在工具执行后处理返回结果。
展望
作者介绍
(文:新智元)