文章目录
-
- [1. 先做个体检](#1. 先做个体检)
-
- [1.1 体检项目一:数一数自己的家底](#1.1 体检项目一:数一数自己的家底)
- [1.2 体检结论](#1.2 体检结论)
- [2. Java:老情人见面,先别急着拥抱](#2. Java:老情人见面,先别急着拥抱)
-
- [2.1 集合:Agent 给你的数据,全是这玩意儿](#2.1 集合:Agent 给你的数据,全是这玩意儿)
- [2.2 面向对象:Agent 的工具全是接口](#2.2 面向对象:Agent 的工具全是接口)
- [2.3 Stream:以前觉得装X,现在拿来救命](#2.3 Stream:以前觉得装X,现在拿来救命)
- [2.4 异常:AI 系统是个异常生产商](#2.4 异常:AI 系统是个异常生产商)
- [2.5 Spring Boot:你的饭碗,别弄丢了](#2.5 Spring Boot:你的饭碗,别弄丢了)
- [3. Python:从"会写"到"能写 AI 服务"](#3. Python:从"会写"到"能写 AI 服务")
-
- [3.1 基础语法:五分钟找回手感](#3.1 基础语法:五分钟找回手感)
- [3.2 数据结构:dict 是 AI 世界的通货](#3.2 数据结构:dict 是 AI 世界的通货)
- [3.3 类型系统:把 TypeScript 的感觉搬过来](#3.3 类型系统:把 TypeScript 的感觉搬过来)
- [3.4 async / await:JS 老玩家直接抄作业](#3.4 async / await:JS 老玩家直接抄作业)
- [3.5 FastAPI:Python 界的 Spring Boot](#3.5 FastAPI:Python 界的 Spring Boot)
- [3.6 SSE:AI 打字效果的真身](#3.6 SSE:AI 打字效果的真身)
- [4. 数据库:不用重学,但要换个姿势理解](#4. 数据库:不用重学,但要换个姿势理解)
-
- [4.1 向量数据库:给知识库装个搜索](#4.1 向量数据库:给知识库装个搜索)
- [4.2 Redis:从缓存变成 AI 的短期记忆](#4.2 Redis:从缓存变成 AI 的短期记忆)
- [5. 最后才碰 AI,顺序别搞反](#5. 最后才碰 AI,顺序别搞反)
- [6. 别再看教程了,用"工程师复习模式"](#6. 别再看教程了,用"工程师复习模式")
-
- [6.1 第一轮:Java 集合 + Stream](#6.1 第一轮:Java 集合 + Stream)
- [6.2 第二轮:Python 小项目](#6.2 第二轮:Python 小项目)
- [6.3 第三轮:后端小 API](#6.3 第三轮:后端小 API)
- [6.4 第四轮:把 AI 焊上去](#6.4 第四轮:把 AI 焊上去)
- [7. 最后你会得到什么](#7. 最后你会得到什么)

P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 传送门http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。
1. 先做个体检
转行之前,先搞清楚你未来要站的位置。2026 年做 AI 应用,大概就是这个结构:
me
↓
React / Next.js
↓
API / SSE
↓
┌──────────────────────┐
│ AI Application │
│ Python / FastAPI │
│ Agent RAG │
│ Tool Calling MCP │
│ Memory │
└──────────┬───────────┘
↓
LLM API
↓
┌───────┼───────┐
↓ ↓ ↓
MySQL Redis Vector DB
↓ ↓ ↓
Java API Cache Knowledge
看不懂没关系,翻译成人话就是:前端还是你熟悉的 React,接口还是你熟悉的 API,只是中间多了一个叫 Agent 的东西。它负责把活儿揽下来,再分给一堆工具去干。像极了你当上组长之后的样子。
1.1 体检项目一:数一数自己的家底
一个全栈工程师的技术栈,大概是 Java、Python、TypeScript。别急着列学习计划,先把这些语言最基础的知识过一遍,看看还能答上来多少:
后端基础:HTTP、REST API、JSON、认证、异常、日志、异步、SSE / WebSocket。
数据那几层:MySQL、Redis、SQL、向量数据库。
AI 那几层:LLM、Prompt、Embedding、RAG、Tool Calling、Agent、MCP。
对着这个清单自查,答不上来的不用慌。你不是不会,你只是忘了------就像每个程序员的前任,每个知识点都认识,就是想不起来当初为什么分手。
1.2 体检结论
任何一个写了多年代码的人,知识盲区都比自己想象的大,平时全靠 Ctrl+C、Ctrl+V 和一句"这个我熟,就是一时想不起来"撑着。
体检的目的不是打击你,是帮你把盲区找出来,然后......发现它们比你想的还多。
但好消息是:你不需要重新学一遍,你只需要复习。这是两回事,别搞混。学是"我不会",复习是"我忘了",前者费钱,后者费时间,你现在的处境是:钱和时间的余额都不太够。
2. Java:老情人见面,先别急着拥抱
Java 你有底子,所以不用从头学入门。重点复习下面这些,顺便把手感找回来。
2.1 集合:Agent 给你的数据,全是这玩意儿
先确认这些东西你还熟:String、Integer、Long、Boolean、List、Set、Map、ArrayList、HashMap、HashSet。
这些都是最基础的字段类型,用法长这样:
<String>
>names.add("Jie");
names.add("Tom");
for (String name : names) {
System.out.println(name);
}
java
<String, Object> user<>();
user.put("name", "Jie");
user.put("age", 30);
为什么 AI 开发需要这个?因为 Agent 返回给你的数据,长这样:
json
{
"name": "Jie",
"age": 30,
"tools": ["search", "database"]
}
最终都会变成 Java 里<String, Object<Map<String, Object>>`。
你以前觉得 Map 就是存个配置、传个参数。以后你会发现,Map 是你生命的一部分。当年面试你背 HashMap 原理背得滚瓜烂熟,现在你被问它为什么快,只能回答:因为名字里有 hash,hash 就是快,跟"大力出奇迹"一个道理。
2.2 面向对象:Agent 的工具全是接口
重新熟悉这几个词:class、interface、abstract class、extends、implements、override、polymorphism。
比如你定义一个工具接口:
java
interface Tool {
String execute(String input);
}
然后写一个具体实现:
java
class WeatherTool implements Tool {
@Override
public String execute(String input) {
return "成都今天 25°C";
}
}
以后你做 Agent Tool,大概就是这样一个家族:
Tool
├── WeatherTool
├── SearchTool
├── DatabaseTool
├── OrderTool
└── RefundTool
这个思想很重要,重要到什么程度?重要到面试官就爱从这儿问起。你答不上来的时候,他看你的眼神,跟你当年看那个"只会 new 对象"的实习生一模一样。
2.3 Stream:以前觉得装X,现在拿来救命
重点复习,没有商量。
java
// 过滤
users.stream()
.filter(user -> user.getAge() > 18)
.toList();
// 转换
users.stream()
.map(User::getName)
.toList();
// 聚合
users.stream()
.mapToInt(User::getAge)
.sum();
AI 后端里,你天天跟 Tools、Documents、Messages、Search Results、Chunks、Vectors 打交道,全是集合操作。以前一个 for 循环走天下,现在数据多到你只想一行流式搞定,然后在评论区跟人争论 toList() 和 collect(Collectors.toList()) 哪个更优雅。
2.4 异常:AI 系统是个异常生产商
这个必须熟:
java
try {
callLLM();
} catch (Exception e) {
log.error("LLM call failed", e);
}
还有 Exception、RuntimeException、自定义异常、全局异常处理。
为什么?因为 AI 系统出异常的速度,比你发际线后退的速度还快:LLM timeout、API error、Tool error、JSON parse error、向量检索 error、第三方 API error。
你写十年的传统系统,异常是客人,偶尔登门一次。AI 系统不一样,异常是主人,你才是客人。进门先换拖鞋,然后开始处理异常。
2.5 Spring Boot:你的饭碗,别弄丢了
重点复习,至少要熟悉:Controller、Service、Repository / Mapper、DTO、Entity、Configuration、依赖注入。
java
@RestController
@RequestMapping("/api/orders")
public class OrderController {
private final OrderService orderService;
public OrderController(OrderService orderService) {
this.orderService = orderService;
}
@GetMapping("/{id}")
public OrderDTO getOrder(@PathVariable Long id) {
return orderService.getOrder(id);
}
}
Controller → Service → Mapper → MySQL,这条链路以后还会用。你现在嫌它啰嗦,等你真去写 AI 项目,你会发现最靠谱的还是这一套,就像你吐槽了十年的家常菜,出差半个月,最想的还是那一口。
3. Python:从"会写"到"能写 AI 服务"
Python 不用学成数据科学家。你的目标是:能用它快速写出 AI 服务。翻译成人话就是:不用把 numpy 玩出花来,能调 API、能起服务就行。
3.1 基础语法:五分钟找回手感
python
name = "Jie"
age = 30
if age > 18:
print("adult")
for item in items:
print(item)
def get_user(user_id):
return {
"id": user_id,
"name": "Jie"
}
变量、判断、循环、函数,就这些。你要是连这个都要从头学,那我建议你先别转行,先把你键盘上的 Ctrl 键找回来。不对,你是要转行的人,得学会自己打代码了。
3.2 数据结构:dict 是 AI 世界的通货
list、tuple、dict、set,重点掌握 dict。
因为 AI 开发里你天天看到的是这个:
python
message = {
"role": "user",
"content": "帮我查一下订单"
}
还有这个:
python
tool_call = {
"name": "get_order",
"arguments": {
"order_id": "10001"
}
}
AI 给你的数据是 dict,你给 AI 的数据也是 dict。整个 AI 世界就是 dict 套 dict,跟俄罗斯套娃一样,只不过里面装的不是娃娃,是你的头发。
3.3 类型系统:把 TypeScript 的感觉搬过来
你 TS 很熟,这个会学得飞快。
python
def get_user(user_id: int) -> dict:
...
python
from typing import List
def get_names(users: List[dict]) -> List[str]:
...
再往后就是重头戏:
python
from pydantic import BaseModel
class User(BaseModel):
id: int
name: str
age: int
Pydantic 是 AI 后端非常重要的东西,它就是给 Python 上个户口,跟你在 TS 里写 interface 加运行时校验差不多。你以前在 TS 里天天骂"怎么又要写类型",以后你会求着 Python 说:求你了,给我个类型吧。
3.4 async / await:JS 老玩家直接抄作业
AI 的 API 请求基本都是:请求 LLM → 等待 → 返回。
python
async def chat():
result = await call_llm()
return result
要并发就长这样:
python
results = await asyncio.gather(
search_web(),
search_database(),
search_knowledge()
)
看到没,跟你写 Promise.all 一模一样。有前端背景的人学这个,跟抄作业似的,抄完还不好意思跟人说。
3.5 FastAPI:Python 界的 Spring Boot
以后的 AI 项目大概率是:Next.js → FastAPI → Agent → LLM。
python
from fastapi import FastAPI
app = FastAPI()
@app.get("/users/{user_id}")
async def get_user(user_id: int):
return {
"id": user_id,
"name": "Jie"
}
这跟你的 Spring Boot Controller 基本可以类比。会 Spring Boot 的人学 FastAPI,就像会骑自行车的人学电动车------都会,就是刹车位置不一样,起步的时候容易蹿出去。
3.6 SSE:AI 打字效果的真身
这个尤其要掌握。因为 AI 聊天不是"请求,等 10 秒,完整返回",而是"你、是、一、个、AI......"一个字一个字往外蹦。
Browser
↓
SSE
↓
FastAPI
↓
LLM Streaming
你以前做过 WebSocket 的话,这个很好理解。SSE 是单行道,服务器单向给你推,推到你满意为止。为什么这么设计?因为要是等 AI 全部想完再一次性给你,你可能已经在工位上睡着了。
4. 数据库:不用重学,但要换个姿势理解
MySQL 基础必须掌握:SELECT、INSERT、UPDATE、DELETE、JOIN、GROUP BY、ORDER BY、INDEX、TRANSACTION。
别小看这几个词。我见过写 JOIN 写了三年的人,被问 INNER JOIN 和 LEFT JOIN 的区别,沉默半天,憋出一句:一个在里面,一个在左边。你要转 AI,至少把这个答上来,不然 AI 会以为你在讲冷笑话。
4.1 向量数据库:给知识库装个搜索
普通数据库 → 向量数据库,理解这一跳就行。
用户问题
↓
Embedding
↓
向量
↓
相似度搜索
↓
找到相关文档
↓
LLM
这就是 RAG 的基础。以前搜索是找关键词,现在搜索是找意思。你搜"晚上睡不着",它给你推"失眠"的文章。以前是查字典,现在是找灵魂伴侣------你说一句"睡不着",它就知道你想要什么。
4.2 Redis:从缓存变成 AI 的短期记忆
Redis 在 AI 里的新用途:Session、Conversation、Cache、Rate Limit、Agent State、Short-term Memory。
用户
↓
Agent
↓
Redis(取出最近 20 条对话)
↓
LLM
Redis 以前是缓存,现在是 AI 的记事本。AI 把最近 20 条对话记在上面,防止它上一句说完下一秒就忘。这个记性,说实话,比我好。
5. 最后才碰 AI,顺序别搞反
前面那些复习完,再按这个顺序学 AI:
① LLM API → ② Prompt → ③ Structured Output → ④ Streaming → ⑤ Embedding → ⑥ RAG → ⑦ Tool Calling → ⑧ Agent → ⑨ MCP → ⑩ Multi-Agent
这个顺序很重要,重要到我愿意把它抄下来贴在显示器边上。
为什么不能反着学?因为你没考驾照就上高速,车是能开,但你会连人带车进沟里,然后得出一个经典结论:AI 这玩意儿不行。
其实不是 AI 不行,是你顺序不对。就像你不能先研究怎么带孩子,再研究怎么结婚一样。
6. 别再看教程了,用"工程师复习模式"
看十个教程,不如动手写一个模块。工程师复习模式,一共四轮,请。
6.1 第一轮:Java 集合 + Stream
就出一个模块:<User> users。然后给自己出五道题:
- 找出年龄大于 18 的用户
- 提取用户的姓名
- 按年龄排序
- 统计平均年龄
- 转成
Map<id, name>
做完你就知道,自己是"忘了"还是"从来没会过"。前者,一周能捡回来;后者,咱们重新认识一下,从朋友做起。
6.2 第二轮:Python 小项目
过一遍:基础语法、list / dict、function、class、typing、Pydantic、async / await、FastAPI。
同样用一个小项目复习,别光看。你光看教程的样子,跟健身房里只拍照不举铁的人一模一样。
6.3 第三轮:后端小 API
User API
↓
FastAPI
↓
MySQL
↓
Redis
把以前 Java 后端的活儿,用 Python 重新做一遍。你会发现:活还是那个活,人还是那个人,只是头发又少了一点。
6.4 第四轮:把 AI 焊上去
LLM
↓
Streaming
↓
RAG
↓
Tool Calling
↓
Agent
做完这轮,你手里就是一个完整项目了。不是教程项目,是你自己的项目,面试能拿得出手的那种。
7. 最后你会得到什么
一路走下来,你会得到这么个东西:
React / Next.js
↓
AI Chat Interface
↓
FastAPI / Java
↓
Agent Engine
↓
┌───────┼───────┐
↓ ↓ ↓
RAG Tools Memory
↓ ↓ ↓
Vector DB Java API Redis
↓
LLM
↓
Streaming Answer
前端还是 React,后端多了一个 Agent Engine,底下挂着 RAG、Tools、Memory,最后通向 LLM,LLM 再给你吐流式答案。
面试官看着这张架构图,沉默三秒,问你:这架构是你设计的?
你说:对,用头发换的。
顺便说一句,转行人士其实有个优势:JS、Java、Python 都学过一点。这叫什么?叫三修。别的行业三修是天才,程序员三修是"全都只会一点"。但没关系,AI 时代,会一点就够了------剩下的那九点,让 AI 补。
最后,别刷手机了。你现在开始复习 Java 第一课,而你刷的每一条短视频,都在给 AI 喂训练数据。谁先跑,谁说了算。
复习完记得回来留言,咱们评论区见,顺便看看有多少人跟你一样,是带着房贷转行的。
P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 传送门http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。