Skip to content

意图系统

意图系统(Intent System)提供声明式的、基于 LLM 的高层意图分解,将复杂目标自动拆解为可执行的子任务 DAG,并支持协调执行、重试和漂移检测。


概述

传统的智能体编排需要手动定义每个步骤。意图系统采用不同的方法:你声明想要什么,Rnix 使用 LLM 将其分解为子任务 DAG,然后自动执行和监控。

高层意图


分解器 (LLM)


意图树 (DAG)


协调器 (执行 + 监控)


结果

适用场景

方式适用场景
rnix -i "..."简单的单智能体任务
rnix compose up预定义的多智能体工作流(静态 DAG)
意图系统复杂目标的动态分解(LLM 生成 DAG)

核心概念

意图树(IntentTree)

IntentTreeIntentNode 组成的 DAG,表示高层意图的分解结果:

IntentTree {
  ID: "intent-abc123"
  RootIntent: "重构认证模块"
  Nodes: {
    "analyze":    { intent: "分析当前认证代码", state: completed }
    "design":     { intent: "设计新的认证架构", depends_on: [analyze], state: executing }
    "implement":  { intent: "实现新的认证流程", depends_on: [design], state: pending }
    "test":       { intent: "编写认证测试", depends_on: [implement], state: pending }
  }
}

意图状态

每个节点经历以下生命周期:

pending → decomposing → await_confirm → executing → completed

                                            └──→ failed → retrying → executing
状态说明
pending等待依赖完成
decomposingLLM 正在生成子任务
await_confirm等待用户确认(如启用)
executing智能体进程运行中
completed成功完成
failed执行失败
retrying正在重试

漂移检测

协调器持续比较期望状态(所有节点完成)与当前状态。当两者偏离时,记录漂移:

漂移类型说明
node_failed节点失败
node_timeout节点超时
new_requirement识别到新的子任务
node_modified节点意图被修改

重试与失败处理

重试策略

每个节点可指定 max_retries。节点失败时:

  1. 如果 retry_count < max_retries:重置为 retrying,递增计数器,重新执行
  2. 如果重试耗尽:标记为 failed,级联失败到所有下游依赖节点

失败级联

当一个节点永久失败时,所有直接或间接依赖它的节点也被标记为失败:

A (failed) → B (failed: 上游依赖失败) → C (failed: 上游依赖失败)
                                       → D (failed: 上游依赖失败)

与 Compose 的关系

特性Compose意图系统
DAG 定义手动(YAML)LLM 生成
灵活性静态工作流动态分解
控制度用户完全控制LLM 决定子任务
确认步骤可选(await_confirm
漂移检测

两者共用内核 Spawn 创建进程,共享进程表。


相关文档

Released under the MIT License.