本周工作思考
脚本编辑器
对这个项目做一些必要的总结
从去年9月份转岗到AI组,段君给我的主要任务之一就是Chatbot工程化专题,这个专题我们分两天条线走的,1是如何保证逐渐增加的Chatbo的交付速度,2是如何建设平台化能力。
从保证交付速度来说,AI这边最初的交付需要2位伙伴支持,sql和脚本分开,从我开始这项工作转到一个人身上,这样了减少协作和沟通时间,给了其他伙伴完整的专注时间, 起初熟悉整个Chatbot的工作机制,开始手写脚本,手写sql,后来基本了解了Chatbot的整体机制,开始利用一些其他伙伴写的工具,后来我继续补充小工具,可以实现根据google sheet的脚步自动生成脚本,并且能够对金句,关键词,近义词也有了一些工具处理,虽然没有形成工具链,总算有了比较完整的工具集,基本的流程和对脚本的形式上的梳理和定义,这个也是后来实习生伙伴@jihao快速接入的一个基础,以此为基础,@jihao对这些工具也做了一些补充和优化,到目前为止,@jihao作为一名具有初步编程经验和sql编写经验的伙伴,就能完全满足的现在的Chatbot脚本生成的产能,按照项目经验一天能完成平均30轮对话左右的UJT的完全的新脚本的生成。
从平台化建设的我们是按照长远的思路来考虑,现有的Chatbot的bot能力,我们也初步预想了按照现有的NLP技术的发展,我们下次大版本的Chatbot的能力应该需要什么样工程化,以此为出发点,我们如何搭建这个框架。实话说,起初我们走了一些弯路,缺乏全局的思考了,没有完全从市场侧和产品侧去考虑这类平台的产品价值和客户价值,我们的出发点是先把chatbot的数据,脚本,配置统一到一个平台,做到自动化,做的可以像admin一样,使用者限定在我们开发人员和对Chotbot的资深用户,甚至是想前端,后端,ai端我们全家桶一起做。随着我们客户的增多,和CSS伙伴的交流,和PM的交流,我们逐步认识到它的产品价值和客户价值,也就快速转变思路,专注与我们擅长的那部分,做到现阶段的最佳。这个项目的过程中间也是经历过一次错误的排期,这个责任主要在我,错估的主要是原因是缺乏了对大量隐藏需求的认知,就是不知道自己不知道,我当时预估应该会有很多坑,但是我不知道有哪些具体的坑。整体思路比较清晰,但是很多细节开发工作量不是很好评估,我当时就做了一个错误的决定,先评估我能明确知道的工作,并且低估了编码难度,随着开发的进行,问题是碰到很多,很多逻辑的复杂度和需要完备点需要的时间比我预估的多,而且投入时间也不能完全保证,还有别的工作要投入保证现有产品的正常使用。后来预定的联调阶段,我发现我认为写好的保存接口都还有很多依赖的接口有问题,我发现到重新评估排期的时候了,后来@新宇加入,我们充分吸取了之前的教训,加上我对这个项目的理解也更深刻了, 我们两个人用了2-3天的时间重新梳理一遍需求,数据,设计和接口,和前端重新同步了整体思路,这时候我对脚本生成的思路还是把python转为go,这样能节省我们很多时间,不过根据经验我们还是把整体的工作难度估高了一些,这样总时长就增加了一些,及时增加的这部分时间,加上@新宇帮我解决的了本地联调,并且传授给我go和服务端开发的一些技巧,让我们整体的开发时间比预期要少了一些,利用这两块时间,我完成了脚本生成器这快里没有确定导致的排期亏空。脚本生成器目前是存在一些遗留问题,脚本编辑器是go业务和AI bot业务的适配器,要依赖两头的能力,所以两头业务都要非常熟悉才行。我们这次的原则是关注go侧业务,尽量不动AI bot业务,这次脚本编辑器的开发,让我对我AI bot业务有了非常多的理解和认知,我想这也为后续AI bot侧的迭代打下了很好的业务上的基础。随着后续开发的迭代,我认为脚本编辑器也一定能够交付它应有的商业价值。