Javaboy如何蹭到大模型热度
早在20年我毕业的时候,江湖上就一直流传着互联网三大风口,ABC,AI人工智能,BigDAta大数据应用,CouldCompute云计算,经过这几年的发展,云计算已经发展到瓶颈,大数据也略显颓势,唯有AI乘着chatGPT的风一路高歌猛进百花齐放,甚至在我们的年度中央经济会议里从发展芯片变成了发展AI技术应用。
作为一个JavaBoy,一定要去蹭一蹭热度,不管是在面试官面前要表现出你是一个热衷技术,不惧挑战的好苗子,还是为以后跳槽做储备,都要做一个简单的入门。市面上大部分关于大模型应用落地的方向都是python代码去构建,比如nlp(text2sql自然语言处理),对Javaboy极不友好。要选一个即简单又合理的应用方向落地,且还可以用Java去构建的最好答案就是RAG检索增强生成(Retrieval-Augmented Generation)。
可能有人会疑惑,我直接调文心一言、chatGPT、通义千问现成的接口不完了吗,还搁这重头搞岂不是脱裤子放屁?非也。一个大模型参数再多也只能学习训练出互联网上的公共数据,比如你问文心一言Java之父是谁,它肯定知道是詹姆斯·高斯林而不是余胜军,但是你问我最喜欢吃什么水果,你不告诉它,它肯定是不知道的。
有人说那我继续训练这个模型不断喂数据给它,每时每刻让它学,当然是可以的,不过这个动作的成本就高很多了,反而使用RAG的好处就是,帮助大模型临时性地获得他所不具备的外部知识,允许它在回答问题之前先找答案。
也就是说你提前告诉模型我最喜欢吃什么,模型自然就知道了。这是当下最火的一个应用场景,感兴趣可以自行去了解实现。另外一个技术落地就是智能化数据采集。
比如说,现在有这么场景,爬虫组的同事需要每天采集新闻数据,业务侧希望把数据翻译成18种语言,正常做法,爬下来写到库里,再有个小脚本从库里读出来,翻译,再写回去。如果我们有一个数据同步系统适配了大模型的能力,只需要在系统中配置好同步任务。比如说爬虫同事实时的将数据写入kafka,我们在数据同步系统中创建kafka -> llm -> mysql的任务,在llm中基于不同的语言告诉模型不同的propmt,即可完美实现这个需求。
这两个场景只是帮助大家去扩展思路和眼界,搞Java也并不都是增删改查,也可以狠狠的蹭到大模型的热度。为什么只说这两个场景,一是简单,二是鄙人开源的异构数据源流转系统DatalinkX中已经适配了这两种应用场景落地,燕国地图有点长,但确实有用,希望大家多多支持~