- 教程
- 文档
- AI Agent
- 人工智能
- 大模型
【免费下载链接】awesome-agentic-ai-zh
A trilingual (繁中 / English / 简中) learning roadmap for agentic AI: from LLM basics to multi-agent systems, with 240+ curated resources and hands-on examples. 中文 AI agent 學習地圖。
本文对应仓库中的 stages/00-foundations.en.md(繁中原版为 stages/00-foundations.md)。Stage 0 是 awesome-agentic-ai-zh 学习地图的「可跳过准备关卡」(prerequisite gateway),它不教完整教程,而是用一个无需账号、无需 API token、无需付费的整合练习,同时检验 Python、Git、命令行与 YAML/JSON 四类技能——这些正是后续所有 Stage(从 LLM API 调用、Agent Loop 到多智能体系统)都会直接使用的基础设施。
读完本篇,你将能够:用 Python 从公开 API 取数据并解析 JSON、在终端中运行脚本并定位输出文件、用 Git 保存版本并处理合并冲突、识别 YAML 与 JSON 配置格式,并安全地理解 API token 的边界。
这一关在整张学习地图中的位置
在 stages/DESIGN.md 的「Stage 0 為什麼可以 skip」一节中,维护者明确写下了这个阶段的定位:
Stage 0 不是 stage——它是 prerequisite gateway。
- 已经会 Python / Git / CLI / JSON 的人 → 直接进入 Stage 1 — LLM 基础;
- 不会的人 → 用一个小工具同时练 Python、API、JSON、CLI 与 Git,避免在后续阶段被基础设施卡住。
全站学习顺序(Stage 0 → Stage 1 → Stage 2为共用基础)也在 README.md 中有明确入口:完全没写过代码的读者从 Stage 0 开始,零基础环境准备可搭配 resources/setup-guide.en.md。同时,脚本 scripts/check-stage-template.py 明确将 Stage 0 排除在标准章节模板检查之外——因为它刻意采用「短 intro + 可跳过判断」的结构,而不是完整的章节模板。
核心原则:这一关不需要你背命令,只需要你能自己查资料并完成任务。它的产出是能力清单,而不是记忆量。
何时可以跳过这一关:四项自查
打开这一关后,先做四项能力自查。每一项都对应后续 Agent 课程真实会用到的工具:
| 自查项 | 涉及工具 | 后续 Stage 的典型用法 |
|---|---|---|
| 用 Python 向 API 拿公开数据,再从 JSON 里找出一个值 | Python + HTTP API + JSON | Stage 1 起所有 LLM API 调用、Stage 3 的 tool round trip |
用 Git 复制项目(clone)、开工作线(branch)、保存版本(commit)、推送(push),并知道合并冲突时该保留什么 | Git | 每个动手练习的版本管理、Stage 7 的部署与回滚 |
| 用命令行切换文件夹、创建文件、运行 Python 脚本 | 终端 / Shell | 每个可执行范例的运行方式 |
| 看懂 YAML 与 JSON | 配置文件格式 | 工具 schema(Stage 3)、RAG 与部署配置(Stage 6/7) |
四者都熟练 → 直接跳往 Stage 1 — LLM 基础。只要有一项不确定,就完成本页的主练习,需要时再展开补充小节。
📌 学习目标
完成这一关后,你能够:
- 让 Python 从 API 拿数据,再读出 JSON 里需要的部分;
- 从终端运行程序,并找到程序创建的文件;
- 用 Git 保存一个版本,需要时可以回到这个版本;
- 认出 YAML、JSON 与 API token(让程序登录的秘密文字),知道哪些内容绝不能公开。
🛠 主练习:做一个 GitHub 数据小工具
成果目标:让 Python 从 GitHub 拿公开数据,把结果显示在画面上、写进文件,再用 Git 保存。整个过程不需要账号、API token 或付费服务。
第 1 步:创建程序
新建一个文件夹,把以下内容保存为github_profile.py:
import json import sys from pathlib import Path from urllib.request import Request, urlopen if hasattr(sys.stdout, "reconfigure"): sys.stdout.reconfigure(encoding="utf-8", errors="replace") url = "https://api.github.com/users/torvalds" request = Request(url, headers={"User-Agent": "stage-0-practice"}) with urlopen(request, timeout=10) as response: profile = json.load(response) result = f"{profile['login']} has {profile['followers']} followers" print(result) Path("result.txt").write_text(result + "\n", encoding="utf-8")这段代码里已经包含后续课程反复出现的三个核心动作:
- 构造 HTTP 请求:
Request(url, headers={"User-Agent": ...})设置了请求头。GitHub API 要求提供User-Agent,否则请求会被拒绝——这也是为什么它被显式写出来。 - 解析 JSON:
json.load(response)把响应体(JSON 文本)转成 Python 字典,随后通过profile['login']、profile['followers']取值。API(Application Programming Interface)是程序获取数据的入口,JSON(JavaScript Object Notation)是这次收到的数据格式。 - 写文件:
Path("result.txt").write_text(...)用 UTF-8 编码把结果落盘,为下一步的 Git 提交准备内容。
环境注意:Windows 终端使用 PowerShell,macOS/Linux 使用系统终端。
sys.stdout.reconfigure处理了某些系统下中文/特殊字符的输出编码问题,保证跨平台一致。
第 2 步:运行程序
在终端进入该文件夹并执行:
python github_profile.py画面会显示类似torvalds has 123456 followers的账号与粉丝数,文件夹里同时多出result.txt。粉丝数是动态数据,你的屏幕不需要与别人一致——这本身就是验证「从实时 API 取数据」成功的方式。
第 3 步:用 Git 保存成果
git init git add github_profile.py result.txt git commit -m "Add GitHub profile checker"git init把当前文件夹变成 Git 仓库;git add把两个文件放入暂存区;git commit保存一个带说明的版本快照(commit)。
如果 Git 第一次要求设置姓名或 email,按提示配置后重新执行git commit。这些信息是版本的作者标签,不是密码。
合并冲突的最小认知
在第 2 步的git add与后续练习中,你可能会遇到「两次修改撞在一起」的情况——这就是合并冲突(merge conflict)。此时 Git 会在冲突文件中留下<<<<<<<、=======、>>>>>>>标记,你需要决定保留哪一方的改动(或手动合成两者),再重新git add与git commit。这一关只要求你知道「冲突时该留下什么、怎么手动解决」,不需要背完整合并命令——更系统的解法见 Pro Git 参考资源。
✅ 完成检查
完成主练习后,逐项勾选:
- 终端显示 GitHub 账号与粉丝数;
result.txt包含相同结果;git log --oneline能看到刚才的 commit;- 程序与 commit 里没有密码或 API token。
四项全部通过,即可前往 Stage 1 — LLM 基础。卡住时,展开下面「只做你不熟的部分」的补充练习即可,不必一次读完。
⏱️ 时间、环境与这一关存在的原因
- 时间:完全不熟时预留 1–2 周,约 5–15 小时;已经会其中几项,只补不熟的部分。
- 环境:准备仍受支持的 Python 3、Git、文本编辑器与终端。先确认工具可运行:
python --version git --version后续 AI agent 课程会直接使用 Python、Git、命令行与配置文件。Stage 0 不会教完所有内容——它只帮你找出还不熟的地方,并告诉你去哪里补。仓库内的 resources/setup-guide.en.md 为零基础读者提供了 Web / Desktop / IDE / CLI Agent / API 五选一的完整环境搭建入口,需要时可配合使用。
🧰 补充练习:Python、Git、命令行与 YAML/JSON
只做你还不知道的项目:
1. Python:把主练习 URL 中的torvalds换成自己的 GitHub 账号或其他公开账号,确认程序仍能读出login与followers。这验证了「程序逻辑不依赖特定数据源」。
2. Git:建立新分支(不直接改原版本的工作线),修改输出文字,再做一次 commit;然后把练习放到自己的远程 Git 项目并执行git push。练习要点:分支让实验与主线隔离,push才把版本送到线上。
3. 命令行:创建src、tests、docs三个文件夹;从不同路径运行主练习(例如python ../github_profile.py),观察result.txt实际写到哪个目录——这会帮你理解「相对路径」与「当前工作目录」的关系,也是后续所有运行练习的必备直觉。
4. JSON:把 API 响应保存到文件,再找出name、public_repos、followers三个字段。可以直接在 Python 里加一行把原始响应写盘,也可以用命令行工具jq快速验证:
curl -sS -H "User-Agent: stage-0-practice" \ https://api.github.com/users/torvalds | jq '{name, public_repos, followers}'5. YAML:创建一个包含username与output_file的小配置文件,练习缩进、字符串与布尔值。YAML 对空格敏感,不要用 Tab 缩进。一个最小示例:
# config.yml username: torvalds output_file: result.txt save_json: true对应读取代码可以是:
import yaml with open("config.yml", encoding="utf-8") as f: config = yaml.safe_load(f) print(config["username"], config["output_file"])YAML 是后续 Stage 大量配置(如 mkdocs.yml、各范例的requirements.txt与仓库的 scripts/freshness-models.yml)的基础格式,而 JSON 是 API 交换的标准格式——两者都「用文本保存结构化数据」,只是 YAML 更偏人类可读、JSON 更偏程序通用。
排错通用心法:遇到错误时,先读错误信息的最后一行;再确认当前文件夹、文件名与 Python 版本;一次只改一件事,才能知道哪个修改有效。这也是 stages/DESIGN.md 中「一次只改一件事」这一全站练习原则在 Stage 0 的体现。
🔐 选做:安全地体验 GitHub API 验证
主练习不需要 token。Token 是一串让 GitHub 认出你的秘密文字,只有在你想理解「登录后的 API」时才做这一题:
- 按 GitHub 官方指南创建fine-grained personal access token(细粒度 token 意味着你只授予需要的权限);
- 使用最短的有效期,不添加额外权限(
GET /user对 fine-grained token 不要求任何权限); - 把 token 放进环境变量
GITHUB_TOKEN。环境变量是电脑暂时保管数据、让程序读取的位置; - 调用
https://api.github.com/user两次:第一次不带 token,应返回401(未登录);第二次带 token,应返回200(请求被接受); - 结束后回到 GitHub 设置页撤销 token,并清除环境变量。
安全红线:不要把 token 写进 Python 源码、Markdown、截图、终端历史或 Git commit——它就像一把临时钥匙,拿到的人可以以你的身份操作,因此权限越少、期限越短越安全。
Bash 可以避免把输入显示在画面上:
read -s GITHUB_TOKEN && export GITHUB_TOKEN curl -sS -o /dev/null -w "No token: %{http_code}\n" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/user curl -sS -o /dev/null -w "With token: %{http_code}\n" \ -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/user unset GITHUB_TOKENPowerShell 7.1 及以上的等价写法:
$env:GITHUB_TOKEN = Read-Host -MaskInput "Paste token" $withoutToken = Invoke-WebRequest -Uri https://api.github.com/user ` -Headers @{ Accept = "application/vnd.github+json" } ` -SkipHttpErrorCheck $withToken = Invoke-WebRequest -Uri https://api.github.com/user -Headers @{ Authorization = "Bearer $env:GITHUB_TOKEN" Accept = "application/vnd.github+json" } -SkipHttpErrorCheck "No token: $($withoutToken.StatusCode)" "With token: $($withToken.StatusCode)" Remove-Item Env:GITHUB_TOKEN注意两条命令的-SkipHttpErrorCheck都用于把 HTTP 错误码当作正常返回值展示,而非抛出异常中断脚本。
🗺️ 名词与 Agent 全景速记
- CLI(command-line interface):在终端输入文字指令来操作电脑。
- API(application programming interface):让两个程序用固定规则交换数据的入口。
- JSON / YAML:用文本保存结构化数据的两种格式;JSON 常见于 API,YAML 常见于配置文件。
- Git:记录文件版本的工具;commit 是一次带说明的版本快照。
遇到其他不懂的词,先查仓库的术语表;想知道 agent 为什么可能出现在终端、聊天软件或设备上,再看 Agent 全景地图。这两份都不是主练习前的必读内容,按需查阅即可。
🎯 精选学习资源
需要补某一项能力时再找对应入口;不需要把 18 个资源全部读完。下表保留原文档的主题、适用人群、推荐度与备注,原文链接请回到 stages/00-foundations.en.md 中直接访问。
推荐度是学习优先级,不是 GitHub 热门数字。按项目规则,⭐⭐⭐⭐⭐ 代表「不看会卡住」;以下是补充资源,因此诚实使用 ⭐⭐⭐⭐(强烈建议)或 ⭐⭐⭐(扎实参考),不使用虚假五星。
| 主题 | 资源 | 适合谁 | 推荐度 | 为什么推荐 / 备注 |
|---|---|---|---|---|
| Python | Python Crash Course | 想跟着一本书从头练习 | ⭐⭐⭐⭐ | 代码和练习免费;完整教材需购书 |
| Python | Real Python | 学过一点,想查一个主题 | ⭐⭐⭐⭐ | 文章按主题组织,遇到问题时易查找 |
| Python | Corey Schafer YouTube | 喜欢看英文视频 | ⭐⭐⭐ | 用视频从基础语法带到实际应用 |
| Python | Boot.dev | 喜欢边操作边学 | ⭐⭐⭐ | 部分内容免费;完整后端路线需付费 |
| Python | Python 官方繁体中文教程 | 做完第一次练习,想查正确语法 | ⭐⭐⭐⭐ | 官方参考材料;预设你懂一点编程 |
| Git | Pro Git 书籍 | 想完整理解 Git | ⭐⭐⭐⭐ | 免费、完整的官方参考书 |
| Git | Atlassian Git 教程 | 想用图看懂 branch、merge 与做事顺序 | ⭐⭐⭐⭐ | 用图解说明常见工作流程 |
| Git | Pro Git — Undoing Things | Git 操作出错,想安全复原 | ⭐⭐⭐⭐ | 先说明哪些操作会丢数据,再教恢复 |
| Git | git-flight-rules | 基本方法不够,想查更多问题 | ⭐⭐⭐ | 收录较多 Git 问题与处理方式 |
| CLI / Shell | The Art of Command Line | 想有顺序地学命令行 | ⭐⭐⭐⭐ | 从新手指令一路介绍到进阶操作 |
| CLI / Shell | Microsoft Learn — PowerShell | 用 Windows,想从第一步开始 | ⭐⭐⭐⭐ | 微软官方 PowerShell 入门课程 |
| CLI / Shell | tldr pages | 只想先看一个命令怎么用 | ⭐⭐⭐⭐ | 用短小、可复制的例子解释常用命令 |
| REST API | MDN — HTTP | 想知道 API 背后怎么传数据 | ⭐⭐⭐⭐ | Mozilla 维护的 HTTP 参考 |
| REST API | Postman Learning Center | 想用图形界面试 API | ⭐⭐⭐⭐ | 不写代码也能看到送出与收到的数据 |
| REST API | HTTPie | 想从命令行调用 API | ⭐⭐⭐ | 命令通常比原始 curl 写法易读 |
| YAML / JSON | YAML 官网 | 需要查 YAML 的正确写法 | ⭐⭐⭐ | 语法与正式规范的官方入口 |
| YAML / JSON | JSON 介绍 | 第一次接触 JSON | ⭐⭐⭐⭐ | 用短例子说明 JSON 怎么装数据 |
| YAML / JSON | jq | 想从命令行整理 JSON | ⭐⭐⭐⭐ | 可筛选与整理 API 返回的数据 |
学习资源与 GitHub 验证指引查核时间:2026-08-27 UTC(来自原文档的 freshness marker)。
下一步:进入 Stage 1
走完 Stage 0 后,前往Stage 1 — LLM 基础,完成第一次 LLM API 调用,并学习 token、context window 与成本估算。届时你已经拥有的四项基础能力——Python 取数、JSON 解析、终端运行、Git 版本管理——将全部派上用场:Stage 1 的第一次 API 调用就是「用 Python 请求一个接口并解析 JSON 响应」的翻版,只是数据源从 GitHub 换成了模型服务。
仓库中更多可执行的后续范例都位于 examples 目录,每个范例文件夹同时提供 Ollama 本机路径(Path A)与 Anthropic 云端路径(Path B)以及离线测试,方便你在不同预算与隐私偏好下继续练习。
- 教程
- 文档
- AI Agent
- 人工智能
- 大模型
【免费下载链接】awesome-agentic-ai-zh
A trilingual (繁中 / English / 简中) learning roadmap for agentic AI: from LLM basics to multi-agent systems, with 240+ curated resources and hands-on examples. 中文 AI agent 學習地圖。
相关推荐
三步生成 EFI:OpCore-Simplify 黑苹果自动配置完整指南
三步生成 EFI:OpCore Simplify 黑苹果自动配置完整指南 手抄 config.plist、对着 PCI ID 挑驱动、编译 SSDT,黑苹果最劝
开发工具CLIawesome-agentic-ai-zh 实战:Stage 3 练习 1——用一个 `get_weather` 工具走通你的第一次 Function Calling 闭环
awesome agentic ai zh 实战:Stage 3 练习 1——用一个 get_weather 工具走通你的第一次 Function Callin
教程文档AI Agent人工智能大模型awesome-agentic-ai-zh 实战:用 Function Calling 跑通第一个 Agent 工具闭环(get_weather 最小示例)
awesome agentic ai zh 实战:用 Function Calling 跑通第一个 Agent 工具闭环(get_weather 最小示例) 本
教程文档AI Agent人工智能大模型
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考