AI 入门教程:从零基础到工程实战
适用人群:AI 初学者、转行开发者、产品经理、技术管理者
前置知识:Python 基础编程 + 中学数学(线性代数/概率论入门即可)
实验环境:Ubuntu 24.04 + Python 3.12 + OpenAI API
最后更新:2026-06-26
目录
- 第一部分:基础认知
- §1 AI 简介
- §2 Prompt 提示词
- §3 AI 工具全景
- §4 AI 工作原理
- §5 AI 伦理与安全
- §6 AI 应用场景
- §7 AI 行业生态
- 第二部分:进阶开发
- §8 Prompt 工程进阶
- §9 AI API 开发
- §10 RAG 检索增强生成
- §11 AI 智能体
- §12 AI 多模态
- §13 AI 工作流自动化
- §14 AI 产品设计
- 第三部分:模型技术
- §15 本地模型部署
- §16 AI 安全进阶
- §17 Transformer 深度解析
- §18 模型微调 Fine-tuning
- §19 RLHF 对齐训练
- §20 向量数据库
- §21 AI 工程化部署
- 第四部分:深度学习与前沿
- §22 深度学习基础
- §23 计算机视觉 AI
- §24 NLP 进阶技术
- §25 前沿研究动态
- §26 AI 系统架构
- §27 AI 评测与安全研究
第一部分:基础认知
§1 AI 简介
什么是人工智能?
Artificial Intelligence(人工智能)是计算机科学的一个分支,旨在创建能够模拟人类智能行为的系统——包括学习、推理、感知、语言理解和决策。
┌─────────────────────────────────────────────────────────┐ │ 人工智能 (AI) │ │ ┌───────────────────────────────────────────────────┐ │ │ │ 机器学习 (Machine Learning) │ │ │ │ ┌─────────────────────────────────────────────┐ │ │ │ │ │ 深度学习 (Deep Learning) │ │ │ │ │ │ ┌───────────────────────────────────────┐ │ │ │ │ │ │ │ 生成式 AI (Generative AI) │ │ │ │ │ │ │ │ GPT / Claude / Gemini / 文心一言 │ │ │ │ │ │ │ └───────────────────────────────────────┘ │ │ │ │ │ └─────────────────────────────────────────────┘ │ │ │ └───────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────┘AI 发展简史
| 时期 | 里程碑 | 意义 |
|---|---|---|
| 1950 | 图灵测试提出 | AI 概念诞生 |
| 1956 | 达特茅斯会议 | "人工智能"术语确立 |
| 1997 | 深蓝击败国际象棋冠军 | 规则型 AI 巅峰 |
| 2012 | AlexNet 赢得 ImageNet | 深度学习复兴 |
| 2016 | AlphaGo 击败李世石 | 强化学习突破 |
| 2017 | Transformer 论文发表 | 现代 LLM 基石 |
| 2022.11 | ChatGPT 发布 | 生成式 AI 爆发 |
| 2023.03 | GPT-4 多模态 | 迈向通用 AI |
| 2024-2026 | Claude 4 / Gemini 3 / DeepSeek | 多模态 + 推理 + Agent |
三种 AI 形态
弱 AI (Narrow AI) 强 AI (AGI) 超 AI (Super AI) ───────────────── ──────────────── ──────────────── 专用领域 通用智能 超越人类 AlphaGo/人脸识别 尚未实现 理论阶段 ChatGPT(接近) 研究目标 科幻范畴当前阶段定位:我们正处在弱 AI 向强 AI 过渡的关键时期。LLM 展现了令人惊讶的通用能力,但本质上仍是"模式匹配器"而非真正理解。
核心概念速查
| 术语 | 英文 | 含义 |
|---|---|---|
| LLM | Large Language Model | 大语言模型,如 GPT-4、Claude |
| Token | Token | 文本最小处理单元,约 0.75 个英文单词 |
| Prompt | Prompt | 给 AI 的输入指令 |
| 幻觉 | Hallucination | AI 编造不存在的事实 |
| 上下文窗口 | Context Window | 模型一次能"看到"的文本量 |
| RAG | Retrieval-Augmented Generation | 检索增强生成 |
| Agent | Agent | 能自主规划执行任务的 AI 系统 |
| Fine-tuning | Fine-tuning | 在预训练模型上做领域微调 |
§2 Prompt 提示词
Prompt 是什么?
Prompt(提示词)是你与 AI 模型交互的输入文本。Prompt 的质量直接决定了 AI 输出的质量——“垃圾进,垃圾出”同样适用于 AI。
Prompt 基本结构
┌────────────────────────────────────────────┐ │ 有效 Prompt 的 4 要素 │ ├────────────────────────────────────────────┤ │ 1. 角色 (Role) │ │ "你是一位资深 Python 架构师..." │ │ │ │ 2. 任务 (Task) │ │ "请帮我设计一个 RESTful API..." │ │ │ │ 3. 约束 (Constraints) │ │ "使用 FastAPI 框架,包含 JWT 认证..." │ │ │ │ 4. 格式 (Format) │ │ "输出为 Markdown,包含代码示例..." │ └────────────────────────────────────────────┘Prompt 实战对比
❌ 糟糕的 Prompt:
写一个排序函数✅ 好的 Prompt:
你是一位 Python 算法工程师。请实现一个通用的快速排序函数, 要求: 1. 支持自定义比较器(comparator)参数 2. 原地排序(in-place),空间复杂度 O(log n) 3. 包含完整的类型注解和 docstring 4. 附带 3 个测试用例 输出格式:Markdown 代码块 + 复杂度分析六大 Prompt 技巧
| 技巧 | 说明 | 示例 |
|---|---|---|
| Zero-shot | 不给示例,直接提问 | “翻译:Hello World →” |
| Few-shot | 给 2-3 个示例再提问 | “输入→输出 ×3,现在输入→” |
| Chain-of-Thought | 要求逐步推理 | “让我们一步步思考…” |
| 角色扮演 | 赋予专家身份 | “你是一位资深安全研究员…” |
| 格式约束 | 指定输出结构 | “输出为 JSON,包含 name/age/email” |
| 思维树 | 多路径探索再选择 | “分析 A/B/C 三种方案,比较优劣,推荐最优” |
避坑指南
| 常见错误 | 正确做法 |
|---|---|
| 提示词过于模糊 | 具体化任务和约束条件 |
| 一次性问太多 | 复杂任务分步提问 |
| 忽略上下文长度 | 注意模型的 context window 限制 |
| 不指定输出格式 | 明确期望的格式和长度 |
| 期望一次完美 | 迭代优化,逐步收敛 |
§3 AI 工具全景
2026 年 AI 工具生态图谱
┌──────────────────────────────────────────────────────────────────┐ │ AI 工具生态 (2026) │ ├────────────┬──────────────┬──────────────┬───────────────────────┤ │ LLM 对话 │ 代码助手 │ 图像生成 │ 视频/3D 生成 │ ├────────────┼──────────────┼──────────────┼───────────────────────┤ │ ChatGPT │ GitHub Copilot│ Midjourney │ Sora / Runway │ │ Claude │ Cursor │ DALL·E 4 │ Pika / Luma │ │ Gemini │ CodeBuddy │ Stable Diff │ 可灵 / 即梦 │ │ DeepSeek │ Tabnine │ Adobe Firefly │ Meshy (3D) │ │ 文心一言 │ Windsurf │ 通义万相 │ Tripo (3D) │ ├────────────┼──────────────┼──────────────┼───────────────────────┤ │ 语音/音乐 │ 搜索/知识 │ 办公效率 │ Agent 平台 │ ├────────────┼──────────────┼──────────────┼───────────────────────┤ │ ElevenLabs │ Perplexity │ Notion AI │ AutoGPT │ │ Suno AI │ 秘塔 AI │ 飞书智能伙伴 │ MetaGPT │ │ 讯飞语音 │ 天工 AI │ Copilot 365 │ CrewAI │ │ Murf AI │ Kimi │ Gamma(PPT) │ Coze / 扣子 │ └────────────┴──────────────┴──────────────┴───────────────────────┘大模型能力对比 (2026)
| 模型 | 开发者 | 上下文 | 多模态 | 推理 | 代码 | 价格(输入) |
|---|---|---|---|---|---|---|
| GPT-4o | OpenAI | 128K | ✅ | ★★★★ | ★★★★★ | $2.5/M |
| Claude 4 Sonnet | Anthropic | 200K | ✅ | ★★★★★ | ★★★★ | $3/M |
| Gemini 2.5 Pro | 1M | ✅ | ★★★★★ | ★★★★ | $1.25/M | |
| DeepSeek V3 | 深度求索 | 128K | ✅ | ★★★★ | ★★★★ | ¥1/M |
| Qwen3-Max | 阿里通义 | 128K | ✅ | ★★★★ | ★★★★ | ¥4/M |
如何选择工具?
| 场景 | 推荐工具 | 理由 |
|---|---|---|
| 日常编程辅助 | CodeBuddy / Cursor | IDE 深度集成 |
| 长篇写作/报告 | Claude | 长上下文 + 结构化输出 |
| 数学/逻辑推理 | Gemini / DeepSeek | 推理链能力突出 |
| 多模态理解 | GPT-4o / Gemini | 图/音/视频全模态 |
| 中文场景 | DeepSeek / Qwen / 文心 | 中文优化更好 |
| 隐私敏感 | 本地 Ollama + Llama | 数据不出本地 |
| 性价比 | DeepSeek / Qwen | 国产模型价格优势 |
§4 AI 工作原理
LLM 是如何工作的?
现代大语言模型基于Transformer 架构,核心思想是“预测下一个 Token”(Next Token Prediction)。
┌──────────────────────────────────────────────────────────────┐ │ LLM 工作流程(简化版) │ ├──────────────────────────────────────────────────────────────┤ │ │ │ 输入文本 │ │ ↓ │ │ Tokenizer (分词器) │ │ "你好世界" → [123, 456] │ │ ↓ │ │ Embedding (嵌入层) │ │ [123, 456] → [[0.1, -0.3, ...], [0.5, 0.2, ...]] │ │ ↓ │ │ Transformer Layers (×N 层) │ │ ┌──────────────────────────────────────┐ │ │ │ Self-Attention → Feed Forward → ... │ ← 核心计算 │ │ └──────────────────────────────────────┘ │ │ ↓ │ │ Output Layer (输出层) │ │ 每个位置的词表概率分布 │ │ ↓ │ │ Sampling (采样) │ │ 选择下一个 Token: "世" → "世界" → "世界很大" │ │ │ └──────────────────────────────────────────────────────────────┘三个关键阶段
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ Pre-training │ → │ Fine-tuning │ → │ RLHF/对齐 │ │ 预训练 │ │ 微调 │ │ 人类反馈强化 │ ├──────────────┤ ├──────────────┤ ├──────────────┤ │ 海量文本学习 │ │ 领域数据适配 │ │ 价值观对齐 │ │ 语言模式 │ │ 指令跟随 │ │ 安全无害 │ │ 知识存储 │ │ 对话能力 │ │ 有用诚实 │ │ 推理能力 │ │ 格式遵循 │ │ 拒绝不当请求 │ └──────────────┘ └──────────────┘ └──────────────┘ 数月/$$$ 数天/$$ 数周/$$为什么 LLM 会"胡说"?
幻觉(Hallucination)的根本原因:
| 原因 | 解释 |
|---|---|
| 统计本质 | LLM 本质是概率模型,不是知识库 |
| 训练数据不完整 | 未见过的事实只能"猜测" |
| 上下文误导 | Prompt 中的错误引导模型走向 |
| 温度参数过高 | temperature 越高,输出越随机 |
| 知识截止 | 训练截止日期之后的事件完全未知 |
应对策略:RAG 检索增强(§10)、Function Calling 实时查询、降低 temperature、人工复核关键信息。
§5 AI 伦理与安全
五大伦理挑战
┌─────────────────────────────────────────────────────────────┐ │ AI 伦理五大维度 │ ├───────────┬─────────────────────────────────────────────────┤ │ 公平性 │ 模型偏见(性别/种族/地域)、算法歧视 │ │ 透明性 │ 黑盒决策、可解释性不足、AI 水印/标识 │ │ 隐私 │ 训练数据含个人信息、模型记忆攻击、数据泄露 │ │ 安全 │ 越狱攻击(Jailbreak)、提示注入、误用风险 │ │ 责任 │ 错误决策归责、AI 生成内容版权、就业冲击 │ └───────────┴─────────────────────────────────────────────────┘安全攻击面
用户输入 │ ▼ ┌──────────┐ ┌───────────────┐ ┌──────────────┐ │ Prompt │────→│ LLM 推理 │────→│ 输出/动作 │ │ Injection │ │ │ │ │ └──────────┘ └───────────────┘ └──────────────┘ │ │ │ ├─ 越狱攻击 ├─ 数据投毒 ├─ 敏感信息泄露 ├─ 角色绕过 ├─ 后门攻击 ├─ 有害内容 └─ 间接注入 └─ 模型窃取 └─ 间接危害防御措施速查
| 攻击类型 | 防御手段 |
|---|---|
| Prompt Injection | 输入过滤 + 角色指令加固 + 输入输出隔离 |
| Jailbreak | 安全对齐训练 + 内容审核层 + 动态红队测试 |
| 数据泄露 | 数据脱敏 + 差分隐私 + 联邦学习 |
| 模型窃取 | 速率限制 + API 异常检测 + 模型水印 |
| 有害输出 | 内容安全过滤 + Human-in-the-loop + 安全 RLHF |
伦理实践建议
- 透明度:明确告知用户正在与 AI 交互
- 公平性审计:定期检查模型在不同群体上的表现差异
- 隐私保护:不将用户输入用于模型训练(除非明确授权)
- 人工监督:高风险决策保留人工审核环节
- 持续监控:建立模型输出监控和异常告警机制
§6 AI 应用场景
行业应用全景
┌──────────────────────────────────────────────────────────┐ │ AI 行业应用矩阵 │ ├────────────────┬────────────────┬────────────────────────┤ │ 医疗健康 │ 金融科技 │ 教育培训 │ │ · 影像诊断 │ · 智能风控 │ · 个性化学习 │ │ · 药物发现 │ · 量化交易 │ · 自动评分 │ │ · 电子病历 │ · 智能客服 │ · 知识问答 │ │ · 基因分析 │ · 反欺诈 │ · 课程生成 │ ├────────────────┼────────────────┼────────────────────────┤ │ 软件开发 │ 内容创作 │ 制造业 │ │ · 代码生成 │ · 文本生成 │ · 缺陷检测 │ │ · 代码审查 │ · 图像/视频 │ · 预测性维护 │ │ · 测试自动化 │ · 音乐/配音 │ · 供应链优化 │ │ · 文档生成 │ · 翻译/本地化 │ · 数字孪生 │ ├────────────────┼────────────────┼────────────────────────┤ │ 科研 │ 法律 │ 安全 │ │ · 文献分析 │ · 合同审查 │ · 威胁检测 │ │ · 蛋白质折叠 │ · 案例检索 │ · 日志分析 │ │ · 数据挖掘 │ · 法律文书 │ · 行为分析 │ │ · 实验设计 │ · 合规审查 │ · 自动化响应 │ └────────────────┴────────────────┴────────────────────────┘开发者日常应用
# 1. 代码生成 - 描述需求,AI 写代码prompt="用 Python 实现一个 LRU 缓存,要求 O(1) 读写"# 2. 代码解释 - 快速理解遗留代码prompt="解释这段 C++ 代码的内存管理逻辑:<code>"# 3. Bug 定位 - 贴错误日志,AI 分析原因prompt="这个 Python traceback 是什么原因?<traceback>"# 4. 文档生成 - 从代码生成 API 文档prompt="为以下 FastAPI 接口生成 OpenAPI 文档:<code>"# 5. 测试用例 - 自动生成单元测试prompt="为以下函数生成 10 个边界条件测试:<function>"§7 AI 行业生态
产业链全景
┌────────────────────────────────────────────────────────────────┐ │ AI 产业链 (2026) │ ├──────────┬────────────┬──────────────┬──────────────┬──────────┤ │ 芯片/算力 │ 云服务 │ 模型层 │ 平台/工具 │ 应用层 │ ├──────────┼────────────┼──────────────┼──────────────┼──────────┤ │ NVIDIA │ AWS │ OpenAI │ LangChain │ ChatGPT │ │ AMD │ Azure │ Anthropic │ LlamaIndex │ Copilot │ │ Intel │ GCP │ Google │ HuggingFace │ Midjourney│ │ 华为昇腾 │ 阿里云 │ DeepSeek │ Ollama │ Notion AI│ │ 寒武纪 │ 华为云 │ 智谱/百川 │ vLLM │ 飞书AI │ │ Groq │ 腾讯云 │ 零一万物 │ Dify │ 文心APP │ ├──────────┼────────────┼──────────────┼──────────────┼──────────┤ │ GPU/NPU │ 算力租赁 │ 基础模型 │ 开发框架 │ 终端产品 │ │ HBM 存储 │ 模型即服务 │ 开源/闭源 │ 推理引擎 │ B2B/B2C │ └──────────┴────────────┴──────────────┴──────────────┴──────────┘开源 vs 闭源模型
| 维度 | 开源模型 (Llama/Qwen/DeepSeek) | 闭源模型 (GPT-4/Claude) |
|---|---|---|
| 可定制性 | ✅ 可微调、量化、私有化部署 | ❌ 仅 API 调用 |
| 数据隐私 | ✅ 数据不出本地 | ⚠️ 需信任服务商 |
| 成本 | 仅算力成本 | 按 Token 付费 |
| 能力上限 | 接近但略逊 | 当前最强 |
| 维护 | 需自行维护 | 服务商维护 |
| 合规 | 可控 | 依赖服务商 |
职业路径
┌─────────────────────────────────────────────────────┐ │ AI 领域职业路径 │ ├─────────────────┬───────────────────────────────────┤ │ AI 应用开发 │ Python → API → RAG → Agent │ │ (门槛最低) │ LangChain → Dify → Prompt 工程 │ ├─────────────────┼───────────────────────────────────┤ │ AI 工程化 │ MLOps → 模型部署 → 推理优化 │ │ (中高门槛) │ K8s → vLLM → 向量数据库 │ ├─────────────────┼───────────────────────────────────┤ │ AI 算法/研究 │ 深度学习 → PyTorch → Transformer │ │ (最高门槛) │ 微调 → RLHF → 多模态 → 前沿论文 │ ├─────────────────┼───────────────────────────────────┤ │ AI 产品 │ 场景理解 → UX 设计 → AI 产品策略 │ │ (交叉岗位) │ 需求分析 → 效果评估 → 价值验证 │ └─────────────────┴───────────────────────────────────┘第二部分:进阶开发
§8 Prompt 工程进阶
从"聊天"到"工程"
Prompt Engineering(提示词工程)是系统化设计、测试和优化 Prompt 的工程实践,使 LLM 输出达到生产级质量。
高级 Prompt 模式
1. Chain-of-Thought(思维链)
Prompt: "Q: 一个农场有鸡和兔子共 35 个头,94 只脚,各有多少只? 让我们一步步思考: 1. 设鸡为 x 只,兔为 (35-x) 只 2. 鸡有 2 只脚,兔有 4 只脚 3. 2x + 4(35-x) = 94 4. 解方程..." 效果:推理准确率从 17% → 78%(GSM8K 数据集)2. Few-shot 示例模板
你是 SQL 专家。根据自然语言生成 SQL。 示例1: 输入:查询年龄大于18岁的用户 输出:SELECT * FROM users WHERE age > 18; 示例2: 输入:统计每个部门的平均薪资,按降序排列 输出:SELECT dept, AVG(salary) FROM employees GROUP BY dept ORDER BY AVG(salary) DESC; 现在请处理: 输入:找出2025年每个月的订单总额,过滤小于1000的月份3. ReAct 模式(Reasoning + Acting)
Thought: 用户想知道今天深圳天气 Action: 调用天气 API(shenzhen) Observation: {"temp": 32, "weather": "晴", "humidity": 65%} Thought: 用户可能还想知道是否适合户外活动 Action: 根据温湿度判断 Observation: 高温高湿,建议室内活动 Final Answer: 深圳今天32°C晴天,湿度65%,建议在室内活动,注意防暑降温。Prompt 模板化实战
fromstringimportTemplate# 可复用的 Prompt 模板CODE_REVIEW_TEMPLATE=Template(""" 你是一位资深 $language 代码审查专家。请审查以下代码: 审查维度:1.正确性:逻辑错误和边界条件2.安全性:注入、XSS、敏感信息泄露3.性能:时间复杂度、内存使用4.可维护性:命名、注释、模块化5.最佳实践:$language 社区规范 代码: ```$language $code输出格式:
- 严重问题(必须修复)
- 优化建议(推荐改进)
- 风险点(需要注意)
“”")
使用模板
prompt = CODE_REVIEW_TEMPLATE.substitute(
language=“Python”,
code=“def login(user, pwd): return True”
)
### 结构化输出控制 ```python from openai import OpenAI import json client = OpenAI() # 方式1:Function Calling 强制 JSON response = client.chat.completions.create( model="gpt-4o", messages=[{"role": "user", "content": "分析这段文字的情感"}], response_format={"type": "json_object"} # 强制 JSON ) # 方式2:Pydantic 结构化输出 from pydantic import BaseModel class SentimentResult(BaseModel): sentiment: str # positive/negative/neutral confidence: float # 0-1 keywords: list[str] # OpenAI 结构化输出模式 response = client.beta.chat.completions.parse( model="gpt-4o", messages=[{"role": "user", "content": "分析这段文字"}], response_format=SentimentResult )Prompt 优化迭代流程
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ 编写草稿 │→ │ 小规模测试 │→ │ 分析失败 │→ │ 优化模板 │ │ Version 1 │ │ n=20 │ │ 案例 │ │ Version 2 │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ ↓ 重复直到达标§9 AI API 开发
OpenAI API 完整调用
fromopenaiimportOpenAIimportos# 初始化客户端client=OpenAI(api_key=os.environ.get("OPENAI_API_KEY"),base_url="https://api.openai.com/v1"# 或其他兼容 API)# 基础对话response=client.chat.completions.create(model="gpt-4o",messages=[{"role":"system","content":"你是专业的 Python 技术顾问"},{"role":"user","content":"解释装饰器的原理"}],temperature=0.7,# 创造性 0-2,越高越随机max_tokens=500,# 最大输出 Token 数top_p=0.9,# 核采样阈值frequency_penalty=0,# 重复惩罚presence_penalty=0,# 话题多样性)print(response.choices[0].message.content)# Token 用量统计print(f"Prompt Tokens:{response.usage.prompt_tokens}")print(f"Completion Tokens:{response.usage.completion_tokens}")print(f"Total Tokens:{response.usage.total_tokens}")Streaming 流式输出
stream=client.chat.completions.create(model="gpt-4o",messages=[{"role":"user","content":"写一首七言绝句"}],stream=True# 开启流式输出)# 逐字输出(类 ChatGPT 打字效果)forchunkinstream:ifchunk.choices[0].delta.content:print(chunk.choices[0].delta.content,end="",flush=True)多轮对话与上下文管理
classConversationManager:"""对话上下文管理器"""def__init__(self,model="gpt-4o",max_history=10):self.model=model self.max_history=max_history# 保留最近 N 轮self.messages=[]defadd_system(self,content:str):self.messages.append({"role":"system","content":content})defchat(self,user_input:str)->str:self.messages.append({"role":"user","content":user_input})