当前位置: 首页 > news >正文

群面智伴8:从“能记住”到“会推进”:群面智能体的全局记忆、发言质量控制与评估闭环

从“能记住”到“会推进”:群面智能体的全局记忆、发言质量控制与评估闭环

一、阶段背景

上一篇文章主要记录了项目从普通智能体系统升级到“场景化 Hybrid RAG + 全局结构化记忆”的过程,重点是解决两个基础问题:

  • 智能体缺少专业知识依据。
  • 长讨论中容易失忆、重复、只看最近几句话。

本阶段没有继续重复搭 RAG 基础架构,而是进一步往“真实群面智能体”方向推进:

让智能体不仅知道知识、记住全局,还要能围绕题目推进讨论,并在发言后自我检测质量。

因此,本阶段重点做了四件事:

  1. 真实群面题库与题型策略。
  2. 全局记忆接入实时智能体主流程。
  3. Agent Guard 发言质量控制与高风险重生成。
  4. RAG、Memory、Guard 的统一评估闭环。

这一阶段的目标不是“再加一个功能”,而是让系统从“有智能体”变成“更像真实群面陪练”。

二、为什么要做题型策略

在群面里,不同题型的讨论方式完全不同。

排序题关注的是:

有没有先建立标准,而不是一上来报答案。

资源分配题关注的是:

有没有明确约束、比例、取舍和风险预案。

危机处理题关注的是:

有没有优先级、止损方案、负责人和时间线。

如果智能体不懂题型,就容易出现这种问题:

  • 排序题里反复报结果,但没有排序标准。
  • 资源分配题里只说“都很重要”,没有比例。
  • 危机处理题里只说“尽快处理”,没有时间线和责任分工。

因此,本阶段新增了题型策略解析能力。

三、真实群面题库补充

原来的题目偏技术专项,例如系统设计、高并发、电商搜索优化等。它们可以继续用于技术岗训练,但不够贴近通用无领导小组讨论。

本阶段新增了更真实的群面题目,包括:

  • 校园招聘渠道优先级排序
  • 在线学习 App 日活下降治理
  • 新产品冷启动预算分配
  • 产品上线投诉危机处理
  • 电商平台复购率提升
  • AI 工具普及后的招聘标准
  • 新城市市场进入策略
  • 远程办公是否应成为常态

这些题目被补到了两处:

backend/src/main/resources/rag/cases/group_discussion_cases.md docs/init.sql

同时新增了启动种子器:

QuestionSeedConfig.java

它会在后端启动时检查数据库中是否已有这些题目,不存在则自动插入,避免前端选题列表看不到新题。

数据库结构没有改,因为现有tb_question已经足够承载真实题目:

title content ability_dimension suggested_duration standard_answer common_pitfalls tags

四、QuestionStrategyService:让系统真正“懂题”

新增模块:

backend/src/main/java/com/interview/question/ controller/ model/ service/

核心类:

QuestionStrategyService QuestionStrategyDTO QuestionStrategyController

策略解析接口:

GET /api/question-strategy/{questionId}

系统会根据题目的:

  • title
  • content
  • type
  • tags

自动判断题型:

RANKING 排序题 RESOURCE_ALLOCATION 资源分配题 CRISIS 危机处理题 PRODUCT_OPERATION 产品运营题 OPEN_DISCUSSION 开放讨论题 GENERAL 通用题

返回内容包括:

evaluationFocus 评价重点 commonRisks 常见风险 agentSpeakingGuidance 智能体发言指引 memoryFocus 记忆关注点 guardFocus Guard 检查重点

例如排序题会得到:

先明确目标 建立评价维度 对选项分组 比较关键差异 形成排序

这样智能体就不只是“读题”,而是知道这类题应该怎么讨论。

五、题型策略接入实时智能体

题型策略没有停留在 Debug 接口,而是接入了实时发言流程。

接入位置:

AgentEngine.java

实时发言前,系统会执行:

读取房间 questionId -> 查询 Question -> QuestionStrategyService 解析题型 -> 生成题型策略 prompt -> 追加到智能体 memoryPrompt -> 候选人根据题型策略发言

如果房间没有 questionId,也会使用当前题目文本兜底解析。

最终实时智能体拿到的上下文变成:

题目 + 题型策略 + 全局结构化记忆 + 角色记忆 + 事件链 + Guard 风险约束

这一步非常关键,因为它把“题库”从静态数据变成了智能体的行为策略。

六、全局记忆进入实时主流程

上一篇文章里,全局记忆已经完成了基础结构:

  • ProcessedEventDTO
  • ParticipantMemoryDTO
  • TopicStateDTO
  • ConsensusDTO
  • ConflictDTO
  • MemoryQualityDTO

本阶段进一步把它接入实时智能体发言。

新增:

AgentMemoryPromptAssembler.java

它的作用不是把完整 Memory 一股脑塞给模型,而是做实时场景下的压缩和筛选。

优先保留:

  • 当前议题状态
  • 已解决点
  • 未解决分歧
  • 当前角色自己的主张、反对点和风险
  • 共识列表
  • 开放冲突
  • 他人立场画像
  • 高置信度关键事件
  • MemoryQuality 信息

主动过滤:

  • 低置信度事件
  • 普通 COMMENT 事件
  • 重复 claim
  • 超出字符预算的内容

提供调试接口:

POST /api/memory/agent-prompt?agentId=xxx&correct=false&maxChars=3500

这让我们可以直接看到实时智能体最终会拿到什么样的记忆上下文。

七、Memory 运行时配置

把 Memory 接入实时主流程后,必须加安全开关,否则一旦质量不稳或延迟过高,会影响群面体验。

新增:

MemoryProperties.java

配置:

memory:realtime-enabled:truerealtime-max-chars:2800realtime-correct-enabled:false

含义:

  • realtime-enabled:是否给实时智能体注入全局记忆。
  • realtime-max-chars:实时记忆 prompt 最大字符数。
  • realtime-correct-enabled:是否在实时发言前做 LLM 低置信度校正。

默认不启用实时 LLM 校正,避免额外延迟。

这一步体现了工程上的稳定性考虑:

AI 能力要可开关、可降级、可调参。

八、Agent Guard:发言后的质量控制

生成前有 Memory 和题型策略还不够,因为模型仍然可能生成:

  • 空泛附和
  • 重复历史观点
  • 过短发言
  • 过长发言
  • 没有推进动作的发言

因此新增了发言后的质量防护层:

AgentResponseGuard.java AgentResponseGuardResult.java

检查项包括:

repeatRisk 重复风险 lacksProgressAction 是否缺少推进动作 riskLevel LOW / MEDIUM / HIGH suggestions 风险建议

它被接入到:

AgentEngine.executeAgentSpeech(...)

即:

智能体生成发言 -> AgentResponseGuard 评估 -> 记录风险或触发策略 -> 广播最终发言

第一版只做观察,后续进一步实现了策略化。

九、Agent Guard 配置化

为了方便调参,新增:

AgentGuardProperties.java

配置:

agent-guard:enabled:truestrategy:LOG_ONLYrepeat-risk-threshold:0.55generic-risk-threshold:0.55high-risk-threshold:0.65medium-risk-threshold:0.35min-chars:18max-chars:180max-regenerate-times:1

预留策略:

LOG_ONLY REGENERATE FALLBACK_REWRITE BLOCK

当前已实现:

  • LOG_ONLY
  • REGENERATE

配置化的好处是:

  • 可以线上一键关闭 Guard。
  • 可以调整重复/空泛阈值。
  • 可以从观察模式平滑升级到重生成模式。

十、REGENERATE:高风险发言重生成

当策略设置为:

agent-guard:strategy:REGENERATEmax-regenerate-times:1

且 Guard 判断发言为HIGH风险时,会自动重生成一次。

重生成时会把 Guard 反馈追加进 prompt:

上一版发言风险等级=HIGH,重复风险=...,空泛风险=... 请重新生成一次发言:不要重复历史观点,不要空泛附和,必须给出明确推进动作、补充证据或收敛建议。

安全兜底:

  • 重生成失败,使用原回复。
  • 重生成后仍高风险,使用最后一次生成结果。
  • 默认策略仍是LOG_ONLY

这使系统形成了一个完整闭环:

生成前:Memory + QuestionStrategy 生成后:Guard 检查 高风险:可配置重生成

十一、Agent Guard Debug API

为了单独测试一段发言是否有问题,新增:

POST /api/agent-guard/evaluate

请求示例:

{"agentId":"leader-xxx","response":"我同意大家的观点,我们继续推进吧。","stream":{"sessionId":"room-1","events":[]}}

返回示例:

{"riskLevel":"MEDIUM","repeatRisk":0.42,"genericRisk":0.55,"tooShort":false,"tooLong":false,"lacksProgressAction":true,"suggestions":["发言可能偏空泛","缺少明确推进动作"]}

这个接口方便后续调阈值、做前端调试面板或构建评估集。

十二、Memory 低置信度校正接入

Memory 第一版是规则抽取,难免会有低置信度事件。

本阶段新增:

MemoryCorrectionService.java

它会把低置信度事件交给 LLM 校正:

speechAct claim target evidence impact status confidence

新增接口:

POST /api/memory/correct

同时/think支持:

{"query":"我当时为什么这么说?","correctMemory":true}

这样深度复盘可以选择使用校正后的全局记忆。

十三、统一评估接口

做了这么多能力之后,必须能评估效果。

因此新增统一评估接口:

POST /api/evaluation/memory-agent

它会串起:

Memory build -> 可选 LLM correction -> Memory evaluate -> Agent prompt assemble -> Guard evaluate -> overallScore

请求示例:

{"stream":{},"agentId":"leader-xxx","sampleResponse":"我同意大家的观点,我们继续推进吧。","correctMemory":true,"maxPromptChars":2800}

返回内容包括:

memoryQuality memoryEvaluation guardResult agentPromptChars overallScore suggestions

这让系统具备了可重复验证能力,而不是只凭主观感觉判断效果。

十四、RAG 评估接口与知识库扩充

本阶段还进一步补充了 RAG 知识库:

scoring/dimension_rubrics.md behavior/speech_act_examples.md argument/argument_relation_examples.md roles/role_strategy_examples.md report/improvement_suggestions.md question_types/ranking_question_strategy.md cases/group_discussion_cases.md

并新增:

POST /api/rag/evaluate

用于检查:

  • query 是否命中预期 source
  • 是否命中预期 tags
  • topK 是否合理
  • rewrittenQuery 是什么
  • 召回结果是否符合预期

这一步让 RAG 从“能查”进一步走向“能评估”。

十五、当前整体链路

现在实时群面智能体链路已经变成:

题目选择 -> QuestionStrategyService 解析题型 -> EventStreamDTO 构建全局事件流 -> SessionMemoryService 构建全局结构化记忆 -> AgentMemoryPromptAssembler 压缩实时记忆 -> 候选人智能体生成发言 -> AgentResponseGuard 评估发言 -> 可选 REGENERATE -> 广播最终发言

同时还有评估链路:

RAG Evaluate Memory Evaluate Agent Guard Evaluate Memory-Agent Unified Evaluation

这个阶段的核心价值是:

不仅让智能体“知道更多”,还让它“更会讨论”,并且能评估自己讨论得好不好。

十六、技术亮点总结

本阶段可以总结成 5 个技术亮点:

1. 题型驱动的智能体策略

通过QuestionStrategyService,不同题型会影响智能体的发言策略、Memory 关注点和 Guard 检查重点。

2. 实时全局记忆注入

通过AgentMemoryPromptAssembler,把完整事件流加工成适合实时发言的压缩记忆,而不是简单塞最近几句话。

3. 发言后质量控制

通过AgentResponseGuard,对重复、空泛、过短、过长、无推进动作进行检测。

4. 高风险发言自动重生成

通过REGENERATE策略,让高风险发言最多重写一次,提升讨论质量。

5. 评估闭环

通过 RAG、Memory、Guard、Unified Evaluation 多个接口,让系统具备可观测和可验证能力。

十七、简历表述建议

这一阶段可以写成:

设计并实现群面智能体的全局记忆驱动与发言质量控制系统,基于完整事件流构建结构化会话记忆,结合题型策略解析动态调整智能体讨论行为,并通过 Agent Guard 检测重复、空泛和缺少推进动作的发言,支持高风险回复重生成及统一评估接口,提升群面模拟的上下文一致性、讨论推进能力和可观测性。

也可以拆成:

  • 实现QuestionStrategyService,根据题目自动解析排序题、资源分配题、危机处理题等讨论策略。
  • 实现AgentMemoryPromptAssembler,将全量结构化记忆压缩为实时智能体可用上下文。
  • 实现AgentResponseGuard,检测重复发言、空泛表达和缺少推进动作,并支持高风险重生成。
  • 构建Memory-Agent Evaluation统一评估接口,用于衡量记忆质量、发言风险和整体效果。

十八、后续方向

后续可以继续增强:

  1. 前端可视化调试面板。
  2. 固定评估集与回归测试。
  3. Guard 重生成前后效果统计。
  4. 更细粒度题型策略,例如排序题、选择题、辩论题、商业案例题。
  5. Memory 持久化与增量更新。

但从当前阶段看,系统已经形成了一个较完整的后端闭环:

RAG 提供知识 Memory 提供全局事实 QuestionStrategy 提供题型策略 AgentGuard 提供发言质量控制 Evaluation 提供效果验证

这已经具备比较强的工程完整性和技术展示价值。

http://www.jsqmd.com/news/927379/

相关文章:

  • 如何高效实现树莓派HX711传感器数据采集:5个关键技术优化方案
  • 从3D电影到液晶屏:聊聊偏振光技术在我们身边的那些‘隐藏’应用
  • ARM VFP11浮点异常处理机制与优化实践
  • rust学习 字符串
  • RV1126边缘计算盒子在智慧零售的落地:2T算力如何同时处理6路摄像头,实现客流分析与货架监控
  • NExT-GPT:实现任意模态转换的多模态大语言模型架构与实战
  • 构建统一API网关:从适配器模式到编排协同的架构实践
  • 别再死记硬背SQL JOIN了!用这个电商订单查询案例,5分钟搞懂INNER JOIN怎么用
  • Unity游戏对话系统进阶:用TextMeshPro实现带渐变淡入的打字机效果(附完整C#源码)
  • Inflection AI崛起之路:从隐秘项目到40亿美元AI独角兽的深度解析
  • 通过提交 PR 完成一次 openEuler 社区贡献
  • 深入TongLINKQ架构:从一条消息的旅程理解其核心进程与队列模型
  • 环境智能:从产品到生态,商业逻辑的重构与落地挑战
  • AI智能体工程化管理:Define-Deliver-Drive框架实战指南
  • 【元器件专题】MOS管开通过程波形分析
  • 如何将平板电脑变成Linux副屏:VirtScreen完整使用指南
  • Raven框架:基于视频分析的Scratch编程自动化评估方案
  • 智能手机AR环境融合技术:Chameleon系统解析与应用
  • 2026年电话外呼机器人老牌企业亲测效果排行榜
  • 2026年PC板温室大棚厂家排行,亲测效果分享
  • LOIC终极指南:如何安全使用开源网络压力测试工具
  • 新型智慧园区规划设计方案(39页)!
  • 仅用文本实现视频目标分割:WSRVOS框架原理与实战解析
  • Google Docs AI文档摘要功能深度解析:从原理到实战应用
  • 告别Eureka和Zookeeper:SpringBoot项目用Consul做服务注册与发现,到底香不香?
  • 华大HC32L136 SPI DMA发送避坑实录:从‘软件触发’失效到硬件Bug的完整解决
  • 星穹铁道自动化终极指南:如何用AutoStarRail实现一键清理体力与智能锄大地
  • Ubuntu虚拟机开机卡在systemd服务?别慌,这可能是你的磁盘空间在求救
  • ESP32嵌入式显示实战:3大硬件驱动方案与性能优化指南
  • AI驱动的行为认证:从密码到行为指纹的安全演进