原贴链接

大家好!我们刚刚发布了[freeact](https://github.com/gradion - ai/freeact),这是一个轻量级代理库,它能使语言模型通过可执行的代码动作充当自主代理。通过让代理直接用代码而非像JSON那样受限的格式表达其动作,freeact为解决需要动态解决方案路径的复杂、开放性问题提供了一种灵活且强大的方法。

  • 支持在运行时动态安装和使用Python包。
  • 代理从反馈中学习,并将成功的代码动作作为可复用技能存储在长期记忆中。
  • 技能可以与freeact代理协作交互开发和改进。
  • 代理组合技能和任何其他Python模块以构建日益复杂的能力。
  • 代码动作在[ipybox](https://github.com/gradion - ai/ipybox)中执行,这是一个可本地或远程运行的安全Docker + IPython沙箱。

GitHub仓库:[https://github.com/gradion - ai/freeact](https://github.com/gradion - ai/freeact) 评估:[https://gradion - ai.github.io/freeact/evaluation/](https://gradion - ai.github.io/freeact/evaluation/)

我们很期待听到您的反馈!

观看示例: https://reddit.com/link/1hy8ii4/video/rs73092327ce1/player

讨论总结

这个讨论主要围绕freeact这个轻量级库展开。话题包括它与其他库(如smolagents)的比较、功能上的优势、在代码解决方案选择标准方面的疑问、使用者的经验分享、正面评价以及一些不满之处,整体讨论氛围比较温和,没有激烈的争议。

主要观点

  1. 👍 freeact和smolagents在部分方面相似
    • 支持理由:回复者指出在专注于代码操作、代理层级和轻量级框架方面二者相似。
    • 反对声音:无
  2. 🔥 freeact有更多功能,如支持技能交互式开发优化
    • 正方观点:回复者详细列举freeact在技能开发优化等方面的独特功能。
    • 反方观点:无
  3. 💡 freeact在面对多个正确代码解决方案时目前采用第一个候选方案,根据执行和环境反馈改进
    • 解释:krasserm称目前是这样的操作模式,后续版本会增加搜索操作空间的算法。
  4. 💡 该代理是能执行python代码的LLM的答案,不是真正找到多个解决方案
    • 解释:jaMMint认为代理是根据提示生成方案,不是真正意义上的找到。
  5. 💡 基于代码的代理运行效果较好,对多步骤任务有优势
    • 解释:评论者根据自身编写代码代理的经验得出此结论。

金句与有趣评论

  1. “😂 Freeact is similar to smolagents w.r.t. focus on code - actions, agency - level and lightweight scaffold.”
    • 亮点:明确指出freeact和smolagents的相似之处。
  2. “🤔 Freeact additionally supports interactive development and refinement of skills (tools) with the agent as skill coding assistant.”
    • 亮点:阐述了freeact在技能开发优化方面的独特功能。
  3. “👀 Well I’m impressed! Most of what you’re doing are things I’ve been struggling to get smolagents to do for awhile now.”
    • 亮点:表达出对freeact功能的认可。
  4. “😎 Wrote code - based agents myself and I can say, they can work quite nicely.”
    • 亮点:以自身经验肯定基于代码的代理运行效果。
  5. “💪 One more library that starts with "put your proprietary api keys here" with nothing about how to run it with local models.. I’m tired of these being advertised here on LocalLlama: I want local stuff”
    • 亮点:表达对新库要求输入专有API密钥且不提本地模型运行内容的不满。

情感分析

总体情感倾向是正面的,多数评论者认可freeact库的功能和优势。主要分歧点在于对新库要求输入专有API密钥且缺乏本地模型运行相关内容方面存在不满。可能的原因是用户希望库能更多考虑本地使用场景并且避免过多的专有API密钥要求。

趋势与预测

  • 新兴话题:freeact库后续可能增加的搜索操作空间算法。
  • 潜在影响:如果按照用户需求增加本地相关内容并优化代码解决方案选择标准等功能,可能会吸引更多用户使用,在代码代理相关领域有更广泛的应用。

详细内容:

标题:“freeact:用于代码动作代理的轻量级库”引发热烈讨论

近日,Reddit 上一则关于“freeact:A Lightweight Library for Code-Action Based Agents”的帖子引起了广泛关注。该帖子介绍了刚发布的 freeact 轻量级代理库,它能让语言模型通过可执行的代码动作充当自主代理,拥有诸多强大功能,如支持动态安装和利用 Python 包、从反馈中学习并存储成功的代码动作作为可复用技能等。此贴获得了众多点赞和大量评论。

讨论的焦点集中在 freeact 与其他类似库的差异、在面对多种正确代码解决方案时的选择标准、实际应用效果以及对本地模型的支持等方面。

有人询问 freeact 与 smolagents 有何不同,有人回答称在关注代码动作、代理级别和轻量级框架方面相似,但 freeact 还支持与代理作为技能编码助手进行技能的交互式开发和改进,并且对技能的实现接口没有特定要求,支持本地和远程的沙盒代码执行。

有人提出若让代理处理问题并找到两个正确但不同的代码解决方案 A 和 B,它如何决定提供哪一个以及依据何种标准。对此,回复是目前使用代码动作的第一个候选方案,并根据执行和环境反馈提出改进,后续版本会增加搜索动作空间的其他算法。

有用户表示自己编写过基于代码的代理,认为其效果不错,尤其在多步骤任务中能简化解决方案,但也提醒若不小心可能会造成严重问题,需要良好的防护措施。

还有人称赞这个库很棒,交互流畅,代码能在几秒内运行成功的感觉几乎神奇。但也有人抱怨又出现一个需要输入专有 API 密钥却未提及如何在本地模型中运行的库,希望能有更多关于本地模型的支持。

总的来说,freeact 库引发了大家对其功能、优势和不足的深入探讨,同时也对其未来发展和改进充满期待。