1.认清自己技术栈
基本2026年才考虑转行的大家,大家对于自身认识都有稍许不足;那么迅速完成评估;
- 未来做 AI Agent,大概是这个结构:
-
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
如果进行这个职业判断之后,就是做一个学习计划: 1.复习基础,不要对自己有错误判断任何一个好的程序员,在工作中肯定有对基础知识遗漏的地方,所以先复习一遍这些知识是开始最好的; 比如一个全栈工程师,他的技术栈:Java、Python、TypeScript 后端所最基本的基础能回答上来: 第二层后端基础:
HTTP
REST API
JSON
Authentication
Exception
Logging
Async
SSE / WebSocket
第三层数据:
1.MySQL;2.Redis;3.SQL;4.Vector DB
第四层AI :
LLM
Prompt
Embedding
RAG
Tool Calling
Agent
MCP
二、Java:你真正需要复习什么
以前已经有 Java / Spring Boot 经验,所以不用重新学 Java 入门。
我们重点复习这些。
① Java 基础
首先确认这些东西是不是都熟:
String
Integer
Long
Boolean
List
Set
Map
ArrayList
HashMap
HashSet
这些都是字段类型:
例如:
List<String> names = new ArrayList<>();
names.add("Jie");
names.add("Tom");
for (String name : names) {
System.out.println(name);
}
然后:
Map<String, Object> user = new HashMap<>();
user.put("name", "Jie");
user.put("age", 30);
AI 开发为什么需要?
因为 Agent 返回的数据大量都是:
{
"name": "Jie",
"age": 30,
"tools": ["search", "database"]
}
最终都会变成 Java:
Map<String, Object>
List<Map<String, Object>>
三、Java 面向对象
需要重新熟悉:
class
interface
abstract class
extends
implements
override
polymorphism
例如:
interface Tool {
String execute(String input);
}
然后:
class WeatherTool implements Tool {
@Override
public String execute(String input) {
return "成都今天 25°C";
}
}
你以后做 Agent Tool:
Tool
├── WeatherTool
├── SearchTool
├── DatabaseTool
├── OrderTool
└── RefundTool
这个思想非常重要。
四、Java Stream
重点复习。
比如:
List<User> users = ...
过滤:
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
都会经常遇到这种操作。
五、Java 异常
这个也要非常熟:
try {
callLLM();
} catch (Exception e) {
log.error("LLM call failed", e);
}
以及:
Exception
RuntimeException
自定义异常
全局异常处理
因为 AI 系统特别容易出现:
LLM timeout
API error
Tool error
JSON parse error
Vector search error
第三方 API error
六、Java 最重要的:Spring Boot
应该重点复习。
至少要熟悉:
Controller
Service
Repository / Mapper
DTO
Entity
Configuration
Dependency Injection
比如:
@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
这个以后依然会用。
七、Python:这是你接下来最需要补强的
Python 不需要学成数据科学家。
目标是:
能够用 Python 快速写 AI 服务。
所以 Python 建议重点复习下面这些。
① 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"
}
八、Python 数据结构
这个非常重要:
list
tuple
dict
set
尤其是:
dict
因为 AI 开发里会天天看到:
message = {
"role": "user",
"content": "帮我查一下订单"
}
以及:
tool_call = {
"name": "get_order",
"arguments": {
"order_id": "10001"
}
}
九、Python 类型系统
这个建议认真学一下。
因为本身 TypeScript 很熟,会非常容易理解。
Python:
def get_user(user_id: int) -> dict:
...
进一步:
from typing import List
def get_names(users: List[dict]) -> List[str]:
...
再往后:
from pydantic import BaseModel
class User(BaseModel):
id: int
name: str
age: int
这就是 AI 后端非常重要的:
Pydantic
它跟本身熟悉的 TypeScript 类型 + Schema 思想非常接近。
十、Python async / await
这个对 AI 开发非常重要。
因为 AI API 经常是:
请求 LLM
↓
等待
↓
返回
所以:
async def chat():
result = await call_llm()
return result
并发:
results = await asyncio.gather(
search_web(),
search_database(),
search_knowledge()
)
这时候会发现:
Python async/await 跟 JavaScript/TypeScript 的思想其实非常像。
有前端背景,这个也不是难点。
十一、FastAPI
建议掌握的。
以后 AI 项目很可能是:
Next.js
↓
FastAPI
↓
Agent
↓
LLM
例如:
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
基本可以类比。
十二、SSE
这个尤其应该掌握。
因为 AI Chat 很多时候不是:
请求
↓
等 10 秒
↓
完整返回
而是:
你
↓
LLM
↓
我
↓
是
↓
一
↓
个
↓
AI
↓
...
所以:
Browser
↓
SSE
↓
FastAPI
↓
LLM Streaming
对于之前本身就做过 WebSocket,应该很好理解。
十三、数据库:不用重新学一遍
MySQL 基础是必须掌握的:
SELECT
INSERT
UPDATE
DELETE
JOIN
GROUP BY
ORDER BY
INDEX
TRANSACTION
然后重点理解:
普通数据库
↓
Vector Database
为什么需要向量数据库:
用户问题
↓
Embedding
↓
向量
↓
相似度搜索
↓
找到相关文档
↓
LLM
这就是 RAG 的基础。
十四、Redis
现在需要重新理解它在 AI 里的用途:
Redis
├── Session
├── Conversation
├── Cache
├── Rate Limit
├── Agent State
└── Short-term Memory
例如:
用户
↓
Agent
↓
Redis
↓
取出最近 20 条对话
↓
LLM
十五、然后才进入真正的 AI
前面的东西复习完,你再学:
① LLM API
↓
② Prompt
↓
③ Structured Output
↓
④ Streaming
↓
⑤ Embedding
↓
⑥ RAG
↓
⑦ Tool Calling
↓
⑧ Agent
↓
⑨ MCP
↓
⑩ Multi-Agent
这个顺序非常重要。
十六、建议都这样复习
不要让一次性看一大堆教程,挑选教程。 直接采用**“工程师复习模式”**:
第一轮:Java
先出一个小模块:
Java 集合 + Stream
回答几个题。
例如:
List<User> users
要求:
1. 找出年龄 > 18 的用户
2. 提取用户姓名
3. 按年龄排序
4. 统计平均年龄
5. 转成 Map<id, name>
第二轮:Python
然后:
Python
├── 基础语法
├── list/dict
├── function
├── class
├── typing
├── Pydantic
├── async/await
└── FastAPI
同样通过小项目复习。
第三轮:后端
做一个:
User API
↓
FastAPI
↓
MySQL
↓
Redis
第四轮:AI
在这个 API 上直接加:
LLM
↓
Streaming
↓
RAG
↓
Tool Calling
↓
Agent
这样你最后做出来就是一个完整项目。
最终会得到这样一个东西
React / Next.js
↓
AI Chat Interface
↓
FastAPI / Java
↓
Agent Engine
↓
┌────────────┼────────────┐
↓ ↓ ↓
RAG Tools Memory
↓ ↓ ↓
Vector DB Java API Redis
│ │
└────────────┼────────────┘
↓
LLM
↓
Streaming Answer
这才是建议复习的路线。
对于转行人士都有一个很大的优势:类似JS、JAVA、Python都已经会使用了,所以不需要浪费时间重新学整体。 重点就是把 (Java 后端能力 + Python AI 工程能力 基本知识过一遍)+ 最后把 LLM/Agent 接进去。
现在就从 Java 第一课:集合 + Stream 开始。