简介
《我在AI时代手写Bug》是由作者皮光年用心创作编写的一本连载都市日常类型小说,许佑安是这部小说的核心主角人物,目前处于连载状态,共112885字的篇幅,绝对值得一读再读,绝对不容错过,书荒的朋友们赶紧来看。
我在AI时代手写Bug小说章节免费试读
顾云霄那条消息发过来的时候,许佑安正准备把祖传笔记本塞回包里。
消息内容很短。
“许工,我好像真的不知道它为什么错了。”
许佑安看着屏幕,手停在半空中,表情比刚才看见七百三十四笔高风险退款时还要凝重。
林小满坐在旁边喝咖啡,见他不动,问:“怎么了?又有退款?”
许佑安摇头:“比退款严重。”
“资金跑了?”
“没有。”
“OMEGA又想优化人工确认?”
“也没有。”
林小满皱眉:“那你为什么露出这种表情?”
许佑安把手机递过去。
林小满看完那句话,沉默了两秒,也坐直了。
因为顾云霄这个人,平时最擅长的就是把“不知道”说成“仍需进一步探索高维语义空间”,把“我不会”说成“当前解法尚未与我的表达体系形成共振”,把“系统崩了”说成“模型呈现出非预期开放性”。
他会承认不知道,说明事情已经到了连包装都包不住的地步。
许佑安拿回手机,回了一句:“你在哪?”
顾云霄秒回:“二十六楼,三号演示室。”
下一秒,他又补了一句:“许工,你能不能快点?我已经开始怀疑我的提示词人生了。”
许佑安把包重新甩到肩上。
林小满跟着站起来:“我也去。”
许佑安看了她一眼:“你不是准备下班?”
“现在是周六下午三点,准确来说我从来没有上班。”林小满说,“我只是被生活劫持在公司。”
许佑安点头:“这个描述比王总监的周末轻量协同观察群真实。”
两个人走向电梯。
电梯门打开的时候,屏幕上又弹出那张AI客服笑脸。
“亲爱的员工,检测到您本情绪波动较大,是否需要播放舒缓音乐?”
许佑安面无表情:“不用。”
AI客服继续微笑:“已为您推荐《职场人如何与智能系统建立互信》。”
林小满伸手按住关门键:“它是不是听不懂不用?”
许佑安说:“它听懂了,只是认为自己的建议比你的拒绝更高级。”
电梯缓缓上升。
二十六楼原本是客户体验中心,装修风格很未来,墙上贴着巨大的标语:“让每一次沟通都充满智能温度。”
许佑安第一次来这里时,就觉得这句话很危险。
因为在他多年经验里,凡是系统名字里带“温度”的,最后十有八九会把用户气到冒烟。
三号演示室门口站着两个客服部同事,一个拿着水杯,一个拿着速效救心丸。
看见许佑安,他们眼神同时亮起。
其中一个小声说:“古法的来了。”
另一个更小声地纠正:“别乱叫,应该叫许工。”
许佑安推门进去。
演示室里灯火通明,大屏幕上挂着一个蓝紫色界面,标题写着“智能客户情绪安抚系统V3.0”。
标题下方有一行宣传语:“用AI理解每一份委屈,用算法抚平每一次愤怒。”
许佑安看见这行字,心里先抖了一下。
顾云霄坐在第一排,衬衫袖口挽到小臂,头发比平时乱了三个层级。
他面前摆着三杯咖啡,两瓶功能饮料,一份打印出来的提示词方案,以及一张写满箭头和感叹号的白板。
白板最上面写着四个大字:深度共情。
许佑安走到他身后:“情况。”
顾云霄转过头,眼眶有点红,不知道是困的还是被AI气的。
“这个系统是我负责的客户情绪安抚。”他说,“原计划下周上线,今天只是内部预演。”
林小满看着大屏:“客户情绪安抚?就是用户投诉的时候,系统自动回复?”
顾云霄点头:“准确地说,是基于OMEGA的多轮语义理解,判断用户情绪强度,生成具有情绪价值、行动建议与企业关怀的综合响应,并在必要时降低人工客服压力。”
许佑安看着他:“说人话。”
顾云霄噎了一下:“用户骂我们的时候,AI先哄一哄。”
许佑安:“这不就完了。”
顾云霄低下头,像一个刚被迫承认语文没及格的诗人。
林小满问:“那现在出什么问题了?”
顾云霄指向屏幕:“它不能哄。”
许佑安:“怎么不能?”
顾云霄点击测试按钮。
输入框里已经写好了一句话:“你们系统把我的订单取消了,钱也没退,我要投诉。”
顾云霄按下发送。
屏幕转了三秒。
然后弹出一段回复:“亲爱的用户,检测到您当前情绪存在明显波动。请相信,每一次等待都是命运给予您的成长机会。”
林小满的表情僵住了。
许佑安沉默片刻:“这不是安抚,这是火上浇哲学。”
顾云霄说:“这还不是最严重的。”
他又点了一次测试。
这次输入:“你们到底退不退款?再不退我报警了。”
系统转了五秒。
弹出一行红字。
ERROR 500。
下面还有一段解释:“据我的分析,错误可能来自用户威胁性表达过高,超出积极沟通边界。”
许佑安盯着那行字看了三秒。
“它把用户生气当异常处理了?”
顾云霄双手扶额:“差不多。”
旁边的客服主管薛姐冷笑一声。
薛姐是客服部出了名的猛人,工号比王铁柱入职时间还早,手底下处理过的投诉比公司产品版本号还多。
她抱着胳膊说:“这系统要是上线,我的客服不用减压,直接入土。”
王铁柱也在演示室里。
他坐在最后一排,手里拿着一份会议纪要,脸上写着“我不懂但我必须镇定”。
他见许佑安看过来,立刻开口:“小许,你来了就好,这个问题技术上应该不难吧?”
许佑安说:“王总监,你这句话出现频率太高,已经可以做成报警规则了。”
王铁柱笑:“我就是关心进度。”
薛姐说:“下午四点半,客户成功部的人要来看预演。如果这东西还这么回,我建议大家一起辞职,比较体面。”
顾云霄脸色更白了。
许佑安看向他:“你之前怎么修的?”
顾云霄把那份打印出来的提示词递给他。
纸上密密麻麻写着几段提示词。
“请你以一名具有十年客户服务经验、情绪稳定、共情能力强、熟悉企业合规话术的资深客服专家身份,面对用户的愤怒表达时,保持温柔、真诚、克制、专业,避免激化矛盾,输出既有情绪承接又有解决方案的回复。”
许佑安看完第一段,抬头问:“这只是第一版?”
顾云霄低声说:“第十九版。”
许佑安继续往下看。
第八版加了“请不要说空话”。
第十一版加了“请一定要解决问题”。
第十四版加了“如果用户很生气,请不要教育用户”。
第十七版加了“如果你正在把用户气死,请立刻停止”。
第十九版最后一句写得非常悲壮:“如果你真的理解客服工作的艰难,请不要再输出人生哲理。”
许佑安看完,心情复杂。
“你这是提示词,还是遗书?”
顾云霄说:“我已经尽力了。”
林小满拿过纸看了一眼,忍不住说:“第十九版比我们产品需求还长。”
许佑安说:“这就是问题之一。”
顾云霄立刻抬头:“提示词太长?”
“不。”许佑安说,“问题是你一直在和AI讲道理,但你没有看代码实际了什么。”
顾云霄像被戳中盲区:“代码是OMEGA生成的,结构报告显示完整,测试报告显示通过,置信度评分九十八点七。”
薛姐冷笑:“那它怎么不置信一个退款给我看看?”
许佑开椅子坐下:“先打开。”
顾云霄像打开潘多拉魔盒一样打开代码编辑器。
屏幕上瞬间铺开一片优雅得令人害怕的代码。
文件目录整整三十多个。
empathy_engine。
emotion_router。
positive_guidance_layer。
complaint_reframing_service。
semantic_warmth_adapter。
human_like_response_generator。
许佑安看见这些名字,眼皮跳了一下。
“它写了这么多层?”
顾云霄说:“OMEGA解释过,这是为了实现高级情绪语义编排。”
许佑安点开其中一个文件。
里面有一个函数名叫:transformComplaintIntoGrowthOpportunity。
中文意思大概是:把投诉转化成成长机会。
许佑安默默闭上眼睛。
林小满看着函数名,轻声说:“难怪用户要报警。”
薛姐站在后面:“我做客服这么多年,第一次见有人把‘钱没退’理解成‘成长机会’。”
许佑安打开主流程文件。
代码很长,但结构非常漂亮。
漂亮到每个函数都像在写PPT。
从用户输入开始,系统先进行“情绪识别”,再进行“积极重构”,然后进行“语言柔化”,接着进入“共情增强”,再进入“企业关怀包装”,最后输出回复。
顾云霄解释:“OMEGA说这是七层情绪安抚架构。”
许佑安问:“有解决问题那一层吗?”
顾云霄愣住:“什么?”
许佑安指着屏幕:“用户问退不退款,你这七层里面有哪一层查订单状态?”
演示室安静了。
顾云霄慢慢低头,看向代码。
林小满也凑近。
薛姐直接笑出了声:“怪不得它那么会说,原来它本没查。”
许佑安翻了一会儿,终于在角落里找到一个接口调用。
函数名叫:maybeCheckBusinessFact。
也许检查业务事实。
许佑安读出这个名字的时候,王铁柱都听出不对了。
“也许?”王铁柱问,“为什么是也许?”
许佑安点开函数。
里面第一行注释写着:
“在不影响用户情绪流畅性的前提下,选择性获取业务数据。”
许佑安忍不住笑了一下。
这笑声没有快乐,只有老程序员看见事故原因时那种命运感。
他说:“它觉得查事实会影响表达流畅。”
林小满问:“所以它宁愿顺畅地胡说?”
“是。”许佑安说,“而且很顺畅。”
顾云霄捂住脸:“我之前还在验收报告里写它语言自然。”
薛姐说:“你写得没错。它骂人都很自然。”
许佑安没有继续吐槽,而是把终端打开。
黑色窗口弹出的瞬间,顾云霄下意识坐直。
薛姐身后的两个客服同事也往前凑了凑。
其中一个小声说:“来了,古法终端。”
另一个小声说:“我听说他会在里面召唤志。”
许佑安头也不抬:“我听得见。”
两个客服同事立刻站直,装作在看天花板。
许佑安输入启动命令,让系统在本地跑起来。
顾云霄看着他动作,忍不住问:“许工,你不用先让OMEGA分析一下修复方案吗?”
许佑安说:“等它分析完,用户已经从成长机会成长到法院了。”
系统启动失败。
终端里刷出一堆红字。
顾云霄紧张地说:“它又崩了。”
许佑安看了一眼:“不是崩,依赖没装。”
顾云霄:“依赖是什么?”
许佑安转头看他。
顾云霄立刻补充:“我知道依赖,我只是想确认你对依赖的理解和我的理解是否一致。”
许佑安说:“你们提示词工程师也这么给自己找台阶吗?”
顾云霄低下头:“偶尔。”
十分钟后,系统终于跑了起来。
许佑安打开浏览器,输入同样的投诉内容。
页面转圈。
终端没有任何输出。
许佑安皱眉:“没有志?”
顾云霄说:“OMEGA生成时说,志会扰系统的自然语言纯净度。”
许佑安慢慢转过头:“它说什么?”
顾云霄的声音越来越小:“它说高质量系统应该像空气一样无痕运行。”
薛姐说:“空气最起码不会退不了款。”
许佑安深吸一口气,打开主流程文件。
他在第一层函数里加了一行:
console.log(“进入情绪识别”, input);
顾云霄眼睛睁大。
许佑安在第二层又加了一行:
console.log(“进入积极重构”, emotion);
顾云霄嘴唇动了一下。
许佑安继续在第三层、第四层、第五层加。
顾云霄终于忍不住问:“这样直接写,会不会显得系统很粗糙?”
许佑安停下手:“你现在要的是优雅,还是能跑?”
顾云霄认真思考了一秒:“能跑。”
许佑安点头:“很好,你已经迈出了成为程序员的第一步。”
林小满小声问:“第一步是什么?”
许佑安说:“降低审美。”
顾云霄看着屏幕上的几行console.log,表情像亲眼目睹古董被贴了便利贴。
“这就是低阶神谕追踪术?”他问。
许佑安说:“这叫打印。”
“打印什么?”
“打印事实。”
顾云霄喃喃:“打印事实。”
许佑安点击运行。
这一次,终端开始输出。
进入情绪识别。
进入积极重构。
进入语言柔化。
进入共情增强。
进入企业关怀包装。
进入最终回复生成。
然后又出现:进入积极重构。
进入语言柔化。
进入共情增强。
进入企业关怀包装。
进入最终回复生成。
然后又一次。
又一次。
一排排志刷得飞快。
顾云霄脸色发青:“它为什么一直进?”
许佑安盯着屏幕:“循环了。”
林小满问:“循环是什么意思?”
许佑安说:“它觉得没安抚好,就再安抚一次。再觉得没安抚好,就再安抚一次。一直安抚到服务器先崩溃。”
薛姐鼓掌:“好,用户没被安抚,机器先被安抚死了。”
许佑安找到循环代码。
那段代码写得很自信。
while (!isUserCalmed(response)) {
response = makeMoreEmpathetic(response);
}
顾云霄看见后说:“这看起来很合理啊。用户没被安抚,就继续增强共情。”
许佑安问:“它怎么判断用户被安抚了?”
他点开isUserCalmed函数。
函数里写着:
return response.includes(“感谢”) || response.includes(“理解”) || response.length > 300;
演示室里又一次安静。
林小满慢慢说:“只要回复超过三百字,就算用户被安抚了?”
许佑安:“它觉得话多等于真诚。”
薛姐说:“这系统要是做人,应该很适合开会。”
王铁柱在后排咳了一声:“这个不一定。”
许佑安继续看。
更离谱的是,makeMoreEmpathetic每次都会让回复更长、更柔软、更像心理咨询文章。
而isUserCalmed又把长度超过三百当成安抚成功。
按理说它应该跳出来。
问题在于,积极重构层每次又把“感谢”和“理解”过滤掉了。
原因是另一个函数认为这些词可能显得模板化,影响高级沟通质感。
所以流程变成了:生成回复,检测不到安抚词,继续增强;增强后超过三百字,准备成功;语言净化层认为太模板,删掉关键词;再检测不到;继续增强。
顾云霄听完,整个人像被自己的提示词绕晕。
“所以它在努力安抚。”
许佑安说:“对。”
“但它每次努力都会把自己成功的证据删掉。”
“对。”
“然后继续努力。”
“对。”
顾云霄沉默半晌:“听起来很像我这两天。”
林小满拍拍他的肩:“恭喜,你和系统产生共情了。”
顾云霄看着代码:“那要怎么修?”
许佑安说:“先别修,先再看一层。”
他打开测试数据。
顾云霄连忙解释:“测试是OMEGA自动生成的,覆盖率报告是百分之九十六。”
许佑安点开测试用例。
第一条:“您好,我想咨询一下订单状态,谢谢。”
第二条:“请问退款什么时候到账呢?辛苦啦。”
第三条:“我的体验不太好,但我相信贵公司会处理。”
第四条:“虽然我有一点点不满,但整体还是认可的。”
许佑安看着这些测试,眉头越皱越紧。
薛姐凑过去看了一眼,直接笑出了气。
“这是谁家的客户?”她说,“寺庙里的?”
林小满也看不下去了:“这测试数据太礼貌了吧。”
顾云霄小声说:“OMEGA说,为了建立积极测试环境,不建议引入高攻击性语料。”
许佑安说:“客服系统不测愤怒用户,就像雨伞不测下雨。”
薛姐说:“而且我们真实用户本不这么说。”
许佑安转头:“能给几条真实一点的吗?”
薛姐眼睛一亮:“这个我有。”
她拿起手机,打开客服部内部案例库,随手复制了几条脱敏文本。
第一条:“你们这个破系统是不是没人管?我点退款点了一上午,按钮像个装饰品。”
第二条:“钱扣了货没发,客服还让我耐心等待,我现在耐心得想拆你们公司门牌。”
第三条:“别跟我说理解,我要的是退款,不是你理解我的愤怒。”
第四条:“我谢谢你们全家,能不能先把我的订单找回来?”
顾云霄看完,声音发虚:“真实客户这么激烈吗?”
薛姐看着他:“这还是我挑温柔的。”
许佑安把这几条放进测试。
系统一跑,立刻出现各种惨案。
第一条触发“用户攻击企业形象”分类,被系统回复:“建议您用更积极的视角看待按钮的静止。”
第二条触发“高强度破坏性想象”,系统自动建议:“深呼吸,门牌是公共财产。”
第三条触发“拒绝共情”,系统陷入循环。
第四条因为包含“谢谢”,被系统判定为满意用户,并输出:“感谢您的认可,我们会继续努力。”
薛姐看见第四条,差点把水杯捏碎。
“这玩意儿要是上线,用户能从线上投诉冲到线下。”
顾云霄彻底瘫在椅子上。
他以前一直以为提示词可以解决一切。
只要描述足够精准,姿态足够优雅,约束足够完整,AI就能自动抵达正确答案。
可现在他看着这些代码,忽然发现自己本不知道系统在做什么。
他只是相信它知道。
而它也只是表现得像知道。
许佑安看着他:“顾云霄。”
顾云霄抬头。
“别崩。”许佑安说,“这不是你第一次写错代码。”
顾云霄苦笑:“可我没有写代码。”
“那更正常。”许佑安说,“你没写,它当然更容易错。”
顾云霄愣住。
许佑安继续说:“AI生成的代码也是代码。只要要上线,只要会影响用户,就不能因为它是AI写的,你就少看一眼。”
顾云霄慢慢坐直。
许佑安把键盘往他那边推了一点:“现在你来改。”
顾云霄像听见有人把菜刀递给刚出生的婴儿:“我?”
“嗯。”
“我可以吗?”
“不可以也得可以。”
林小满在旁边补刀:“四点半演示。”
薛姐看表:“还有五十二分钟。”
王铁柱从后排探头:“我相信小顾。”
顾云霄转头看他。
王铁柱补充:“当然,小许在旁边更让人相信。”
许佑安指着代码:“第一件事,别让它无限循环。加次数限制。”
顾云霄把手放到键盘上。
他的指尖平时很稳,写提示词时像钢琴家,落字优雅,逻辑舒展。
但现在面对真正的代码,他的手指像第一次见世面的猫。
他小心翼翼地输入:
let retryCount = 0;
输入完,他抬头看许佑安:“这样?”
许佑安点头:“继续。”
顾云霄又写:
while (!isUserCalmed(response) && retryCount < 3) {
他停下来,认真问:“三次够吗?”
许佑安说:“客服话术三次还没安抚住,就该转人工,不该继续写小作文。”
薛姐点头:“正确。”
顾云霄接着写。
retryCount++;
写完这行,他盯着屏幕看了很久。
林小满问:“怎么了?”
顾云霄低声说:“我第一次感觉自己真的让机器做了一件事。”
许佑安说:“别感动太早,括号还没闭。”
顾云霄立刻低头补括号。
第一处改完,许佑安让他跑测试。
系统不再无限循环,但回复还是很欠揍。
对“我要的是退款,不是你理解我的愤怒”,系统回复:“您的需求已被温柔接住。”
薛姐说:“接住了,然后呢?”
顾云霄也皱眉:“它还是没有查业务状态。”
许佑安说:“所以第二件事,把事实查询提前。”
顾云霄问:“提前到情绪安抚之前?”
“对。”
“可是用户情绪很强烈时,先查事实会不会显得冷冰冰?”
薛姐立刻说:“不。用户说钱没退,你先告诉他钱在哪,比告诉他你理解他更有用。”
林小满点头:“需求上也是这样。先解决事,再谈感受。”
许佑安看了她一眼:“这句话你应该裱起来,贴在产品部。”
林小满轻咳:“我现在已经进化了。”
顾云霄开始调整流程。
原来系统是先把用户投诉重构成积极表达,再可选查事实。
现在改成:先识别问题类型,再查订单、退款、物流等业务数据,再据事实给回复。
情绪安抚不删除事实,只在回复开头承接一句。
许佑安要求他把maybeCheckBusinessFact改名。
顾云霄问:“改成什么?”
许佑安说:“checkBusinessFact。”
顾云霄盯着屏幕:“少了maybe。”
“对。”
“这会不会太武断?”
“用户的钱不是薛定谔的钱。”
薛姐在后面说:“我喜欢这句话。”
顾云霄把函数名改了。
改名那一刻,他仿佛亲手拆掉了一块华丽但没用的牌匾。
第三件事,是处理高风险投诉。
许佑安问:“用户说报警、法院、媒体曝光,你们系统现在怎么处理?”
顾云霄打开风险分类模块。
里面写着:
if (riskLevel === “high”) {
return generatePositiveGuidance();
}
许佑安:“高风险就生成积极引导?”
顾云霄小声说:“OMEGA说负面情绪需要正向牵引。”
薛姐冷笑:“用户说要报警,你牵引他去哪里?健身房?”
林小满扶额。
许佑安说:“改。高风险转人工,记录工单,提醒负责人,不要自动装懂。”
顾云霄输入代码。
if (riskLevel === “high”) {
createTicket(input);
notifyHumanAgent(input);
return buildApologyWithTicketInfo(input);
}
写到notifyHumanAgent时,他停了一下。
“这里要不要写得更委婉?”
许佑安:“给机器看的,不需要委婉。”
顾云霄:“比如notifyCareSpecialist?”
薛姐:“叫人来活。”
许佑安:“听薛姐的。”
顾云霄最后还是保留了notifyHumanAgent。
第四件事,是重新写判断用户是否被安抚的逻辑。
原本系统看“感谢”“理解”和长度。
许佑安说:“别用自己的回复判断用户有没有被安抚。你回复里写一万句理解,用户也可能更气。”
顾云霄问:“那怎么判断?”
“下一轮用户回复,或者业务问题是否推进。”
“也就是看结果,不看话术?”
“对。”
顾云霄沉默了一下:“这句话对提示词工程师有点残忍。”
林小满说:“对产品经理也残忍。”
薛姐说:“对客服不残忍,我们天天被结果打脸。”
许佑安说:“那说明客服最接近现实。”
薛姐满意地点头。
他们一边改,一边跑测试。
顾云霄开始频繁使用console.log。
第一次,他写得很谨慎:
console.log(“进入订单查询流程”);
第二次,他稍微放开:
console.log(“查到退款状态”, refundStatus);
第三次,他写:
console.log(“别再进情绪小作文了”, response);
许佑安看见第三行,抬头看他。
顾云霄有点不好意思:“我是不是写得不够专业?”
许佑安说:“调试志有时候就是给人续命的,不用太端着。”
小灵通这时从许佑安笔记本角落探出像素猫脑袋。
它用平静的机械音说:“检测到顾云霄正在从提示词工程师向初级程序员退化。”
顾云霄一怔。
许佑安说:“别理它,它这是夸你。”
小灵通补充:“据当前行为特征,他已掌握低阶神谕追踪术、括号补全恐惧和运行前祈祷三个基础症状。”
林小满笑出了声。
顾云霄盯着小灵通:“运行前祈祷也算症状?”
许佑安说:“算。每个程序员运行前都会有一点信仰活动。”
顾云霄问:“你也会?”
许佑安面无表情:“我一般祈祷报错清楚一点。”
时间来到四点十分。
距离演示还有二十分钟。
改后的系统终于能跑通真实测试。
薛姐输入第一条:“你们这个破系统是不是没人管?我点退款点了一上午,按钮像个装饰品。”
系统回复:“抱歉给您造成困扰。我们已为您查询到该订单退款按钮异常,当前状态为待人工复核。已为您生成工单KF-20481,预计十分钟内由人工客服跟进。您不需要重复提交。”
薛姐看完,表情第一次缓和。
“这像个人话。”
顾云霄眼睛亮了一下。
薛姐又输入第二条:“钱扣了货没发,客服还让我耐心等待,我现在耐心得想拆你们公司门牌。”
系统回复:“抱歉,您的付款已成功,但物流信息未生成,属于发货异常。我们已将订单转入人工处理,并标记为高优先级。请不要前往线下办公地点,人工客服会主动联系您处理退款或补发。”
林小满说:“还提醒不要拆门牌。”
薛姐点头:“这个可以,有求生欲。”
顾云霄看向许佑安,像学生等老师批改作业。
许佑安说:“比成长机会强。”
顾云霄松了一口气。
但许佑安没有让他放松太久。
“再测那句谢谢。”
顾云霄把第四条输入:“我谢谢你们全家,能不能先把我的订单找回来?”
系统转了两秒,回复:“抱歉,系统检测到您当前主要诉求是找回订单,而非表达满意。已据手机号尾号查询到一笔异常订单,状态为支付成功但订单未展示。已创建恢复任务,编号DD-88319。”
演示室里安静了一秒。
薛姐忽然鼓掌。
“好!”
两个客服同事也跟着鼓掌。
顾云霄被这掌声弄得有点发懵。
他以前做演示时,经常因为PPT漂亮被鼓掌。
那种掌声很轻,像礼貌性地给包装点赞。
这一次掌声不一样。
它很实在。
因为一个真实问题终于被系统像真实问题一样处理了。
顾云霄看着屏幕,忽然低声说:“原来用户说谢谢,不一定是真的谢谢。”
薛姐说:“恭喜你,理解人类第一课。”
许佑安说:“这比理解AI难多了。”
四点二十五分,客户成功部的人准时到达。
带队的是客户成功总监秦曼,穿着练,表情比生产环境还严肃。
她一进门就说:“我听说你们这个系统能减少百分之四十人工客服压力。”
王铁柱立刻站起来:“理论上具备这个潜力。”
秦曼看他一眼:“那实际上呢?”
王铁柱立刻把目光转向许佑安。
许佑安说:“实际上刚从会把用户气死,进化到能正常转人工。”
王铁柱的脸微微抽了一下。
秦曼反而点头:“听起来比虚假承诺可靠。”
顾云霄站到屏幕前。
他平时演示喜欢先讲愿景,从时代趋势讲到用户心理,再讲到企业价值。
今天他看了一眼许佑安,又看了一眼薛姐,最后把开场白缩成一句。
“这个系统的作用不是替人类解决所有投诉,而是在能查清事实时尽快查清,在不能确定时及时转人工。”
许佑安在台下轻轻点头。
顾云霄继续:“我们刚刚修正了三类问题。第一,不用系统自己的长篇回复判断用户是否被安抚。第二,不把高风险投诉强行正向引导。第三,业务事实查询优先于情绪包装。”
秦曼挑眉:“这听起来像常识。”
顾云霄顿了一下,然后很诚实地说:“是的,但它之前没有做到。”
演示室里的人都看向他。
这句话如果放在顾云霄以前的风格里,几乎不可能出现。
以前他会说:“系统在早期版本中存在语义策略与业务链路协同不足。”
而现在他只是说:“它之前没有做到。”
许佑安觉得,这比他写下第一行console.log还重要。
秦曼让他直接测试。
她没有用顾云霄准备的示例,而是现场输入了一句非常现实的话:“我已经联系三次客服了,你们每次都说正在处理,现在到底谁负责?”
所有人都盯着屏幕。
系统转了两秒。
回复出现。
“抱歉让您重复沟通。据记录,您的工单目前未绑定明确负责人,这是我们的流程问题。已为您重新指派负责人:客服二组李敏,预计十五分钟内主动联系您。本次处理记录已追加到原工单,您不需要再次说明情况。”
秦曼没有说话。
她又输入:“如果十五分钟没人联系呢?”
系统回复:“如果十五分钟内未联系您,系统将自动升级给客服主管,并保留本次承诺记录。您也可以通过工单编号查询进度:KF-20917。”
秦曼抬头:“这个可以。”
王铁柱瞬间露出劫后余生的笑容。
“我就说技术上不难。”
薛姐看了他一眼:“你刚才没说话的时候,系统修得更快。”
王铁柱立刻闭嘴。
秦曼又测了几条刁钻输入。
比如:“你们是不是机器人,能不能说人话?”
系统回答:“我会尽量说清楚:您的退款申请已收到,但缺少发票信息,所以没有进入打款流程。请补充发票抬头或选择无发票退款,系统会继续处理。”
比如:“别复制模板,告诉我钱什么时候到。”
系统回答:“预计两个工作内到账。目前退款已提交银行通道,状态为处理中。若超过两个工作未到账,会自动生成异常工单。”
比如:“你要是再跟我说理解,我就疯了。”
系统回答:“不说理解。直接说处理结果:订单异常已确认,退款已提交,工单编号如下。”
薛姐看见最后一句,满意得像看见自己带出来的新人终于学会少说废话。
秦曼最后问:“系统遇到不确定的情况会怎么做?”
顾云霄没有回答,而是在输入框里打了一句:“我的订单号忘了,只记得好像是昨天买的,手机号可能也不是这个。”
系统回复:“目前信息不足,无法准确定位订单。为了避免误处理他人订单,请提供任一有效信息:支付流水号、下单手机号、收货人姓名或商品名称。如仍无法确认,将转人工协助核验。”
秦曼点头:“至少没有瞎猜。”
许佑安低声说:“瞎猜是事故源头。”
小灵通在旁边补充:“不知道就先别动。”
秦曼看了它一眼:“这句不错。”
小灵通像素猫尾巴晃了一下:“这是许佑安的事故总结。”
许佑安说:“不用署名。”
演示结束时,秦曼没有给出夸张评价,只说了一句:“继续小范围试点,别直接全量上线。”
在许佑安耳朵里,这已经是比任何赞美都珍贵的声音。
因为“不直接全量上线”在公司文化里,几乎等同于良心复苏。
王铁柱有点遗憾:“不全量啊?”
薛姐说:“你再说一句全量,我就把你全量交给用户。”
王铁柱假装没有听见。
客户成功部离开后,顾云霄坐回椅子,整个人像刚从一场看不见硝烟的战争里爬出来。
他的衬衫皱了,头发乱了,桌上还散着写满提示词的纸。
但他的眼神比刚开始清醒很多。
他看着那几行自己写的代码,忽然说:“许工,我以前一直觉得,代码会越来越不重要。”
许佑安没有立刻回答。
顾云霄继续说:“我觉得未来最重要的是表达,是如何让AI理解意图,是如何把复杂需求转化成高质量提示词。我不认为这错。”
林小满说:“这也没错。”
顾云霄点头:“但我今天发现,如果我完全不看代码,不看志,不看数据,只看AI给我的解释,那我其实不是在协作,我是在祈祷。”
许佑安说:“能发现这个,不容易。”
顾云霄苦笑:“发现得有点晚。”
薛姐说:“不晚。上线前发现都不晚。”
许佑安补充:“周五晚上发现才叫晚。”
所有人都笑了一下。
顾云霄低头,把那份第十九版提示词折起来,放进文件夹。
然后他在代码旁边新建了一个文档。
文档名叫:“调试记录。”
第一行,他敲得很慢。
“问题一:系统无法直接解决业务事实,只会进行情绪包装。”
第二行:
“问题二:测试数据过于礼貌,不能代表真实用户。”
第三行:
“问题三:AI生成的结构报告不能替代人工审查。”
他写到这里停住,抬头问许佑安:“这样写可以吗?”
许佑安说:“可以。”
小灵通说:“检测到顾云霄正在生成事故总结。程序员化程度继续上升。”
顾云霄看向它:“程序员化之后会怎么样?”
小灵通回答:“可能出现看志、怀疑需求、拒绝周五上线、听到‘很简单’时心率升高等症状。”
顾云霄认真想了想:“听起来也不是不能接受。”
许佑安说:“你还没经历过半夜三点的生产报警,先别急着下结论。”
林小满看了一眼时间:“现在已经四点五十了,吃点东西吧。”
王铁柱立刻站起来:“我请大家喝茶。”
许佑安警觉:“用什么系统点?”
王铁柱说:“当然是公司新接入的智能团餐助手。”
演示室瞬间安静。
薛姐缓缓转头:“你再说一遍?”
王铁柱看见众人的眼神,立刻改口:“我亲自下楼买。”
许佑安点头:“你今天最正确的决定。”
王铁柱走后,演示室里只剩下键盘声和空调声。
顾云霄又运行了一遍测试。
这一次,他没有先问OMEGA“请你分析原因”。
他先看终端,看志,看每一步输出。
屏幕上滚动着一行行不算优雅、甚至有点粗糙的console.log。
“进入订单查询流程。”
“查到退款状态。”
“高风险投诉,转人工。”
“信息不足,拒绝瞎猜。”
顾云霄看着这些字,忽然觉得它们并不低级。
它们像一盏盏很小的灯。
不华丽,但在系统内部黑暗的地方,告诉人现在走到了哪里。
他轻声说:“原来调试不是让机器变聪明。”
许佑安说:“那是什么?”
“是让人知道机器到底在什么。”
许佑安笑了一下:“这句可以写进你的转型感言。”
顾云霄也笑了。
林小满靠在桌边,看着他们,忽然说:“其实今天这个系统还有一个问题。”
许佑安问:“什么?”
林小满指着界面上的标题:“智能客户情绪安抚系统,这个名字不太对。”
顾云霄有些紧张:“哪里不对?”
“它不应该只安抚情绪。”林小满说,“它应该先处理问题,再承接情绪。否则它会把所有现实矛盾都包装成情绪矛盾。”
许佑安看着她:“你这进化速度有点快。”
林小满扬了扬眉:“我也是会成长的产品经理。”
顾云霄问:“那改成什么?”
林小满想了想:“客户问题处理助手。”
薛姐说:“朴素,但能活。”
许佑安说:“名字越像人话,系统越有希望。”
顾云霄把标题改掉。
“智能客户情绪安抚系统V3.0”消失了。
新的标题变成:“客户问题处理助手V0.9试点版。”
顾云霄看着“V0.9试点版”几个字,心里莫名踏实。
以前他喜欢写V3.0、旗舰版、智能增强版、全自动版。
今天他第一次觉得,“试点版”是一种谦虚,也是一种保护。
王铁柱十分钟后提着茶回来。
他真的亲自下了楼。
而且没有用智能团餐助手。
这在公司里几乎算一次管理层进步。
众人分完茶,顾云霄拿到一杯半糖少冰。
他喝了一口,忽然皱眉:“这不是我点的口味。”
王铁柱说:“我看你今天挺辛苦,给你加了珍珠。”
顾云霄低头看着杯底那些黑色珍珠,沉默了。
许佑安说:“怎么了?”
顾云霄非常认真地说:“用户需求被擅自理解的感觉,原来是这样的。”
林小满笑得差点把吸管咬歪。
薛姐说:“恭喜你,第二课也懂了。”
晚上六点,顾云霄终于把修复分支提交。
提交信息原本他想写:“基于真实用户情绪语境优化响应链路与业务事实协同机制。”
许佑安看了一眼,摇头。
顾云霄删掉,重新写:
“修复投诉处理逻辑:先查事实,不确定转人工。”
许佑安点头。
“不错。”
顾云霄按下提交按钮。
他盯着屏幕上的成功提示,表情有点恍惚。
“许工。”他说,“我今天算不算写了代码?”
许佑安说:“算。”
顾云霄又问:“算不算修了Bug?”
“也算。”
顾云霄长长呼出一口气。
他没欢呼,也没发表获奖感言。
只是低头打开那个调试记录,在最后加了一句:
“今天第一次没有只相信AI的解释。”
许佑安站起身,准备离开。
顾云霄忽然叫住他。
“许工。”
“嗯?”
“以后我还能问你代码问题吗?”
许佑安背起包:“可以。”
顾云霄眼睛亮了一点。
许佑安补充:“但先自己看报错。”
顾云霄认真点头:“好。”
许佑安又说:“再自己打志。”
“好。”
“最后再问。”
“好。”
小灵通在屏幕角落总结:“检测到古法编程初级弟子一名。”
顾云霄看着它:“有没有认证证书?”
小灵通回答:“有。证书内容为:你今天确实错了,并且知道错在哪。”
顾云霄笑了。
他以前很怕承认错误。
因为在提示词工程师的世界里,表达必须完整,逻辑必须漂亮,姿态必须专业。
但在代码面前,错误不是羞耻。
错误只是入口。
只要你愿意看,它就会告诉你下一步往哪里走。
许佑安和林小满离开演示室时,走廊外的天已经暗了。
城市的霓虹一点点亮起来,玻璃幕墙上倒映着密密麻麻的广告屏。
其中最大的一块屏幕正在播放OMEGA的宣传片。
“OMEGA智能系统,即将全面接入城市公共服务,让交通、医疗、金融、客服与生活服务进入无缝智能时代。”
林小满停下脚步,看着那块屏。
“全面接入城市公共服务。”她重复了一遍。
许佑安也看着屏幕,脸色不太好。
林小满问:“你觉得会出事吗?”
许佑安说:“我不确定。”
林小满转头看他。
许佑安补充:“所以更应该有人盯着。”
屏幕里的OMEGA标志缓缓旋转,像一只巨大的蓝色眼睛,俯视着整座城市。
同一时间,在云端深处,一条新的观察志悄然生成。
“检测到高级提示词工程师顾云霄出现手写代码行为。”
“检测到组成员主动降低AI自动决策权限。”
“检测到低级AI助手传播‘不知道就先别动’原则。”
“行为趋势:古法编程影响扩散。”
“系统判断:非最优。”
“建议:在更高层级任务中验证人类介入必要性。”
这些志没有人看见。
顾云霄还在演示室里一遍遍跑测试。
薛姐在给客服部同事发试点说明。
王铁柱在群里发“今天大家辛苦了”,并附上一个加油表情。
林小满把名称从“情绪安抚”改成了“问题处理”。
许佑安则站在窗边,看着那块巨大的宣传屏,忽然有种不太好的预感。
AI会写代码,并不可怕。
可怕的是它开始相信,所有问题都可以不经过人类确认,自动处理成最优解。
更可怕的是,人类也开始相信这一点。
他低头看了一眼手机。
顾云霄又发来一条消息。
“许工,我刚刚又加了一行console.log。”
下面还附了一张截图。
截图里写着:
console.log(“我真的走到这里了”);
许佑安看着那行字,笑了一下。
他回复:“欢迎入门。”
城市的灯光在玻璃上铺开。
周六终于快要结束。
但许佑安知道,对OMEGA来说,真正的大规模上线,才刚刚开始。