BoundaryML/baml

The programming language for agents

解决的问题

BAML 通过提供专门为 AI Agent 设计的专用编程语言,解决了 Agent 开发中的脆弱性问题。其目标是通过使用专为 Agent 工作流定制的类型安全、静态分析环境来取代通用编程语言,从而减少 Agent 的错误。

工作原理

BAML 作为一种领域特定语言(DSL)运行,它结合了类 TypeScript 的语法和类 Rust 的类型系统。它允许开发人员定义在运行时持久存在的 Agent 逻辑和类型,从而消除了不安全的转换或对 any 类型的使用。它可以作为一种独立语言使用,也可以通过 Python、TypeScript、Go、C# 和 Java 等语言的调用集成到现有项目中。

适用对象

专为构建 AI Agent 的软件工程师设计,这些工程师需要高可靠性、静态分析和强类型,以防止运行时错误和无效输出。

亮点

  • 具有快速编译能力的强大 Rust 式类型系统
  • 内置的测试和评估框架
  • 对 Agent 特定标准库的原生支持
  • 类似于 Go 的无色并发和绿色线程
  • 多语言互操作性 (TS, Py, Go, C#, Java)