Judy Planner¶
Judy 的 Planner 负责任务规划和分解,是 Judy 多智能体系统的核心组件之一。
概述¶
Planner 基于 tong-cell 框架构建,负责将复杂用户请求分解为可执行的子任务计划。
位置¶
功能¶
- 任务理解:分析用户输入,理解任务意图
- 计划生成:生成多步骤执行计划
- 子任务编排:确定子任务执行顺序和依赖关系
- 动态调整:根据执行结果动态调整计划
类定义¶
from judy_core.agents import PlannerAgent
class PlannerAgent:
def __init__(self, config: PlannerConfig):
self.llm = config.llm
self.max_subtasks = config.max_subtasks
async def plan(self, user_request: str) -> ExecutionPlan:
"""生成执行计划"""
# 1. 理解任务
task_understanding = await self.llm.understand(user_request)
# 2. 分解子任务
subtasks = await self.llm.decompose(task_understanding)
# 3. 生成计划
plan = ExecutionPlan(subtasks=subtasks)
return plan
async def revise_plan(self, plan: ExecutionPlan, feedback: str) -> ExecutionPlan:
"""根据反馈修订计划"""
pass
配置参数¶
| 参数 | 说明 | 默认值 |
|---|---|---|
max_subtasks |
最大子任务数 | 10 |
timeout |
超时时间 | 60s |
retry_count |
重试次数 | 3 |
与 Executor 协作¶
使用示例¶
from judy_core.agents import PlannerAgent, PlannerConfig
config = PlannerConfig(
llm="gemini-pro",
max_subtasks=15
)
planner = PlannerAgent(config)
# 生成计划
plan = await planner.plan("帮我写一个 Python Web 服务器")
print(plan.subtasks)