接入大模型构建聊天系统时,最容易被低估的问题,往往不是模型“能不能返回内容”,而是这些内容能不能被稳定、准确、安全地展示给用户。
对于一个支持多模型接入、流式输出、深度思考、联网搜索、文档生成和对话分享的 AI 对话系统来说,模型返回的文本早已不再是普通字符串。它会直接影响页面布局、代码高亮、表格展示、分享页阅读体验,甚至影响后续的 Word、PDF 等文档生成结果。
在这个项目的 chat 模块中,围绕 Markdown 稳定输出设计了一套完整的治理链路。它不是简单地在前端接入一个 Markdown 解析器,而是从 Prompt 约束、SSE 流式分流、后端内容规整,到前端安全渲染,构建了多层防线。
这套设计背后的核心判断是:
不要把模型输出当作最终文本,而要把它视为一种需要解析、分类、修复和验证的半结构化协议。
一、问题本质:模型输出并不是稳定协议
在真实系统中,AI 回复的不稳定主要体现在三个方面。
1. 不同模型的 reasoning 输出方式不一致
不同模型对“思考过程”的表达方式差异很大。
有些模型会通过独立字段返回,例如:
reasoning_contentreasoningthinking
订阅专栏 解锁全文

373

被折叠的 条评论
为什么被折叠?



