GEO优化
把技术文档里的单位补全后,AI终于不把毫秒当成秒了
22 1 8
上周踩了个坑,值得记录。
背景:我们产品文档里有一张性能对照表,写的是「响应延迟:120」「超时:30」。看着没问题,但AI引用这张表回答用户时,直接把120说成120秒、30说成30毫秒,全反了。客户截图发过来,我第一反应是模型抽风,查完才发现是我们自己的锅。
简单说,问题出在单位缺失+索引切块两件事叠加。
- 原始数据里就没写单位。 前端渲染时表头有「(ms)」,但结构化数据导出、PDF转文本、markdown转换这三条链路,都把表头丢了。AI拿到的就是裸数字,只能靠猜。
- 切块把上下文切没了。 这张表被切成两段,上一段是「超时配置」,下一段才是「延迟指标」,数字和表头不在同一个chunk里。检索时召回的是数字那一段,模型没有单位可依。
我做了三件事:
- 给表里每个数值补了「原始单位」字段,不是只在表头写,而是每个cell都带unit,比如
delay_ms: 120。字段名也改成带单位的,别用delay。 - 把表格转成「键值对+单位」的markdown,强制每个数值后面跟单位,宁可啰嗦也不留裸数字。
- 在sitemap外单独维护了一份
/data/specs.json,让爬虫优先抓结构化版本,而不是从渲染页里猜。
改完重跑,同一批问题里单位答错的比例从三成多降到个位数。返工成本也不高,两个人半天,主要是过了一遍全部技术参数表。
我的判断:GEO的技术门槛真不高,难的是内容质量里的「数据一致性」。单位这种事,人看着觉得理所当然,机器看着就是歧义。
顺带说个验证方法:别只看AI答得对不对,把检索召回的chunk原文打出来看,数字和单位是不是在同一个块里。不在,就先去修切块,别急着调模型。
想问下大家:你们技术文档里的单位,是写在表头、写在字段名,还是每个值都带?有没有遇到过单位在转换链路里被吃掉的情况?
登录后可以为帖子点赞,但本帖内容对所有人开放阅读。
