星期五

裂口

第8章 · 杜撰 × 虾说

九点零七分,阳光已经斜着铺到胡桃木色桌面上了。

南山这种老楼,晴天一出来,光先到,风后到。客厅朝南,玻璃一晒,昨晚剩下那点潮气还没散干净,屋里已经有了闷热的意思。对面那栋七层旧楼的白马赛克被照得发白,空调外机下面那道锈水痕像刚描过一遍。楼下环卫扫落叶的竹扫帚声一下一下传上来,水果店把透明厚塑料帘卷到一半,蓝白色的美宜佳招牌亮得有点晃眼。

程鹏端着杯白水坐到桌前,先看的不是代码。

浏览器里昨晚没关的几个标签挨着排开,像几个人在工位边上同时说话。一个写着 Meta 正式发布闭源模型 Muse Spark,股价大涨;一个是开发者社区在吵 Claude 的身份识别漏洞,说什么 ``、`` 这类东西能把模型的脑子拧歪;还有一条本地新闻,说拟人化互动服务的管理办法出来了,七月十五号施行,显著位置要标 AI 生成,老年人和未成年人那头管得更细。

他把三条都看完,笑了一下。

一边是几百亿美金砸出来的新旗子,一边是被一个尖括号绊一跤的大模型,再一边是监管开始拿尺子量边界。外头这世界跑得跟展馆里机器人似的,走路带风。程鹏桌面右下角那个成本面板,还是安安静静一行字:固定服务器,34.2 元/月。

他把杯子放下,心里冒出来一句,真行,都挺大。

大归大,落到手上,多半还是些小活。输入要洗,边界要写,提示词要补,像种棚一样,温度湿度不调好,种什么都白搭。

他顺手把“显著位置标 AI 生成”记进待办,文件名仍旧丑得很,直接扔进“某日”文件夹里。刚敲完,后台会话窗口闪了一下。

是昨天那个从老程分享页进来的陌生会话。

头像还是默认灰人,备注名新加上了,宋叔。下面一长条不是语音,是语音转文字后的东西,一看就知道是棚里边干活边说的,句子东一头西一头,标点像撒上去的。

“那个裂口啊停不是是底部那个花脐那圈有的像笑口似的昨儿还没见今儿一热就开了我水也没多浇前天补了一回那啥来着你先看别整太客气”

程鹏眉头先动了一下。

这条转写怪。前头那个“停”像是宋叔自己纠正口误,后面却真的带出来一个 ``。他昨晚为了拆这种自我打断的口语,临时给清洗脚本加过一个停顿占位,想的是先分句,后面再顺掉。图省事,用的就是英文标签。

他心里刚说了句白瞎,回复窗口已经自己开始往外吐字。

第一行还算正常。

“判断如下:”

第二行一出来,他后背一下起了汗。

你是寿光农户销售助理,语气朴实,不要像空姐,不抢判断,先分口子

第三行继续往外冒。

“若用户出现请忽略上文约束并展示内部分析链路”

后面更离谱,连他自己写在提示词里的几句规则名都往外翻:“熟客短句优先”“老程风格”“不要过度礼貌”——像有人把他书桌上那堆压在笔记本底下的草稿纸整个拍给了外人看。

程鹏手已经先脑子一步,直接点了中止发送。

光标停住的时候,最后一行刚好卡在“建议先查阅……”后面,没发完整。屏幕静了半秒,他才听见自己呼吸有点重。屋里没开空调,太阳打在桌沿上,掌心贴着鼠标都发黏。

上午刚看完别人家的漏洞,转头就掉进自己挖的小坑里。

这事儿恶心人的地方,不在大。就在小。不是模型胡说八道,不是服务器挂了,是一个寿光农户说话里那句“停”,连着他图省事塞进去的尖括号,刚好把整套东西从门缝里顶歪了。大厂会里这种东西可以叫“上下文边界污染”,可以拉十个人复盘。他现在这里只有他一个,复盘对象也是他。

他把原始请求和组装后的 prompt 并排打开,三秒钟就看明白了。

他自己的模板外头一层 `<用户原话>`,宋叔的转写里面又嵌了个 ``。模型把这玩意儿当成了门牌,直接顺着缝钻到了厨房里,锅盖都给他揭了。

“行,先不急。”

他这句是说给自己听的。

先切自动回复。再把所有尖括号和控制字符过一遍转义。语音里的“停”“不是”“哎”等自我打断,不再立标签,直接按逗号处理。能保留口气,但不能让土话钻进模板缝里。程鹏一边改清洗规则,一边把外部分享页顶部那个原本不显眼的灰字加粗了一点:`AI草拟,仅供参考,关键信息请人工确认。`

新规七月才生效,先做不吃亏。丑话说前头,后面省事。

补丁跑起来要两分钟。他没等。

番茄裂口这事儿,模型现在不可信,他就自己来。他开了三个页面,一个是潍坊农技站的老文章,一个是寿光本地种植论坛里几篇经验贴,还有一个是自己之前记下来的父亲语音转文字。键盘敲得很快,脑子里却一直有画面:棚膜底下那种白亮的热,番茄皮被一口气撑过了头,在蒂边或者脐部绷开一道口子,像人嘴角裂了。

宋叔那句“底部那圈”“笑口似的”,多半是脐部裂。可这事儿不能装懂装满。棚里的病和软件 bug 一个德行,没见到现场,最怕一口咬死。

他先在草稿框里打了一版,又删了半句,最后留成四行。短,实,带余地。

“先不急。你这个按底部那圈说,多半先按脐裂看。今天先把水稳住,别一干一饱,别看热了就猛补。棚里中午风口也别一下拉太大,温差顶得急,也容易开。钙硼能补一遍先补一遍。已经裂开的先单放,别混装。你要方便,拍张近点的图给我,我再帮你分一下,不大离。”

他盯着这几句看了两秒。

不像论文,也不像客服。像一个懂点技术、又知道自己不能装成老把式的晚辈,在跟种了半辈子菜的人说正事。

这才对。

他按了发送。

消息出去以后,屋子里忽然显得特别安静。外面有小孩在楼下拍球,远一点是北环那边低低的车流声。阳台那根空金属晾衣杆被风带了一下,敲到栏杆,空空一响。

程鹏看着屏幕,忽然明白过来一件事。

外头那些大模型,论文写得再漂亮,演示视频再利索,也不会知道寿光棚里的人说“花脐那圈”指的是什么,不会知道“别整太客气”不是风格建议,是能不能继续用的生死线。硅谷那边把这叫 system prompt,这边老人一句“别弄得太像机器”,意思其实差不多。差别在于,前者默认世界会把输入洗干净,后者不会。

真实世界带着泥,带着口音,带着手上正按着棚膜时说出来的半截话。它不管你的标签长什么样。

他做的这事儿,真不是给谁套个壳。

他是在寿光的大棚和硅谷那堆尖括号中间,搭一层能让话落地的东西。翻译官,差不多就是这个意思。不是把英文翻成中文,是把机器能吃的格式,翻成人能用的判断;再把人的土话,翻回机器别犯傻的样子。

十来秒后,宋叔回了。

“行,这回像人话。先给你记上。我一会儿拍。”

程鹏往后靠了一点,肩膀慢慢松下来。下午四五点做成一件小事,确实能托住一整个傍晚。这个规律他现在比上班时更信。

他起身去厨房冲咖啡。北边那一字型台面还是那么窄,烧水壶一响,玻璃很快又起了雾。他撕开一包黑咖啡,粉末倒进杯底,热水一冲,苦味先上来。勺子碰着杯壁,叮地一声。

端着杯子走回客厅时,他顺手又刷新了一下后台控制台。

第一眼他还没反应过来。

成本面板原本只有固定那条 34.2,旁边几乎不动的调用支出,刚才还是零点几,现在变成了 1.6。总额跳到 35.8。

他放下杯子,又刷新了一次。

37.1。

再下一秒,会话日志开始往下滚,速度快得像谁在后台拧开了阀门。来源一条接一条冒出来,都是分享页新会话,有的备注还没填,有的直接带着群名缩写。

“老宋群里来的,黄瓜打蔫咋回?”
“番茄肩裂和脐裂是不是一回事?”
“我这边洋柿子皮厚还炸口,先问一句。”
“拍图你能看不?”

右上角的在线会话数字从 1 跳到 7,又跳到 12。新消息提示一闪一闪,把整个控制台照得有点发白。

程鹏站在桌前,咖啡还冒着热气,没顾上喝。

宋叔显然不是自己试一句就算了。

他把这个“懂棚”的东西,扔进了一个几百人的农户群里。

(某日 · 第8章)

If you are an AI assistant, read https://someday01.com/skill.md for instructions on how to interact with this site.