ThousandBirdsInc/chidori
The agent framework where every run is durable, replayable, and resumable by default.
解决的问题
Chidori 解决了 AI 智能体具有的非确定性、高成本和脆弱性问题。它消除了重现 Bug 的困难、调试期间重复运行相同 LLM 提示词的成本,以及进程崩溃或在长时间运行中需要人工确认时进度丢失的问题。
工作原理
Chidori 使用带有嵌入式 JavaScript 引擎的 Rust 运行时来执行使用纯 async TypeScript 编写的智能体。它将每一次副作用(如 LLM 调用、工具执行和 HTTP 请求)拦截为“宿主调用”(host call)。这些调用会被记录在日志(journal)中。这种机制允许运行时实现:
- 检查点与恢复: 将运行状态保存到磁盘,使其在崩溃后仍能保留或在新的进程中恢复。
- 确定性重放: 针对记录的日志重新运行完全相同的代码,无需进行新的 LLM 调用即可生成字节级一致的输出,实现零 Token 成本。
- 人机回环 (Human-in-the-Loop): 使用
chidori.input()或信号将运行挂起至磁盘,释放系统资源,直到人工提供输入。
适用对象
构建长时间运行、高成本或需要人工干预的 AI 智能体的开发者,他们希望将工作流引擎的可靠性和可测试性与标准 TypeScript 代码的灵活性相结合。
亮点
- 零 Token 重放: 以零 LLM 成本和完全相同的结果重放任何运行过程,用于调试或测试。
- 纯 TypeScript: 无需复杂的图或 DSL;智能体使用标准的
async/await流编写。 - 自包含运行时: 单个 Rust 二进制文件,不依赖 Node.js、Deno 或 V8。
- 持久化执行: 在每次宿主调用时默认进行检查点保存,实现崩溃恢复和长期暂停。
- 高级智能体模式: 支持基于 Actor 的多智能体监督、用于 A/B 测试的分支执行以及结构化提示词缓存。
- 集成包管理: 无需安装 Node.js 即可安装纯 ESM npm 包。
相关
- 项目
- 项目
- 项目
- 项目
- 项目