# controller 模块说明 ## 模块作用 协调整条流水线:配置加载、LLM 参数提取、Stage0 意图理解、挖掘、排序、解释生成、反馈收集、模型训练,以及 Stage4 多轮迭代。对外提供单次查询、训练、迭代会话等入口。 ## 文件 - manager.py: PipelineManager 流水线总控 - iteration_manager.py: IterationManager, IterationState ## PipelineManager 主要接口 - __init__(config_path): 传入配置文件路径,无返回 - is_ambiguous(text): 传入用户输入,返回 bool 是否模糊查询 - process_query(user_input, iteration_rounds=None): 传入查询与可选轮数,返回 Dict 含 params, patterns, rules, explanation 等 - train_model(): 无参,返回 bool 是否成功 - run_pipeline(): 无参无返,CLI 交互循环 - collect_feedback(patterns): 传入模式列表,返回反馈字典 - start_iteration(query, iteration_rounds): 传入查询与轮数,返回 Dict 含 session_id, patterns 等 - next_iteration(session_id, feedback): 传入会话 ID 与本轮 feedback 字典,返回当轮结果 Dict - finalize_iteration(session_id): 传入会话 ID,返回最终结果与历史 Dict ## IterationManager 主要接口 - __init__(miner, learner, memory, embedder, llm_client, intent_encoder, intent_mapper, fusion_alpha): 传入各组件与融合权重 - init_user_vector(query, user_id): 传入查询与用户 ID,返回 Optional[np.ndarray] 初始 u_llm - run_round(state, round_index): 传入迭代状态与轮次,返回本轮的 patterns、similarity_scores 等 Dict