基础功能问答

tmyb

今儿个抽空整了个基础问答机器人,过程贼简单,但愣是踩了仨坑,搞出来的玩意儿勉强能答人话。先上甭信网上那些花里胡哨的教程,从零开始硬怼最快。

第一步:先扒点人话存着

大清早扒拉电脑里的旧文档,翻出半年前写的产品FAQ。二十多条问答皱得像咸菜干,什么"密码忘了咋整"、"会员费多钱"、"客服电话多少"...一股脑全怼进Excel表里,左边塞问题,右边塞答案,跟腌咸菜似的码齐。

基础功能问答

第二步:给破词库上发条

把Excel表拖进Python脚本里。本想着直接import完事,结果读到第三条就卡壳——这行"充值未到账?"里的问号带着中文全角,程序压根不认!气得我现场改代码,拿replace把全角符号全替换成半角,又拿strip剃掉首尾空格。回头瞅了眼Excel,好家伙,有行答案塞了三百字小作文,赶紧切菜似的剁成三截。

  • 坑一:忘删空格导致关键词匹配失败
  • 坑二:超长文本挤爆显示框

基础功能问答

第三步:摆弄匹配逻辑

琢磨半天怎么让人问得糙机器听得懂。试了直接全文扫描,结果用户输"密碼登陸不了",脚本死都匹配不到"忘记密码"的标准问。连夜往脚本里怼了近百个同义词替换,比如"登陸/登陆/登录"全映射成"登录"。测试时故意乱输"会员多少钱一年",居然能从"会员费多钱"的条目里把答案刨出来!

摔得最狠的坑在这:

昨天下午隔壁老张跑来试水,冲着窗口吼:"我!要!退!款!"。脚本默默吐出会员价目表。查日志才发现破程序只认"退款流程"这种整句,赶紧连夜加了个分词拆句功能,现在就算用户输入"退钱"俩字也能拽出正确答案了。

魔幻收尾

完工前突发奇想:要是用户问表里没有的咋办?临时在脚本末尾塞了行阴间代码——但凡匹配失败的提问,自动回复"您是想咨询以下问题吗?"+随机吐出表里三个问题。结果测试时输入"今天星期几",机器人热情推荐起密码重置攻略...

基础功能问答

搞完瘫椅子上刷朋友圈,正好看见前同事吐槽公司AI客服。截了个自己脚本的报错图发过去:"您司买那套八十万的问答系统,报错信息咋跟我这台破烂长一模一样?" 两分钟后对方撤回消息,隔天听说他们技术部集体加班改交互——你看,这就叫基础功能吓倒老师傅。