核心项目:个人全能知识助手(Personal AI Brain)
项目目标:构建一个能读取你的文档、回答问题、帮你搜索资料,甚至帮你自动处理 GitHub 问题的 AI 助手。 技术栈:Node.js / TypeScript + Next.js / Express
阶段一:从零开始,让 AI 跑起来(第 1-2 周)
目标:跑通大模型的基础调用,理解流式输出(Streaming)和基础交互。
引入的最流行库:Vercel AI SDK (ai + @ai-sdk/anthropic 或 @ai-sdk/openai)
📌 必须掌握的 3 个核心知识点
- System Prompt 与 Role 设定:理解
system,user,assistant三种角色的区别,以及如何通过 System Prompt 约束 AI 的行为和输出格式。 - Streaming(流式输出)机制:理解大模型是一个词一个词吐出来的(Token by Token),掌握如何在 Node.js 中处理 ReadableStream,并在前端实时渲染。
- Context Window 与 History 管理:大模型没有记忆,理解每次请求必须把之前的对话历史(History Array)全部带上,以及如何计算和控制 Token 消耗。
⚔️ 实战任务:带记忆的命令行翻译官
要求:
- 使用 Vercel AI SDK 的
streamText写一个 Node.js 命令行脚本。 - 设定 System Prompt 让它扮演一个“毒舌翻译官”,不仅翻译英文,还要嘲讽你的中式英语。
- 验收标准:你连续输入三句话,它在翻译第三句话时,能记得你第一句话说了什么,并且输出是像打字机一样流畅弹出的。
阶段二:给 AI 注入灵魂,实现 RAG(第 3-4 周)
目标:解决 AI 瞎编(幻觉)的问题,让它能基于你的私人数据(如 Markdown 笔记、PDF)回答问题。 引入的最流行库:LangChain.js (文档处理) + Qdrant JS SDK (向量数据库)
📌 必须掌握的 4 个核心知识点
- Embeddings(词嵌入)原理:理解如何将一段文本变成一个多维浮点数数组,以及“余弦相似度”是如何衡量两段文本相关性的。
- Chunking(文本分块)策略:知道为什么不能把整本书塞给 AI,掌握如何根据标点符号或固定长度对长文档进行合理的切分(Text Splitters)。
- Vector Database(向量数据库)操作:掌握 Qdrant 或 Pinecone 的基本 CRUD 操作,理解 Index 的概念。
- RAG(检索增强生成)标准管道:深刻理解
Load -> Split -> Embed -> Store -> Retrieve -> Generate这一完整数据流。
⚔️ 实战任务:“我的简历我做主”问答机器人
要求:
- 准备一份你自己的长篇 PDF 简历或个人经历 Markdown 文件。
- 编写脚本,用 LangChain.js 读取它,切块并生成 Embeddings,存入本地运行的 Qdrant 数据库(Docker 运行)。
- 修改阶段一的聊天脚本,在调用 AI 前,先拿着用户的提问去 Qdrant 里搜索最相关的 3 个文本块,将其作为上下文(Context)塞进 Prompt 里。
- 验收标准:问它“我的上一份工作是做什么的?”,它能准确提取你简历里的信息回答,而不是瞎编。
阶段三:赋予 AI 手脚,掌握 Function Calling(第 5-6 周)
目标:让 AI 不仅仅是“说话”,而是能“做事”。
引入的最流行库:Mastra (TypeScript Agent 框架) 或继续深挖 Vercel AI SDK 的 tool 功能。
📌 必须掌握的 3 个核心知识点
- JSON Schema 与 Zod 校验:理解大模型是如何通过阅读 JSON Schema 来理解一个工具的用途和参数的,掌握使用 Zod 强类型定义工具输入。
- Function Calling(工具调用)生命周期:理解 AI 返回的不是文本而是“调用指令”,你需要用代码执行这个指令,并把执行结果(Tool Result)再发给 AI,它才会生成最终回答。
- 并行工具调用(Parallel Tool Calls):理解 AI 如何一次性决定调用多个工具(例如同时查询北京和上海的天气),以及如何处理多工具返回。
⚔️ 实战任务:GitHub 仓库小管家
要求:
- 注册一个 GitHub 个人访问令牌(PAT)。
- 定义两个工具(Tools):
getRepoStars(获取仓库 Star 数) 和listRecentIssues(获取最近的 5 个 Issue)。 - 将这两个工具绑定到大模型上。
- 验收标准:你在命令行输入“帮我看看 vercel/ai 和 mastra-ai/mastra 哪个 Star 多?顺便告诉我 vercel/ai 最近有哪些 Issue”,AI 能自主决定调用相应的工具,拿到数据后给你一个完整的自然语言总结。
阶段四:拥抱前沿,接入 MCP 协议(第 7-8 周)
目标:理解标准化协议,让你的 AI 助手能无缝接入各种外部数据源,而不需要你手写无数个 API 接口。 引入的最流行库:MCP TypeScript SDK
📌 必须掌握的 3 个核心知识点
- MCP 架构理念:理解 Client(你的应用)和 Server(数据源/工具提供者)是如何通过标准协议解耦的。
- MCP 的三大核心能力:Resources(静态数据读取)、Prompts(动态模板)、Tools(执行动作)。
- Stdio 与 SSE 传输层:理解 MCP Server 是如何通过标准输入输出(本地进程)或 Server-Sent Events(远程服务)与 Client 通信的。
⚔️ 实战任务:无需写接口的本地数据库分析师
要求:
- 找一个官方或社区提供的 SQLite MCP Server(例如官方提供的
sqliteserver)。 - 准备一个包含一些测试数据(比如你的记账记录)的本地 SQLite 数据库文件。
- 使用 MCP Client SDK 在你的代码中连接这个 SQLite MCP Server。
- 让 AI 通过 MCP 协议直接查询这个数据库。
- 验收标准:你没有手写任何一行查数据库的 SQL 逻辑,仅通过配置 MCP,就能问 AI“我上个月在餐饮上花了多少钱?”,AI 通过 MCP 自动执行 SQL 并告诉你答案。
阶段五:终极挑战,构建多步骤 Agent 工作流(第 9-10 周)
目标:处理复杂的、需要多步推理、分支判断和容错的长线任务。 引入的最流行库:LangGraph.js
📌 必须掌握的 4 个核心知识点
- State Management(状态管理):理解在复杂流程中,如何在多个节点之间传递和更新一个全局的 State 对象。
- Graph Nodes & Edges(图的节点与边):掌握如何将一个大任务拆分成多个小函数(Nodes),并用条件逻辑(Edges)把它们连起来。
- Cyclic Workflows(循环工作流)与自我纠错:理解 Agent 如何通过循环来检查自己的工作,如果不合格就打回去重做,直到满足条件。
- Human-in-the-loop(人在回路):掌握如何在一个流程执行到关键步骤(如发送邮件、提交代码)时暂停(Interrupt),等待人类点击确认后再继续。
⚔️ 实战任务:自动化技术调研研究员
要求:
- 使用 LangGraph.js 定义一个状态机。包含以下节点:
- 规划节点:根据你的输入,生成 3 个 Google 搜索关键词。
- 执行节点:调用搜索工具获取网页内容。
- 审查节点:另一个 LLM 检查内容是否足够写报告。如果不够,流转回执行节点;如果够,流转到总结节点。
- 总结节点:生成 Markdown 报告。
- 在生成报告前加入 Human-in-the-loop。
- 验收标准:输入“调研 2026 年前端框架趋势”,你能看到终端里打印出它规划、搜索、自我反思的循环过程。最后流程暂停,提示“报告已草拟,是否允许保存到本地?”,你输入
yes后,本地生成一份排版精美的 Markdown 报告。
总结与建议
不要急于求成。AI 开发的难点不在于框架的 API 怎么调用,而在于**“理解大模型是如何思考和交互的”**。 通过这 5 个实战任务,你将遇到大模型不听话、输出格式错乱、工具调用失败等各种真实场景,解决这些问题的过程,就是你成为资深 AI 开发者的过程。