2024年10月NJSD技术盛典暨第十届NJSD软件开发者大会、第八届IAS互联网架构大会在南京召开。百度文心快码总经理臧志分享了《AI原生研发新范式的实践与思考》,探讨了大模型赋能下的研发变革及如何在公司和行业中落地,AI原生研发新范式的内涵和推动经验。
👉点击阅读文章完整内容
👉点击即可下载《百度AI原生研发新范式实践》完整资料
娃上了小学,数学口算水平一直上不来,娃妈一分析,要多练!于是,开始在各大网购平台、线下书店挑选合适的口算练习册。但这些练习册的水平参差不齐,还得花钱买。作为一名码农,主打的就是要解决实际生活(省钱)问题,于是,自动生成口算题就被排上了日程。听说最近文心快码的能力不错,那我们就用它来试试吧。
小试牛刀
生成口算题应该是一个相对简单的功能,抱着试一试的态度,我们直接在VSCode里,问问comate,看看它的表现怎么样:
看着还挺像回事,我们把代码保存下来,并命名为"main.py",直接运行这个脚本,看效果:
看着还不错,但这个代码是python代码。作为一名经常加班的牛马,娃爸时间有限,辅导功课的重任就落在了娃妈身上。娃妈是个文科生,让他运行python代码属实为难她了!所以,我们决定更进一步,把这个功能做成一个页面,让娃妈打开页面就可以生成,并且还能打印。
前后端一体服务
最简单的方式,可以让文心快码生成一个带js的html文件,在这个文件里完成口算题的生成。但作为一名后端工程师,这显然超出了我的能力范畴。而且,这样做也太不“高、大、上”了。服务虽小,也应该有后端、前端之分嘛,这样才能体现水平,在娃和娃妈面前是一个“高级工程师”的形象嘛。所以,我们也来给文心快码加大点难度,整一个完整的前后端服务,并通过docker的方式直接部署。
生成后端接口
首先明确告诉文心快码,用go语言写一个http接口,供前端调用:
可以看到,文心快码很快就帮我们生成了一段代码,并把生成口算的逻辑、http接口都写好了。我们来运行一下这段代码:
go run web.go
在浏览器里,输入
http://127.0.0.1:8080/generate-questions
直接报错
看着程序没有处理好除数为0的问题,我们让文心快码继续优化:
可以看到,文心快码对这个错误给出了优化办法。先无脑相信它,看看效果怎么样。重新直接go run,然后在浏览器打开:
不错呦!接口格式、内容都符合要求!文心快码还真挺不错嘛。后端接口我们就先暂告一段落,现在我们来看看前端能力怎么样。
生成前端页面
作为一名后端工程师,不论是python、go还是java,这些语言还不是手到擒来。但是写个前端页面,那就超出我的范畴了,这就得依赖文心快码了。先来试个水:
看着还行,我们复制代码,把这个文件命名为index.html,然后打开它。
没有预期出现我们要的结果!经过我有限的前端知识排查了一遍,有手动改了一些地方(比如加了application/json的请求头,看着代码都挺对,但就是不好使。感觉是出现了跨域的问题(瞎猜的,不知道对不对...有熟悉前端的小伙伴可以评论区留言告诉我原因)。于是,脑袋一拍,直接用go后端加一个接口,这个接口把这个index.html直接输出,这样既解决了跨域的问题,又省去了前端搭nginx代理的步骤,一举多得!我简直是天才[得意]!
说干就干,秉着能不写代码就不写代码的原则,我们让文心快码来搞定这些:
把代码复制到之前的web.go,重新运行,然后在浏览器打开:http://127.0.0.1:8080/index
搞定! so easy!
调整与优化
仔细观察上述的口算题,我发现,还有一些不对,比如:
-
让二年级的小朋友计算87*84,29-87,还有除法,显然超纲了。
-
没有打印功能
-
没有填写答案的下划线
-
......
没关系,把这些要求、限制通通告诉文心快码,让它来帮我们都搞定:
最终效果如下:
生成dockerfile并部署
好不容易“写”完代码,当然要部署运行,总不能让娃妈自己执行go run xxx来获取口算题吧。我们让文心快码来生成一个dockerfile,看看效果怎么样:
这个dockerfile生成的效果比较一般,比如需要执行build.sh,index.html页面的存放路径不对等。不过没关系,文心快码已经帮我们生成了最关键的部分了,手动修改一下,最终如下:
搞定!开始愉快的鸡娃吧~
总结
-
本次工作,几乎完全依赖文心快码的生成,搭建了一个带前后端的小服务,文心快码几乎完成了全部工作,整体表现还是很惊艳的,全程也就花了不到2小时全部搞定,效率杠杠滴!
-
使用文心快码确实能帮助码农减少很多工作量,但生成的过程中,会有一些小问题,需要工程师们有一定的经验去排查问题。大部分工作都可以由文心快码完成,码农们只要完成debug、小修改就行了,这部分的工作更依赖人的经验和判断。我们的工作只是被加快,不会被替代也无可替代,让我们更多的用文心快码快乐的“写”码吧~