主要观点:作者对 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]等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。