# LLM 子网 — 训练目标与训练计划 ## 概述 LLM 子网类比人脑的**布洛卡区(表达核)**,是 NextAgent 架构中**唯一的输出路径**(当前仅输出自然语言;可扩展图像、视频等输出子网)。 在认知解耦架构下,LLM 不再是"全知怪物",而是降级为专业的**语言生成引擎**:知识来源外置到记忆子网,逻辑推理外置到推理子网,LLM 仅负责将结构化的推理结果转换为自然语言。 ### 核心设计:LLM 下位化 ``` 传统 LLM: ┌────────────────────────────────────────────────────────┐ │ LLM │ │ 知识存储(参数内) │ 逻辑推理(隐式) │ 语言生成 │ 编码 │ │ 全部在同一个模型中耦合 │ └────────────────────────────────────────────────────────┘ ↓ 认知解耦 NextAgent LLM 子网: ┌────────────────────────────────────────────────────────┐ │ LLM 子网(表达专用) │ │ 输入:结构化推理路径张量(Core 提供) │ │ 知识:来自记忆子网(非自身参数) │ │ 逻辑:来自推理子网(非自身推理) │ │ 功能:仅做结构化→自然语言的精确转换 + 表达验证张量输出 │ └────────────────────────────────────────────────────────┘ ``` ### 双输出通道 这是 LLM 子网最核心的设计: ``` ┌──────────────────────┐ │ LLM 子网 │ │ │ 推理路径张量 ──────→ │ 张量解码层 │ (来自 Core) │ (标准→内部) │ │ │ │ │ ▼ │ │ ┌──────────────┐ │ │ │ LLM 核心 │ │ │ │ 语言生成模型 │ │ │ └──────┬───────┘ │ │ │ │ │ ┌────┴────┐ │ │ │ │ │ │ ▼ ▼ │ │ 通道1 通道2 │ │ 自然语言 表达验证 │ │ 文本 张量 │ │ │ │ │ │ │ │ │ └────┼─────────┼────────┘ │ │ ▼ ▼ 用户 → 调度 Core (最终输出) (验证正确性) ``` **通道1 — 自然语言 → 用户**: - 流畅、准确、有情感的自然语言输出 - 用户直接看到这部分 **通道2 — 表达验证张量 → Core**: - 不包含自然语言文本 - 包含:语义编码向量、置信度分数、情感标记、表达结构元数据 - Core 通过分析此张量判断 LLM 是否正确表达了推理结果 - Core **不通过自然语言判断**输出质量 ### 输入/输出 | 项目 | 说明 | |------|------| | **输入** | 结构化推理路径张量(来自 Core,经过张量解码层转换) | | **输出1** | 自然语言文本(直接发送给用户) | | **输出2** | 表达验证张量(发送给 Core) | | **输出2格式** | 统一通信张量,fmt_id=5 (expression_verify) | ### 表达验证张量格式 遵循统一通信张量协议,**无 JSON 结构**,全部为纯数值张量: ``` 统一通信张量 (纯数值) prefix: [fmt_id=5, parser_id=5] payload: [semantic_encoding (768)] # 输出文本的语义向量 [intention_alignment (1)] # 与输入推理路径的意图对齐度 (0~1) [factual_consistency (1)] # 与输入事实的一致性 (0~1) [emotion_vector (n_dims)] # 情感向量 [entity_preserved_mask (n_entities)] # 关键实体保留掩码 [0/1] [overall_score (1)] # 综合验证得分 (0~1) ``` **编码示例**: ```python def encode_expression_verify(output_text: str, reasoning_path: Tensor) -> Tensor: """LLM 自然语言输出 → 表达验证张量 (通道2) 通道1: 自然语言文本直接输出给用户 通道2: 此函数编码验证特征为纯张量返回给 Core """ sem_enc = sentence_encoder(output_text) # [768] alignment = cosine_sim(sem_enc, path_embedding) # [1] consistency = compute_factual_consistency( output_text, reasoning_path) # [1] emotion = emotion_analyzer(output_text) # [n] entity_mask = check_entities_preserved(output_text) # [n_entities] overall = compute_overall_score([alignment, consistency, entity_mask.mean()]) # [1] payload = concat(sem_enc, alignment, consistency, emotion, entity_mask, overall) return codec.encode(fmt_id=5, parser_id=5, data=payload) # Core 收到后解析 payload = codec.decode(comm_tensor) # 剥离 fmt_id=5 overall = payload[-1] if overall > THRESHOLD: # 验证通过 user_output = channel_1_text # 允许输出 ``` ## 子网内部架构 ``` ┌──────────────────────────────────────────────────────────────┐ │ LLM 子网 内部架构 │ │ │ │ 推理路径张量 ──→ ┌────────────────────────────────────┐ │ │ (来自 Core) │ 1. 张量解码层 (Tensor Decoder) │ │ │ │ 标准张量 → 内部结构化数据 │ │ │ └──────────────────┬─────────────────────┘ │ │ │ │ │ ┌──────────────────▼─────────────────────┐ │ │ │ 2. 输入适配器 (Input Adapter) │ │ │ │ 将推理路径转换为 LLM 适配的提示模板 │ │ │ │ 插入指令前缀和系统提示 │ │ │ │ 格式:系统提示 + 推理路径描述 + 格式约束 │ │ │ └──────────────────┬─────────────────────┘ │ │ │ │ │ ┌──────────────────▼─────────────────────┐ │ │ │ 3. LLM 核心 (语言生成模型) │ │ │ │ │ │ │ │ 模型选项: │ │ │ │ - Llama 3 (7B/70B) │ │ │ │ - Qwen 2.5 (7B/72B) │ │ │ │ - DeepSeek-V3 │ │ │ │ │ │ │ │ 生成参数:temperature=0.7, top_p=0.9 │ │ │ └──────────────────┬─────────────────────┘ │ │ │ │ │ ┌──────────────────┴──────────────────┐ │ │ │ │ │ │ ▼ ▼ │ │ ┌──────────────────────────┐ ┌──────────────────────────┐ │ │ │ 4a. 输出适配器 (通道1) │ │ 4b. 表达编码器 (通道2) │ │ │ │ (Output Adapter) │ │ (Expression Encoder) │ │ │ │ │ │ │ │ │ │ 后处理: │ │ 语义编码提取 │ │ │ │ - 格式规范化 │ │ 意图对齐度计算 │ │ │ │ - 长度裁剪 │ │ 事实一致性验证 │ │ │ │ - 特殊标记移除 │ │ 情感分析 │ │ │ │ - 情感调整 │ │ 关键实体保全面核查 │ │ │ └────────────┬─────────────┘ └────────────┬─────────────┘ │ │ │ │ │ └───────────────┼──────────────────────────────┼──────────────────┘ │ │ ▼ ▼ 自然语言文本 表达验证张量 (→ 用户) (→ 调度 Core) ``` ## 训练目标 ### 目标 1:结构化到自然语言的精准转换 | 指标 | 目标值 | 说明 | |------|--------|------| | 信息保留率 | ≥ 98% | 输入推理路径中的信息全部体现在输出中 | | 忠实度 F1 | ≥ 95% | 输出与输入事实之间的一致性 | | 幻觉率 | ≤ 1% | 输出中包含输入中没有的信息的比例 | | 歧义解析准确率 | ≥ 90% | 对推理路径中的歧义点的正确处理 | ### 目标 2:情感表达与语气控制 | 指标 | 目标值 | 说明 | |------|--------|------| | 情感一致性 | ≥ 85% | 输出情感与推理路径中指定的情感一致 | | 语气多样度 | 至少 5 种 | 正式/友好/专业/热情/简洁等 | | 人设匹配度 | ≥ 90% | 输出风格与记忆子网中的人设一致 | ### 目标 3:多语言输出 | 指标 | 目标值 | 说明 | |------|--------|------| | 中文流畅度 | BLEU ≥ 40 | 中文生成的自然度 | | 英文流畅度 | BLEU ≥ 35 | 英文生成的自然度 | | 语言切换准确率 | ≥ 98% | 按输入要求切换到指定语言 | | 专业术语翻译 | ≥ 90% | 技术术语的准确翻译 | ### 目标 4:表达验证张量准确性 | 指标 | 目标值 | 说明 | |------|--------|------| | 语义编码对齐度 | cosine ≥ 0.95 | 编码向量与输出文本的语义匹配 | | 置信度校准 | ECE ≤ 0.05 | 预测置信度与实际准确率的一致性 | | 遗漏检测召回率 | ≥ 95% | 能检测出输出中遗漏了关键信息 | | 情感分类准确率 | ≥ 90% | 情感分析的准确度 | ## 训练计划 ### 阶段 1:指令微调 (SFT) — 结构化输入转译 **目标**:训练 LLM 将结构化推理路径精确转换为自然语言 **技术路线**: - 构建 (推理路径张量 → 自然语言) 的配对数据集 - 使用 LoRA 微调开源 LLM **训练数据集构建**: 1. 从 GSM8K / MATH / HotpotQA 等推理数据集中提取推理链 2. 将推理链格式化为 NextAgent 标准推理路径格式 3. 由人工标注对应的自然语言输出 4. 数据规模:至少 100K 条配对 **数据示例**: ```json { "input": { "reasoning_steps": [ {"step": 1, "type": "fact_extraction", "content": "用户问北京今天天气"}, {"step": 2, "type": "context_retrieval", "content": "记忆子网查到用户偏好空气质量"}, {"step": 3, "type": "conclusion", "content": "北京今天晴,AQI 45,空气质量优"} ], "persona": "友好专业", "language": "zh-CN" }, "output": "北京今天天气晴好,空气质量为优(AQI 45),很适合外出活动!" } ``` **训练步骤**: 1. 构建输入模板:[系统提示] + [推理路径描述] + [格式约束] 2. 使用 LoRA rank=64, alpha=128 进行微调 3. 训练 3 epochs, batch size 64, learning rate 1e-4 4. 评估:信息保留率、忠实度 F1 ### 阶段 2:RLHF — 优化表达自然度 **目标**:使用人类反馈优化表达的自然度和情感一致性 **技术路线**: - 收集人类偏好数据 - 训练 Reward Model - PPO 强化学习 **训练步骤**: 1. **收集偏好数据**: - 从阶段1的模型生成多条 output 候选 - 人工标注偏好(哪条更自然、更准确、情感更恰当) - 收集 50K 对偏好数据 2. **训练 Reward Model**: - 基于 Llama / Qwen 训练分类头 - 输入:推理路径 + 生成文本 - 输出:质量评分(1-5分) - 训练 2 epochs 3. **PPO 训练**: - 使用阶段1的 SFT 模型初始化策略网络 - Reward Model 提供奖励信号 - 加入 KL 散度惩罚防止偏离基座 - 训练 30K steps ### 阶段 3:多语言对齐训练 **目标**:扩展多语言输出能力 **训练步骤**: 1. 收集多语言配对数据(中/英/日/韩/法/德) 2. 使用课程学习(Curriculum Learning): - 阶段 A:英语 → 中文(最高优先级) - 阶段 B:中文 → 其他主要语言 - 阶段 C:所有语言混合训练 3. 评估各语言 BLEU 分数 4. 重点优化低资源语言 ### 阶段 4:表达验证张量输出训练 **目标**:训练 LLM 同时输出表达验证张量 **技术路线**: - 在 LLM 基础上添加额外的输出头(Verification Head) - 训练 LLM 在生成文本的同时,计算表达验证特征 **训练步骤**: 1. **构建验证数据集**: - 对于每条训练样本,计算: a. 输出文本的语义编码(使用 Sentence-BERT) b. 输出与输入的意图对齐度 c. 关键实体保留情况 d. 情感标签 - 作为监督信号 2. **添加验证输出头**: - 在 LLM 的最后一层添加 MLP 头 - 输入:LLM 的隐藏状态 - 输出:语义编码向量 + 置信度标量 + 情感向量 3. **联合训练**: - 损失函数:L = L_language + α * L_verification + β * L_alignment - L_language: 文本生成交叉熵损失 - L_verification: 验证输出的 MSE 损失 - L_alignment: 意图对齐度的对比损失 4. **训练 2 epochs** 5. **评估**:ECE 校准误差、语义编码对齐度 ### 阶段 5:人设适应训练 **目标**:训练 LLM 根据人设张量调整表达风格 **训练步骤**: 1. 构建人设-表达配对数据集: - 同一推理路径 → 不同人设下的不同表达 - 示例: - 人设"猫娘":通过三元组编码输入 - 人设"专业助手":同上 2. 在人设条件下微调 LLM 3. 评估:人设匹配度人类评分 ## 评估指标体系 ### 离线评估 | 指标 | 计算方法 | 目标 | |------|----------|------| | 信息保留率 | 输入关键实体在输出中出现的比例 | ≥ 98% | | 忠实度 F1 | 输出与输入事实的一致性 | ≥ 95% | | 幻觉率 | 输出中新增信息占输出的比例 | ≤ 1% | | BLEU (中文) | 中文生成自然度 | ≥ 40 | | BLEU (英文) | 英文生成自然度 | ≥ 35 | | ECE 校准误差 | 预测置信度校准 | ≤ 0.05 | ### 在线评估(与 Core 集成后) | 指标 | 说明 | |------|------| | Core 表达验证通过率 | Core 接收表达验证张量后判定为"正确表达"的比例 | | 用户满意度 | 用户对自然语言输出的评分 | | 重生成频率 | Core 因验证不通过而要求 LLM 重新生成的比例 | | 端到端幻觉率 | 用户感知到的最终输出中的错误信息比例 | ## 技术难点与对策 | 难点 | 对策 | |------|------| | 结构化输入理解 | 设计专门的输入适配器,将张量转为LLM可理解的格式 | | 严格约束下的自然度 | 温度采样+重复惩罚+语感奖励 | | 多语言一致性 | 课程学习 + 回译增强 | | 验证张量质量 | 独立验证头 + 自监督一致性训练 | | 人设切换 | 人设编码向量条件注入 | ## 与传统 LLM 的关键区别 | 维度 | 传统 LLM | NextAgent LLM 子网 | |------|---------|-------------------| | 知识来源 | 模型参数内隐 | 外部记忆子网 | | 推理能力 | 模型内部隐式 | 外部逻辑推理子网 | | 输入格式 | 用户原始问题 | 结构化推理路径张量 | | 输出去向 | 返回原始对话 | 自然语言→用户, 验证张量→Core | | 角色定位 | 全知全能 | 专业语言生成引擎 | | 幻觉风险 | 高(知识+生成耦合) | 极低(知识外置+验证机制) | | 可控制性 | 低(提示工程) | 高(验证张量 + 人设编码) |