构建个性化的微代理

主要观点:作者对 AI 接管持中立态度,认为 AI 使工具构建和自动化更易,介绍了自己的项目[meain/esa]及个性化微代理的理念,包括什么是代理、为何构建个性化代理及微代理、esa 的介绍及解剖等。
关键信息:

  • 代理是可自主使用工具、迭代任务并确定完成的 LLM,其关键特征是能访问工具、决定使用工具及顺序、确定任务完成。
  • 个性化代理可应对不同生活挑战,如作者创建的树状语法查询生成代理,LLM 难以可靠生成,需创建特定代理。
  • 微代理有用,如减少困惑、提高工具调用效果、更快速便宜、更安全自主等,作者以树状语法代理为例说明。
  • [meain/esa]是创建个性化微代理的 CLI 工具,其配置文件为 TOML 格式,包含系统提示和工具列表。
  • 系统提示给代理提供高层次指令和个性设定,可使用 LLM 辅助编写,还可通过{{$...}}在系统提示中进行求值替换。
  • 工具定义为 CLI 脚本或命令,可利用 CLIs 已有的功能,如与外部服务认证、有有用错误消息等。
  • esa 有+auto代理可自动选择合适代理完成用户请求,还内置+new代理用于创建代理。
    重要细节:
  • 代码示例展示了代理的基本运行逻辑while True: output, tool_call = run_llm(messages, list_of_tools) if output: print(output) if tool_call: messages.append(tool_call.run()) else: break
  • 作者管理的 Emacs 项目[meain/evil-textobj-tree-sitter]使用树状语法定义文本对象。
  • 给出了树状语法查询生成代理的配置文件示例,包括各种工具的定义及使用方式。
  • 详细说明了 web 搜索代理的系统提示和工具定义,如使用[jarun/ddgr]搜索网页、[gardenappl/readability-cli]和[Johanneskaufmann/html-to-markdown]读取网页内容等。
  • 提到 esa 的文档包括[README.md]、[docs/agents.md]、[docs/mcp.md]等。
阅读 9
0 条评论