路线与环境

个人学习记录,主要是为了后面复习和实操。10 年 Java 转 AI Agent,我的判断不是去卷算法训练岗,而是把原来的后端工程能力,接上大模型、RAG、Tool Calling 和 Agent 工作流。

整体路线

先放结论。

Java 做生产级后端、业务系统、权限、数据库、流程、微服务、部署
Python 做 AI 生态、Agent 编排、RAG 实验、LangChain / LangGraph

所以这个路线不是:

Java 程序员从 0 转算法工程师

更像是:

Java 后端工程能力
    +
Python AI 生态能力
    +
Agent 工程落地能力
    =
AI Agent 后端 / 平台开发

![AI Agent 90 天路线总览]
routeoverview.png

3 个月目标先定得现实一点:

第 1 个月:跑通 LLM API、Spring AI、FastAPI、简单 Tool Calling
第 2 个月:做出企业知识库 RAG 系统
第 3 个月:做出 Java + Python 混合架构的业务 Agent

我的理解:

不是放弃 Java 去追热点,而是把 Java 后端从“写接口”升级成“能接大模型、能编排工具、能进入业务流程”的平台能力。

Java 和 Python 的分工

Java 继续作为主线。

Java 负责:

用户体系
权限控制
订单系统
工单系统
知识库管理
文件上传
数据库事务
日志审计
接口网关
调用 Python AI 服务

Python 不是替代 Java,而是补 AI 生态。

Python 负责:

FastAPI AI 服务
LangChain
LangGraph
RAG 实验
Agent 工作流
Tool Calling
评测脚本
模型 API 调用

最终结构大概是:

前端
  ↓
Spring Boot 后端
  ↓
FastAPI AI 服务
  ↓
LangGraph / LangChain
  ↓
大模型 API
  ↓
DeepSeek / Qwen / OpenAI 兼容接口

![Java Python Agent 分工]envchecklist.png

这块我觉得要想清楚。

Spring Boot 适合做稳定业务系统,FastAPI 适合快速接 AI 能力,LangGraph 适合做 Agent 工作流。三者不是竞争关系,是组合关系。

起步要做什么

先不急着写复杂代码。

主要把后面 90 天要用的基础工具链准备好:

JDK 21
Maven 3.9+
IntelliJ IDEA
Python 3.10+
PyCharm / VS Code
Git
Docker
DeepSeek 或 Qwen API Key

最后要达到的状态:

java -version
javac -version
mvn -version
python --version
pip --version
git --version
docker --version
docker compose version

这些命令都能正常输出版本号。

![环境检查清单]architecture.png

Java 环境

建议版本:

JDK 21
Maven 3.9+
IntelliJ IDEA

原因也简单:

Spring Boot 3.x 要求 Java 17+
JDK 21 是长期支持版本
Maven 仍然是 Java 项目里很常用的构建工具
IDEA 对 Spring Boot 支持最好

macOS 可以用 Homebrew:

brew install openjdk@21
brew install maven

配置环境变量:

echo 'export JAVA_HOME=$(/usr/libexec/java_home -v 21)' >> ~/.zshrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.zshrc
source ~/.zshrc

验证:

java -version
javac -version
mvn -version
echo $JAVA_HOME

Windows 可以用 winget:

winget install -e --id EclipseAdoptium.Temurin.21.JDK
winget install -e --id Apache.Maven

验证:

java -version
javac -version
mvn -version
where java

如果 Maven 下载慢,可以配置国内镜像。

文件:

~/.m2/settings.xml

内容:

<settings>
    <mirrors>
        <mirror>
            <id>aliyunmaven</id>
            <mirrorOf>*</mirrorOf>
            <name>阿里云公共仓库</name>
            <url>https://maven.aliyun.com/repository/public</url>
        </mirror>
    </mirrors>
</settings>

Python 环境

建议版本:

Python 3.10+
venv
pip
PyCharm / VS Code

起步阶段不建议把 conda 搞复杂。

做 FastAPI、LangChain、LangGraph,用项目自己的 venv 就够。conda 更适合数据科学、本地模型、Jupyter 那类环境。

安装依赖:

python -m pip install --upgrade pip
python -m pip install fastapi uvicorn python-dotenv requests

如果 PyPI 访问慢,可以换清华源:

python -m pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
python -m pip install fastapi uvicorn python-dotenv requests

后面做 Agent 再装:

python -m pip install langchain langgraph

后面做 RAG 再装:

python -m pip install langchain-community langchain-openai psycopg2-binary pgvector

FastAPI 最小项目

先建一个 main.py,能跑起来就行。

from fastapi import FastAPI

app = FastAPI()


@app.get("/")
def hello():
    return {
        "message": "hello ai agent"
    }

启动:

uvicorn main:app --reload

访问:

http://127.0.0.1:8000

接口文档:

http://127.0.0.1:8000/docs

FastAPI 默认会生成 OpenAPI 文档,后面 Java 调 Python 服务时很方便。

Git 和项目目录

安装 Git:

brew install git

Windows:

winget install -e --id Git.Git

配置用户信息:

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
git config --global --list

建议目录这样放:

ai-agent-study
├── java
│   ├── spring-ai-chat-demo
│   └── rag-knowledge-base
├── python
│   ├── fastapi-agent-demo
│   └── langgraph-agent-demo
├── docs
│   ├── route-env.md
│   └── roadmap.md
└── docker
    └── docker-compose.yml

个人习惯:

代码和笔记分开,Java 和 Python 分开,后面复习和写简历都清楚。

Docker 环境

后面做 RAG / Agent 会用到:

PostgreSQL + pgvector
Redis
MySQL
Nginx

这些东西如果都直接装本机,时间长了会乱。Docker 更适合做学习环境和项目演示。

验证:

docker --version
docker compose version
docker run hello-world

macOS 直接安装 Docker Desktop。

Windows 建议先开启 WSL2,再安装 Docker Desktop。

大模型 API Key

第一阶段建议优先准备一个国内模型 API,少折腾网络问题。

可以选:

DeepSeek API
Qwen / DashScope API

API Key 不要写死在代码里。

错误写法:

api_key = "sk-xxxx"

推荐放到 .env

DEEPSEEK_API_KEY=你的key
QWEN_API_KEY=你的key

Python 读取:

from dotenv import load_dotenv
import os

load_dotenv()

api_key = os.getenv("DEEPSEEK_API_KEY")

Java 也可以从环境变量读:

String apiKey = System.getenv("DEEPSEEK_API_KEY");

.gitignore 里记得排除:

.env
.venv/
target/
.idea/
__pycache__/
*.log

环境检查清单

Java:

java -version
javac -version
mvn -version

Python:

python --version
pip --version

Git:

git --version
git config --global --list

Docker:

docker --version
docker compose version
docker run hello-world

FastAPI:

uvicorn main:app --reload

访问:

http://127.0.0.1:8000/docs

API Key:

.env 文件已创建
API Key 没有写死代码里
.gitignore 已排除 .env

常见问题

java 命令不识别

大概率是 JDK 没装好,或者 JAVA_HOME / PATH 没配好。

检查:

java -version
echo $JAVA_HOME

Windows:

where java
echo $env:JAVA_HOME

pip 安装报 SSL 错误

一般是访问 PyPI 不稳定。

可以切换镜像:

python -m pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

Docker 命令能执行,但服务启动失败

先确认 Docker Desktop 已经启动。

再看:

docker info
docker compose version

Windows 上还要确认 WSL2 正常。

小结

这一篇的目标不是产出一个很牛的 Agent。

今天真正要完成的是三件事:

1. 明确方向:Java 后端 + Python AI 生态 + Agent 工程化
2. 准备工具:JDK、Maven、Python、Git、Docker、API Key
3. 跑通最小服务:FastAPI 能启动,后面再接大模型

先把地基铺好,后面做 Spring AI、RAG、LangGraph、Tool Calling 才不会天天被环境问题打断。


这个家伙很懒,啥也没有留下😋