{
  "name": "AI 脉络",
  "description": "中文 AI 工程决策与反黑话手册",
  "generated_at": "2026-09-04T09:50:48.817Z",
  "count": 16,
  "terms": [
    {
      "title": "Agent",
      "slug": "agent",
      "aliases": [
        "智能体",
        "AI Agent"
      ],
      "category": "Agent 工程",
      "level": "入门",
      "status": "verified",
      "trend": "当前热门",
      "last_verified": "2026-09-04",
      "summary": "能自己决定下一步行动、选择工具，并根据结果继续调整，直到完成目标或请求人类介入的 AI 系统。",
      "analogy": "像一位拿到目标和工具箱的同事：你说明结果，它自己决定先查资料、再操作，还是回来问你。",
      "solves": [
        "开放式任务中无法预先写死每一步的问题",
        "需要根据中间结果动态调整行动的问题"
      ],
      "boundaries": [
        "Agent 不是有聊天界面的模型",
        "能调用一次工具也不等于具备持续决策能力"
      ],
      "use_when": [
        "任务路径会随环境变化",
        "工具返回结果决定下一步",
        "可以接受更高延迟与成本"
      ],
      "avoid_when": [
        "流程固定且可枚举",
        "错误代价高又缺少审批与回滚",
        "普通代码可以稳定解决"
      ],
      "pitfalls": [
        "给了过宽权限却没有确认点",
        "没有终止条件导致循环",
        "只看演示成功而没有评测长尾失败"
      ],
      "related": [
        "workflow",
        "tool-calling",
        "context-engineering",
        "evaluation",
        "guardrail"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "Anthropic · Building effective agents",
          "url": "https://www.anthropic.com/engineering/building-effective-agents"
        },
        {
          "name": "Anthropic · Trustworthy agents in practice",
          "url": "https://www.anthropic.com/research/trustworthy-agents"
        }
      ],
      "body": "## 工作方式\n\n典型 Agent 运行在“观察 → 判断 → 行动 → 再观察”的循环里。模型不是只生成一次答案，而是会读取工具结果、检查进展并决定下一步。\n\n## 最小判断\n\n如果你能在编码前画出稳定完整的流程图，优先做 Workflow；只有关键步骤确实需要模型临场选择时，再引入 Agent。\n\n## 失败从哪里来\n\nAgent 会把模型的不确定性放大到真实操作中。可靠性依赖权限边界、可观测性、预算、重试、审批和回滚，不只依赖模型能力。"
    },
    {
      "title": "Context Engineering",
      "slug": "context-engineering",
      "aliases": [
        "上下文工程"
      ],
      "category": "应用架构",
      "level": "进阶",
      "status": "verified",
      "trend": "当前热门",
      "last_verified": "2026-09-04",
      "summary": "设计模型每次推理时实际看到的信息组合，包括指令、资料、工具、历史、记忆和中间状态。",
      "analogy": "像为同事准备一张干净的工作台：不是把所有东西都堆上去，而是在正确时刻放上完成当前步骤所需的材料。",
      "solves": [
        "有限上下文里的信息取舍",
        "多轮与 Agent 任务中的状态组织"
      ],
      "boundaries": [
        "它不只是把 Prompt 写长",
        "更多上下文不必然带来更好结果"
      ],
      "use_when": [
        "系统有多类动态信息",
        "Agent 运行多步并需要保持关键状态"
      ],
      "avoid_when": [
        "单次简单任务已能用短提示稳定完成"
      ],
      "pitfalls": [
        "上下文无限增长",
        "不区分可信指令与外部内容",
        "把无关历史反复带入"
      ],
      "related": [
        "prompt-engineering",
        "rag",
        "long-context",
        "agent",
        "memory"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "Anthropic · Building effective agents",
          "url": "https://www.anthropic.com/engineering/building-effective-agents"
        }
      ],
      "body": "## 设计目标\n\n好的上下文不是最多，而是对当前决策足够、相关、可信并且可追踪。常用手段包括检索、压缩、摘要、分层记忆和按需加载工具说明。"
    },
    {
      "title": "Embedding",
      "slug": "embedding",
      "aliases": [
        "嵌入",
        "向量表示"
      ],
      "category": "检索",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "把文本、图像等内容转换成一串数字，使语义相近的内容在向量空间中更接近的表示方法。",
      "analogy": "像给每段内容一个“含义坐标”：谈论相近事情的文本会落在地图上相近的位置。",
      "solves": [
        "按语义而非字面匹配内容",
        "为聚类、推荐和向量检索提供数值表示"
      ],
      "boundaries": [
        "Embedding 会压缩并丢失信息",
        "距离近不保证事实相关或答案正确"
      ],
      "use_when": [
        "用户与文档用词不完全相同",
        "需要从大量非结构化内容召回候选"
      ],
      "avoid_when": [
        "必须精确匹配编号姓名或符号",
        "关系可用结构化查询清楚表达"
      ],
      "pitfalls": [
        "混用不同模型生成的向量",
        "不更新已修改文档",
        "只看相似度不评测召回"
      ],
      "related": [
        "vector-search",
        "rag"
      ],
      "prerequisites": [],
      "sources": [
        {
          "name": "Google · Machine Learning Glossary — Embeddings",
          "url": "https://developers.google.com/machine-learning/glossary#embeddings"
        }
      ],
      "body": "## 不是知识本身\n\n向量是为相似度计算服务的压缩表示。它适合帮助系统“先找到可能相关的内容”，不适合作为可直接解释或精确还原的事实存储。"
    },
    {
      "title": "Evaluation",
      "slug": "evaluation",
      "aliases": [
        "Eval",
        "评测"
      ],
      "category": "评测与安全",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "用代表性样本、明确标准和可重复流程，判断 AI 系统在目标任务上是否足够好以及改动是否真的有帮助。",
      "analogy": "像驾照考试：不是问车看起来多先进，而是在规定场景和标准下检查它是否能安全完成任务。",
      "solves": [
        "把主观感觉变成可比较证据",
        "防止优化一处却破坏另一处",
        "监控上线后的质量变化"
      ],
      "boundaries": [
        "单一公开榜单不能替代业务评测",
        "LLM 评分也需要校准和抽查"
      ],
      "use_when": [
        "任何准备上线或迭代的 AI 功能",
        "需要比较模型、提示、检索或架构"
      ],
      "avoid_when": [
        "没有明确任务与成功标准时不应伪造一个总分"
      ],
      "pitfalls": [
        "测试集与真实流量不一致",
        "指标与用户价值脱节",
        "反复调参污染测试集"
      ],
      "related": [
        "llm",
        "agent",
        "guardrail",
        "fine-tuning"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "OpenAI · Evaluation best practices",
          "url": "https://platform.openai.com/docs/guides/evaluation-best-practices"
        }
      ],
      "body": "## 从错误分类开始\n\n先收集真实案例并给失败分类，再决定自动指标、人工评审和模型评审如何组合。一个平均分很难告诉你该修检索、提示、工具还是产品流程。"
    },
    {
      "title": "Fine-tuning",
      "slug": "fine-tuning",
      "aliases": [
        "微调",
        "Fine-tune"
      ],
      "category": "基础模型",
      "level": "进阶",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "用特定任务或领域的数据继续训练已有模型，使其更稳定地表现出目标行为、格式或能力。",
      "analogy": "像给已有广泛基础的员工做专项训练：改变的是做事习惯与能力，不是每天塞给他一摞最新资料。",
      "solves": [
        "稳定特定输出风格或格式",
        "提升重复任务表现",
        "压缩复杂提示中的行为示例"
      ],
      "boundaries": [
        "微调不适合注入频繁变化的事实",
        "它不自动消除幻觉"
      ],
      "use_when": [
        "已有明确评测和高质量示例",
        "提示方法已到瓶颈",
        "任务模式稳定且量足够"
      ],
      "avoid_when": [
        "目标只是接入最新资料",
        "需求仍在快速变化",
        "没有基准集判断是否变好"
      ],
      "pitfalls": [
        "训练数据代表性差",
        "只看训练指标不看真实任务",
        "忘记评估基础能力退化"
      ],
      "related": [
        "rag",
        "llm",
        "evaluation",
        "prompt-engineering"
      ],
      "prerequisites": [
        "llm",
        "evaluation"
      ],
      "sources": [
        {
          "name": "OpenAI · Model optimization",
          "url": "https://platform.openai.com/docs/guides/model-optimization"
        }
      ],
      "body": "## 先从评测开始\n\n没有评测集，就无法知道微调是在提升真实能力，还是只记住样例。通常先做提示、检索和结构化输出，确认瓶颈后再微调。"
    },
    {
      "title": "Guardrail",
      "slug": "guardrail",
      "aliases": [
        "护栏",
        "安全护栏"
      ],
      "category": "评测与安全",
      "level": "进阶",
      "status": "verified",
      "trend": "当前热门",
      "last_verified": "2026-09-04",
      "summary": "在 AI 系统输入、推理过程或输出周围设置的规则、检测和控制，用来降低不允许行为与错误操作的风险。",
      "analogy": "像山路护栏：它能降低冲出边界的概率，但不能让驾驶员永远不犯错，也不能替代刹车和道路设计。",
      "solves": [
        "拦截明显违规输入输出",
        "限制高风险操作",
        "为异常提供升级或人工审核路径"
      ],
      "boundaries": [
        "Guardrail 不是绝对安全保证",
        "文本检测不能替代真正的系统权限隔离"
      ],
      "use_when": [
        "系统会处理敏感内容或执行动作",
        "需要把政策落实为可检查控制"
      ],
      "avoid_when": [
        "用自然语言规则替代操作系统或数据库权限"
      ],
      "pitfalls": [
        "只在输出末端检测",
        "误报导致产品不可用",
        "没有针对绕过方式持续测试"
      ],
      "related": [
        "agent",
        "tool-calling",
        "evaluation"
      ],
      "prerequisites": [
        "llm",
        "evaluation"
      ],
      "sources": [
        {
          "name": "Anthropic · Trustworthy agents in practice",
          "url": "https://www.anthropic.com/research/trustworthy-agents"
        },
        {
          "name": "MCP · Architecture security boundaries",
          "url": "https://modelcontextprotocol.io/specification/2025-06-18/architecture"
        }
      ],
      "body": "## 分层控制\n\n可靠系统通常同时使用输入检查、工具白名单、最小权限、参数验证、人工确认、沙箱、输出审查和审计日志。任何单层都可能被绕过或误判。"
    },
    {
      "title": "Knowledge Base",
      "slug": "knowledge-base",
      "aliases": [
        "知识库"
      ],
      "category": "检索",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "被组织、维护并可检索的外部事实与资料集合，常作为 RAG 的内容来源。",
      "analogy": "像图书馆：它保存和编目资料，但不会自动理解你的问题，也不会替你完成回答。",
      "solves": [
        "集中维护组织知识",
        "为检索和问答提供可治理的信息源"
      ],
      "boundaries": [
        "知识库不是模型记忆",
        "向量数据库只是可能的存储与检索组件"
      ],
      "use_when": [
        "资料需要持续更新与审计",
        "多个应用共享同一事实来源"
      ],
      "avoid_when": [
        "信息极少且稳定",
        "没有维护责任人"
      ],
      "pitfalls": [
        "垃圾资料入库后期待模型纠正",
        "缺少权限过滤",
        "不记录版本和来源"
      ],
      "related": [
        "rag",
        "vector-search",
        "memory"
      ],
      "prerequisites": [],
      "sources": [
        {
          "name": "Google · Machine Learning Glossary",
          "url": "https://developers.google.com/machine-learning/glossary"
        }
      ],
      "body": "## 质量比规模重要\n\n有效知识库需要来源、更新时间、访问控制、去重和失效策略。检索系统只能在现有资料上工作，不能把过期或矛盾内容自动变成真相。"
    },
    {
      "title": "LLM",
      "slug": "llm",
      "aliases": [
        "大语言模型",
        "Large Language Model"
      ],
      "category": "基础模型",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "在大量文本与代码上训练、根据已有上下文预测后续 token，并由此生成或理解语言的模型。",
      "analogy": "像读过大量材料的续写引擎：它非常擅长延续合理模式，但“听起来合理”不自动等于事实正确。",
      "solves": [
        "自然语言理解与生成",
        "从示例和指令中完成多种文本任务"
      ],
      "boundaries": [
        "LLM 不是数据库或搜索引擎",
        "生成概率高的文本不代表在检索事实"
      ],
      "use_when": [
        "输入输出难以用固定规则穷举",
        "任务可通过语言描述并允许概率性结果"
      ],
      "avoid_when": [
        "必须精确计算",
        "规则简单确定",
        "结果无法校验且错误代价极高"
      ],
      "pitfalls": [
        "把流畅当准确",
        "忽略上下文窗口和成本",
        "没有针对真实输入做评测"
      ],
      "related": [
        "prompt-engineering",
        "context-engineering",
        "rag",
        "evaluation"
      ],
      "prerequisites": [],
      "sources": [
        {
          "name": "Google · Machine Learning Glossary",
          "url": "https://developers.google.com/machine-learning/glossary"
        }
      ],
      "body": "## 关键直觉\n\nLLM 的基础任务是预测下一个 token。聊天、摘要、代码生成等能力都建立在这个训练目标和后续对齐之上。\n\n## 工程上的含义\n\n相同输入可能产生不同结果。上线前需要定义质量标准、收集真实样本并持续评测，而不是只挑几个顺利案例。"
    },
    {
      "title": "Long Context",
      "slug": "long-context",
      "aliases": [
        "长上下文",
        "长上下文窗口"
      ],
      "category": "基础模型",
      "level": "入门",
      "status": "verified",
      "trend": "当前热门",
      "last_verified": "2026-09-04",
      "summary": "模型在一次请求里能接收和处理较大量 token 的能力，用来同时阅读长文档、代码库或长对话。",
      "analogy": "像把更多资料一次摊在更大的桌面上；桌面变大不代表每一页都能被同样认真地看见。",
      "solves": [
        "减少长材料的预切分",
        "保留跨段落或跨文件关系"
      ],
      "boundaries": [
        "标称窗口大小不等于所有位置的信息都能稳定召回",
        "更长输入会增加成本与延迟"
      ],
      "use_when": [
        "资料规模可控并且整体关系重要",
        "需要快速原型或处理单个长文档"
      ],
      "avoid_when": [
        "语料库持续增长",
        "只需要少量局部事实",
        "每次重复发送大量相同内容"
      ],
      "pitfalls": [
        "把能放进去误当能准确用到",
        "缺少长上下文专用评测",
        "忽略输入成本"
      ],
      "related": [
        "rag",
        "context-engineering",
        "llm"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "Google · Machine Learning Glossary",
          "url": "https://developers.google.com/machine-learning/glossary"
        }
      ],
      "body": "## 和 RAG 的关系\n\n两者不是非此即彼。常见系统先检索出一组较长材料，再利用长上下文综合它们；选择取决于数据规模、更新频率、成本和可追溯要求。"
    },
    {
      "title": "MCP",
      "slug": "mcp",
      "aliases": [
        "Model Context Protocol",
        "模型上下文协议"
      ],
      "category": "Agent 工程",
      "level": "入门",
      "status": "verified",
      "trend": "快速演变",
      "last_verified": "2026-09-04",
      "summary": "一套让 AI 应用以统一方式连接外部工具、资源和提示的开放协议，规定主机、客户端与服务器如何通信。",
      "analogy": "像 AI 应用的通用接口规范：接入方不必为每个工具重新发明连接方式，但具体能力仍由服务器提供。",
      "solves": [
        "降低 AI 应用与外部系统的重复集成成本",
        "让能力可以被多个兼容客户端复用"
      ],
      "boundaries": [
        "MCP 本身不是 Agent",
        "协议不会自动保证工具安全可靠",
        "它不等同于一次函数调用"
      ],
      "use_when": [
        "能力需要被多个 AI 客户端复用",
        "需要标准化能力发现和会话通信"
      ],
      "avoid_when": [
        "只有一个简单且封闭的内部调用",
        "协议成本高于复用价值"
      ],
      "pitfalls": [
        "把服务器声明的内容当作可信",
        "权限范围过宽",
        "忽略协议版本与能力协商"
      ],
      "related": [
        "tool-calling",
        "agent",
        "guardrail"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "MCP · Architecture",
          "url": "https://modelcontextprotocol.io/specification/2025-06-18/architecture"
        },
        {
          "name": "MCP · Server features",
          "url": "https://modelcontextprotocol.io/specification/2025-06-18/server/index"
        }
      ],
      "body": "## 三个角色\n\nHost 是承载 AI 的应用；每个 Client 维护到特定 Server 的连接；Server 暴露资源、提示和工具。安全边界与用户授权主要由 Host 负责。\n\n## 变化很快\n\nMCP 规范持续演进，接入时应固定并记录协议版本。本文把“稳定理解”和“具体版本能力”分开，避免把某次实现当成永久定义。"
    },
    {
      "title": "Memory",
      "slug": "memory",
      "aliases": [
        "Agent Memory",
        "智能体记忆"
      ],
      "category": "Agent 工程",
      "level": "进阶",
      "status": "researching",
      "trend": "存在争议",
      "last_verified": "2026-09-04",
      "summary": "AI 系统跨步骤或跨会话保存并重新使用用户偏好、经历、状态或总结的一组机制。",
      "analogy": "像工作日志与便签：记录对以后有用的经历，不等于把整个资料库背在脑子里。",
      "solves": [
        "跨会话个性化",
        "长任务中保留进展与经验"
      ],
      "boundaries": [
        "Memory 没有统一工程定义",
        "它和知识库、聊天历史、模型参数都不同"
      ],
      "use_when": [
        "后续任务确实依赖过去经历",
        "用户可以查看纠正或删除记录"
      ],
      "avoid_when": [
        "信息只是本轮临时状态",
        "无法说明保存目的和期限",
        "隐私风险高"
      ],
      "pitfalls": [
        "什么都记导致噪声和隐私风险",
        "错误总结长期传播",
        "召回内容没有来源和时间"
      ],
      "related": [
        "knowledge-base",
        "context-engineering",
        "agent"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "Anthropic · Building effective agents",
          "url": "https://www.anthropic.com/engineering/building-effective-agents"
        }
      ],
      "body": "## 先定义你说的记忆\n\n团队讨论 Memory 时，应明确是短期工作状态、长期用户偏好、历史摘要，还是可检索经验。不同类型的生命周期、权限和评测方法完全不同。"
    },
    {
      "title": "Prompt Engineering",
      "slug": "prompt-engineering",
      "aliases": [
        "提示工程"
      ],
      "category": "应用架构",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "设计和迭代模型指令、示例与输出要求，让模型在指定任务上更稳定地产生所需结果。",
      "analogy": "像把任务说明写清楚：目标、边界、示例和验收标准越明确，返工越少。",
      "solves": [
        "澄清任务与输出要求",
        "用少量示例引导行为",
        "快速迭代模型表现"
      ],
      "boundaries": [
        "提示无法补回缺失事实或工具",
        "再长的提示也不能替代评测和系统设计"
      ],
      "use_when": [
        "任务能通过说明和示例改善",
        "需要低成本快速迭代"
      ],
      "avoid_when": [
        "问题来自检索数据或权限",
        "逻辑应由确定性代码保证"
      ],
      "pitfalls": [
        "堆砌万能咒语",
        "只用顺利样例调试",
        "系统提示无限膨胀"
      ],
      "related": [
        "context-engineering",
        "llm",
        "evaluation",
        "fine-tuning"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "OpenAI · Prompt engineering",
          "url": "https://platform.openai.com/docs/guides/prompt-engineering"
        }
      ],
      "body": "## 提示只是上下文的一部分\n\n生产系统还需要选择资料、工具、历史、记忆和输出约束。Prompt Engineering 聚焦“怎么表达任务”，Context Engineering 关注“模型此刻看到的整套信息”。"
    },
    {
      "title": "RAG",
      "slug": "rag",
      "aliases": [
        "检索增强生成",
        "Retrieval-Augmented Generation"
      ],
      "category": "检索",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "回答前先从外部资料中检索相关片段，再把它们作为上下文交给模型生成答案的方法。",
      "analogy": "像开卷考试：模型不用凭记忆硬答，而是先翻到可能相关的页，再根据找到的材料作答。",
      "solves": [
        "让回答基于私有或最新资料",
        "为答案提供可追溯来源",
        "减少对训练记忆的依赖"
      ],
      "boundaries": [
        "RAG 不保证资料正确",
        "检索到材料也不保证模型正确引用",
        "它不是训练模型"
      ],
      "use_when": [
        "知识频繁更新",
        "内容来自企业或个人资料库",
        "需要引用来源"
      ],
      "avoid_when": [
        "资料很少且可直接放进上下文",
        "任务主要改变输出风格或行为",
        "问题不依赖外部知识"
      ],
      "pitfalls": [
        "只优化向量库忽略数据清洗",
        "切块破坏语义",
        "没有分别评测检索和生成"
      ],
      "related": [
        "embedding",
        "vector-search",
        "long-context",
        "fine-tuning",
        "knowledge-base"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "Google · Machine Learning Glossary — RAG",
          "url": "https://developers.google.com/machine-learning/glossary#retrieval-augmented-generation"
        },
        {
          "name": "Lewis et al. · Retrieval-Augmented Generation",
          "url": "https://arxiv.org/abs/2005.11401"
        }
      ],
      "body": "## 基本流程\n\n系统把问题转换成检索请求，从知识库召回候选片段，必要时重排，然后将精选上下文与问题一起交给模型。\n\n## 先判断瓶颈\n\n回答错误时先检查“正确资料有没有被检索到”。如果没有，是检索问题；如果有但答错，才主要是生成和提示问题。"
    },
    {
      "title": "Tool Calling",
      "slug": "tool-calling",
      "aliases": [
        "工具调用",
        "Function Calling"
      ],
      "category": "Agent 工程",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "模型根据工具描述生成结构化调用请求，再由应用执行真实函数并把结果返回给模型的机制。",
      "analogy": "像模型填写一张操作申请单：它负责选择工具和参数，真正执行的人仍是你的应用代码。",
      "solves": [
        "让模型安全地请求确定性能力",
        "将自然语言意图转换为结构化参数"
      ],
      "boundaries": [
        "模型不会直接执行函数",
        "结构正确不代表参数合理或操作获授权"
      ],
      "use_when": [
        "模型需要查询外部数据或执行动作",
        "参数能用明确 schema 表达"
      ],
      "avoid_when": [
        "普通代码已知道该调用什么",
        "目标无法形成清晰工具契约"
      ],
      "pitfalls": [
        "工具说明模糊",
        "未验证参数",
        "把高风险动作交给模型自动执行"
      ],
      "related": [
        "mcp",
        "agent",
        "guardrail"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "OpenAI · Function calling",
          "url": "https://platform.openai.com/docs/guides/function-calling"
        }
      ],
      "body": "## 一次完整调用\n\n应用把可用工具及参数结构发给模型；模型返回工具名与参数；应用验证权限和参数后执行；结果再回到模型，用于生成答复或继续行动。"
    },
    {
      "title": "Vector Search",
      "slug": "vector-search",
      "aliases": [
        "向量检索",
        "语义检索"
      ],
      "category": "检索",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "将查询转换为向量，并按距离从已有向量中找出语义最相近内容的检索方法。",
      "analogy": "像在“含义地图”上寻找最近的邻居，而不是只找出现了完全相同关键词的页面。",
      "solves": [
        "跨措辞召回语义相关内容",
        "在非结构化资料中快速筛选候选"
      ],
      "boundaries": [
        "它不是 RAG 的全部",
        "不擅长所有精确匹配和复杂过滤"
      ],
      "use_when": [
        "自然语言表达多样",
        "文档量较大且需要语义召回"
      ],
      "avoid_when": [
        "ID、日期和专有名词必须精确命中",
        "传统过滤或全文搜索已足够"
      ],
      "pitfalls": [
        "忽略关键词检索优势",
        "距离阈值凭感觉设置",
        "没有结合元数据权限过滤"
      ],
      "related": [
        "embedding",
        "rag",
        "knowledge-base"
      ],
      "prerequisites": [
        "embedding"
      ],
      "sources": [
        {
          "name": "Google · Machine Learning Glossary",
          "url": "https://developers.google.com/machine-learning/glossary"
        }
      ],
      "body": "## 常见组合\n\n生产检索常把关键词检索与向量检索合并，再用 reranker 重排候选。混合检索并非总是更好，仍要用真实问题测试召回率和最终回答质量。"
    },
    {
      "title": "Workflow",
      "slug": "workflow",
      "aliases": [
        "工作流",
        "Agentic Workflow"
      ],
      "category": "应用架构",
      "level": "入门",
      "status": "verified",
      "trend": "基础概念",
      "last_verified": "2026-09-04",
      "summary": "由代码预先规定步骤、分支与顺序，让模型和工具沿确定路径协作完成任务的系统。",
      "analogy": "像餐厅的标准操作手册：每一步由流程规定，厨师可以在某一步发挥，但不能任意改变整条流水线。",
      "solves": [
        "重复任务的一致执行",
        "将复杂任务拆成可检查的小步骤"
      ],
      "boundaries": [
        "Workflow 可以包含模型但不把流程控制权交给模型",
        "它不是低级版 Agent"
      ],
      "use_when": [
        "步骤已知且稳定",
        "需要可预测成本和结果",
        "中间结果需要规则校验"
      ],
      "avoid_when": [
        "路径无法事先枚举",
        "环境变化要求持续重新规划"
      ],
      "pitfalls": [
        "把所有步骤都做成模型调用",
        "分支爆炸后仍坚持硬编码",
        "没有保存中间结果导致难以恢复"
      ],
      "related": [
        "agent",
        "evaluation",
        "tool-calling"
      ],
      "prerequisites": [
        "llm"
      ],
      "sources": [
        {
          "name": "Anthropic · Building effective agents",
          "url": "https://www.anthropic.com/engineering/building-effective-agents"
        }
      ],
      "body": "## 常见模式\n\nPrompt chaining、路由、并行执行、生成后校验，都是工作流。它们的共同点是控制流主要写在代码里。\n\n## 为什么常常更可靠\n\n固定路径更容易测试、观察和回放。对发票提取、内容审核、报告生成等结构相对稳定的任务，Workflow 往往比 Agent 更便宜也更可控。"
    }
  ]
}
