30天Go Agent Infrastructure学习计划
💡 从"会一点AI的Go后端"→ "Go Agent Infrastructure Engineer"
不是聊天demo,而是有状态、有权限、有审批、有评估、有观测的Go后端系统。
🎯 项目目标
完成本项目后,你将具备:
- ✅ Go并发与系统设计 - context、goroutine、graceful shutdown、错误处理、RBAC
- ✅ Agent系统架构 - LLM Client、Tool Gateway、审批流、状态机、可观测性
- ✅ RAG生产实现 - 向量检索、混合检索、重排、评估、成本优化
- ✅ 企业级工程 - Docker、OpenTelemetry、eval runner、故障分析
- ✅ 系统设计 - 3道深度题目、架构权衡、分布式思维
📅 4周学习路线
| 周期 |
主题 |
目标 |
交付物 |
| Week 1 |
Agent Runtime |
最小化可用agent |
v0.1 |
| Week 2 |
RAG系统 |
生产级检索 |
v0.2 |
| Week 3 |
Workflow + 安全 |
企业级特性 |
v0.3 |
| Week 4 |
生产化 + 面试 |
可上线系统 |
v1.0 |
总时长: ~80小时(每天2-3小时)
🚀 快速开始
新手入门(第一次访问)
- 读这个 → 快速开始指南
- 看这个 → 学习地图
- 开始Day 1 → Go项目骨架
已开始的继续
- 你在哪周? → 点击左侧导航进入对应周
- 想快速参考? → 快速参考
- 需要系统设计帮助? → 系统设计指南
📊 核心架构
┌─────────────────────────────────────────┐
│ Agent Runtime (Week 1) │
│ ├─ LLM Client (OpenAI) │
│ ├─ Tool Registry │
│ ├─ Agent Loop (迭代决策) │
│ └─ Error Classification │
├─────────────────────────────────────────┤
│ RAG Pipeline (Week 2) │
│ ├─ Document Chunking │
│ ├─ Vector Embedding │
│ ├─ Hybrid Retrieval (Keyword + Vector) │
│ ├─ Reranking + Citations │
│ └─ Eval Runner │
├─────────────────────────────────────────┤
│ Workflow & Security (Week 3) │
│ ├─ State Machine (FSM) │
│ ├─ Human Approval │
│ ├─ Guardrails (4层防护) │
│ ├─ RBAC (权限矩阵) │
│ └─ MCP Server │
├─────────────────────────────────────────┤
│ Production (Week 4) │
│ ├─ Docker Compose │
│ ├─ OpenTelemetry (Tracing) │
│ ├─ Prometheus (Metrics) │
│ └─ Deployment + CI/CD │
└─────────────────────────────────────────┘
💡 学习方法 - 苏格拉底法
每个Day的教材遵循问题驱动的教学法:
- 问题驱动 - 为什么需要这个?有什么问题?
- 层层递进 - 从最小化版本到完整版本
- 代码示例 - 所有概念配可运行的Go代码
- 自测清单 - 检查理解深度
- 实战作业 - 动手巩固
- 问题解答 - 常见疑惑
核心原则:理解Why,而不是死记硬背
🎤 30秒Pitch
我做了一个Go版企业客服Agent。它包含Agent Runtime、RAG检索、Tool Gateway、审批流、Guardrails、RBAC、MCP Server、Tracing和Eval Runner。我的重点不是做一个聊天demo,而是把agent做成可控、可观测、可评估、可上线的后端系统。
📋 进度追踪
- 开始学习前:填写 PROGRESS.md
- 每天学习后:检查对应的Day并标记完成
- 周末回顾:完成周期末的自我评估
🔗 资源导航
| 类型 |
位置 |
| 教学材料 |
weekplan/ 文件夹(Day 1-30) |
| 代码示例 |
code-examples/ 文件夹 |
| 参考资料 |
docs/ 文件夹 |
| 进度追踪 |
PROGRESS.md |
| 快速参考 |
docs/quick_reference.md |
⚠️ 常见问题
Q: 没有Go基础能学吗?
A: 建议先补Go语言基础(context、interface、goroutine),预留1周。Day 1教材会讲解所有涉及的Go概念。
Q: 时间紧张能跳过某些天吗?
A: 可以。Week 1(Day 1-7)是必修,其他周可选。但Week 2的Day 8-10对RAG理解很重要。
Q: 怎样最高效地学习?
A: 按照每个Day的问题驱动部分思考,不要直接看代码。先自己想答案,再对比教材。
Q: 有答案吗?
A: 有。每个Day的"问题解答"部分有详细的Q&A。
🛠️ 技术栈速览
| 层级 |
技术 |
| 语言 |
Go 1.21+ |
| LLM |
OpenAI API |
| 向量DB |
Qdrant 或 pgvector |
| 数据库 |
PostgreSQL |
| 缓存 |
Redis |
| 消息队列 |
- (简化实现) |
| 部署 |
Docker Compose |
| 可观测 |
OpenTelemetry + Prometheus + Jaeger |
| 测试 |
Go test + 自定义eval |
📈 预期收获
完成30天后:
开始日期: 2026/04/21
预计完成: 2026/05/30
👉 现在就开始Day 1!