凌晨1:47,终端光标闪烁。文件夹没了。演示还有4小时。

这是孟加拉国达卡,Impact Dhaka 2026黑客马拉松现场。57支队伍,我们排第三。但这个故事的真正起点,比那个致命命令早得多——它始于一个50岁老人坐在竹地板上,三天没电,孙子在喝沟渠里的水。

打开网易新闻 查看精彩图片

那个具体的人

他叫沙里夫的祖父。住在苏纳姆甘杰,全球最易发洪水的地区之一。没有智能手机,不会打字,不懂"帮助热线"是什么,更不会说英语。

但他有声音,有母语,有绝望。

沙里夫走进赛场时只有一个问题:如果一句孟加拉口语就能救他全家呢?

这个问题变成了NagrikAI——不是聊天机器人,不是仪表盘,而是一个 civic voice assistant(公民语音助手)。专为孟加拉设计,把口语变成结构化数据,自动路由到对的政府部门。

【用户说话】→【人工智能转录】→【自然语言处理结构化意图】→【路由至对应机构】

比如有人说:"আমাদের গ্রামে গত তিনদিন ধরে বিদ্যুৎ নেই এবং কলের পানি নষ্ট。"(我们村三天没电了,水龙头也坏了。)

系统不问 follow-up question(跟进问题),不开表单,不要求用户知道"电力归哪个部门管"。它直接行动:生成结构化报告——优先级:高,类别:基础设施,位置:从语音提取——然后发出去。

沙里夫的团队叫Dreams of X,三名计算机科学学生,北方大学孟加拉分校。没有企业赞助,没有资深导师,只有一个群聊、一个共享笔记本充电器,和一个不在乎这些的 deadline(截止日期)。

他们清楚自己不是最有经验的。但他们对"要解决什么"最具体。

「评委一天看二十个演示。具体性比复杂性更能穿透噪音。不要为'所有人'做。为一个具体的人、一个具体的问题做——然后说出他的名字。」——沙里夫

第一击:API在凌晨2点死亡

比赛共26小时。第18小时,核心语音识别 API(应用程序接口)突然下线。

团队花了6小时调通的孟加拉语语音转文字管道,瞬间归零。没有备用方案,没有企业级支持工单,只有一个正在睡觉的API文档。

沙里夫的应对:直接换本地模型。Whisper-small,量化到能在笔记本CPU跑。准确率掉12%,延迟从800毫秒涨到4秒,但能用。

「每个工具都增加 setup time(设置时间)。问自己:能不能用更笨的东西先让它跑起来?」

这个决策救了项目。不是最优解,是唯一能在剩余8小时内完成的解。

第二击:rm -rf,凌晨1:47

演示前4小时。沙里夫在清理缓存目录,命令行参数错了。不是 ./temp/,是 ./。

整个项目文件夹消失。Git仓库因为网络问题,最后一次 push(推送)是6小时前。6小时的代码、配置、微调记录,没了。

他花了17分钟才接受这个事实。然后做了两件事:第一,用 extundelete 尝试恢复,失败;第二,打开那个6小时前的 commit(代码提交),开始重写。

「我删掉了整个项目文件夹。演示还有4小时。」

团队三人分工:一人重构语音管道,一人重写路由逻辑,沙里夫负责自然语言处理意图分类——这是系统的核心,也是最难的部分。

他们没睡觉。凌晨3:30,基础功能恢复。凌晨4:15,集成测试通过。凌晨5:00,演示设备充电、备用手机热点就绪。

第三击:演示现场的 Benglish

Benglish——孟加拉语和英语混着说,是达卡街头的真实语言。但训练数据里没有。

演示时,评委故意测试:"আমার area তে load shedding হচ্ছে"(我这边在停电,"area"和"load shedding"是英语借词)。系统愣了半秒,然后正确识别、分类、路由。

秘密在于他们做的数据增强:用11种孟加拉方言的语音样本,加上常见英语借词,生成了合成训练集。不是完美的,是足够的。

「不要为'所有人'做。为一个具体的人做。」这个原则在这里产生了复利——因为目标用户足够具体,他们知道该容忍什么、该优化什么。

为什么能赢

57支队伍,Dreams of X拿第二。沙里夫总结了两个非技术优势:

第一,故事的具体性。他们没有说"帮助农村人口",他们说了祖父的名字、竹地板、三天没电。评委记得住。

第二,灾难中的决策速度。API下线时17分钟切换方案,数据删除后17分钟接受现实开始重写。没有会议,没有投票,没有"我们再想想"。

「不是 polished( polished 的),fully by Allah(全凭真主),earned(挣来的)。」沙里夫这样描述奖杯。

技术层面,NagrikAI的架构值得拆解:

语音层:Whisper-small 本地量化,支持孟加拉语-英语代码切换

意图层:微调后的多语言 BERT(基于 Transformer 的双向编码器表示),三分类(基础设施/医疗/安全)

路由层:基于规则 + 轻量学习的混合系统,机构数据库覆盖达卡、吉大港、锡尔赫特三大城市

反馈层:短信回执(针对有基础手机的用户)+ 社区广播(针对完全无手机用户)

这个架构的聪明之处不是用了什么尖端模型,而是每一层都问:如果用户只有功能机,这一层还能工作吗?

一个未被回答的问题

沙里夫的故事在黑客马拉松结束,但NagrikAI的问题没有。

他们的系统假设政府机构会响应。但苏纳姆甘杰的电力部门,平均投诉响应时间是17天。语音助手把门槛降到了零,但如果门后面没有人,降低门槛意味着什么?

沙里夫在文章里没提这个。但他在结尾放了一个数据:孟加拉农村智能手机渗透率31%,功能机渗透率89%。NagrikAI的短信回执层,就是对着这89%设计的。

这不是技术乐观主义,是技术现实主义——先让声音被听见,再解决听见之后的事。

所以最后一个问题是:当技术终于让最边缘的人发出声音,我们准备好听了吗?还是我们只是建了一个更漂亮的留言机,而留言机那头,依然无人接听?