不用 AI 的藏宝图:当 LLM 是错误的答案
我们的 NPC 可以给玩家藏宝提示——一艘废弃的残骸,或者,如果关系不错,一个隐藏的宝箱。规划这个功能时,有一个办法看起来再明显不过:我们有 AI 后端,那为什么不让 NPC 用语言模型来说这些提示呢!我们决定不这么做——而原因是个不错的教训。
LLM 的问题:出于成本考虑,我们 AI 后端生成的 NPC 对话是有缓存的。对闲聊来说这再完美不过——没人会注意商人今天说的话和昨天是不是同一句。但藏宝提示包含的是事实:一个方向、一个距离、一个地点。缓存的提示会指向昨天的宝箱。而且就算没有缓存,语言模型也爱“创造性地改进”坐标。一个把你带错路的提示,比没有提示还糟。
解决办法:确定性。现在提示是用传统方式手工构建的。服务器知道真实位置,算出方向,再用模板(德语和英语)拼出一句口语。同时,这个地点会作为一个点,在世界里所有玩家的地图上显示出来。已经被搜刮过的残骸会自动从候选池里掉出去。没有模型,没有幻觉,没有过期的缓存——提示就是正确的。
我们由此定下的规则:对我们来说,LLM 负责氛围——个性、闲聊、叙事的语气。一旦一句话必须事实正确(地点、数字、游戏规则),确定性的代码才是合适的技术。不是每个看起来像 AI 问题的问题,都真是 AI 问题。
留言