from .task_parser import TaskParser from .tool_selector import ToolSelector from .plan_graph_builder import PlanGraphBuilder from .plan_optimizer import PlanOptimizer class ToolPlannerPipeline: def __init__(self): self.p=TaskParser(); self.s=ToolSelector(); self.b=PlanGraphBuilder(); self.o=PlanOptimizer() def __call__(self,task): tokens=self.p.parse(task) tools=self.s.select(tokens) plan=self.b.build(tools) return {'task':task,'plan':self.o.optimize(plan)}