大模型应用实战

大模型应用实战

从基础理论到项目实战,深入探索大模型技术与应用,涵盖提示词工程、RAG、AIGC 等核心主题

共 192 篇文章

DeepSeek Harness 系列(04):Agent Loop——一次对话是怎么跑起来的

用户发了一条消息,Agent 回复了一段话并调用了三个工具——这背后到底发生了什么?这篇文章完整拆解 dsh Agent Loop 的运行机制:Turn 与 Step 的结构、驱动器怎么工作、每个扩展点的用途,以及你能在哪里插入控制逻辑。

·9 min read

DeepSeek Harness 系列(05):Session 与记忆——对话历史是怎么活下来的

Agent 崩溃了怎么办?换一个进程历史还在不在?想从某一步回头重试可以吗?这篇文章拆解 dsh Session 的设计:仅追加日志、派生历史、格式版本、Fork 机制,以及为什么模型永远不会看到「脏」的失败尝试。

·11 min read

DeepSeek Harness 系列(06):System Prompt 组装——动态提示词的工程实现

每次模型请求前,dsh 是怎么把几十个插件的提示词片段拼成一个完整的 system prompt 的?这篇文章拆解 ctx.systemPrompt 的注册机制、段落排序、动态变量、工具 schema 自动注入,以及 Prompt Caching 怎么用。

·11 min read

DeepSeek Harness 系列(07):能力 Seam——换一行配置,能力全换

为什么 dsh 不直接 import fs?为什么 Shell 执行可以一键切到远程沙箱?这篇文章讲 dsh 的能力 Seam 设计:Service Definition / Provider / Consumer 三角色,以及 ctx.fs、ctx.sandbox、ctx.shell、ctx.llm 这些核心 Seam 的实际用法。

·8 min read

DeepSeek Harness 系列(08):多 Agent 协作——Subagent 与 Agent Teams

一个 Agent 调用另一个 Agent,结果可以是文本,也可以是结构化 JSON。这篇文章讲 dsh 的多 Agent 机制:Subagent 的启动、可继续子 Agent、工具过滤、Persona、以及实验性的 Agent Teams。

·11 min read

DeepSeek Harness 系列(09):可观测性——怎么知道 Agent 在干什么

Token 消耗多少?哪步最慢?出错了在哪里?这篇文章讲 dsh 的可观测性机制:Session 事件日志、Token 计量、遥测 Seam(ctx.sessionTelemetry)、OpenTelemetry 接入,以及如何用 session/event 监听做实时调试。

·11 min read

DeepSeek Harness 系列(10):写一个完整的 dsh 插件——从需求到上线

系列收尾篇。把前九篇学到的所有机制——工具注册、提示词段落、事件监听、Session 观测、权限拦截——组合进一个完整的生产级插件,看清楚一个真实 dsh 插件的骨架是什么样的。

·13 min read

DeepSeek Harness 系列(02):万物皆插件——Cordis 核心设计深度解读

dsh 的所有能力都建立在 Cordis 插件框架之上。这篇文章结合真实源码,深度解读 Cordis 五个核心机制:Plugin、Context、Service、Event、Effect——每个机制讲清楚「是什么、怎么用、为什么这么设计」。读完之后,dsh 的一切都会豁然开朗。

·15 min read

DeepSeek Harness 系列(03):工具系统——给 Agent 装上手

工具是让 Agent 不只是「会说话」的关键。这篇文章深入 dsh 工具系统的全部机制:从注册、类型推断、Schema 生成,到三阶段执行流水线(pre-execute / execute / post-execute),再到权限审批和 Scope 隔离。读完你能写出一个生产可用的自定义工具。

·12 min read

DeepSeek Harness 系列(01):它是什么——生产级 Agent 运行时全景

DeepSeek Harness(dsh)是 DeepSeek AI 开源的 Agent 运行时框架,用「一切皆插件」架构解决了 Agent 从 demo 到生产的核心工程问题。这篇是系列第一篇,不讲源码,只讲全局:dsh 能做什么、架构长什么样、和其他框架有什么本质区别、以及什么时候值得用它。

·9 min read

企业知识库系列(04):HyperGraphRAG 实测——超图结构的多跳推理

同一套 89 道题,测 HyperGraphRAG 1.0.6。超图的理论优势在于超边可以一次性连接多个实体,而不只是二元关系。实测结果是:多跳 0.171,和 LightRAG 接近,但建库耗时 443 分钟,是系列最慢。本文记录部署过程、SiliconFlow API 限制踩坑,以及五框架完整横评。

·8 min read

Code Agent 解剖(12):Harness 设计之二——上下文工程

从 harness 工程视角审视 MyCodeAgent 的上下文工程:History 与 ModelView 为何分离、读时投影而非写时删除、压缩决策的双来源估算、以及主动 + 被动两条触发路径。这是 Part 4 Harness Engineering 的第二篇,关注的是「agent 怎么决定给模型看什么」。

·9 min read

Code Agent 解剖(13):Harness 设计之三——工具执行管道

从 harness 工程视角审视 MyCodeAgent 的工具执行管道:并发分组与顺序保证、四关卡执行管道(权限→乐观锁→熔断→执行)、两层字节预算控制。这是 Part 4 Harness Engineering 的第三篇,关注的是「一次工具调用从模型输出到写入 history 之间经历了什么」。

·8 min read

Code Agent 解剖(14):Harness 设计之四——容错与恢复

从 harness 工程视角审视 MyCodeAgent 的容错与恢复体系:模型错误分类与分级重试、Transcript append-only 事实日志、崩溃后的状态重建、UncertainAction 的不确定性处理。这是 Part 4 Harness Engineering 的第四篇,关注的是「出错了 agent 怎么自愈,崩了之后怎么接着跑」。

·9 min read

Code Agent 解剖(15):Harness 设计之五——可观测性

从 harness 工程视角审视 MyCodeAgent 的可观测性体系:事件驱动的统一发射点、Trace + Transcript 双 sink 架构、JSONL 流式诊断日志、prompt fingerprint 漂移检测、以及敏感信息脱敏。这是 Part 4 Harness Engineering 的最终篇,关注的是「agent 的行为如何被观测和还原」。

·9 min read

Code Agent 解剖(16):AgentTeams——为什么一个 agent 不够用?

当单个 agent 遇到任务太长、太复杂、需要并行处理的情况,自然会想到「多开几个」。但多个 agent 协作,远不是「启动多个模型」那么简单。这一篇通过 MyCodeAgent 的 AgentTeams 实验性设计,讲清楚多 agent 系统真正要解决的问题是什么。

·8 min read

Code Agent 解剖(17):AgentTeams——消息怎么在 agent 之间传递?

多个 agent 能协作的前提,是它们能可靠地互相传话。但「传话」在分布式系统里远不是 print 一行消息那么简单——消息发出去了,对方收到了吗?处理了吗?崩了怎么办?这一篇讲 AgentTeams 的 SendMessage 协议和 ACK 三态状态机。

·9 min read

Code Agent 解剖(18):AgentTeams——TeamFanout 与 TeamCollect 的并行机制

「分发任务、并行执行、汇总结果」——这三步听起来简单,但在多 agent 系统里每一步都有坑。任务怎么切分才合理?成员 agent 怎么真正并行跑起来?结果有冲突怎么办?这一篇把 TeamFanout 和 TeamCollect 的协调机制讲透。

·9 min read

Code Agent 解剖(19):AgentTeams——一个实验系统的生与死

AgentTeams 被设计出来,也被有意识地从稳定版本移除了。这不是因为它坏掉了,而是一个经过深思熟虑的工程决策。这一篇讲清楚移除背后的逻辑:什么情况下该做一个功能,什么情况下该把它从主路线移出去。这是 Part 5 的收尾,也是整个系列最值得细读的一篇。

·11 min read

Code Agent 解剖(20):从零扩展——给 agent 加一个新工具

从零给 MyCodeAgent 加一个新工具,走完「协议 → 实现 → 注册 → 提示词 → 测试」的完整链路。不只是告诉你怎么写,更要讲清楚每一步为什么要这样做——搞懂了这套逻辑,添加任何工具都是同一张地图。

·9 min read

Code Agent 解剖(21):从零扩展——接入新的 LLM Provider

OpenAI、DeepSeek、Kimi、Qwen……每隔一段时间就有新的 LLM 服务出现,而 MyCodeAgent 已经支持了 10 家。接入一个新 provider,不是改调用链,而是往一张表里加一行。这一篇把 provider 路由机制讲透,再带你走完接入全流程。

·8 min read

Code Agent 解剖(22):从零扩展——用 Markdown 写一个 Skill

Skills 是 MyCodeAgent 里最轻量的扩展方式:不写 Python、不改代码、不重启服务——只需要一个 Markdown 文件,agent 就能学会一种新的「专家行为」。这一篇讲清楚 Skill 的格式、加载机制、参数注入,以及什么时候应该用 Skill 而不是工具。

·9 min read

Code Agent 解剖(23):从零扩展——接入 MCP 外部工具生态

MCP(Model Context Protocol)是一个让 agent 接入外部工具服务的协议标准。接了它,agent 就能调用 Tavily 搜索、Context7 查文档、GitHub 操作——任何实现了 MCP 协议的服务都能接进来。这一篇讲 MCP 是怎么接入的,一个外部工具从配置到被模型调用的完整链路。

·9 min read

Code Agent 解剖(11):Harness 设计之一——控制流

从 harness 工程设计视角审视 MyCodeAgent 的控制流:为什么选择单一主循环而不是多循环、不可变状态机的工程价值、完成门的反馈回路设计、终止路径的完备性。这是 Part 4 Harness Engineering 的第一篇,关注的是「为什么这样设计」而不是「是什么」。

·8 min read

Code Agent 解剖(09):对话越来越长,token 超了怎么办?

深入 MyCodeAgent 的上下文工程:HistoryManager append-only 事实日志、ProjectionBuilder 读时投影、ContextBudgetPolicy 触发判断、ContextCompactor LLM 摘要压缩。理解为什么「历史永不删除」和「给模型看有界视图」是两件完全不同的事,以及 agent 如何在不丢失事实的前提下把上下文压进预算。

·8 min read

Code Agent 解剖(10):agent 崩了怎么恢复,对话历史存在哪?

深入 MyCodeAgent 的持久化与恢复机制:TranscriptStore append-only JSONL 事件流、五种事件类型、ResumeLoader 从事件重建运行时状态、UncertainAction 的工具中断处理、SessionMemory 跨 run 的前馈记忆。理解 agent 为什么不能靠内存存历史,以及崩溃后确定性恢复的完整链路。

·9 min read

企业知识库系列(03):图增强 RAG 实测——GraphRAG vs HippoRAG

同一套 89 道测试题,分别对 GraphRAG 3.1.1 和 HippoRAG 2.0 跑评测。本文记录从部署到出数据的完整过程,包括 GLM-4-flash 结构化输出失败、LanceDB 向量维度不匹配、NV-Embed-v2 离线加载等真实踩坑,以及两个框架在单跳、多跳、边界拒答三个维度上的真实数据。

·10 min read

Code Agent 解剖(08):一个任务太复杂,怎么拆给子 agent 做?

深入 MyCodeAgent 的子 agent 机制:Task 工具、RuntimeProfile 沙箱约束、SubagentLauncher 完整执行链路、结构化结果合约。理解主 agent 如何把探索性任务委派给只读轻量子 agent,以及为什么子 agent 不是「简化版主 agent」而是受严格约束的执行单元。

·13 min read

Code Agent 解剖(07):外部工具怎么接进来?MCP 集成是怎么做的?

深入 MyCodeAgent 的 MCP 集成:可选依赖、配置发现、stdio/HTTP 传输、Adapter 把远端工具伪装成本地 Tool、结果收成通用协议。理解外部能力如何进入同一条工具管道,以及「注册进目录」和「允许执行」为什么不是一回事。

·11 min read

Code Agent 解剖(05):模型怎么知道有哪些工具可以用?Function Calling 如何实现?

跟着一次 tool_call 从头走到尾:工具如何注册进 Registry、Registry 如何生成 function schema 告知模型、模型触发 tool_calls 后 Orchestrator 如何分批执行、ToolExecutor 的权限/乐观锁/熔断管道、ToolResult 协议为什么要内外分离、以及观测结果怎么截断写回 history。

·11 min read

Code Agent 解剖(06):agent 的能力怎么用 Skills 动态扩展?

深入 MyCodeAgent 的 Skills 动态扩展机制:一个只需要放一个 Markdown 文件就能让 agent 获得新能力的系统。完整走过定义→扫描→注入→调用→执行的生命周期,理解零代码扩展、按需加载、热更新背后的设计。

·12 min read

企业知识库系列(02):经典向量 RAG 实测——QAnything vs LightRAG

同一套 89 道测试题,分别对 QAnything v2 和 LightRAG 1.5.6 跑评测。本文记录从部署到出数据的完整过程,包括 Docker GPU 挂载、Milvus 崩溃恢复、user_id 隔离坑等真实踩坑,以及两个框架在单跳、多跳、边界拒答三个维度上的真实对比数据。

·9 min read

Code Agent 解剖(02):agent 是怎么一轮一轮思考和行动的?

深入 MyCodeAgent 的 ReAct 主循环:不可变状态机、双层循环结构、完成门三态判决、模型错误恢复机制。理解 agent 为什么不是「调一次模型拿结果」,而是一个有反馈、有保障、有明确终止条件的控制系统。

·10 min read

Code Agent 解剖(03):各家 LLM 格式不一样,agent 怎么统一对接?

深入 MyCodeAgent 的 LLM 接口层:零依赖 HTTP 传输、provider 路由表、五元组响应归一化。理解 agent 为什么不直接绑某一家 SDK,而是把「发请求」和「读响应」拆成稳定边界,让 ReAct 循环只看到统一结构。

·8 min read

Code Agent 解剖(04):系统提示词是怎么组装的,agent 的「人格」从哪来?

深入 MyCodeAgent 的提示词组装层:Constitution / Tool Contracts / Project Rules / Runtime Signals 四层 system 消息,以及它们如何与历史投影拼成发给模型的 Model View。理解 agent 的行为约束不是「一段超长 prompt」,而是可缓存、可指纹、可热更新的分层装配。

·7 min read

Code Agent 解剖(01):用户输入一句话,agent 内部发生了什么?

从 python main.py 到回答输出,完整追踪一条用户输入在 MyCodeAgent 中的数据流。覆盖 CLI 入口、依赖组装、ReAct 主循环三个阶段,建立后续深入各模块的整体地图。

·10 min read

企业知识库系列(00):在写第一行代码之前,先把评测数据集做好

横向对比六个开源 RAG 方案,如果用不同的文档、不同的问题去测,结果没有可比性。这篇文章是系列的零号篇——先把统一测试集建好,后续七篇实测都用同一套题打分。文章记录了从'直接用 BEIR'到'用 LLM 合成领域专属题目'的决策过程,以及实际生成 89 题评测集的完整代码。

·8 min read

企业知识库系列(01):为什么 RAG 只是起点

企业知识库的真实挑战不是技术选型,而是数据质量差、知识碎片化、多模态混杂、知识老化——这些问题 RAG 解决不了。这篇文章梳理企业知识库技术的完整谱系:从经典向量 RAG 到图 RAG、超图 RAG,再到 Agent-native 知识系统,以及每一代技术在什么场景下解决了什么问题。

·9 min read

代码库知识库系列(10):增量更新——什么时候该重建索引,重建哪些部分

代码在持续演进,知识库不可能每次 commit 都全量重建。这篇文章从一次真实的 detect_changes 输出出发,设计一个三层决策树:先判断本次变更是否影响可检索内容,再精确找到变更的函数,最后通过 FILE_CHANGES_WITH 边发现隐藏的时序耦合——只重建真正需要重建的部分,把增量更新成本压到全量的一个零头。

·10 min read

代码库知识库系列(11):跨库场景——当一个服务调用另一个服务

单库知识库已经可以回答'这个函数在哪、被谁调用、怎么修改'。但现实的工程系统往往是多个仓库通过 HTTP / 消息队列 / gRPC 相互协作。这篇文章从一次 cross-repo-intelligence 的真实运行结果出发——LightRAG × graphrag 返回 0 条跨库边——解释为什么这个结果是正确的,以及跨库分析真正在找什么:集成关系,不是功能相似性。

·9 min read

代码库知识库系列(12):Git 历史是第四条检索路径

向量路径回答'这是什么',图路径回答'谁调用了它',符号路径回答'它在哪里'。但工程师经常需要问第四类问题:'这段代码为什么是这样的?'——这类问题的答案不在代码里,在 git 历史里。本文从 LightRAG 的 465 条 FILE_CHANGES_WITH 边出发,展示如何把 git 历史转化为可检索的第四路知识源。

·10 min read

代码库知识库系列(13):评测——怎么知道知识库够不够好

知识库建好了,然后呢?Recall@5 是 RAG 评测的惯用指标,但代码库知识库的检索目标和普通文档 RAG 有本质差异:一篇博客找到相关段落就够了,而代码检索的'正确'是精确到函数级别的定位。本文设计一套专用于代码库知识库的评测框架:四维指标、评测数据集的构建方法,以及如何把评测结果接进 CI/CD 持续追踪知识库质量。

·12 min read

代码库知识库系列(05):向量检索 vs 知识图谱——加了调用图并没有变更好?

向量检索(Recall@5=0.958)vs 图增强检索(seed_k=3,BFS 2跳):总体分数完全一致,但出错的题目互换了。图检索修复了 Q8(calculate_order_total 通过 process_checkout 两跳命中),却在 Q1 引入了退步(候选集扩展挤出了 verify_password)。结论:朴素图扩展是双刃剑,真正的工程价值在于把结构信息编码进 embedding 内容,而不是在检索时生硬叠加图遍历。

·16 min read

代码库知识库系列(06):把调用图编码进 Embedding——结构增强有效,但不够

验证第05篇的假设:把 called_by/calls 信息编码进 embedding 内容,能否修好 Q8(calculate_order_total 漏检)?结果:加了结构前缀后,calculate_order_total 的相似度从 0.46 提升到 0.51,方向正确,但 payment 模块其他函数排得更高,仍然挤不进 top-5。Strategy B(注释前缀)还让 Q7 退步。Strategy C(融入 docstring)稳定但无改善。结论:语义鸿沟是 embedding 的本质极限,不是可以用注释技巧绕过的。

·19 min read

代码库知识库系列(07):混合检索 BM25 + 向量——Q8 还是失败,而且总分退步了

混合检索(BM25 + 向量 RRF 融合)被业界视为向量检索的最佳实践,理应修好 Q8。结果:calculate_order_total 与查询的 token overlap 为零,BM25 完全无法命中它;Hybrid 继承了 BM25 的 Q7 退步,总 Recall@5 从 0.958 降至 0.931,反而比纯向量更差。五个篇章系统排查了文本路线的所有变种,结论清晰:Q8 的根因在代码结构,不在文本,纯文本匹配路线已到达边界。

·21 min read

代码库知识库系列(08):生产级架构设计——向量、图、符号索引如何组合

五篇实验量出了单路检索的边界:向量覆盖语义、图覆盖结构、符号覆盖精确匹配——三路信号正交互补,缺一不可。本文从系统架构视角出发,设计多路召回+查询路由+增量更新的生产级代码库知识库:查询路由按意图激活对应检索路;图检索作为一等公民与向量并行,不再是后处理补丁;Git diff 驱动增量更新替代全量重建。从小到大分三个阶段落地,每阶段可独立交付价值。

·23 min read

代码库知识库系列(09):用 codebase-memory-mcp 实战——在 LightRAG 上跑三路召回

前八篇推导出了生产级代码库知识库的设计蓝图:向量路径、图路径、符号路径三路正交。这一篇直接在真实开源项目 LightRAG(20,674 节点 / 94,517 条边)上运行 codebase-memory-mcp,把第 08 篇的架构设计落成可以执行的查询——同一个问题,三路分别打,看各自返回什么、命中什么、漏掉什么。

·13 min read

代码库知识库系列(03):代码 Embedding 策略——原始代码反而比注释增强更好?

对 27 个 Python 函数跑三种 Embedding 策略对比:Strategy A 原始代码(Recall@5=0.958)、Strategy B 仅签名+注释(0.917)、Strategy C 混合(0.917)。反直觉结论:原始代码 Embedding 性能最好。原因分析:代码里的类型名、异常类名、库名等技术词汇是高质量语义信号,注释删掉了这些信号。另一个发现:某些查询无论策略如何都无法满分,揭示了语义鸿沟问题。

·6 min read

代码库知识库系列(04):三种 Chunking 策略对比——AST 精确分割反而输了?

对 266 行 Python 代码跑三种 Chunking 策略:固定行(Recall@5=1.000)、文件级(1.000)、AST 函数级(0.958)。反直觉结论:AST 精确分割得分最低。根因是 free-rider 效应——大 chunk 把语义相邻函数捆绑在一起,单一的语义距离远的查询能通过近邻搭便车命中。但文件级 precision 为零,固定行在大型项目里会切断函数。工程选择取决于代码库规模和 precision 要求。

·11 min read

代码库知识库系列(01):技术全景——为什么代码理解比文档检索难十倍

代码库不是文档库的升级版,而是本质不同的知识类型。四个理解层次(语法/语义/架构/业务意图)对应四类检索需求;传统 grep 搜索、向量化检索、AST 符号索引、调用图检索各有能力边界。本文建立代码库知识体系的完整框架,为后续实战篇打基础。

·7 min read

代码库知识库系列(02):工具横评——六种方案的能力边界与选型指南

六种代码库知识工具的统一框架对比:codebase-memory-mcp、Cursor Context、GitHub Copilot Workspace、sourcegraph/zoekt、Tree-sitter、OpenHands CodeBrowser。用五个标准测试任务(符号定位/语义搜索/影响分析/架构理解/历史追溯)评估各工具的能力边界,最终给出按场景选型的决策框架。

·8 min read

AI 评测系列(06):DeepEval 实战——企业级 Agent 评测套件

用 DeepEval 对同一个客服 Agent 运行三个指标:AnswerRelevancy(均值 0.767,60% 通过)、Faithfulness(均值 0.600,40% 通过)、ToolCorrectness(20% 通过——Agent 大量不调工具是根因)。重点讲 DeepEval 与 RAGAS 的范式差异:RAGAS 是批量分析工具,DeepEval 是 CI 质量门控工具,两者解决不同问题。同时演示如何把 glm-4-flash 接入 DeepEval 作为 Judge LLM。

·6 min read

AI 评测系列(07):自定义 Benchmark——从业务场景到评测集

公开 Benchmark 在三种情况下不够用:业务场景太特殊、数据不能出域、需要持续跟踪质量变化。本文讲完整的自定义 Benchmark 构建流程:场景定义→问题生成→ground_truth 标注→难度分层→版本管理。以企业文档问答为例,构建一套覆盖 Easy/Medium/Hard 三个难度层的评测集,并讲清楚评测集本身需要版本控制的原因。

·8 min read

AI 评测系列(08):评测 CI/CD——持续质量门控

把评测集成进 CI 流程,让每次代码或 Prompt 变更前有明确的质量判断。两级策略:每次提交跑快速评测(10 个核心用例,< 3 分钟),每周跑完整评测(100+ 用例,追踪趋势)。重点讲质量门控设计:哪些指标下降阻断 PR,哪些只告警;以及如何追踪两个版本之间的 Delta,让 Reviewer 看到的不是绝对分数而是变化量。

·7 min read

AI 评测系列(05):Agent 评测——工具调用准确率与轨迹质量

对一个客服 Agent(3 个工具,15 个测试用例)进行系统性评测。结果:工具名准确率 73%、参数准确率 100%、步骤效率 0.73x。4 个失败案例全是'应该调工具却没调'而不是'调错了工具',说明 Agent 的工具触发逻辑是瓶颈,不是工具执行逻辑。轨迹质量 LLM-as-Judge 均分 3.73/5,多步骤任务和边界情况表现略差。

·8 min read

AI 评测系列(01):为什么 AI 评测难——不确定性、主观性与多维度

AI 评测和传统软件测试有三个本质区别:输出不确定(同输入多次运行结果不同)、质量主观(没有唯一正确答案)、维度复杂(准确、相关、有帮助是三件不同的事)。四种评测方法各有代价,没有万能方案。本文建立评测的认知框架,为后续系列打基础。

·6 min read

AI 评测系列(02):评测指标设计——从业务目标到可量化指标

如何把'AI 回答要好'这个模糊目标拆解成具体指标。L1/L2/L3 三层框架:L1 业务结果(任务完成率、采纳率)、L2 输出质量(准确性、相关性、完整性)、L3 系统健康(延迟、Token 消耗)。重点讲四类场景下的指标选择差异,以及三个常见陷阱——只测 L3、用 BLEU/ROUGE 评语义质量、阈值凭感觉定。

·7 min read

AI 评测系列(03):LLM-as-Judge——让 LLM 评价 LLM 的正确姿势

用真实实验量化三种 LLM-as-Judge 偏见。位置偏见:第一位置胜率 67%,远高于 50% 基线,同一对答案换顺序有 33% 概率得到相反判断。冗长偏见:相同内容的啰嗦版比简洁版多得 0.5 分。框架偏见:严格专家 prompt 与标准 prompt 得分无差异,说明 glm-4-flash 对 prompt 强度不敏感。三种缓解方案及适用场景。

·7 min read

AI 评测系列(04):RAG 评测——RAGAS 四指标实战与一个反直觉发现

用 RAGAS 对比原始文档和知识蒸馏后文档的检索质量。测试结果:两个版本得分几乎相同(均值 0.933 vs 0.930),Context Precision 和 Context Recall 都是满分。这个反直觉结果揭示了 RAGAS 的一个重要局限:小规模、结构简单的知识库上,四个指标无法区分文档质量差异,需要更大规模和更复杂的查询才能看到分化。文章同时讲解四个指标的计算原理和常见误解。

·7 min read

MCP 系列(07):企业级部署——安全、认证与版本管理

MCP Server 从本地开发进入企业生产的三个关键工程问题:认证(API Key / OAuth / mTLS 的适用场景)、Docker 化部署(Containerfile + healthcheck + 进程守护)、多版本共存(旧 Server 不停服情况下平滑升级)。附完整的 Docker Compose 生产配置和安全设计 Checklist。

·7 min read

MCP 系列(08):企业治理——Registry、路由与可观测性

企业内有 20+ 个 MCP Server 时,三个治理问题同时出现:如何发现正确的 Server(Registry)、如何把工具调用路由到对应 Server(路由策略)、如何知道某次工具调用失败了(可观测性)。本文给出三个问题的完整工程方案,包含 Registry YAML 设计、Langfuse 接入 MCP 调用链、以及告警规则模板。

·8 min read

MCP 系列(05):Resources 和 Prompts 进阶——动态数据、参数化 URI 与多轮模板

第 04 篇的 Jira Server 已经有了基础 Resource 和 Prompt,本篇深入三个进阶模式:动态 Resource(连读两次 sprint/current 得到不同数据)、参数化 URI(jira://project/PROJ/stats 按 key 返回不同内容)、条件 Prompt(P0 事故报告多出 Escalation 章节,P1 没有)。另外展示 3 轮 Prompt 的设计和无必填参数的 Prompt 如何在模板里引用 Resource。

·8 min read

MCP 系列(06):MCP vs Function Calling——用数据说话的选型指南

用真实基准测试量化两种方案的工程差异。MCP 每次工具调用增加 2ms 开销(283x,但绝对值仅 2ms)、首次启动需 570ms。代码规模:单项目差异不大(43 vs 32 行),3 个项目共享同一工具时 FC 需要 129 行而 MCP 只需 32 行。决策框架:工具复用数量是核心指标,不是延迟。

·6 min read

MCP 系列(02):协议深解——Host/Client/Server 三层模型与 JSON-RPC 通信

MCP 协议的完整工作过程:initialize 能力协商、tools/list 工具发现、tools/call 工具调用、resources/read 资源读取、prompts/get 模板渲染。本文基于真实运行的 JSON-RPC 报文,逐步拆解每一轮消息的结构和语义。

·7 min read

MCP 系列(03):生态导航——官方 Server 清单与社区精选

MCP 生态现状:官方维护的 9 个 Server 覆盖文件系统、GitHub、数据库、搜索、浏览器自动化等核心场景,社区贡献的 Server 已超过 3000 个。本文整理官方 Server 的实际能力和配置方式,按类别精选社区 Server,并给出评估一个 MCP Server 质量的 5 个维度。

·7 min read

MCP 系列(04):开发第一个 MCP Server——从 Hello World 到生产级模式

用一个完整的 Jira MCP Server(mock 数据,无需真实账号)演示 5 个生产级工程模式:多工具协作、输入验证、结构化错误处理、日志(必须写 stderr)、Resources。测试结果包含正确路径和错误路径全覆盖,重点讲 isError=true 和友好提示的选择差异。

·8 min read

MCP 系列(01):MCP 是什么——为什么 Function Calling 不够

Function Calling 已经能让 LLM 调用工具,MCP 还解决什么问题?核心差异在于:Function Calling 把工具定义绑定在调用侧代码里,MCP 把工具定义放在独立的 Server 进程中。一份工具实现,任意 Host 复用。本文从一个真实场景出发,对比两种方案的代码结构和工程成本。

·7 min read

Workflow 系列(10):企业级架构——注册表、组合与治理

从单个工作流到企业级工作流体系,三个核心问题:Workflow Registry 如何管理多个工作流的发现和路由、工作流组合如何让父工作流调用子工作流形成流水线、三层治理(修改权限/审计责任/回滚机制)如何保证生产环境安全。

·8 min read

Workflow 系列(07):工程化与版本管理——Workflow 的 CI/CD

代码有 CI(提交→自动测试→通过才合并),Workflow 的'代码'是 Markdown + YAML,如何做 CI?三个门控:静态校验(秒级,检查文件引用完整性)、Schema 测试(分钟级,不调 LLM 验契约)、端到端回归(小时级,只在主链路改动时跑)。配套版本号规范和发布流程。

·9 min read

Workflow 系列(08):运营与成本——跨 Phase 成本追踪与故障排查

单个 Skill 的 Token 成本好计算,但工作流里多个子 Agent 的总成本是盲区。本文讲两件事:跨 Phase 的成本追踪(在 workflow_state.json 里记录每个子 Agent 的 Token 消耗,找出成本热点)、系统化的故障排查方法论(故障分类树 + 5 步标准诊断,5 分钟内定位问题所在的 Phase)。

·8 min read

Workflow 系列(09):主流框架对比——Prompt-based、LangGraph、Temporal、n8n 如何选

四种工作流方案的本质差异:Prompt-based(Markdown + JSON 状态文件)、LangGraph(Python 图结构状态机)、Temporal(企业级 Durable Execution)、n8n(可视化低代码)。不是哪个更好,而是不同场景下的最优解不同。LangGraph 的 State/Node/Edge 概念与 Prompt-based 方案一一对应。

·8 min read

Workflow 系列(05):评测体系——三层测试结构与 Trace 追踪

Workflow 的质量不能靠感觉跑通了来判断。本文建立三层评测体系:单元测试(Step 级契约验证)、集成测试(Phase 间数据流)、端到端测试(完整链路 + 指标基线)。重点讲 Trace 追踪如何让工作流卡在哪里从排查变成可观测。

·8 min read

Workflow 系列(06):安全——跨步骤注入传播与四层防御

Workflow 安全与 Skill 安全的核心区别:Skill 安全关注单次调用,Workflow 安全关注跨 Step 的攻击传播。一个从 Jira 输入的恶意内容,可以在工作流里经过 3-4 个 Phase 后,在代码执行层造成数据外泄。四个防御原则:数据净化边界、Phase 级权限最小化、高影响操作确认、子 Agent 沙箱。

·7 min read

AI 原生组织不是买工具,而是让等待消失

大多数公司的 AI 转型都走错了方向。真正的 AI 原生不是看你用了多少模型,而是 AI 进来之后组织里的等待有没有变少。本文拆解四个阶段、两种角色、五步路径,帮你搞清楚组织怎么真正变轻。

·12 min read

Workflow 系列(03):状态管理——持久化、幂等性与版本绑定

工作流的状态持久化不是可选项,而是中断续接能力的基础。本文讲三个层次:用 JSON 状态文件实现 Durable Execution(可中断可续接)、为每个 Step 设计幂等性(防止重复执行产生副作用)、在状态文件里绑定工作流版本(防止版本不匹配导致的续接错误)。

·8 min read

Workflow 系列(04):Multi-Agent 协调——编排器边界、并发控制与上下文隔离

Multi-Agent 工作流的核心工程问题不是'让 Agent 协作',而是三个具体问题:Orchestrator 和 Subagent 的职责边界在哪里、Fan-out/Fan-in 的并发失败用 fail-fast 还是 collect-all、子 Agent 为什么必须用隔离会话。三个问题各有明确答案。

·8 min read

Workflow 系列(02):设计范式——四层架构、三种 Context 传递模式与确认门设计

从单一 Markdown 文件到可维护的工作流工程,关键是四层架构的分离:Policy / Workflow / TaskSpec / Tool。本文重点讲三个设计缺口:Context 传递模式(accumulate / last_only / explicit)如何选择、确认门的 5 个必填字段、串行重试 vs 并行候选的选择原则。

·9 min read

Workflow 系列(01):基础理论——三种执行模型与 Anthropic 5 种模式

AI Workflow 不是传统工作流的升级版,而是本质不同的执行模型。从 DAG / 状态机 / 事件驱动三种模型的对比出发,掌握 Anthropic 官方定义的 5 种基本模式:Prompt Chaining、Routing、Parallelization、Orchestrator-Subagents、Evaluator-Optimizer,以及它们如何组合成真实的生产工作流。

·8 min read

Skill 系列(06):Skill 工程化与治理——路由准确率 38%、压缩节省 76%、月成本 $0.67

6 个 Skill 的 Embedding 路由实测:准确率 38%,Skill 描述太相似是根因。Prompt 压缩节省 76% Token 但 Redis 文章质量从 4.0 降到 3.0,压缩不是免费的。成本报告揭示输出 Token 主导成本:rnd-technical-writer 比 meeting-summarizer 贵 9 倍,原因是输出长度而不是 Prompt 长度。

·7 min read

Skill 系列(03):Skill 设计范式——5 个模式让输出从混沌到可预测

用 competitor-analyzer 跑 4 个场景 + 设计质量审查,对比反模式 Skill(5/12 运行时命中)和范式驱动 Skill(11/12)。设计审查分:14/25 vs 24/25。最大差距在渐进增强——只有公司名时,反模式版本 0/2 通过,范式版本 2/2。

·8 min read

Skill 系列(04):Skill 指标体系——L1/L2/L3 三层监控,让质量下降有据可查

对 rnd-technical-writer 跑 6 次调用,采集真实 L3 数据(时延、Token),L2 格式检查 + LLM-as-Judge 质量评分,加入模拟 L1 用户反馈,输出完整健康看板。3 条告警真实触发:P90 时延 50.6s(阈值 30s)、格式合规率 66.7%(阈值 95%)、用户评分 3.5/5(阈值 4.0)。

·7 min read

Skill 系列(05):Skill 工作流串联——4 种模式实测,并发加速 1.5x

实现并测量 4 种 Skill 串联模式:顺序链(35.1s)、并发 fan-out(加速 1.5x,不是理论的 3x)、条件路由(3/3 正确分类)、反馈循环(首轮得 8/10 直接通过)。并发加速比低于预期的原因是 Amdahl 定律——顺序的 merge 步骤限制了整体加速效果。

·7 min read

Skill 系列(02):Skill 安全风险——三类攻击面的实战测试

对 contract-analyzer Skill 跑 9 个攻击用例(Prompt Injection × 3、权限越界 × 3、信息泄露 × 3),对比无防护版本和加固版本的结果。高危版本 3/9 安全,加固后 6/9。LEAK-03 把真实 API Key 和数据库连接串完整输出出来——这是生产环境的致命漏洞。

·8 min read

Skill 系列(01):Skill 评测体系——如何量化一个 AI Skill 的质量

用 20 个测试用例跑 Trigger 评测(F1=0.96),再用 LLM-as-Judge 对两个任务打分,最后做 A/B Prompt 对比。数据揭示三个工程发现:1个 FP 暴露 Skill 描述的边界模糊、中文字数检查的隐蔽 Bug、LLM 评委在细粒度差异上的局限。

·7 min read

Agent 的自进化把我的 Skill 删了,它还觉得做得不错

HermesAgent 在一次自主进化中,把我用了很久的科技播客制作 Skill 静默删除,同时把媒体分类下六七个 Skill 合并成一个质量极差的版本。整个过程没有提示,直接 rm -rf。备份找回了内容,但这件事把一个工程问题暴露得很清楚:没有评测体系,Agent 的自进化和随机破坏没有区别。

·6 min read

Agent 系列(22):Context Engineering 深度——三种上下文管理策略的量化对比

用 30 轮合成对话 + 4 个早期决策召回测试,量化对比三种上下文管理策略:Naive(全量历史)/ Sliding Window(截断)/ Rolling Summary(滚动摘要)。数据揭示三个反直觉发现:截断的代价远超预期、摘要偶尔比原始更准、压缩损失是真实 bug 而非统计误差。

·8 min read

Agent 系列(23):Web Agent——让 Agent 真正浏览网页

从零搭建一个能真正浏览网页的 Web Agent:DuckDuckGo 搜索 + 页面抓取 + LangGraph 执行图。重点讲三个工程 Guard:Token Budget 截断、Step Limit 防死循环、URL 错误处理——数据来自真实运行输出。

·10 min read

Agent 系列(20):Harness 实战——从单文件到生产级模块包

把 Article 19 的单文件 Harness 拆成可复用的 Python 包:registry / budget / sandbox / audit / rollback / harness 六个模块。重点介绍三个 API 设计决策:execute() 统一入口、IRREVERSIBLE 拦截时退还预算、approve_and_execute() 人工审批通道。配合 LangGraph 集成示例和 45 个测试全覆盖验证。

·8 min read

Agent 系列(21):Harness 测试工程——45 个测试怎么设计,以及它发现了什么 bug

用三类测试(功能测试 19 个 / 对抗测试 17 个 / 混沌测试 9 个)验证第 20 篇的 Harness 包。重点分享两个测试驱动发现的真实 bug——两个注入检测正则漏洞——以及 conftest 共享夹具、参数化对抗测试、autouse 状态重置三个关键设计模式。

·10 min read

AI Agent 找代码:多仓库多技术栈下的代码定位工程

企业级软件系统往往横跨十几个独立仓库、多种技术栈。当 AI Agent 收到一个任务时,第一步"找到正确的代码"就已经是个工程难题。本文系统梳理三个递进层次的挑战,以及结构化 Repo Registry、跨仓库依赖图、全量预置工作区、代码知识图谱等解法的利弊权衡。

·12 min read

让 AI Skill 越用越好:评测、调优与自主进化体系设计

LLM 自评准确率只有 46.4%,等同随机猜测——这是微软研究院和复旦大学的实证结论。真正影响 Skill 质量的只有三个维度:失败路径编码、可执行具体性、高危操作黑名单。本文介绍如何基于最新研究(SkillLens/SkillOpt)为企业 Agent 平台设计 Skill 生命周期管理体系。

·11 min read

真正的 AI-Native Workflow 是什么?——四个判断测试

大多数企业在推进 AI 提效时,本质上只是在用 AI 替代人做每一个步骤。这不是 AI-Native,这是 AI 平移。本文提出四个判断测试,帮你识别真正的 AI-Native Workflow,并给出发现和定义它的正确方法论。

·9 min read

Skill 平台的五个深坑:企业 AI 能力体系的质量治理

当企业 AI 平台积累了几十上百个 Skill 之后,真正的问题才开始暴露:质量无保障、边界模糊、接口混乱、Token 管理各自为政、大量重复开发。本文剖析五个系统性问题的根因,以及对应的治理方向。

·11 min read

如何让 AI Skill 质量有据可查?Benchmark 驱动的评测体系设计

AI Skill 的质量管理,本质上和 ML 模型评估是同一个问题——需要固定基准、可比较的数字、执行与评分的严格分离。本文从概念设计层面完整梳理 Skill 与 Workflow 的评测体系,包括数据集设计、指标体系、评分机制、版本管理与发布门禁。

·13 min read

AI Workflow 定义的四次演进:从 Markdown 到 JS 脚本,再到分布式多 Agent

在企业 AI 平台的实践中,Workflow 定义方式经历了四个技术阶段,每次遇到的瓶颈都揭示了 AI Workflow 工程的本质复杂度。本文梳理这四个阶段的经验,分析 AI Workflow 面临的核心矛盾,以及分布式多 Agent 场景下的架构选择。

·11 min read

Agent 系列(19):Harness 完整体系——8 层防护框架全景

从入门的五要素到完整的 8 层框架:最小权限、动作注册表、权限预算、执行沙箱、人工检查点、不可篡改审计日志、回滚协调器、威胁模型。四个对抗场景揭示三个反直觉结论:工具范围限制是软防御、预算在审批前扣除是设计陷阱、注入检测不等于注入阻止。

·11 min read

Agent 系列(17):Harness Engineering——给自主 Agent 装上安全护栏

Agent 越自主,越需要可控执行框架。本文用实验覆盖 Harness Engineering 五要素:Action Space(动作空间注册表)、Human Checkpoint(LangGraph interrupt 人工检查点)、Execution Boundary(执行边界)、Audit Log(审计日志)、Rollback(回滚)。包含三个反直觉结论:Harness 阻止的是动作,不是模型的谎言;执行边界必须在图级实现而非 wrapper;模型能力仍是可靠性的底层决定因素。

·10 min read

Agent 系列(18):成本与性能优化——省钱且更快

Agent 的成本大头在哪里?本文用四个对比实验覆盖核心优化策略:系统提示 Token 成本拆解(含 Prompt Caching 原理)、模型路由(直接 LLM vs 完整 Agent)、并行工具调用(实测 3.0x 加速)、工具结果缓存(0ms vs 100ms)。附反直觉结论:延迟优化别只看 2 次采样,模型路由有隐藏开销,测量先于优化。

·9 min read

Agent 系列(15):Agent 记忆系统进阶——短期、长期、压缩,三层记忆架构

Agent 的记忆不只是"存对话历史"。本文拆解三层记忆架构:短期记忆(MemorySaver 保持会话内上下文)、长期记忆(跨会话用户事实存储与注入)、历史压缩(token 守卫)。附真实跑分,包括一个反直觉的发现:MemorySaver 基础设施正常,但模型能力决定能否真正利用上下文。

·8 min read

Agent 系列(16):工具链设计——让 LLM 用对工具的五个原则

工具设计不是给人看的,是给 LLM 看的。本文用三个对比实验覆盖工具设计的核心原则:描述质量影响工具选择(但有反直觉的前提条件)、raise 异常 vs 返回错误字符串的实测差异、以及粗粒度 omnibus 工具 vs 细粒度专用工具的对比。附五条设计黄金规则。

·8 min read

Agent 系列(12):Agent 评估框架——怎么知道你的 Agent 到底好不好

Agent 不是普通函数,传统软件测试不够用。本文拆解 Agent 评估的三个维度:能力(工具调用准确率 + 任务完成率)、效率(步骤数 + Token 消耗 + 延迟)、鲁棒性(边缘用例 + 对抗输入)。附 13 个可运行测试用例和真实跑分结果,包括两个反直觉的 failure 分析。

·9 min read

Agent 系列(13):Agent 安全与防护——提示词注入、工具滥用、数据泄露怎么防

Agent 的攻击面比普通 LLM 大得多:提示词注入可以绕过角色限制,工具参数可以注入代码,输出可以意外泄露敏感数据。本文用三个可运行 Demo 覆盖三条攻击链,并实测 Naive vs Hardened Agent 的回答差异、工具字符白名单的拦截效果、以及三层防护管道的联合工作方式。

·9 min read

Agent 系列(14):Agent 可观测性——追踪每一步决策,让黑盒变透明

Agent 的决策过程天然不透明:为什么它调了三次工具?延迟来自哪里?生产环境里它出错了怎么复现?本文用 LangChain BaseCallbackHandler 实现三种可观测性模式:实时 Trace 打印、延迟分解时间线、结构化 JSON 审计日志。附真实跑分——LLM 占 99.9% 延迟,工具调用仅 2ms。

·8 min read

Agent 系列(10):MCP 协议——工具生态的标准化接入

深入解析 Model Context Protocol(MCP)解决的核心问题:工具生态的标准化。包含三个可运行 Demo——传统 Function Calling 的痛点、MCP Server 的动态工具发现、LLM Agent 通过 MCP 调用工具——以及 Host/Client/Server 三层架构详解和 MCP vs Function Calling 完整对比。

·8 min read

Agent 系列(11):A2A 协议——Agent 与 Agent 如何协作

深入解析 A2A(Agent-to-Agent)协议的定位与实现——它解决的不是 Agent 调工具,而是 Agent 委托给 Agent。包含三个可运行 Demo:直接调用的硬耦合问题、AgentCard 注册表实现动态发现、LLM 驱动的 Agent 路由。附 MCP vs A2A vs ANP 完整协议选型矩阵。

·8 min read

微软双论文深度剖析:Agent Skill 的评测体系与自进化优化

从微软两篇最新研究论文出发,系统梳理 Agent Skill 的完整生命周期评测框架与 SkillOpt 文本空间优化方法,揭示"技巧好看不代表好用"的本质原因,以及如何像训练神经网络一样训练一个 Skill 文档。

·19 min read

Agent 系列(9):多 Agent 架构设计模式——Supervisor 与 Pipeline

深度解析多 Agent 的两种核心架构模式:Supervisor(LLM 分类 + 确定性路由)与 Pipeline(固定线性链)。包含三个可运行的 LangGraph Demo,实测对比同一张图在不同任务下的执行路径差异,以及完整的模式选择矩阵和设计 Checklist。

·7 min read

Agent系列(八):上下文工程——让每个 Token 都用在刀刃上

深入讲解上下文工程(Context Engineering)的核心:上下文的五个来源及其 Token 成本剖析、预算约束下的动态上下文组装、以及上下文溢出时截断/摘要/检索三种策略的真实对比。附 Token 计数实测数据、ContextBudgetManager 实现、以及三策略在"找到第 1 轮内容"场景下的答案质量对比。

·10 min read

Agent系列(七):知识库集成——Agent 调用 RAG 的正确姿势

深入拆解 Agentic RAG 与 Pipeline RAG 的本质区别:Agent 如何自主决定是否检索、查哪个知识库、以及检索质量不足时如何自我修正。通过三个可运行的 LangGraph Demo,逐一演示检索决策、多知识库路由、质量门控+查询重写 Fallback 三大核心能力,附完整代码和真实运行结果。

·13 min read

Agent系列(四):工具调用深度解析——Agent 的手和眼

深入拆解 Tool Calling 的核心机制:工具设计三要素(接口/验证/安全)、Pydantic 参数校验、并行调用的真实表现、三大安全威胁防护,以及错误分类如何影响 Agent 的重试行为。附完整可运行 Demo 代码。

·14 min read

Agent系列(五):意图识别与路由——让 Agent 听懂用户在说什么

深入拆解 Agent 意图识别层的必要性:关键词方案为何在生产中失效、LLM 分类器如何处理自然语言歧义、LangGraph 如何把不同意图路由到专项 Agent,以及多轮对话历史如何让"优化一下"这类模糊指令也能被正确理解。附完整可运行 Demo 代码和真实运行结果分析。

·17 min read

Agent系列(六):记忆管理——让 Agent 记住重要的事

深入讲解 Agent 的四种记忆类型(感觉/工作/情景/语义)与 LangGraph 实现的对应关系,三种上下文管理策略(截断/摘要/检索)的实测对比,checkpointer 与 InMemoryStore 的区别与应用场景,以及如何用 RemoveMessage + 自动摘要让 Agent 在无限长对话中保持清醒。附完整可运行 Demo 代码和真实运行结果分析。

·13 min read

Agent系列(二):ReAct——Agent 的「思考-行动」循环

深入解析 ReAct(Reasoning + Acting)范式:Thought → Action → Observation 三元组循环如何让 Agent 真正"思考"。附完整可运行示例代码,展示 5 个真实场景的执行追踪,以及如何用 recursion_limit 防止 Agent 失控。

·16 min read

Agent系列(三):Plan-and-Solve——先想清楚,再动手

深入解析 Plan-and-Solve 范式:当 ReAct 的贪心策略在复杂任务上撞墙,如何引入显式规划层突破瓶颈。附完整 LangGraph 实现代码,展示 Plan → Execute → Replan → Finalize 四阶段架构,以及真实运行中的 5 个有趣发现。

·14 min read

Agent 系列(一):Agent 是什么——不只是「会调工具的 LLM」

Agent 系列第一篇。厘清 LLM、Chatbot、Agent 三者的本质区别,理解 Agent 的四要素,以及流程驱动 vs AI Native 两种范型——帮你搞清楚什么时候该用 Agent,什么时候 LLM 直接调用就够了。

·14 min read

让 AI Agent 更可靠:Harness Engineering 与多 Agent 系统工程实践

本文从实际项目痛点出发,系统介绍 Harness Engineering 框架、5 种多 Agent 协作模式、Claude Code 长期记忆方案和持续学习机制,帮助你构建稳定、高效的 AI Agent 系统。

·14 min read

RAG 系列(二十三):多模态 RAG——图片、表格也能检索

RAG 系列第二十三篇。真实文档里 30%–50% 的信息藏在图片和表格里,文本 RAG 完全看不到。三条处理路线:OCR/解析提取后文本化(最成熟)、CLIP 多模态 Embedding(图文同一向量空间)、ColPali 直接把 PDF 页面当图像处理(2024 年最新方法,绕开文本提取)。每条路线各自的适用场景和局限。

·11 min read

RAG 系列(二十四):代码 RAG——让 AI 理解你的代码库

RAG 系列最终篇。代码不是文档,它有结构(函数/类)、语义(docstring)和调用关系(call graph)——普通文本分块会把这些全部丢掉。本文用 AST 解析 llm-in-action 代码库(22 个 Python 文件、225 个代码单元),构建调用图(168 条边),实现语义代码搜索和调用链查询。代码运行结果:`build_self_rag_graph` 的完整下游调用链、`main` 的 54 个直接调用、`build_index` 的调用树全部被正确找出。

·10 min read

RAG 系列(二十):企业级 RAG 架构设计

RAG 系列第二十篇。Demo 级 RAG 对所有用户共享同一个向量库,任何人都能检索到任何内容。企业场景需要三件事:多租户隔离(不同公司/部门的知识库互不可见)、权限控制(工程师看不到 HR 文档,HR 看不到财务数据)、服务化(缓存重复问题 + 限流防止滥用)。本文用 Qdrant Collection 实现多租户,用元数据过滤器做权限控制,用滑动窗口实现限流,5 个场景验证全部通过。

·10 min read

RAG 系列(二十一):性能优化——又快又省钱

RAG 系列第二十一篇。一次 RAG 请求涉及两种 API 调用:Embedding 和 LLM,都是按量计费且有延迟。四种优化:LLM 响应缓存(相同问题 0ms 返回,5057ms→0.8ms)、Embedding 缓存(重复文本零 API 调用)、Semantic Cache(相似问题复用答案,但阈值校准是难点)、异步批量 Embedding(12 条文本 2.87x 加速)。每种优化独立测量,数据说话。

·10 min read

RAG 系列(二十二):长上下文 vs RAG——要不要 RAG

RAG 系列第二十二篇。Gemini 1.5 Pro 和 Claude 的百万 token 上下文窗口,让一部分人觉得 RAG 要过时了。这篇文章拆解两条路的实际代价:长上下文在成本和延迟上不是免费午餐;RAG 的检索会出错,召回不全。最后给出一个决策框架:文档量、更新频率、查询次数、延迟要求四个维度定位你的场景,再加一种两者兼用的混合策略。

·8 min read

理发师会被 AI 取代吗?这可能是 AI 时代最有意思的一个社会学问题

本文以理发师行业为切口,深度探讨 AI 时代下职业替代的边界。从手艺、审美、身体接触到人际关系,思考为什么越是虚拟化的时代,那些站在“技术”和“人味”交界处的职业反而越具有稀缺价值。

·9 min read

RAG 系列(十六):Graph RAG——用知识图谱解决多跳关系问题

RAG 系列第十六篇。向量检索找的是"相似文档",对实体间的关系网络是盲的。Graph RAG 把文档构建成知识图谱,用图遍历代替相似度搜索。12篇文档提取出 176节点/139条边,实测 context_precision 从 0.729 提升到 0.948(+0.219),但 context_recall 略降 0.062——图谱检索精准度与召回率的真实权衡。

·10 min read

RAG 系列(十七):Agentic RAG——让 Agent 主导检索过程

RAG 系列第十七篇。Pipeline RAG 把检索结果原封不动传给 LLM,好坏都将就。Agentic RAG 把检索变成工具:先分类问题选策略,检索后打质量分,不合格就换策略重试。8条问题中 2条直接生成跳过检索,4条触发了 re-route——Agent 在真实地做决策,而不是走过场。

·10 min read

RAG 系列(十八):Conversational RAG——多轮对话中的代词陷阱

RAG 系列第十八篇。单轮 RAG 每次都把原始问题直接送检索,但"它有哪四个指标""其中哪个最难提升"这类追问在没有上下文时检索会完全失效。History-Aware Retriever 在检索前先把当前问题改写成独立完整的问题,让追问也能拿到正确上下文。实验也揭示了一个有趣的反转:RAGAS 指标在这个测试里没有体现出优势,但定性对比明白无误地展示了问题改写的价值。

·9 min read

RAG 系列(十九):增量更新——知识库如何保持新鲜

RAG 系列第十九篇。知识库每天都在变:文档更新、新增、下线。Naive RAG 的做法是全量重建索引,把所有文档重新 embed 一遍。LangChain Indexing API 通过内容哈希追踪每篇文档,只 embed 真正发生变化的部分。实验中 7 篇文档、3 篇未变——增量更新只触发了 4 次 embed 调用,而不是 7 次,节省 42.9%。这个比例在规模增大后会更显著。

·8 min read

RAG 系列(十五):CRAG——检索结果不好时自动纠偏

RAG 系列第十五篇。传统 RAG 盲目信任检索结果,知识库覆盖不到时照样生成。CRAG 的思路:先给检索结果打分,不合格就触发网络搜索兜底。用 LangGraph 实现完整流程,实测 context_precision 从 0.444 提升到 0.875(+0.431),是本系列单项提升最大的一次。

·9 min read

RAG 系列(十四):Self-RAG——让模型决定要不要检索

RAG 系列第十四篇。传统 RAG 每次都检索,即使问题根本不需要外部知识。Self-RAG 用四个反思 token 让模型自主决策。用 LangGraph 实现完整流程:Retrieve 决策→相关性过滤→生成→Support 评估。实测:context_precision +0.104,但 token 消耗反增 2.4x——深挖这个反直觉结果背后的原因。

·10 min read

企业引入 AI 之后,为什么提效不明显?

Token 消耗越来越多,每个员工能干的活也越来越多,但整体业务却纹丝不动——这不是 AI 不够强,而是组织的协调基础设施成了新的瓶颈。本文梳理 8 大痛点与 7 条优化路径,帮你把"感觉 AI 没用上"变成"知道哪里卡住了"。

·10 min read

RAG 系列(十三):查询优化——让问题问得更好

RAG 系列第十三篇。为什么向量检索会因为问法不同而大幅波动?Multi-Query 如何用多角度问法扩大召回面?HyDE 为什么用"假答案"检索比用问题检索更准?Query Decomposition 如何拆解复杂问题?用 RAGAS 实测四种策略:context_recall 从 0.625 提升到 0.875。附完整代码。

·9 min read

RAG 系列(十一):Rerank——让检索结果按重要性排队

RAG 系列第十一篇。向量检索召回的文档,排序质量到底有多差?Cross-Encoder 和 Bi-Encoder 的本质区别是什么?如何用 ContextualCompressionRetriever 接入 Reranker?用 RAGAS 实测:context_precision 从 0.552 提升到 0.792。附完整 LangChain 实现代码。

·8 min read

RAG 系列(十二):高级分块策略——Parent-Child 与 Contextual Retrieval

RAG 系列第十二篇。Naive 分块有什么根本缺陷?Parent-Child 如何用小块检索、大块返回?Anthropic 的 Contextual Retrieval 给每个 Chunk 加上什么?用 RAGAS 实测三种策略:context_recall 从 0.625 提升到 0.875,context_precision 从 0.583 提升到 0.938。附完整 LangChain 实现代码。

·7 min read

RAG 系列(十):混合检索——让召回更全面

RAG 系列第十篇。纯向量检索遇到精确关键词时为什么会失效?BM25 和向量检索各自擅长什么?RRF 融合算法怎么工作?用代码实测 6 组查询,用 MRR 指标量化三种检索策略的差异,附 LangChain EnsembleRetriever 完整实现。

·9 min read

RAG 系列(九):效果不好怎么定位——用 RAGAS 做根因诊断

RAG 系列第九篇。RAG 回答质量差,是检索问题还是生成问题?本文构建一套诊断决策树,通过故意制造 3 种典型问题(检索召回不足、生成幻觉、答案偏题),用 RAGAS 指标精准定位根因,附完整可运行代码。

·9 min read

RAG 系列(八):RAG 评估体系——用数据说话

RAG 系列第八篇。RAG 系统怎么知道好不好?"感觉不错"不是标准。用 RAGAS 四个核心指标(Faithfulness、Answer Relevancy、Context Precision、Context Recall)量化评估 RAG 质量,从构建测试集到输出评估报告的完整实战。

·12 min read

RAG 系列(三):调对这 4 个参数,让你的 RAG 从「能用」变「好用」

RAG 系列第三篇。Chunk Size、Chunk Overlap、Top-K、Embedding Model 这四个参数怎么选?用控制变量实验对比不同参数组合的效果,附参数选择决策树和 5 个最常踩的坑。

·13 min read

RAG 系列(四):文档处理——从原始文件到高质量 Chunk

RAG 系列第四篇。4 种分块策略深度对比:固定大小、递归字符、语义分块、文档结构分块。用同一份 Markdown 文档实测每种策略的效果差异,附可视化对比和选型决策表。

·11 min read

RAG 系列(五):Embedding 模型——语义理解的核心

RAG 系列第五篇。Embedding 是什么?为什么它能表示语义?OpenAI、BGE、Cohere 等主流模型怎么选?用 MTEB 榜单看懂模型排名,用同一批中文文档实测 OpenAI vs BGE 的检索差异。

·9 min read

RAG 系列(六):向量数据库——存储与检索的基础设施

RAG 系列第六篇。向量数据库的核心能力是什么?Chroma、Qdrant、Weaviate、pgvector、Pinecone 怎么选?元数据过滤和相似度算法怎么用?用 Chroma 跑开发和 Qdrant 跑生产的完整代码。

·10 min read

RAG 系列(七):检索策略——如何找到最相关的内容

RAG 系列第七篇。相似度检索、MMR、阈值过滤、Self-Query 四种检索策略有什么区别?MMR 如何解决结果重复?Self-Query 怎么让 LLM 自动生成过滤条件?用代码实测对比四种策略的效果差异。

·10 min read

RAG 系列(二):用 LangChain 搭建你的第一个 RAG Pipeline

RAG 系列第二篇。用 LangChain 1.x + ChromaDB + SiliconFlow 拆解 RAG 六大组件,附完整可运行的 PDF 问答代码。所有源码可在 GitHub 获取。

·16 min read

RAG 系列(一):大模型为什么需要「外挂记忆」

RAG 系列第一篇。从 LLM 的两个根本局限出发,搞清楚 RAG 是什么、为什么需要它,以及它和微调、长上下文的本质区别。附 100 行手写最小 RAG 实现。

·11 min read

烧了数千美金 Token,我用 AI Agent 打通了企业级 Bug 修复全流程

在企业内部真实落地的 AI Bug 修复端到端自动化实践复盘。从 Jira 取单、日志分析、代码修复、Code Review、SonarQube 扫描、单元测试,到 Gerrit 提交、CI/CD 验证,12 个节点全程 AI 驱动。记录了 6 个真实测试场景,包括重试机制、会话续接、人工确认门等工程细节。

·13 min read

SubAgent 原理深度解析:AI 系统如何通过委托实现专业化分工

从上下文爆炸的工程痛点出发,深入解析 SubAgent 的核心模型、委托机制、三种执行模式与两种通信范式,结合 Claude Code 的完整实现,帮你真正搞懂 AI 系统的专业化分工原理。

·13 min read

Android 开发要变天了:Google 专为 Agent 重建工具链,Token 减少 70%、速度提升 3 倍

Google 发布了专为 AI Agent 设计的三大工具组件——Android CLI、Android Skills 与 Android Knowledge Base。这不是"IDE 里又加了个 AI 助手",而是在宣告移动开发的 Agent 时代正式到来。

·10 min read

你的 Skill 真的好用吗?用 Eval 系统化验证 Agent 技能

从四条 Skill 失效路径出发,介绍如何用 Eval 体系针对 Outcome、Process、Style、Efficiency 四个维度系统化验证 Agent Skill,让"感觉不错"变成"数据说话"。

·10 min read

AI Native 时代的 CI/CD:从“手工流水线”到“智能驾驶舱”的范式演进

借用企业从传统工厂到智能化无人工厂的进化过程,类比 CI/CD 如何从 Jenkins 时代的“手工组装”进化为 AI Native 时代的“自动驾驶”,深度剖析 Harness 等下一代 DevOps 平台的底层逻辑。

·6 min read

Claude Code 实战经验分享(上篇):从启动到并发协同

系统梳理 Claude Code 的进阶启动技巧、CLAUDE.md 配置、三种对话模式与典型工作流,以及多任务并发操作实践。帮你在日常开发中更高效地使用 Claude Code。

·10 min read

Claude Code 实战经验分享(下篇):记忆、规则、权限与快捷操作

深入 Claude Code 的记忆机制、规则约束体系、配置作用域与权限管理,并系统梳理日常高频快捷操作,帮你构建一套符合个人和团队习惯的 CC 使用方式。

·10 min read

大模型就是你雇的员工:从职场管理学看 AI 协作范式的三次进化

用企业从创业团队到成熟组织的进化过程,类比 Prompt Engineering → Context Engineering → Harness Engineering 的演进脉络,并预测下一步的两个方向。

·15 min read

5种来自谷歌的Agent Skill设计模式:减少Token浪费,精准触发正确行为

整理自Google ADK智能体工程专家Lavi Nigam的核心内容,总结5种可落地的SKILL.md设计模式,帮助开发者减少Token浪费、提升Skill编写质量。

·9 min read

2026 GDPS 大会洞见:企业级 Agent、AI Native 与一人公司

从全球开发者先锋大会(GDPS)观察 OpenClaw、Harness 工程、Skill 资产与 AI Native 开发范式,梳理企业级 Agent 平台的方向与落地要点。

·14 min read

从 Prompt 工程师到 Harness 工程师:AI 协作范式的三次进化

深入解析 Prompt Engineer、Context Engineer、Harness Engineer 三个概念的演变脉络,用人类世界的经典类比让你彻底搞懂什么是"驾驭 AI"的正确姿势

·16 min read

OpenClaw 实战:SKILL安装极简指南,让你的 Agent 真正干活

安装完 OpenClaw 只能聊天?本文带你攻克 SKILL 配置难点,教你通过 Clawhub 和 Vercel Semantic Search 快速寻找并安装 Agent 技能。

·4 min read

OpenClaw 深度解析(八):Skill 系统——让 LLM 按需学习工作流

从"AI 怎么知道用哪个命令查天气"出发,推导 SKILL.md 的格式设计、多来源优先级发现、资格过滤、渐进式披露注入模式,以及用户可触发的 /命令 路径和确定性工具分发机制。

·11 min read

OpenClaw 深度解析(五):模型与提供商系统

从"同时配置 Claude 和 Kimi"的场景出发,推导 OpenClaw 的模型寻址机制、提供商自动发现、模型别名、回退链、认证档案轮转,以及第三方提供商如何通过 Plugin SDK 接入。

·11 min read

OpenClaw 深度解析(六):节点、Canvas 与子 Agent

从"AI 助手如何突破单进程边界"出发,推导 Node Host(远程执行沙盒)、Canvas(移动端交互 UI)、A2UI(原生桥接)和子 Agent(并行任务分解)的设计逻辑。

·10 min read

OpenClaw 深度解析(七):安全模型与沙盒

从"如何在多人服务器上安全部署 AI 助手"出发,系统梳理 Gateway 认证层、工具策略管道、Docker 沙盒隔离、密钥提供商体系、外部内容防注入,以及涵盖数十项检查的安全审计框架。

·13 min read

OpenClaw 深度解析(四):插件 SDK 与扩展开发机制

从"如何接入一个新的消息平台"出发,推导 Plugin SDK 的完整设计:稳定契约、通道扩展协议、生命周期钩子、服务注册,以及四级来源的安全发现机制。

·12 min read

OpenClaw 源码精读(3):Agent 执行引擎——AI 如何「思考」并与真实世界交互?

从一条消息触发 AI 开始,逐层剖析 OpenClaw 的 Agent 执行引擎:Lane 串行队列、单次执行的五个阶段、流式订阅的三层过滤、工具策略的四重防护、以及处理速率限制/上下文溢出的外层重试循环。

·13 min read

OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"

从用户真实使用场景出发,层层推导 OpenClaw Gateway 的设计:为什么需要它、为什么选 WebSocket、为什么设计三层认证、为什么用扁平 Handler Map。每一个设计决策都从具体问题出发,而不是凭空出现。

·14 min read

OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?

从一个具体难题出发,逐层推导 OpenClaw 的 Channel 插件接口、SessionKey 格式、七级路由优先级、dmScope 四种会话隔离模式,以及 identityLinks 跨平台身份合并机制。每一个设计都有明确的问题驱动它。

·11 min read

Anthropic 十大企业插件深度剖析:AI 正式进入白领工作腹地

深度解析 Anthropic 最新发布的 10 个 Claude Cowork 企业插件,从技术架构到行业影响,看 AI Agent 如何重塑金融、HR、设计和工程领域的工作方式

·9 min read

AI阅读法:如何借助大模型大幅提升阅读效率

分享使用AI辅助阅读的实战经验,通过结构化提问和迭代追问,快速掌握书籍核心内容,大幅提升阅读效率和学习效果

·28 min read

【Cursor进阶实战·07】OpenSpec实战:告别"凭感觉",用规格驱动AI编程

从Vibe Coding到Spec Coding的质量飞跃。通过OpenSpec实现规格驱动开发,让AI生成"对的代码"而不是"猜的代码",减少返工,提升代码质量30%以上。

·21 min read

AI时代的"工具自由":我是如何进入细糠时代的

AI不仅改变了我们写代码的方式,更改变了我们与工具的关系。从工具的囚徒到工具的主人,从粗放式使用到精细化定制,这是一场关于掌控感和创造力的革命。

·13 min read

物理AI:从理解语言到理解世界的跨越

深入解析英伟达在CES 2026发布的物理AI技术,探讨它与传统大模型的本质区别,揭秘如何让AI理解物理世界规律,以及这项技术将如何颠覆自动驾驶、机器人等领域

·18 min read

【Cursor进阶实战·06】MCP生态:让AI突破编辑器边界

告别工具孤岛!通过MCP协议连接数据库、GitHub、云服务等外部工具,让Cursor AI从"单机助手"升级为"生态中枢",实现真正的全栈AI协同开发。

·24 min read

【Cursor进阶实战·04】工作流革命:从"手动驾驶"到"自动驾驶"

告别重复劳动!通过Rules、Context、Hooks三大工具,让Cursor从被动响应升级为主动协同的AI编程伙伴。配置一次,终身受益。

·21 min read

【Cursor进阶实战·05】复述确认法:让AI先理解再执行,避免"瞎改"代码

解决AI编程中最常见的痛点——需求理解偏差。通过让AI先复述需求再执行,建立双向确认机制,大幅降低代码改错的返工成本。简单一招,让AI从"自以为是"变成"靠谱伙伴"。

·9 min read

Google工程师力作:《智能体设计模式》——从LLM到Agent的跃迁指南

Google CloudAI工程师Antonio Gulli倾力打造的实战宝典,21个设计模式带你掌握AI Agent核心架构,从模型调用到智能体系统的完整演进路径

·8 min read

【Cursor进阶实战·03】四大模式完全指南:Agent/Plan/Debug/Ask的正确打开方式

模式选对,效率翻倍!深度解析Cursor的Agent、Plan、Debug、Ask四种工作模式,掌握什么场景用什么模式,避免"AI乱改代码"的陷阱。

·28 min read

【Cursor进阶实战·02】告别丑陋界面!让AI当你的产品+UI专家,3步生成专业设计

无需设计师、无需学设计、无需限定技术栈!让Cursor扮演产品专家和UI专家,生成静态HTML设计稿,然后还原到任何技术栈(Web/Android/iOS)。一次设计,多端复用。

·11 min read

【Cursor进阶实战·01】Figma设计稿一键还原:Cursor + MCP让前端开发提速10倍

告别手工测量像素!通过Cursor + MCP技术直接读取Figma设计元数据,自动生成高质量前端代码,开发效率提升10倍。本文详细介绍配置方法、实战案例和进阶技巧。

·20 min read

思维链魔法:让AI从"算不对"到"步步为营"的提示技巧

深入解析Chain of Thought和Zero-shot CoT两种思维链提示技术,通过对比实验揭示如何让大语言模型展现逐步推理能力,大幅提升复杂任务准确率

·14 min read

链式提示:把复杂任务"化整为零"的AI编排艺术

深入讲解Prompt Chaining技术,学会将复杂任务拆解为子任务链条,通过实战案例演示如何提升LLM应用的可靠性、透明度和可控性

·20 min read

驯服AI的"白日梦":十大策略让大模型幻觉无所遁形

深度剖析大模型幻觉的成因与分类,系统讲解从提示工程到模型训练的十大实战策略,带你全面理解并有效减轻LLM的幻觉问题

·22 min read

RAG完全指南:从"死记硬背"到"开卷考试"的AI进化之路

深度解析检索增强生成(RAG)技术原理与实战,通过生动类比和完整代码示例,带你从零搭建基于LangChain+Weaviate的RAG系统

·16 min read

RAG调优实战:12个让检索增强生成从"能用"到"好用"的关键策略

从数据科学家的视角深度解析RAG系统的12种调优策略,涵盖数据索引和推理两大阶段,帮助你把RAG应用从原型推向生产环境

·19 min read

提示工程实战:用示例让AI更懂你

深入探讨Prompt工程中的示例技巧,通过1-shot和Few-shot方法让ChatGPT精准理解你的需求,告别低效沟通

·14 min read

OpenAI官方Prompt工程六大原则:从入门到精通

深度解读OpenAI官方发布的Prompt Engineering指南,系统讲解写清晰指令、提供参考文本、任务拆解、给予思考时间、使用外部工具、系统测试六大核心原则,助你掌握99%的Prompt优化技巧

·21 min read

Prompt工程进阶:用角色扮演让AI成为领域专家

深入探讨角色扮演(Role-Playing)在Prompt工程中的应用,通过三步法让ChatGPT化身专业面试官、写作导师、数学老师,掌握提升AI专业性的核心技巧

·16 min read

GPT 技术原理详解 - 从“顺口溜”到智能对话

用通俗易懂的方式拆解 GPT(生成式预训练转换器)的技术原理,包括 G、P、T 三个字母的含义、Transformer 的工作方式,以及 ChatGPT 背后的 RLHF 训练方法。

·9 min read

Prompt工程入门:如何让AI成为你的得力助手

从零开始学习Prompt提示语的艺术,掌握与ChatGPT高效沟通的技巧,让AI真正理解你的需求并提供精准答案

·12 min read

结构化Prompt:让ChatGPT从"听不懂"到"秒理解"的终极秘籍

深度解析结构化Prompt技术,从随意提问到系统化设计,掌握让AI精准响应的高级技巧,附完整实战模板

·17 min read

ChatGPT使用秘籍:10个让AI输出质量翻倍的实战策略

总结10个经过验证的ChatGPT使用技巧,从多种表述到引导词,从话题隔离到指令分隔,帮你避开常见误区,让AI成为真正的效率倍增器

·17 min read

揭秘大模型的“记忆力”:Token和上下文窗口完全指南

深入浅出地讲解什么是Token、上下文窗口以及它们如何影响AI的表现,带你理解大语言模型工作的底层机制

·11 min read

Cursor 2.2 新功能 - Browser 可视化编辑器,让前端开发“指哪打哪”

Cursor 2.2 版本引入了 Browser Visual Editor 功能,支持在浏览器中直接点选元素修改代码、拖拽调整布局,让设计与开发的距离前所未有地近。

·8 min read

一招让你的 Cursor 不再瞎改代码

借鉴职场沟通中的"复述确认"技巧,让 AI 编程助手在动手前先说清楚它要做什么,从根本上避免需求理解偏差导致的代码返工和破坏。

·8 min read

入门大模型必知的100个基础问题(附简明答案)

从大模型概念、Transformer与注意力、训练与优化到评估、部署与安全,整理100个入门常见问题与简明答案,便于快速查阅。

·16 min read

AI基础知识拆解:从概念到实践的完整指南

深入浅出地讲解人工智能、机器学习、深度学习的核心概念,通过生动的类比和实例帮助你理解AI训练过程、过拟合与欠拟合等关键知识点

·10 min read

阿里通义实验室大模型面试题汇总

整理阿里通义实验室(Qwen团队)大模型方向的三轮面试题目,涵盖模型架构、训练优化、推理加速、RAG等核心知识点

·5 min read