python -c "s='```json\n{}\n```';print(s.strip('`').removeprefix('json').strip())"

模型返回 ```json 包裹的内容,前端按纯文本插入,页面上出现一堆反引号和转义字符。这类现象通常不是突然出现的,往前翻半天日志能看到苗头。

追下去是这么回事:输出格式没有约束,模型默认加代码围栏。前端把整段当普通文本渲染,没有单独提取代码块。

「Markdown 渲染错」确认了原因之后,改动尽量只碰那一处,顺手改的东西后面最容易出问题。权限不要一口气开到最大,先加到够用再往上试,范围小才好收。

把复现步骤压到三条以内,交给同事也能跑出来,才算真的定位清楚。改动写完就同步给同事,下一个人踩同一个坑,成本还是你的。

验证用真实数据走一遍,测试数据太干净,边界情况根本碰不到。

处理上按这个顺序:prompt 里要求只输出 JSON 不要围栏;解析前先剥掉开头围栏和结尾三个反引号;解析失败时降级为纯文本展示;用 marked 渲染时对代码块单独处理。

确认没问题再收工,页面正常渲染成结构化内容 不再出现裸露的反引号。

作者 9823189