概述
本教程采用渐进式教学方式,从最简单的 LLM 调用开始,逐步构建一个功能完整的 AI Agent 系统。每个步骤都是独立的,可以单独学习,也建议按顺序阅读。
学习路径图
1 | ┌─────────────────────────────────────────────────────────────┐ |
各章节概要
第一章:概述
学习目标:
- 理解 AI Agent 的定义和特征
- 了解 AI Agent 与传统聊天机器人的区别
- 掌握本项目的学习路径
适用人群: 所有读者
预计时间: 30 分钟
第二章:基础 LLM 交互 (Step 0)
学习目标:
- 理解 OpenAI API 的基本使用
- 实现第一个 AI 对话程序
- 了解代码的基本结构
代码示例:
1 | const response = await openai.chat.completions.create({ |
难度: ⭐
预计时间: 1 小时
第三章:对话历史管理 (Step 1)
学习目标:
- 理解对话上下文的重要性
- 实现消息历史存储
- 支持多轮对话
关键概念:
- 消息数组
- 上下文窗口
- Token 限制
难度: ⭐⭐
预计时间: 1.5 小时
第四章:工具调用系统 (Step 2)
学习目标:
- 理解 Function Calling 机制
- 实现工具定义和注册
- 掌握工具执行循环
核心技能:
1 | // 工具定义 |
难度: ⭐⭐⭐
预计时间: 2 小时
第五章:流式输出 (Step 3)
学习目标:
- 理解流式响应的优势
- 实现 SSE 流式输出
- 处理流式数据
代码示例:
1 | const stream = await openai.chat.completions.create({... stream: true}); |
难度: ⭐⭐
预计时间: 1.5 小时
第六章:配置管理 (Step 4)
学习目标:
- 设计配置文件结构
- 实现环境变量支持
- 添加配置验证
配置优先级:
1 | 环境变量 > 配置文件 > 默认值 |
难度: ⭐⭐
预计时间: 1 小时
第七章:会话持久化 (Step 5)
学习目标:
- 设计会话存储方案
- 实现会话序列化
- 构建会话管理系统
数据结构:
1 | interface Session { |
难度: ⭐⭐⭐
预计时间: 2 小时
第八章:技能系统 (Step 6)
学习目标:
- 设计技能系统架构
- 实现技能动态加载
- 构建 Prompt 生成器
技能格式:
1 |
|
难度: ⭐⭐⭐⭐
预计时间: 2.5 小时
第九章:服务化架构 (Step 7)
学习目标:
- 理解客户端-服务器分离
- 实现 WebSocket 通信
- 管理并发连接
架构图:
1 | CLI Client ←→ WebSocket Server ←→ Agent Service |
难度: ⭐⭐⭐⭐
预计时间: 3 小时
第十章:Web 客户端 (Step 8)
学习目标:
- 实现 HTTP 静态文件服务
- 构建 WebSocket 客户端
- 设计响应式 UI
技术栈:
- HTML5 + CSS3
- 原生 JavaScript
- WebSocket API
难度: ⭐⭐⭐
预计时间: 2.5 小时
第十一章:总结与展望
学习目标:
- 回顾整个项目
- 了解未实现功能
- 探索技术路线
难度: ⭐
预计时间: 1 小时
学习建议
对于初学者
- 按顺序学习 - 不要跳过任何章节
- 动手实践 - 每章都要运行对应代码
- 理解原理 - 不只是复制代码,要理解为什么
- 做笔记 - 记录关键概念和问题
对于有经验的开发者
- 选择性学习 - 可以跳过熟悉的内容
- 深入细节 - 研究代码实现细节
- 思考改进 - 考虑如何优化现有实现
- 扩展功能 - 尝试添加新功能
学习时间估算
| 读者类型 | 总时间 | 每章平均 |
|---|---|---|
| 初学者 | 20-25 小时 | 2-2.5 小时 |
| 有经验 | 12-15 小时 | 1.2-1.5 小时 |
| 快速浏览 | 6-8 小时 | 0.6-0.8 小时 |
配套资源
代码仓库
每个步骤对应一个目录:
1 | steps/ |
运行步骤
1 | cd steps/stepN |
工作报告
每个步骤都有详细的工作报告:
1 | steps/stepN/reports/stepN-report.md |
学习检查点
每章结束后,你应该能够:
第二章
- 调用 LLM API 并获取响应
- 理解消息格式和角色概念
- 运行 Step 0 代码
第三章
- 实现多轮对话
- 理解上下文管理
- 运行 Step 1 代码
第四章
- 定义和调用工具
- 理解 Function Calling
- 运行 Step 2 代码
第五章
- 实现流式输出
- 处理流式数据
- 运行 Step 3 代码
第六章
- 使用配置文件
- 管理环境变量
- 运行 Step 4 代码
第七章
- 保存和加载会话
- 管理会话列表
- 运行 Step 5 代码
第八章
- 创建自定义技能
- 动态加载技能
- 运行 Step 6 代码
第九章
- 启动 WebSocket 服务器
- 连接 CLI 客户端
- 运行 Step 7 代码
第十章
- 访问 Web 界面
- 使用会话管理
- 运行 Step 8 代码
常见问题
Q: 我可以跳过某些章节吗?
A: 可以,但建议至少阅读第二章到第四章,这是基础内容。
Q: 遇到问题怎么办?
A: 每个步骤都有工作报告,记录了实现细节和已知问题。
Q: 如何验证学习效果?
A: 尝试修改代码,添加新功能,这能检验你的理解程度。
Q: 学完后能做什么?
A: 你将具备构建自定义 AI Agent 的能力,可以应用到实际项目中。
开始学习
准备好了吗?让我们从第二章开始,踏入 AI Agent 的世界!
下一章: 第二章:基础 LLM 交互 →
导航
上一篇: 1.3 技术栈选择
下一篇: 2.1 OpenAI API 简介