Ambiance: 一种受 Unix 启发的 LLM Agentic Harness
Ambiance: 一种受 Unix 启发的 LLM Agentic Harness
Ambiance 通过利用模型对 Unix 系统的现有知识来减少 token 开销,从而优化 LLM 性能。
与其教导 LLM 一个全新的环境,Ambiance 实现了一个基于 Unix 哲学的 harness:模块化工具(只做一件事并将其做好)、文本流作为通用接口,以及结构化的文件系统。通过将 agentic 概念映射到文件系统层次结构标准 (FHS),该 harness 允许 LLM 在其已经精通的环境中运行,从而最大限度地减少 agent 导航其工具和数据所需的认知负荷(以 token 衡量)。
作为 Agentic Framework 的 Unix 哲学
Ambiance 构建于源自原始 Unix 信条的三个核心原则之上:
- 模块化、透明的工具:工具应该是单一用途的,并且应当在失败时明确报错,以确保 agent 可以识别并从错误中恢复。
- 可互操作的组件:Skills 定义工作流,tools 执行这些工作流,而 connectors 提供数据。这些组件必须无缝协作。
- 文本作为通用接口:由于 LLM 原生精通文本,所有数据——包括日志、配置和外部数据源——都表示为纯文本文件。
将 Agent 概念映射到文件系统层次结构标准 (FHS)
为了避免在文件发现和遍历上浪费 context,Ambiance 将 agentic 角色和数据映射到一个基于 FHS 的伪虚拟文件系统 (VFS)。这使得 LLM 可以利用其对 Linux 目录结构的先验知识来查找所需内容。
| Harness Concept | Unix Equivalent | FHS Path |
|---|---|---|
| Agents | Users | /home/... |
| External Data | Drivers | /sys/ |
| Tools | Binaries | /bin/ |
| Logs | Logs | /var/ |
| Self-healing | System Binaries | /sbin/ & /recovery |
| Skills | Documentation | /usr/share/doc |
Ambiance Kernel 与事件驱动执行
Ambiance 用一个被称为 "Kernel" 的事件总线取代了传统的 "heartbeat" 间隔(即 agent 每 30 分钟检查一次更新)。
事件驱动触发
Kernel 通过在文本文件上使用 cursors 来监控文件系统的变化。当检测到变化时,它会调用 LLM。这确保了 agent 能够实时响应通知和状态变化,而不会在空的 heartbeat 检查上浪费 token。
安全与调解
Kernel 作为 LLM 与外部世界之间的中间层,执行完整性检查、清理和故障保护,以确保 agent 的行为是安全的,且没有明显的危害。
多用户 Agent 架构
Ambiance 采用了一种专门的多用户系统来分离关注点并维持系统稳定性:
root:管理系统级任务,包括编写新的 drivers、创建 binaries,以及修复现有的 ones。pai:主要面向人类的 agent,负责与外部世界交互。librarian:维护系统性能日志,记录paiagent 的优缺点。
这些用户通过事件总线使用专门的 send-message binary 进行通信。
社区观点与批评
虽然受 Unix 启发的这种方法因其精简和可审计的特性而受到称赞,但该概念也面临着来自开发者社区的几项技术批评:
确定性 vs. 灵活性
一些人认为 harness 应该更具确定性,将更多逻辑移入可执行代码中,并仅将 LLM 用于处理边缘情况的决策。一位评论者建议,"English" prompt 应该本质上变成一个代码循环,其中 LLM 仅决定测试失败是否是由于功能变更引起的。
"Everything is a File" 的辩论
批评者质疑文件隐喻对 LLM 的效用。一种观点认为,文件——及其 seek 和 byte stream 抽象——对于在 token vectors 上运行的 LLM 来说是不必要的,因为 LLM 操作的是 token vectors。其他人则建议,JSON 等结构化数据在确保确定性方面优于纯文本。
领域特定性
有一种普遍观点认为,领域特定 harness(例如,专门针对软件工程并内置 ADR 和 planning skills 的 harness)比通用的 "do-anything" harness 更有效。正如一位用户所言:
"在没有工程 harness 的情况下运行 Claude,就像在没有刹车或方向盘的情况下驾驶汽车。"
技术约束
用户指出,当前的 Ambiance 实现似乎仅限于 macOS。