AI 文档导航
这一组文档面向零基础读者,目标不是让你马上训练一个大模型,而是先理解 AI 应用开发里最常见的概念、流程和工程落地方式。
如果你完全没有 AI 背景,可以先把 AI 理解成一种“会根据上下文生成结果的能力”。它不像传统程序那样只执行固定规则,而是根据你输入的问题、资料、约束和示例,生成一个最可能合适的回答。
先学什么
建议按下面顺序学习,不要一开始就跳到微调、Agent 或本地部署。
mermaid
flowchart TD
A["AI 是什么"] --> B["大模型基础"]
B --> C["提示词工程"]
C --> D["Embedding 与向量数据库"]
D --> E["RAG 知识库"]
E --> F["AI 应用架构"]
F --> G["AI 评估与安全"]
G --> H["Agent、微调、本地部署"]
H --> I["Spring AI 等工程化框架"]这个顺序的原因是:
- 先知道 AI 能做什么、不能做什么,避免把 AI 当成万能工具。
- 再理解大模型、Token、上下文窗口、幻觉这些基础概念。
- 然后学习提示词,因为提示词是最容易上手、最常用的 AI 应用能力。
- 接着学习 Embedding、向量库和 RAG,因为真实项目通常需要让 AI 使用自己的资料。
- 最后再看评估、安全、Agent、微调和部署,这些属于工程化和进阶内容。
核心目录
| 学习阶段 | 推荐页面 | 学完应该掌握什么 |
|---|---|---|
| 总路线 | 从零到商业生产级掌握 | 建立从模型原理到 RAG、Agent、评估、安全、LLMOps 和商业落地的完整主线 |
| 深度验收 | 从零到精通验收清单 | 检查是否能讲清 AI 全链路原理、商用风险、Demo、排查和面试回答 |
| 入门认知 | AI 是什么 | AI、机器学习、大模型之间的关系 |
| 模型基础 | 大模型基础 | Token、上下文、训练、推理、幻觉 |
| 模型结构 | Transformer 原理 | 注意力机制为什么能处理文本关系 |
| 提示词 | 提示词工程 | 怎样把任务说清楚,让模型稳定输出 |
| 向量检索 | Embedding 与向量数据库 | 文本如何变成向量,如何做相似度检索 |
| RAG | RAG 知识库 | 如何“先查资料,再让模型回答” |
| RAG 工程 | RAG 流程 | 文档切分、检索、重排、生成的完整链路 |
| 微调 | 模型微调 | 什么时候需要微调,什么时候不需要 |
| Agent | AI Agent | 模型如何规划任务、调用工具、循环执行 |
| 工具调用 | 工具调用 | 如何让模型调用业务接口 |
| 架构落地 | AI 应用架构 | 一个 AI 应用通常有哪些后端模块 |
| Java AI 工程化 | Spring AI | 如何在 Spring 项目中接入模型、RAG 和工具调用 |
| 商业落地 | AI 商业场景落地 | 客服、知识库、抽取、数据分析、Agent 如何商业落地 |
| 当前应用 | 当前应用说明 | 当前项目 AI 问答页的大致链路 |
| 本地部署 | 本地模型部署 | 本地模型适合哪些场景 |
| 本地模型 | DeepSeek | 如何理解 DeepSeek、本地部署、Embedding 和知识库组合 |
| 质量保障 | AI 评估 | 如何判断 AI 回答是否可用 |
| 安全边界 | AI 安全 | Prompt 注入、数据泄露、越权工具调用 |
| 面试复习 | AI 面试题 | 常见问法和回答思路 |
AI 应用的通用工作流
不管你做的是客服助手、企业知识库、合同抽取、数据分析助手还是业务 Agent,常见流程都类似。
mermaid
flowchart TD
A["用户输入问题"] --> B["后端接收请求"]
B --> C["补充上下文"]
C --> D{"是否需要查资料"}
D -- "不需要" --> E["构造 Prompt"]
D -- "需要" --> F["检索知识库"]
F --> G["筛选相关资料"]
G --> E
E --> H["调用模型"]
H --> I["解析模型输出"]
I --> J["安全检查与格式化"]
J --> K["返回给用户"]
K --> L["记录日志与评估数据"]从工程角度看,AI 应用不是只有“调用模型”这一步。真正要做稳定,需要考虑:
- 输入是否清晰。
- 上下文是否足够。
- 检索资料是否准确。
- 模型输出是否可控。
- 失败时如何兜底。
- 线上效果如何评估。
- 是否会泄露隐私或调用危险工具。
零基础要先避开的误区
误区一:AI 回答一定是对的
大模型的本质是根据上下文生成最可能的文本,它可能生成看起来很像真的错误内容,这叫“幻觉”。
所以在知识库、法律、医疗、财务、生产运维这类场景里,不能只相信模型生成结果,必须让模型基于资料回答,并保留引用来源和人工审核机制。
误区二:Prompt 写得越长越好
Prompt 的重点不是长,而是清楚。一个好提示词应该明确:
- 你是谁。
- 你要模型做什么。
- 有哪些背景资料。
- 输出格式是什么。
- 有哪些限制条件。
- 不确定时应该怎么处理。
误区三:RAG 可以解决所有问题
RAG 适合“从资料中找答案”的场景,例如文档问答、政策查询、知识库助手。但如果问题需要复杂计算、实时业务操作或多步骤决策,还需要结合工具调用、工作流和业务系统。
误区四:微调是 AI 项目的第一步
大多数应用不应该一开始就微调。更常见的路线是:
- 先用提示词跑通。
- 再接入 RAG。
- 再做评估和监控。
- 只有当模型风格、专有任务或固定格式长期不稳定时,再考虑微调。
推荐实践路线
如果你想在商业系统里真正落地一个 AI 功能,可以按下面路线做。
mermaid
flowchart TD
A["第一步:明确业务场景和风险等级"] --> B["第二步:接通模型 API"]
B --> C["第三步:完成受控 AI 网关"]
C --> D["第四步:接入权限、日志和限流"]
D --> E["第五步:建设知识库或工具调用"]
E --> F["第六步:增加引用、拒答和人工兜底"]
F --> G["第七步:沉淀评估样例"]
G --> H["第八步:上线监控、安全审计和成本治理"]每一步都要能独立验证:
- 模型 API 能否稳定返回。
- 后端是否隐藏了密钥。
- 用户输入是否做了长度限制。
- RAG 检索是否能找到正确资料。
- 回答是否带引用来源。
- 错误时是否有友好提示。
- 是否记录了请求耗时和失败原因。
入门 Demo:最小 AI 问答接口
下面用 Python 写一个最小后端接口。真实项目中,前端不要直接保存模型密钥,而是请求自己的后端,再由后端调用模型服务。
安装依赖:
bash
pip install fastapi uvicorn requests新建 ai_api.py:
python
import os
import requests
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class ChatRequest(BaseModel):
message: str
@app.post("/ai/chat")
def chat(req: ChatRequest):
if len(req.message.strip()) == 0:
return {"answer": "请输入问题。"}
api_key = os.getenv("MODEL_API_KEY")
if not api_key:
return {"answer": "服务端没有配置模型密钥。"}
# 这里用伪地址表示模型服务,实际项目替换成你的模型平台地址。
response = requests.post(
"https://example.com/v1/chat/completions",
headers={"Authorization": f"Bearer {api_key}"},
json={
"model": "demo-model",
"messages": [
{"role": "system", "content": "你是一个耐心的技术文档助手。"},
{"role": "user", "content": req.message},
],
},
timeout=30,
)
response.raise_for_status()
data = response.json()
return {"answer": data["choices"][0]["message"]["content"]}启动:
bash
uvicorn ai_api:app --reload --port 8000测试:
bash
curl -X POST http://127.0.0.1:8000/ai/chat ^
-H "Content-Type: application/json" ^
-d "{\"message\":\"用一句话解释 RAG\"}"学习检查清单
学完 AI 基础阶段后,你应该能回答这些问题:
- 大模型为什么会出现幻觉。
- Token 和上下文窗口是什么。
- Prompt 里为什么要写角色、任务、上下文和输出格式。
- Embedding 为什么能用于相似度检索。
- RAG 和微调分别解决什么问题。
- 向量数据库和普通数据库有什么区别。
- AI 应用为什么需要评估集。
- Prompt 注入为什么危险。
- 为什么模型密钥不能放在前端。
- 一个 AI 问答接口后端大概需要哪些模块。
如果这些问题还说不清楚,建议先按目录继续学习,不要急着进入部署或微调。
