粉丝6441获赞9.5万

一个数据库,能文搜索,能存 jason 文档,能跑地理位置查询,还能高效处理持续数据,这就是一个 posger sql 能干的事儿。 今天就聊聊 pg 凭什么这么全能,秘密全藏在它的缩影体系里。可能有人觉得我在吹,我先拿数据说话。二零二五年, stack overflow 开发者调查 post g sql 使用率百分之五点六, my sql 百分之四十点五, p g 不是 险胜,是拉开了十五个百分点。而且 p g 同时拿下了最受欢迎、最受喜爱、最想尝试三项第一。连续三年, 数据库领域从来没有过这种统治力。国内的字节跳动和蚂蚁金服也在大规模使用这些公司选数据库不是拍脑袋的,背后一定有技术上的硬道理。 那 p g 到底强在哪?说实话,功能太多讲不完,但我觉得最能体现 p g 底蕴的,就是它的锁饮体系。 my sql 的 inno db 引擎虽然也有权文锁饮和空间锁饮,但能力非常有限。 真到了生产环境,全书搜索,大部分团队还是得上 elastic search, jason 查询上 mongol db 地理位置,再加中间键。而 p g 内置了至少六种锁饮类型,每一种都是生产级别的能力,解决完全不同的问题。但别着急, 这六种缩影背后的设计思想,才是真正精彩的部分。先说 b tree, 这是所有数据库的基本功。 my sql 有, p g 也有,但 p g 的 b tree 有 两个 my sql 很 难比的能力,表达式缩影和部分缩影。表达式缩影是什么意思? 比如你有一张用户表,经常按邮箱的小写形式查询,老版本 my sql 里,你每次查询都得做一次小写转换, 一转换锁瘾就失效了,只能全表扫描。 macoco 八点零之后虽然也加了函数锁瘾,但 p g 很 早就有,而且用法更灵活。你可以对任意函数计算的结果直接建锁瘾查询,自动命中, 不用改数据,不用动业务逻辑。再说部分锁瘾,这个才是 p g 真正甩开 macoco 的 地方。你有一张一千万行的订单表,真正常查的只有未完成的订单, 大概占总量百分之二。 maccode 只能对整个字断见锁瘾,一千万行都得维护 p g 一, 可以只给那百分之二的数据见锁瘾,加一个条件限定范围就行了,锁瘾体积直接小了五十倍。光 btree 这一种锁瘾, p g 也就比 maccode 多了两招。 但这还只是开胃菜, btree 再强,遇到权威搜索和 jason 查询也没辙。这两个场景在 maccode 上特别痛苦,通常得额外搞一套 elasticsearch。 p g 有 一个大杀器,叫 g i n 锁瘾 原生就把这事解决了。 g i n 是 什么?说人话就是给一个格子里装了多个东西的数据件目录。打比方,你在百度搜 java 面试,不可能把互联网上几十亿个网页一个个翻过去。 他提前把每个网页里的关键词都拆出来,每个关键词后面挂着包含这个词的所有网页列表。你搜 java 面试,直接查 java 和面试两个词条,取交集,瞬间出结果。 g i n 干的就是类似的事儿。 不过搜索引擎比 g i n 复杂得多, g i n 更清亮,但核心思路是一样的, g i n 全称 generalized inverted index, 广义倒排缩隐。 它把字段里的每个元素单独拆出来,建立从元素到行 id 的 反向映射。两个最经典的用法,第一,权威搜索。建一个 g i n 缩隐,配合 t v 类型,就能实现类似 elastic search 的 权威查找能力,不用额外维护 e s 级群。第二,周案必字段查询。 pg 从九点四版本引入 j s o n b 类型后,配合 g i n 锁影,可以对 jason 内部任意 p 键锁影,查询速度比不键锁影快几十倍。很多创业公司选 pg 不 选 mongod db 做文档存储,就是因为 pg 一个库搞定,关系型加文档型,运维成本直接少一半。 很多人觉得既然缩影写入慢就不敢用。实际上 p g 很 早就引入了 fast type day 的 机制来缓解这个问题,后续版本不断优化,现在批量写入场景下开销已经大幅降低了。还有一类需求,空间查询, 你点外卖的时候查附近三公里的餐厅,打车软件,匹配最近的司机,这些全是空间查询,麦 c 购处理这类需求很吃力。 p g 由 just 缩影配合 post g i s 扩展空间查询是它的强项。 guest 全称 generalized search tree, 广义搜索术, 跟 b tree 只能处理一维的大小比较不同。 guest 能处理多维空间数据。 guest 是 在一条竖轴上做二分查找。 just 相当于在一张二维地图上不断画方格,缩小范围。一百万条坐标数据,查距离某个点三公里内的所有记录,没有 just 缩影。 珠航计算距离一百万次运算有了 gis 的, 所以通过空间分区,先排除掉百分之九十以上不可能的区域,最后只对后选数据精确计算。 gis 的 能力不止于此,范围查询最近零搜索, ip 地址端匹配它都能搞。最后说一个我个人非常喜欢的,所以 b r i n 很多人根本没听过它,但在特定场景下,它的性价比最高,没有之一。 b r i n 是 什么?说人话,只记一个大概范围的缩影,不求精确,但极省空间。打比方, 你家书架上有一千本书,按买入时间从左到右排好了,你要找二零二四年买的书,不需要一本本翻,只要知道第三层大概是二零二四年的,直接从第三层开始找就行。 b r i n。 做的就是这个事儿,不给每行数据键锁引,而是每一百二十八个数据快记一个最小值和最大值, 查询时先排除不可能的快。不过这个比方有个前提,你的书必须按时间排好,如果乱摆的 b r i n 就 不灵了,它依赖数据物理上的有序性。 b r i n 全称 block range index 快 范围锁引,要求数据物理相关性在零点九以上, 持续数据天然按时间写入磁盘。所以日制表监控数据, i o t 传感器数据就是不认的主场。 b r i n。 有 多省 真实数据?说话,两亿行的日制表 b g e 锁影六十 g b r i n 锁影一点二兆五万分之一的体积,写入几乎零开销。这就是典型的吹倒伏,用查询精度换存储空间和写入性能, 对时序数据来说太划算了。 ai 时代它更是无敌。现在最火的向量搜索 postcode coco, 通过 per vector 扩展就能实现, 支持 h n s w 锁引,十万级向量数据毫秒级查询。为什么 i coco 做不到这些,关键在底层设计。买 coco 的 锁引类型是绑死在存储引擎里的一诺 d b, 虽然后来陆续加了权威和空间锁引,但核心还是必加数那一套, 想加一种全新的缩影类型,成本太高。 p g e 完全不同。二十多年前就设计了一套叫缩影访问方法的抽象接口,说白了就是你按 p g 定义的规范实现几个函数,就能创建一种全新的缩影类型。 查询优化器,自动识别,自动使用 g i n guest br i n 全是通过这套机制实现的, 甚至你自己也可以写自定义缩影类型。如果让我来总结, macui 是 一把锋利的菜刀,切菜切肉又快又好,绝大多数场景够用了。 p g 是 一整个工具箱, 菜刀锯子,螺丝刀,电钻全有,你只需要切菜菜刀完全够。但你的需求一旦超出了切菜的范围,你会庆幸手边有一个完整的工具箱。这不是说 p g 一定比 macoco 好, 是它俩设计哲学不一样, macoco 追求的是把一件事做到极致, p g 追求的是让你什么都能做。说实话, p g 的 缩影体系我只讲了最核心的四种,还有 s p, just hash 这些没展开,但光这四种就够你在绝大多数场景下游刃有余了。最后说句掏心窝的话,不是所有项目都需要 p g, 小 项目 mecca 完全够用。 别为了用新技术而用新技术。但如果你的业务里有权威搜索 json 数据,地理位置,持续数据这些需求, p g 真的 值得你花一周时间去学。你们公司现在用的 my sql 还是 postcore sql? 有 从 my sql 签到 p g 的 吗?说说你的真实体验,下期见。

最近呢,有小伙伴问啊,加瓦转 ai 应该先学 supreme ai 还是 long chain for j? 从我个人的角度来讲,这两个都不是首选,首选应该是学原声的 long chain 或者 long graph。 如果你非要在加瓦系内部去消化这件事,那么我更倾向于 long chain for j。 为什么呢?这个 long chain 方式终究来讲是挂在主流的 long chain 这个框架之下的。但是呢,小赵是对所有的 java 的 小伙伴给一个友情的建议,咱们既然在人工智能时代,想像真正的 ai 的 技术站靠近,尽量让自己的语言往 python 上编一编,因为 ai 时代就是一个 python 语言,一个底层的 c r 语言。 学底层的 c r 语言,其实来讲成本确实太高,但是学 python 语言成本没有那么高。而且学完 python 之后呢,说白了,对于整个 ai 的 系统 框架,包括深度学习这块,你会有一个更进一步的理解,而不是仅仅站在 java 语言的这个基础上,纯粹的是去掉一个 a p i, 纯粹的是去掉各种各样的包,进行一些外围的组装。而且对于 java 工程师来说,你未来在求职市场上,市场给你的定位和定价 依然是一个 java 工程师,你之前拿多少,现在还拿多少,并不会因为你懂了 long chain for j 或者 spring ai 而有一个所谓的溢价,有一个 ai 技能的加成, 是市场上的这么一个弊端。所以说小赵是建议呢,优先选择原生框架 launch in long graph, 如果退一步,你不想改变语言,那么就是 launch for g 更优先选择。

当初选择 java 就是 听有人说就业稳,路子广,结果一踩进来才知道学习清单肠道能绕地球三圈,三圈呢,今天就带大家看一下 java 到底要学哪些东西好,现在我们打开我们的这个 b 站大学,找到我们的黑马程序员, 第一步 java 入门到起飞,然后这个视频呢就是相当于介绍一些 java 的 基本语法,注意哦,这里是上部,他还有一个下部,两步加起来是大约一百多个小一百多个小时的播放时长。 然后学完了这个呢就了解了 java 的 一个基本语法,但是是不够的。接下来你要学习一个东西叫做 java web, 它里面会介绍一些就是 spring spring mvc, spring boot 的 一些框架框架语法,有了这个我们才可以去开发我们的 web 应用。那么学完这个之后呢,就直接上手右边这个传说中的苍穹外卖项目, 可以看到有五百多万的播放量,非常火爆啊。然后又是三十七个小时的一个时间长度,然后学完这个它是一个单体架构的一个项目,学完之后呢肯定是不够的,我们还要去学一下我们这个微服务,学一下我们的这个这个 spring cloud, 然后它里面呢又包含了就是像 mymath 啊,多克啊,消息队列啊, e s 啊,这 release 啊这些东西。 但是有这个就是框架之后呢,我们还需要去补充做一个就是 spring cloud 的 一个项目,然后呢一般来说是做这个学城在线和这个黑马头条这两个项目,就是可能选一个吧,又是几十个小时。 然后学完之后就是可能还要对高病房有一定的了解,然后这里就要学一个这个 release 的 深入实践,然后呢它里面有讲的这个分布式锁呀,就是高病房呀,这些场景的一些应用到这里都还没完,然后你还要去背下面经,然后这里又又有一个二十多个小时的这个面筋, 然后面筋呢还要结合这个小林扣定这个网站来背这个一个八股文网站啊,然后你可以看到这下面有这么多的一个系列,一共十四个系列,基本上除了这个 c 加加和勾浪之外的话,基本上都是需要你去了解的,而且每一个板块一展开就是一大坨,可以看到比如说这个 mister 这个面试题啊,可以看到往下翻翻翻翻翻翻翻翻, 还没完,还没完,还没完还在翻,反正就是每一个章节基本上就是差不多一本书的一个一个长度,需要你去去了解,去去去看的。而且每个面试题的话,这些还是常考的面试题,然后看完了这个基本上这个东西背,背这个东西的话,起码也要花两到三个月的时间, 然后结合前面说的那个视频的那个学习时长,假如说你每天学四个小时,就认认真真学四个小时,你也得两百来天的样子才能学完这些东西。那么加上那个八股文和那个实操的东西代码实操 学这个就是从零开始学这个加法的话,就是假如说你是天赋非常高的选手,最起码最起码也得要一年的时间,如果资质平平的话,就起码得要一年半的时间才能把这些东西完全看完。 然后当你真正开始找工作的时候,面试官张口就是高薪发分布式 jvm 调优,所以你还得去学一个一本书叫做 jvm, 深入理解这些东西也够你喝一壶的了。 咱就是说家吧,虽然说确实啊,就是说就业岗位是最多的,但是前提是你得先熬过这九九八十一难,要有把这个头发熬成条形码的勇气,不然的话,新手的话我还是建议谨慎选择这个方向。 那有人说已经入坑了,那怎么办呢?发现实习不好找,秋招也不好找,那么恭喜你,加把路子广这个优势就体现出来了,你可以花一个月的时间去再补一下就是测试的内容,然后再投一下那个测试开发这个岗位,这个岗位是非常多的,然后你还可以花三个月的时间来学一下这个就是 go long 这个语言, 然后也是可以去投一些 go 这个方向,甚至你都可以不用去学那个 go 的, 这个方向的话是很多是接受零基础的小白的,还有那个客户端 token 也是一样的,甚至你还可以再花一点时间学一下那个 agent, 学一下大模型应用当前这个框架这一块也是相通的,相辅相成的。然后你还可以去投一下大模型应用这个岗位, 所以说也不是说它全是缺点吧,就是说它也有它的一个优点,就是在于比较灵活,可以各种方向都可以去转。

哈喽,大家好,真的好久不见,很多人催我更新,那我今天开始恢复更新,今天先给大家上点干货。最近我被问到的一个最多的问题就是,普通的 java 程序员想转大模型开发,到底学什么? 怎么转?涉及哪些技术证?今天我拿我的亲身经验一个视频给你们讲清楚。首先我们要明白一点,现在的大模型开发到底有哪些岗位? 总的来说分为两种,第一种叫做大模型的算法开发,第二种叫做大模型的应用开发。那算法开发需要你有极高的学历和数学算法基础,这个不是我们的目标,是要快速的切入大模型的应用开发。那第一步就是学习语言,语言层面 java 还有用吗? 当然有用啦,只是 python 在 对接大模型的时候呢,有天然优势。那如果你没有任何的编程基础,优先学 python, 但不用学得很深,掌握最基本的语法就可以了,就你会怎么调大模型就 ok 了。那有了基本的 编程语言基础之后,第二步,你要学习如何跟大模型进行真正的交互啊。说法就是你要搞懂调用大模型接口。首先你要注册一个国产大模型的 a p i 上千万智浦 e p c 卡都可以有免费额度,也不用折腾网络。拿到 a p i 妙招之后,千万不要着急用框架,你用你最熟悉的 http, client 或者呢 rest a p i, 亲手跑通一个请求,搞懂行业通用的 open i 金融协议,弄明白什么是 system 系统角色, user 用户提问 assess 模型回复,还需要知道 temperature 温度参数怎么去控制 ai 回答的严谨程度,还要搞懂 token 计费机制,上下文窗口到底限制什么。学完这些,紧接着你要学一些提示词工程,上下文工程。那前一步是让你学会怎么去跟大模型联通, 而提示词和上下文是教你怎么初步的去用好大模型。要注意我的用法是初步,其实核心就几点,就是如何强迫大模型去输出固定格式,像 jason 怎么去拆解复杂任务。 还有就是让大模型记住绘画控制对话长度啊,自动裁剪历史消息。那么这些都是提示词和上下文工程必须掌握的核心。 那么这些东西它看似简单,但真正想落地做项目,不踩坑,一点都不简单。记住,这一步是打基础,只有把这些底层的接口,逻辑,模型,交互原理彻底摸透,后面再用什么 lanchang, spring ai 这框架才不至于一头雾水, 全程懵逼。第三步就是学框架啊, python 就是 linq 加后端直接用这个 spring ai 或者是 spring for j, 这两者没有什么本质区别,其实上都能干,只不过一个是更加兼容 spring 生态。你会发现你在第二部里面手写的那些脏活累活,重复活底层逻辑,比如和大模型交互, 流式输出,上下文管理,提示词拼接框架呢,全部都帮你封装好了,你不用重复手写, 直接开箱即用。说白了啊,就是这些框架就相当于大模型领域里面的 spring 框架。学完框架以后,你就要学点向量数据库了啊,必学的有这个 muse 加程序员呢,可以重点掌握 pg vector, radice vector, 还有 yes 也支持向量解锁。那学完这些以后,你就可以手动去开发一个最简单的 rack 项目了啊, 为什么一定要做 red 大 模型?它再聪明也不知道你们公司的私有数据。我们要学的就是把公司里的 pdf 业务数据库、 wiki 文档,通过编辑向量化存入向量数据库。 核心技能就是文档的合理切分,向量的精准解锁,把相关资料给大模型一个标准的 red 完整流程分为六步,就是 文档上传内容分快向量化存入向量数据库,羽翼剪辑大模型生成答案。那如果说你把这六步跑通了,你就彻底掌握了大模型业务开发的基本套路了。 当你能够熟练掌握 rack 之后,第四步就要进阶到智能体 agent 的 开发。什么是 agent 呢?只能让你的 ai 查资料回答问题,那 agent 可以 让 ai 主动来替你干活。现在市面上很火的像 cloud code, 还有什么龙虾各类的 ai 智能产品,本质上都是同一个逻辑。 其实你不用把 int 向的多高深,说白了就是让大模型自己判断要做什么事情,自动拆分任务步骤,主动去掉预制函数,调 m、 c、 b 服务,甚至呢,本地的需要命令。那一步一步把复杂的业务自动跑通。跑完 这里再补充一个核心点啊,智能体的核心模式叫 react。 注意啊,不是前端那个 react 框架,而是 react reason 思考, act 行动, observe 观察。三步往复,大模型自己会判断用户需求是什么,该调用哪个工具,工具返回什么结果,下一步要做什么东西,循环起来就能自主完成复杂的任务。这也有另外一个名字叫做多轮对话工程。那学 agent 的 开发到底要掌握哪些东西呢? 第一,你要学会自定义工具,主流大模型的都支持函数调用,定义好函数签名,告诉大模型用途和入餐即可。要是掌握大模型自动选工具的逻辑,这块框架已经帮你封装一大半了。第三是处理好工具的返回结果,把结果回传给大模型, 让他继续推理执行。第四,你要学会做多任务的规划,比如先查订单,再查物流,最后再汇总回复。当然,现在的 in 的 玩法是越来越多了,像什么长期记忆、 skill、 编排层出不穷,但是万变不离其中,底层核心永远离不开思考、行动、观察这套技术范式。 如果说这四步你都扎扎实实的走完了,那恭喜你,你基本上已经完成了大模型应用开发的完整入门了, 可以去找一些相关的类似的工作。而且我现在真的非常推荐每一个 java 程序员都往这个地方去转,这个未来一定会迎来风口。如果你现在错失这样的一个机会,那你可能职业生涯会比别人提早结束。

加把的成旋,现在做跟 a 阵的直接相关的开发,马上就会迎来你的第二春。那么加把小伙伴,你的转型可以分两条路可走一条路呢?深挖什么意思?比如说你未来想有一个非常高的一个天花板,那么你就得系统的学习 ai 的 底层, 比如说 type 框架,神经网络、 python 语言也得学,要不然的话,你搞不定大模型的底层,搞不定强化学习,你的底座就不是那么扎实。那 那么这个需求是针对于未来想在大厂或者未来希望,比如说拿五六十个 w 以上的这种对自己要求非常高的小伙伴,如果没有那么高的要求,我想保住我现有 的薪资,我也不想去要那么高的一个年薪,那怎么办呢?小赵是觉得你保留伽瓦的这个语言,适当的学一点 python, 直接切入到 agent 的 这块的 开发也是 ok 的, 因为这条路呢,对于大多数的 java 小 伙伴,甚至那些 c r 加迁移师, p h p 更平缓,它的学习曲线不陡峭。市场大都知道,已经有开发经验的这些老司机们,学一个新的开发这件事是比较容易的, 你让他们转一圈,先学算法,再学模型,再搞数学推导,然后再回开发,对于他们来讲头是很大的。所以说小赵是觉得看你个人的定位,就没有任何一件事是你不想背景,我直接一举手问小赵说我应该怎么办?没法说,都是不同的人,不同的背景,要做出一个不同的选择。

最近也是做 agent 项目,做了一个多星期了吧,跟大家说一下我的感受,就是一个企业级别的 agent 项目的话,跟网上那些项目,像智能客服这些,我觉得差距真的是挺大的。 虽然说就是将我们原有的项目与 a 卷进行融合,但是这里面需要考虑的地方还是蛮多的,就比如说我们可能会面临很多个工具的调用,但是工具一多了吧,模型就可能会出现幻觉,所以我们就说肯定不能把所有的这个工具都交给这个 a 卷去处理,对吧? 或者说丢给一个 a 卷的话,那我们也肯定不会一下子就加载所有的工具,而是按照我们的意图去加载。其实是不管是用这个多 a 卷呢,还是用单 a 卷,意图这一块呢,肯定是要考虑的, 而且用户的意图呢,你又很难去揣测,可能这个用户说了呃这些话是这个意思,另一个用户又说了另一种说法,又是同一个意思,但是这时候模型就可能会分析成两种不同的意图,这也是要去解决的地方。 还有就是这个模型的异响问题,当我们工具里面写了所需的参数的时候,可能这个用户在对话框里面这个输入不全,我们就让这个模型去提醒用户,呃,输入这些所需的参数,但是这个模型有时候就不会提醒,就会自己脑补一些参数传进去,这也是我们需要考虑的地方。 还有就是这个 humanism 以及这个上下文的管理,这些地方都让我们去做一个对应的处理,然后这里面只呢只是一些节点的处理问题,最主要还是整个任务流的这个编排,有些复杂的任务呢,我们是不能直接依靠模型去帮助我们去识别下一步怎么做的, 我们还得自己去编排成我们自己想要的流程,以及这个 reg 的 进行,如何进行分片以及招回策略等等。还有这个呃, reg 的 幻觉问题,怎么去处理这些问题,我觉得跟这个传统的业务开发还是有很大的区别的。 最后呢就是呃,提醒一下大家一定要好好注意身体。呃,如果大家仔细听的话,也应该也听得出来主播的嗓子已经哑了,就前几天也是感染了什么病毒吧,头很痛,然后现在的话好多了,就是喉咙还是哑的。最后呢就祝大家五一快乐吧。

老师你好,我目前 java 十年的开发经验,最近失业了,想学 rust 和数据库内核开发,想问在 ai 火热的情况下,会不会像 java 一 样也受到冲击呢?呵呵。呃,首先目前十年的 java 经验,也就是一四一五年这个时间憋的 工作十年。首先我说你已经吃到了 java 之前的红利了。嗯,接下来下面一波红利应该交给年轻人来吃了。呵,过去十年 java 确实是一种红利啊, 因为大量的业务需求,这种 c r u d 啊,做个网站,做个后台啊,然后做个优惠券,很多的功能,然后 java 在 这个过程间也培养了很多的 java 人群。然后最近失业了,想学 rust 和数据库, 首先我什么呢?工作十年,就按照你二十三岁本科毕业,二十五岁二十六岁研究生毕业,也就是你现在可能是介于三十三到三十六之间这个年龄阶段。首先我认为这个年龄阶段呢, 给你的机会是什么?首先你是已经失业了,首先我说再去投递呢,如果你的学历背景 ok, 往其他方向去补充一点技能去试试。 如果你的学历学校一般,我说你的职场可能说再往上面走很难有高峰期,其实我刚刚说的有点,只是有点缺德好不好?哈哈,因为我是万一这个人群,如果你的学校学历一般的话,我身边有太多太多的人,他能够比你更好。比如再放到以前,以前有很多的中小公司招人, 而且有很多现在来说,这一群中小公司非常非常,这也就是我为什么讲的这个学历啊,以后从事开发的可能就是本科,可能都是这种带大学的,本科以上可能才会是入场券。 在这种专科以及这种可能地方性的本科院校,我说可能来说从事开发的机会都不一定有,为什么呢?以前为什么有机会?为什么往后面走没有机会?因为我说以前是因为招收这个人群,吸收这个人群的是有海量的小微企业, 可能来说这种公司几十号人,然后可能几十号人刚开始成立不久,公司招人本身就很难,但是又有很多工作要干,所以就出现我招一些这种学历背景一般的专科生,然后我把它吸收进来,能够一起共事,能够帮忙干活就可以了。 但是我是要再往后面走,这里有两个条件所决定。第一个,小微企业本身就很难,小微企业现在来说他可能不会倾向于开放,自己本身能够活下来就不错了呀。 这是第一点。第二点,在这个过程中间有了 ai 存在之后,这种低端的开发岗位它将会越来越少, 因为 ai 是 可以替代一部分。比如我可以招一个稍微厉害一点的,然后又一个人干之前三个人、四个人、五个人的活。然后这里像这种大龄的扎瓦成员,如果你的学历背景一般,职场发展可能会很难。 首先中小公司他不会再招人。其实普遍来说,如果你运气好,可能还能够找到一个,但是运气不好的话,后面都会趋向于理性思维给到你工作。然后我说薪资可能也很难达到你的预期。 如果你的学校背景 ok 呢?这里有几个方向你可以试一试。如果你学校背景 ok, 并且你有一段知名企业的经验的话,也就说比如像这种京东美团或者说拼多多这种背景,学历背景 ok, 加上一个名企, 名校,名企还参与过一个知名项目,这里你可以去学点数据库内核,学点 rust, 因为后面你还是有机会能够去一个知名企业可能还是有机会的。但是如果你的学校学历背景一般没有名企的背景,那我认为你的职业生涯可能很难有一个高峰期,只是说大概率的情况会是这样的。好吧, 好,离线三年加关注,提出你的问题。

写 java 的 兄弟们,说句扎心的,再不碰 ai 可能真的没机会了,与其焦虑会不会被淘汰,不如主动出击。今天这条视频,带你从熟悉的 java 世界出发,建立一条清晰的转型路线。第一步,搞清楚转什么 ai, 咱们就做两件事,调 api, 做智能客服,用 reg 搭机式裤,这才是 java 工程师的主场。第二步, python 负责训练, java 负责落地,你不需要抢训练模型的活,你要做的是把模型能力稳定交付的人。 第三步,明白你的优势和短板,你的工程化能力、系统设计经验、业务理解,才是 ai 落地最缺的护城河,要补的也不多。拍算基础模型、认知向量解锁思维提示工程。第四步,企业 ai 系统到底长啥样?不是全能 a 自主干活,而是把 ai 当成更聪明的接口, 嵌在你熟悉的后端架构里,缓存、熔断、权限对接,这些才是真正的挑战,也恰恰是你最擅长的。最后,记住, ai 不 会淘汰加法工程师,但会用 ai 会淘汰不会的。如果你想抓住风口,我把大模型全套学习路线加视频加实战教程整理好了,有需求的进我主页粉丝群即可。

现 java 的 兄弟们,说句扎心的,再不碰 ai, 可能真的没机会了。危机已近在眼前,我把对应的学习路线放在了视频最后。今天这条视频带你从熟悉的 java 世界出发,建立一条清晰的转型路线。 与其周瑜会不会被淘汰,不如主动出击。第一步,搞清楚转什么,未来就做两件事,调运 pi, 做智能客服,用 rng 打芝士库。第二步,拍森和扎巴二选一嘛,不用纠结,拍森负责训练,扎巴负责落地, 你不需要抢训练罗行的活,你要做的是把模型能力稳定交付的人。第三步,明白你的优势和短板, 你的工程化能力、系统设计经验、业务理解才是悲哀。落地最缺的护城河,要补的也不多。拆散基础模型,认知向量解锁思维,提示工程。第四步,企业零 i 系统到底长什么样?不是全能内震他自主干活, 而是把 ai 当成更聪明的借口,嵌在你熟悉的后端架构里,缓冲、融断、全线对接,这些才是真正的挑战,也恰恰是你最擅长的。最后,记住, ai 不 会淘汰加我工程师,但会用 ai 的 会淘汰不会的。 如果你想抓住风口,我把大模型全套学习路线加视频加实战教程整理好了,搁我 ai, 我 看见就发你。

加把的程序员转 ai 有 一个非常大的优势,一呢,语言的优势,因为这种 c 程序员, rust 程序员,加把小伙伴他往 python 上转其实来讲是非常的容易的。 第二呢,加把的小伙伴工作了三年,他对于整个后端开发的流程是非常的熟悉的,他是知道一个软件开发就是做一个项目,这是怎么个流程的,而且主流的一些开发的 ide 工具啊, lex 的 环境啊,服务器的模式啊,网络请求啊,对吧?各种高并发呀,各种缓存机制,数据库,他们都是很熟的。他们真正欠缺的是什么?欠缺的是 ai 的 语言, python, ai 的 框架, python 神经网络深度学习的一些特定的知识,以及大模型和 agent 的 特定的一些开发模式,仅此而已。 纯粹的加法后端的需求是一直是在收缩状态,但是 a 智能这块跟 ai 相关的开发需求一直是膨胀的,在这些开发需求里边,依然需要大量懂 ai 开发的加法或者配合 ai 开发的加法工程师,但是你如果一点不懂,你也不会 ai 智能开发,只会纯加法站,纯加法的技术站现在是非常难的。

我有一个做 java 的 朋友,他刚离职刷 boss 视频刷到绝望的时候,发现 a 政的开发这个岗位薪资高,竞争小,看起来刚好能转。于是他来问我,我该学什么?我说,简单啊,无非就是 ig 按微息部署,微调这些。他说,停,你在说啥我听不懂,你能从头跟我讲起不?主要是 a 政的开发太新了,网上全是碎片,今天一个 ig 教程,明天一个 mcp 直播看,我还是不知道从哪下手。 所以今天这条视频,把 a 证的开发,该学的东西,一个一个用大白话讲清楚,建议先收藏,后面用到再随时翻包。 a g 就是 给大模型配本参考书,这样大模型就像一个什么都知道,但经常瞎编的实习生,你问他公司上个季度的销售数据,他敢现编一个给你出来。 所以 i g 就 在回答之前,先去知识库里查一下,查到再答,查不到就闭嘴。怎么查?把问题变成向量,向量就是两个词之间的关系,比如说人跟猫的关系就比人跟木头的关系近,这样就能查出最相近的回答,然后再扔给 i g 与这些再回答,准确率会更高。 o i g 就 这么点事,就是从书里找到参考答案。而工作旅游平台,比如说 define, 核心能力就是像搭积木一样,把 ai 的 能力创起来。像之前提到 a i g 就 可以使用 define 搭一个 知识库小助手, define 扣子, fast g, b d n 随便挑一个就行。这几个平台都是相同的事情,为什么这么说呢?因为 agent 开发的核心能力不是写代码,而是把事情拆清楚, 户说了什么,意图是什么?该掉你的工具,结果怎么返回?要不要追问?这一套流程在工作流平台拖拖拽拽就能跑起来,而且说实话,很多场景工作流平台就够了,没必要非得写代 码。真要写代码, a 整的代码怎么写呢?答案就是 non chan 和 non graph 这类开发框架什么时候用呢?当你发现 你的工作了,要处理特别复杂的逻辑,比如说多轮对话,你上下文每一段都要精准控制,那就是链式的工作流,一个节点接着一个节点,这条链在方向上是单向的,不能回流或者旋转。 long graph 是 升级版,它解决了一个致命的问题,就是状态管理 用户。说到第三轮呢,还要记得第一轮说的什么,中间某个工具要用坏了,要不要重试,重试几次?这个状态如果管理不好的话,你的 ai 就 跟喝了假酒一样,前言不搭后语,拿 graph 就是 帮你把这些状态管 起来。而工具在用就是 function care 和 mcp, 让 ai 不 仅会说话,还能动手操作你的业务系统。这就是 agent 和普通聊天 ai 最大的区别 方式。看啊,就是你给模型定义一组工具方法,它根据用户的问题决定什么时候调哪个,传什么参数。而 m c p 是 这两年最火的一个协议,它解决了一个问题, 每个工具的连接方式都不一样,有了 m c p 协议,工具统一的接入标准, a 证呢,就能像插拔 usb 一 样插工具。 这个你需要考虑一下异常处理,你得考虑 ai 会传什么参数,它可能会传的很离谱,所以你的工具要健壮。 再说到提示词工程,就是怎么跟 ai 说话,让他听懂你要什么。听起来提示词是玄学,其实不是。提示词工程是有方法论的。比如 a e a c t 模式,就是让模型一边想一边做,想一步做一步,观察结果再继续想。 而 play and execute 模式则更直接,先让模型做一个计划,再按计划一步步执行。但写提示词不同于写代码,同样的输入模型可能给你不同的输出,你得接受这种不确定性。所谓 ai 的 写作变成范式,从写死逻辑变成了引导推理的上面来。 而多 a 制的写作,就是还有好几个 ai 一 起干活。分工合作这个概念听起来很高级,其实你每天都在用,像工作团队里面,大家也是分工合作,售前和售后是不同的团队。 而多 a 制呢,也是这个思路,一个负责需求,一个负责写代码,一个负责测试,他们之间通过消息进行相互交流。 好处是什么呢?每个 agent 呢,都可以专研一件事情,不用什么都懂,出了问题好定位,到底是哪个 agent 呢?在摸鱼,但坏处也会比较明显。调试痛苦,我之前调过多 agent 的 系统,调到最后你会发现技术不是最难的点,让每个 agent 呢,决定什么时候该自己上,什么时候该喊姐妹上, 这个度得靠经验。最后是部署和微调,就是要模型跑,在你自己的服务器上,用你们公司业务数据部署模型,如果是简单开发,会使用 alma 加开源模型,比如说通讯接问,而真正的上生产则会属于 hugging fans 和 transformer 和 v l l m 加多可做高可用,在本地跑模型,企业数据库出门,保证你的数据的安全性,成本还低,响应快。 不过开源模型的能力有限,复杂的活干不了。另一条路是微调, luna 是 目前最主流的微调形式,简单来说就是在模型的基础上加一层小小的记忆笔钉。让我们公司里的模型学会公司的业务术语、回答风格、处理习惯,这些技能才是 agent 的 开发真正落地的关键。 但技能从来都是手段,而不是目的。真正的核心是能否带来更好的效果,更快的效率。通过 ai 解决环境下的问题。 ai 只是工具,你才是那个决定用它解决什么问题的人。如果你现在还在犹豫要不要转,你可以先试试 define, 搭个最简单的 ig, 跑通的那一刻,那你就知道该怎么走了。 也许不需要把自己当成一个 a 型的开发工程师,你就把自己当成一个做事的人。现在有了一个新的工具,对你来说也许是,也许是机遇,你比你想象中的会更有能力。我是晋阳,做技术出身的 ai 产品从业者,如果你也在往 ai 方向转,关注我,我们一起少解弯路,下期再见!