概念基础

围绕 12 周课程分层补齐概念,理解依赖链条。解释会持久化保存,离开页面不丢失。

各层前置要求

基础 · 工具与心智模型

建立代码阅读的基本图式,矫正对 Agent 工作方式的直觉,掌握变量追踪、控制流识别、API 调用模式

layer0

前置概念

无——这是课程的起点

补漏重点

  • TypeScript 基本语法(变量声明、函数定义、async/await)
  • 命令行基础操作(cd、ls、npm run dev)
  • HTTP 请求的基本概念(GET/POST、JSON body)
  • 代码阅读方法:从「认真看每一行」到「先画骨架再填细节」

理解 · 源码与实战

深入 Agent 各子系统:上下文工程、记忆系统、规划推理、安全护栏、多 Agent 协作、可观测性

layer1

前置概念

Agent 循环工具调用函数调用提示词拼接上下文窗口变量追踪

补漏重点

  • LLM API 调用格式(system prompt vs user message 的区别)
  • JSON Schema 的基本写法
  • PostgreSQL 数据库基础(表、查询、索引)
  • 向量和嵌入(embedding)的基本概念
  • SSE(Server-Sent Events)与 WebSocket 的区别
  • JWT 认证流程(签发→携带→验证)

建造 · 从零搭一个

从零实现最小 Agent 循环,接入 picturebook-kg 现有系统,加日志/质量门禁/retry,综合复盘

layer2

前置概念

Agent 循环函数调用提示词工程ReAct 模式重试退避质量门禁

补漏重点

  • Node.js fetch API 的用法(headers、body、response 处理)
  • Prisma ORM 基本操作(findMany、create、connect)
  • cron 表达式语法(分 时 日 月 周)
  • 指数退避算法(1s→2s→4s→8s + 随机抖动)
  • 如何写系统 README(架构图、启动步骤、已知局限)

概念依赖链(按周展开)

18 个核心概念
代码阅读方法论code_reading

结构化阅读代码的系统方法:先画流程骨架,再标注函数意图,最后追踪数据变化

流程骨架flow_skeleton

忽略细节,用 3-5 步画出代码的主要执行路径

依赖:代码阅读方法论

变量追踪variable_tracing

手动跟踪一个变量从初始化到最终使用的完整生命周期

依赖:代码阅读方法论

函数意图function_intent

不只看函数做了什么,更要理解它为什么存在、在系统中扮演什么角色

依赖:代码阅读方法论

顺序执行sequential_execution

代码按行号从上到下逐行执行,每行完成后进入下一行

条件分支conditional_branch

if/else/switch 根据条件选择不同执行路径

依赖:顺序执行

控制流control_flow

程序中执行顺序的完整路径:顺序→分支→循环→函数调用→返回

依赖:顺序执行条件分支

查询构建器query_builder

通过条件拼接动态生成数据库查询的模式,常见于 ORM 层

依赖:控制流 (含间接依赖:3 个)

212 个核心概念
Agent 循环agent_loop

Agent 的核心工作循环:接收输入→LLM 推理→决策行动→获取结果→判断是否完成→循环或结束

依赖:代码阅读方法论控制流 (含间接依赖:4 个)

感知-推理-行动perceive_reason_act

Agent 三步范式:感知环境状态→推理下一步动作→执行动作并观察结果

依赖:Agent 循环 (含间接依赖:5 个)

LLM 决策llm_decision

LLM 在 Agent 循环中的核心作用:根据上下文决定下一步该做什么

依赖:Agent 循环 (含间接依赖:5 个)

工具路由tool_routing

根据 LLM 的决策结果,将请求分发到对应工具函数执行的机制

依赖:Agent 循环条件分支 (含间接依赖:5 个)

上下文窗口context_window

LLM 一次能「看到」的最大文本量,包括 system prompt + 历史消息 + 用户输入

依赖:Agent 循环 (含间接依赖:5 个)

消息数组message_array

LLM API 的 messages 参数结构:[{role, content}, ...],按顺序拼接为完整上下文

依赖:上下文窗口 (含间接依赖:6 个)

提示词拼接prompt_composition

将 system prompt、历史消息、用户输入按规则拼接成 LLM 可接收的完整 prompt

依赖:上下文窗口消息数组 (含间接依赖:7 个)

Token 限制token_limit

每个 LLM 模型有最大 token 上限,超出会截断或报错,需要管理上下文长度

依赖:上下文窗口 (含间接依赖:6 个)

工具调用tool_use

LLM 不直接执行操作,而是输出「调用工具X(参数Y)」的指令,由宿主程序执行

依赖:Agent 循环 (含间接依赖:5 个)

函数调用function_calling

LLM 的一种特定能力:根据 schema 定义,输出结构化的函数名+参数 JSON

依赖:工具调用 (含间接依赖:6 个)

Schema 定义schema_definition

用 JSON Schema 描述一个函数的名称、参数、类型、描述,供 LLM 理解可调用工具

依赖:函数调用 (含间接依赖:7 个)

触发条件trigger_condition

决定何时让 LLM 调用某个工具的判断逻辑(关键词匹配 / LLM自主判断 / 规则触发)

依赖:函数调用工具路由 (含间接依赖:8 个)

312 个核心概念
Agent 循环agent_loop

Agent 的核心工作循环:接收输入→LLM 推理→决策行动→获取结果→判断是否完成→循环或结束

依赖:代码阅读方法论控制流 (含间接依赖:4 个)

上下文窗口context_window

LLM 一次能「看到」的最大文本量,包括 system prompt + 历史消息 + 用户输入

依赖:Agent 循环 (含间接依赖:5 个)

消息数组message_array

LLM API 的 messages 参数结构:[{role, content}, ...],按顺序拼接为完整上下文

依赖:上下文窗口 (含间接依赖:6 个)

提示词拼接prompt_composition

将 system prompt、历史消息、用户输入按规则拼接成 LLM 可接收的完整 prompt

依赖:上下文窗口消息数组 (含间接依赖:7 个)

系统提示词system_prompt

在对话开始时给 LLM 的持久指令,定义角色、行为边界和输出格式

依赖:提示词拼接 (含间接依赖:8 个)

多阶段提示词multi_stage_prompt

将一个复杂任务拆成多个串行阶段,每阶段的输出作为下一阶段的输入

依赖:系统提示词提示词拼接 (含间接依赖:9 个)

提示词工程prompt_engineering

设计、测试和迭代 prompt 的系统方法论,包含角色设定、few-shot、格式化输出等技巧

依赖:系统提示词多阶段提示词 (含间接依赖:10 个)

历史管理history_management

管理对话历史数组的策略:保留多少轮、何时裁剪、如何保留关键信息不丢失

依赖:消息数组Token 限制 (含间接依赖:8 个)

上下文注入context_injection

在每次 LLM 调用前动态插入相关信息的模式(如检索结果、用户资料、时间戳)

依赖:历史管理 (含间接依赖:9 个)

Agent 规则agent_rules

通过 AGENTS.md / CLAUDE.md / SKILL.md 等引导文件在启动时注入 Agent 行为规则

依赖:系统提示词 (含间接依赖:9 个)

规则注入rule_injection

在 Agent 启动时将预定义的规则文件内容插入 system prompt 的过程

依赖:Agent 规则 (含间接依赖:10 个)

引导文件bootstrap_files

Agent 启动时自动读取的配置文件(如 CLAUDE.md),定义其行为模式和约束

依赖:Agent 规则 (含间接依赖:10 个)

48 个核心概念
记忆类型memory_types

Agent 记忆分为短期(上下文窗口内)、长期(数据库/向量库)、工作记忆(当前任务状态)

依赖:上下文窗口 (含间接依赖:6 个)

审计日志audit_log

记录每一次 LLM 调用的输入输出、时间戳、token 消耗的结构化日志

依赖:记忆类型 (含间接依赖:7 个)

事件日志event_log

记录用户行为事件(点击、搜索、浏览)用于后续分析和个性化推荐

依赖:审计日志 (含间接依赖:8 个)

向量数据库vector_db

将文本转为向量后存储,支持语义相似度搜索(而非关键词匹配)

依赖:记忆类型 (含间接依赖:7 个)

语义搜索semantic_search

根据查询的语义含义(而非字面匹配)检索最相关内容,通常基于向量相似度

依赖:向量数据库 (含间接依赖:8 个)

pgvectorpgvector

PostgreSQL 的向量扩展,允许在 SQL 中直接进行向量存储和相似度查询

依赖:向量数据库 (含间接依赖:8 个)

文件记忆file_based_memory

用人类可读的文件(如 STATUS.md)记录 Agent 或系统的当前状态

依赖:记忆类型 (含间接依赖:7 个)

状态追踪status_tracking

持续记录和更新系统各组件的当前运行状态(健康/异常/维护中)

依赖:文件记忆 (含间接依赖:8 个)

510 个核心概念
Agent 循环agent_loop

Agent 的核心工作循环:接收输入→LLM 推理→决策行动→获取结果→判断是否完成→循环或结束

依赖:代码阅读方法论控制流 (含间接依赖:4 个)

工具调用tool_use

LLM 不直接执行操作,而是输出「调用工具X(参数Y)」的指令,由宿主程序执行

依赖:Agent 循环 (含间接依赖:5 个)

函数调用function_calling

LLM 的一种特定能力:根据 schema 定义,输出结构化的函数名+参数 JSON

依赖:工具调用 (含间接依赖:6 个)

多阶段提示词multi_stage_prompt

将一个复杂任务拆成多个串行阶段,每阶段的输出作为下一阶段的输入

依赖:系统提示词提示词拼接 (含间接依赖:9 个)

ReAct 模式react_pattern

Reasoning + Acting:LLM 交替进行「思考→行动→观察」直到完成任务

依赖:Agent 循环工具调用 (含间接依赖:6 个)

思维链chain_of_thought

让 LLM 在给出最终答案前先输出中间推理步骤,显著提升复杂任务的准确率

依赖:多阶段提示词 (含间接依赖:10 个)

计划生成plan_generation

LLM 在行动前先生成一个多步计划,然后再逐步执行

依赖:ReAct 模式思维链 (含间接依赖:13 个)

决策链decision_chain

Agent 在多轮交互中形成的一系列决策节点,每个节点影响后续走向

依赖:ReAct 模式 (含间接依赖:7 个)

自我反思self_reflection

Agent 在执行后评估自己的输出质量,发现错误时自动修正或重试

依赖:ReAct 模式思维链 (含间接依赖:13 个)

重试退避retry_backoff

API 调用失败时的指数退避重试策略:等 1s→2s→4s→... 直到成功或达到最大次数

依赖:自我反思 (含间接依赖:14 个)

68 个核心概念
认证守卫auth_guard

在每个 API 请求处理前验证用户身份的中间件模式(JWT 验证 / session 检查)

JWTjwt

JSON Web Token:无状态的用户身份凭证,由服务端签发、客户端携带、服务端验证

依赖:认证守卫

护栏guardrails

约束 LLM 输出的规则系统:包括输入过滤、输出校验、敏感词拦截、格式强制

依赖:函数调用 (含间接依赖:7 个)

输出约束output_constraints

限制 LLM 输出必须在预定义范围内(枚举值、正则匹配、类型检查)

依赖:护栏 (含间接依赖:8 个)

枚举校验enum_validation

检查 LLM 输出的标签/分类是否在预定义的合法值集合中

依赖:输出约束 (含间接依赖:9 个)

超时控制timeout

为 LLM API 调用设置最大等待时间,超时后中断请求并返回错误

依赖:Agent 循环 (含间接依赖:5 个)

中断控制器abort_controller

浏览器/Node.js 的 AbortController API,用于取消进行中的 fetch 请求

依赖:超时控制 (含间接依赖:6 个)

速率限制rate_limiting

限制单位时间内的 API 调用次数,防止超出 LLM provider 的并发限制

依赖:超时控制 (含间接依赖:6 个)

710 个核心概念
Agent 循环agent_loop

Agent 的核心工作循环:接收输入→LLM 推理→决策行动→获取结果→判断是否完成→循环或结束

依赖:代码阅读方法论控制流 (含间接依赖:4 个)

工具调用tool_use

LLM 不直接执行操作,而是输出「调用工具X(参数Y)」的指令,由宿主程序执行

依赖:Agent 循环 (含间接依赖:5 个)

系统提示词system_prompt

在对话开始时给 LLM 的持久指令,定义角色、行为边界和输出格式

依赖:提示词拼接 (含间接依赖:8 个)

多 Agent 协作multi_agent

多个 Agent(或 Provider)协同工作,各负责不同子任务,通过消息传递协调

依赖:Agent 循环ReAct 模式 (含间接依赖:7 个)

Provider 路由provider_routing

根据任务类型或成本/性能需求,将请求路由到不同的 LLM Provider

依赖:多 Agent 协作 (含间接依赖:8 个)

Provider 抽象provider_abstraction

封装不同 LLM Provider 的 API 差异,提供统一调用接口的模式

依赖:Provider 路由 (含间接依赖:9 个)

SSE 协议sse_protocol

Server-Sent Events:服务端向客户端单向推送流式数据的 HTTP 协议

依赖:Agent 循环 (含间接依赖:5 个)

流式输出streaming

LLM 逐 token 返回结果而非一次性返回完整响应,提升用户感知速度

依赖:SSE 协议 (含间接依赖:6 个)

子 Agentsubagent

主 Agent 将特定子任务委派给独立的「子 Agent」处理,每个有独立的 prompt 和工具

依赖:多 Agent 协作 (含间接依赖:8 个)

角色隔离role_isolation

每个子 Agent 有独立的 system prompt 和工具集,互不干扰

依赖:子 Agent系统提示词 (含间接依赖:13 个)

89 个核心概念
审计日志audit_log

记录每一次 LLM 调用的输入输出、时间戳、token 消耗的结构化日志

依赖:记忆类型 (含间接依赖:7 个)

状态追踪status_tracking

持续记录和更新系统各组件的当前运行状态(健康/异常/维护中)

依赖:文件记忆 (含间接依赖:8 个)

可观测性observability

通过日志、指标和链路追踪了解系统内部运行状态的能力

依赖:审计日志事件日志 (含间接依赖:9 个)

审计追踪audit_trail

记录每一次操作的时间、执行者、输入输出,形成可回溯的完整操作链

依赖:可观测性 (含间接依赖:10 个)

全链路追踪full_trace

从用户请求到最终响应的完整调用链路可视化,包含每个环节的耗时和状态

依赖:审计追踪 (含间接依赖:11 个)

质量门禁quality_gate

在 LLM 输出进入下一步前进行质量检查(置信度、格式、业务规则),不达标则拦截或重试

依赖:思维链 (含间接依赖:11 个)

置信度阈值confidence_threshold

设定最低置信度分数,低于此值的 LLM 输出将被标记为不确定并触发人工审核或重试

依赖:质量门禁 (含间接依赖:12 个)

Coordinator 模式coordinator

中央协调器管理多个子进程/服务的启动、健康检查和故障恢复

依赖:Agent 循环 (含间接依赖:5 个)

健康检查health_check

定期探测各组件是否正常运行(HTTP /ping、进程存活、端口监听)

依赖:Coordinator 模式状态追踪 (含间接依赖:10 个)

95 个核心概念
Agent 循环agent_loop

Agent 的核心工作循环:接收输入→LLM 推理→决策行动→获取结果→判断是否完成→循环或结束

依赖:代码阅读方法论控制流 (含间接依赖:4 个)

Fetch 调用 LLMfetch_llm

用最基础的 fetch() 向 LLM API 发送请求并获取回复,理解原始 HTTP 交互

依赖:Agent 循环 (含间接依赖:5 个)

工具分支tool_branch

在 Agent 循环中用 if/else 判断 LLM 是否要求调用工具,是则执行工具否则返回文本

依赖:函数调用工具路由 (含间接依赖:8 个)

多轮对话multi_turn

Agent 与 LLM 的多轮交互,每轮基于前一轮的结果决定下一步,直到任务完成

依赖:Agent 循环ReAct 模式 (含间接依赖:7 个)

终止条件termination_condition

判断 Agent 循环何时结束的规则:LLM 返回 finish_reason=stop / 达到最大轮次 / 任务完成标记

依赖:多轮对话 (含间接依赖:8 个)

106 个核心概念
SSE 协议sse_protocol

Server-Sent Events:服务端向客户端单向推送流式数据的 HTTP 协议

依赖:Agent 循环 (含间接依赖:5 个)

流式输出streaming

LLM 逐 token 返回结果而非一次性返回完整响应,提升用户感知速度

依赖:SSE 协议 (含间接依赖:6 个)

Prisma 查询prisma_query

使用 Prisma ORM 的 findMany/findUnique/create 等方法进行类型安全的数据库操作

模板复用template_reuse

不重新写 prompt,而是直接引入和使用已有项目的 prompt 模板

依赖:提示词工程 (含间接依赖:11 个)

定时任务scheduled_job

用 cron 表达式配置周期性自动执行的任务,让 Agent 在无人干预时自主运行

流式输出到前端streaming_output

将 Agent 的流式结果通过 SSE 实时推送到前端页面展示

依赖:流式输出SSE 协议 (含间接依赖:7 个)

116 个核心概念
自我反思self_reflection

Agent 在执行后评估自己的输出质量,发现错误时自动修正或重试

依赖:ReAct 模式思维链 (含间接依赖:13 个)

重试退避retry_backoff

API 调用失败时的指数退避重试策略:等 1s→2s→4s→... 直到成功或达到最大次数

依赖:自我反思 (含间接依赖:14 个)

质量门禁quality_gate

在 LLM 输出进入下一步前进行质量检查(置信度、格式、业务规则),不达标则拦截或重试

依赖:思维链 (含间接依赖:11 个)

退避策略backoff_strategy

指数退避 + 随机抖动的重试策略,避免所有重试请求同时发出造成雪崩

依赖:重试退避 (含间接依赖:15 个)

边界测试edge_case_test

系统性地测试 Agent 在极端输入(空值、超长文本、异常格式)下的行为

依赖:质量门禁 (含间接依赖:12 个)

自愈能力self_healing

Agent 在遇到错误时自动检测→重试→降级→恢复的完整闭环

依赖:退避策略质量门禁自我反思 (含间接依赖:17 个)

123 个核心概念
架构回顾architecture_review

系统性地梳理整个 Agent 系统的组件、数据流和设计决策

依赖:Agent 循环提示词工程记忆类型ReAct 模式护栏多 Agent 协作可观测性 (含间接依赖:20 个)

完整系统视图full_system

端到端理解 Agent 系统:从用户请求到 LLM 调用到工具执行到结果返回的完整路径

依赖:架构回顾 (含间接依赖:21 个)

系统设计system_design

独立设计一个 Agent 系统的能力:定义目标→选择工具→画架构图→实现

依赖:完整系统视图 (含间接依赖:22 个)

概念补漏助手

遇到不理解的概念?描述你的困惑,AI 给出有洞见的解释。

当前层级: