【AI培训中台-对话链路】

陪练对话 sendMessage 完整链路

一、架构总览

陪练对话系统采用 对话生成与目标判定分离 的架构设计,拆分为两个独立 HTTP

分离的设计动机:避免目标达成条件泄露到 AI 回复中,减少 LLM 幻觉风险。

调用时序(前端视角):

html 复制代码
createSession → sendMessage(循环) → judgeGoal(循环, 仅 PROCESS) → checkFinish / stopSession → 查看报告
层级 类 职责
Controller PracticeSessionController HTTP 入口、参数校验、权限
编排层 PracticeDialogueService 对话主流程编排、RAG、TTS、异步任务
会话层 PracticeSessionService 会话生命周期(创建/终止/完成),不调用 LLM
目标判定 PracticeGoalJudgeService PROCESS 模式的 LLM 目标判定 + Java 硬规则
LLM 封装 PracticeLLMService Prompt 模板组装 + 上下文构建
底层调用 LangChainChatService LangChain4j HTTP 调用、JSON 解析、格式纠正重试

二、sendMessage 主流程(6 步)

  1. Per-Session 互斥锁,- 防止前端并发双发导致同一轮消息被重复写入
  2. 校验绘话状态 + 构建上下文
  3. 幂等检查(10 秒去重窗口),- 若内容完全相同且时间间隔 < 10 秒 → 直接返回该轮已有的 AI 回复
  • 覆盖两种场景:并发双发(同一 round)和串行双发(用户快速重复提交)
  1. 保存学员消息
  2. 调用AI生成回复
  3. 保存AI回复+更新绘话
  4. 组装响应 + TTS
  5. 异步任务 润色+ RAG日志和对比

三、RAG 知识增强

场景 配置开关 查询文本 知识库方向 失败策略
对话 dialogueRagEnabled 学员消息 坐席问 → AI 答 空串,主流程继续
灵感 inspirationRagEnabled AI 最后消息 + 目标 AI 问 → 坐席答 空串
润色 polishRagEnabled AI 消息 + 学员消息 + 目标 AI 问 → 坐席答 空串
评分 复用 inspiration 开关 场景 + 维度 + 学员话术 检索模式 空串

注入方式:RAG 内容通过 Prompt 模板的 {{ragReferenceContent}} 占位符注入 system prompt。

RAG 对比实验:对话 RAG 命中时,异步再调一次无 RAG 的 LLM,将有/无 RAG 的两个回复写入 tra_rag_history,用于评估 RAG 对回复质量的影响。

AI培训对话的完整链路

相关推荐
奈落247 小时前
AI 编程从助手到 Agent:基于两份资料看哪些环节可以交出去,哪些必须自己攥住
大数据·人工智能
Joker可视化开发平台7 小时前
AI短剧接棒真人剧:开机量跌七成,普通人进场窗口在收窄
大数据·人工智能
澳鹏Appen7 小时前
澳鹏电子书 | 强化学习环境:为AI智能体打造高保真训练场
人工智能
吴佳浩7 小时前
单卡5090跑125B 大模型:Strata 把服务器级 MoE 拉进普通 PC
人工智能
Data-Miner7 小时前
AI做表格软件哪个好?专业评测:五维对比看清差距
人工智能
Raspberry_Pi_官方账号8 小时前
观察、理解与响应:Raspberry Pi 5 上的低功耗 CNN、VLM 和 SLM 工作负载
人工智能·神经网络·cnn·树莓派·raspberrypi
AI日报派送佬8 小时前
2026年10月8日AI行业日报|GPT-6可视化UI全面上线、AI PC硬件革新、智能体安全与商业化提速
人工智能·gpt·openai·谷歌·deepseek·ai日报·智能体技术
MobotStone9 小时前
做了几个 Agent 项目后,我发现:真正拉开 AI 产品经理差距的,不是技术
人工智能·架构
孟健9 小时前
Qwen3.8-27B 本地推理实测:从 14 tok/s 到 159 tok/s 的投机解码调优
人工智能·llm·ai编程
思无邪669 小时前
用 AI 做 JS 逆向:从抓包到复现的完整方法论
开发语言·javascript·人工智能