<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Dify on CAO ZUOHUA</title><link>https://caozuohua.github.io/tags/dify/</link><description>Recent content in Dify on CAO ZUOHUA</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Sat, 26 Sep 2026 20:40:00 +0800</lastBuildDate><atom:link href="https://caozuohua.github.io/tags/dify/index.xml" rel="self" type="application/rss+xml"/><item><title>Dify 深度玩法（五）：Agent、MCP 与一个完整实战</title><link>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-05-agent-mcp-practice/</link><pubDate>Sat, 26 Sep 2026 20:40:00 +0800</pubDate><guid>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-05-agent-mcp-practice/</guid><description>&lt;h1 id="dify-深度玩法五agentmcp-与一个完整实战"&gt;Dify 深度玩法（五）：Agent、MCP 与一个完整实战&lt;/h1&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;上一篇：&lt;a href="https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-04-rag/"&gt;RAG 深度玩法&lt;/a&gt;。&#10;本篇是收官：先讲清 Agent 与 Workflow 的分工原则，再讲 MCP 的实际价值，最后把整个系列串成一个跑得通的真实项目——博客勘误官。&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="agent-与-workflow谁管什么"&gt;Agent 与 Workflow：谁管什么&lt;/h2&gt;&#10;&lt;p&gt;新版 Dify 的 Agent 带来了 Linux 沙箱与技能（Skills）体系：Agent 可以在隔离环境里执行命令、管理文件、按需安装依赖。能力变强之后，最重要的设计原则反而是&lt;strong&gt;克制&lt;/strong&gt;：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Agent 管判断&lt;/strong&gt;：任务路径开放的环节——自己决定查什么、跑哪个脚本、怎么补证据；&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Workflow 管编排&lt;/strong&gt;：触发、顺序、分支、审批门、重试、归档——所有需要确定性的环节。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;div class="mermaid"&gt;&#10;flowchart TD&#10; T[&amp;#34;定时 / 表单触发&amp;#34;] --&amp;gt; W[&amp;#34;Workflow 编排层&amp;lt;br/&amp;gt;触发·顺序·审批门·重试·归档&amp;#34;]&#10; W --&amp;gt; A{&amp;#34;需要开放判断？&amp;#34;}&#10; A -- &amp;#34;否：路径确定&amp;#34; --&amp;gt; N[&amp;#34;普通节点链&amp;lt;br/&amp;gt;LLM·Code·HTTP·知识检索&amp;#34;]&#10; A -- &amp;#34;是：现场决定做什么&amp;#34; --&amp;gt; AG[&amp;#34;Agent 节点&amp;lt;br/&amp;gt;沙箱内自主执行&amp;#34;]&#10; N --&amp;gt; O[&amp;#34;出口：API / Web App / MCP / 推送&amp;#34;]&#10; AG --&amp;gt; O&#10;&lt;/div&gt;&#10;&lt;script type="module"&gt;&#10; import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';&#10; mermaid.initialize({&#10; startOnLoad: true,&#10; theme: 'neutral',&#10; securityLevel: 'strict',&#10; flowchart: { curve: 'basis' }&#10; });&#10;&lt;/script&gt;&#10;&lt;p&gt;反例是&amp;quot;一个 Agent 干全部&amp;quot;：触发它自己定、写操作它自己批、失败它自己咽——这类流程出问题时你连现场都还原不了。&lt;strong&gt;自主性是成本，不是默认值。&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Dify 深度玩法（四）：RAG 做到什么程度才算到位</title><link>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-04-rag/</link><pubDate>Sat, 26 Sep 2026 20:30:00 +0800</pubDate><guid>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-04-rag/</guid><description>&lt;h1 id="dify-深度玩法四rag-做到什么程度才算到位"&gt;Dify 深度玩法（四）：RAG 做到什么程度才算到位&lt;/h1&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;上一篇：&lt;a href="https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-03-node-customization/"&gt;节点自定义的五个层级&lt;/a&gt;。&#10;自托管 Dify 的 RAG 不是&amp;quot;上传文档然后问答&amp;quot;，而是一条每一段都能调参的流水线，且没有云版的容量阉割。&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="全链路入库与查询"&gt;全链路：入库与查询&lt;/h2&gt;&#10;&lt;div class="mermaid"&gt;&#10;flowchart LR&#10; subgraph IN [&amp;#34;入库侧（一次性）&amp;#34;]&#10; A[&amp;#34;多源接入&amp;lt;br/&amp;gt;文档·网页·Notion·API&amp;#34;] --&amp;gt; B[&amp;#34;分块&amp;lt;br/&amp;gt;通用·父子·问答对&amp;#34;]&#10; B --&amp;gt; C[&amp;#34;双路索引&amp;lt;br/&amp;gt;向量 + 关键词&amp;#34;]&#10; end&#10; subgraph Q [&amp;#34;查询侧（每次请求）&amp;#34;]&#10; D[&amp;#34;查询预处理&amp;lt;br/&amp;gt;改写·分类路由&amp;#34;] --&amp;gt; E[&amp;#34;混合检索&amp;lt;br/&amp;gt;向量+全文+元数据过滤&amp;#34;]&#10; E --&amp;gt; F[&amp;#34;重排&amp;lt;br/&amp;gt;rerank 精排&amp;#34;]&#10; F --&amp;gt; G[&amp;#34;带引用生成&amp;lt;br/&amp;gt;可拒答·可溯源&amp;#34;]&#10; end&#10; C -.-&amp;gt;|&amp;#34;查询时检索&amp;#34;| E&#10;&lt;/div&gt;&#10;&lt;script type="module"&gt;&#10; import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';&#10; mermaid.initialize({&#10; startOnLoad: true,&#10; theme: 'neutral',&#10; securityLevel: 'strict',&#10; flowchart: { curve: 'basis' }&#10; });&#10;&lt;/script&gt;&#10;&lt;p&gt;平台能力是现成的。&lt;strong&gt;效果差异来自三个你自己做的决定：分块策略、检索模式、元数据设计。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;h2 id="效果的四层阶梯"&gt;效果的四层阶梯&lt;/h2&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;层次&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;做出来的效果&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;依赖能力&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1. 基础问答&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;回答带引用来源，知识库里没有就明确说不知道&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;混合检索 + 重排 + 阈值&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;2. 精准知识库&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;长文档问答不丢上下文；检索自动限定在某类文档&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;父子分段 + 元数据过滤&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;3. 可编程检索流水线&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;查询改写、分类路由、多库检索、生成前校验全部画进画布&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;RAG 流水线 / Chatflow&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;4. 外挂检索引擎&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Dify 只当编排层，检索打到你自己写的 API（ES、数据库、自建向量服务）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;外部知识库 API&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;第 2、4 层是自托管的意义所在：云版免费额度装不下，而外部知识库接口意味着可以整体绕开内置向量库。&lt;/p&gt;</description></item><item><title>Dify 深度玩法（三）：节点自定义的五个层级</title><link>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-03-node-customization/</link><pubDate>Sat, 26 Sep 2026 20:20:00 +0800</pubDate><guid>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-03-node-customization/</guid><description>&lt;h1 id="dify-深度玩法三节点自定义的五个层级"&gt;Dify 深度玩法（三）：节点自定义的五个层级&lt;/h1&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;上一篇：&lt;a href="https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-02-deploy-and-keys/"&gt;部署选型与模型 Key&lt;/a&gt;。&#10;进了画布，第一个问题是&amp;quot;这东西到底能改多深&amp;quot;。答案是分层看：&lt;strong&gt;参数、逻辑、数据流三层几乎不设限；节点类型可靠插件扩展；硬边界只有两处。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="五个层级总览"&gt;五个层级总览&lt;/h2&gt;&#10;&lt;div class="mermaid"&gt;&#10;flowchart TD&#10; L1[&amp;#34;L1 参数级&amp;lt;br/&amp;gt;每个节点的配置项&amp;#34;] --&amp;gt; L2[&amp;#34;L2 逻辑级&amp;lt;br/&amp;gt;Code 与 HTTP 逃生门&amp;#34;]&#10; L2 --&amp;gt; L3[&amp;#34;L3 数据流级&amp;lt;br/&amp;gt;变量系统 + 容错策略&amp;#34;]&#10; L3 --&amp;gt; L4[&amp;#34;L4 节点类型级&amp;lt;br/&amp;gt;插件定义新节点&amp;#34;]&#10; L4 --&amp;gt; L5[&amp;#34;L5 协议级&amp;lt;br/&amp;gt;DSL 手改 + 外部知识库 API&amp;#34;]&#10; L1 -.- N1[&amp;#34;自由度：低，但覆盖日常&amp;#34;]&#10; L2 -.- N2[&amp;#34;自由度：高，万能逃生门&amp;#34;]&#10; L4 -.- N4[&amp;#34;自由度：最高，成本也最高&amp;#34;]&#10;&lt;/div&gt;&#10;&lt;script type="module"&gt;&#10; import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';&#10; mermaid.initialize({&#10; startOnLoad: true,&#10; theme: 'neutral',&#10; securityLevel: 'strict',&#10; flowchart: { curve: 'basis' }&#10; });&#10;&lt;/script&gt;&#10;&lt;h2 id="l1-参数级每个节点都有一层配置"&gt;L1 参数级：每个节点都有一层配置&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;LLM 节点&lt;/strong&gt;：每个节点独立选模型、独立调参数（温度、最大输出等），提示词模板可引用任意上游变量，支持结构化输出、视觉输入、会话记忆。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;知识检索节点&lt;/strong&gt;：可挂多个知识库，检索模式、返回条数、相似度阈值、重排模型逐项可配。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;问题分类器 / 参数提取器&lt;/strong&gt;：分类类别和抽取字段完全由你定义，抽取方式可选函数调用或提示词驱动。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;这一层覆盖了八成日常需求，特点是&amp;quot;改配置不改逻辑&amp;quot;。&lt;/p&gt;&#10;&lt;h2 id="l2-逻辑级两个万能逃生门"&gt;L2 逻辑级：两个万能逃生门&lt;/h2&gt;&#10;&lt;p&gt;&lt;strong&gt;Code 节点&lt;/strong&gt;（Python 3.10+ 或 Node.js 18+）负责任意数据变换。一个真实可用的例子——对抓取结果做归一化去重：&lt;/p&gt;</description></item><item><title>Dify 深度玩法（二）：云版还是自托管？部署决策与模型 Key 清单</title><link>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-02-deploy-and-keys/</link><pubDate>Sat, 26 Sep 2026 20:10:00 +0800</pubDate><guid>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-02-deploy-and-keys/</guid><description>&lt;h1 id="dify-深度玩法二云版还是自托管部署决策与模型-key-清单"&gt;Dify 深度玩法（二）：云版还是自托管？部署决策与模型 Key 清单&lt;/h1&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;上一篇：&lt;a href="https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-01-positioning/"&gt;Dify 适合做什么&lt;/a&gt;。&#10;本篇回答第二个实际决策：在哪跑、接什么模型。&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="先澄清一个常见误解"&gt;先澄清一个常见误解&lt;/h2&gt;&#10;&lt;p&gt;很多人以为云版免费额度限制的是&amp;quot;调用量&amp;quot;。真实情况是：&lt;strong&gt;自带 API Key 的调用不消耗 Dify 的 message credits&lt;/strong&gt;（credits 只在使用 Dify 内置供应商时消耗）。云版免费版（Sandbox）真正的瓶颈是：&lt;/p&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;维度&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;云版 Sandbox（免费）&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;自托管 Community&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;应用数&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;5 个&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;不限&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;知识库&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;50 篇文档 / 50 MB&lt;/strong&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;取决于你的磁盘&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;本地模型（llama.cpp / Ollama）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;访问不到你的 localhost&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;容器内直连&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;费用&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;0（够用要升级到约 59 美元/月）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;0（电费与磁盘）&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;维护&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;无&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;升级需读 release note、改环境配置后重启&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;结论很直接：&lt;strong&gt;多项目 + RAG 的组合，云版免费版装不下&lt;/strong&gt;。应用数和知识库容量这两个上限，恰好卡在个人开发者的典型需求上。&lt;/p&gt;&#10;&lt;h2 id="三阶段部署路径"&gt;三阶段部署路径&lt;/h2&gt;&#10;&lt;p&gt;不建议二选一，建议分三步走：&lt;/p&gt;&#10;&lt;div class="mermaid"&gt;&#10;flowchart TD&#10; A[&amp;#34;第 1 步：云版免费账号&amp;lt;br/&amp;gt;用 0 到 2 天&amp;#34;] --&amp;gt; B[&amp;#34;第 2 步：本机 Docker 自托管&amp;lt;br/&amp;gt;正式开发&amp;#34;]&#10; B --&amp;gt; C[&amp;#34;第 3 步：迁移到 VPS&amp;lt;br/&amp;gt;需要对外服务时&amp;#34;]&#10; A -.- A1[&amp;#34;目的：熟悉节点与画布&amp;lt;br/&amp;gt;不绑自己的 Key，不建知识库&amp;#34;]&#10; B -.- B1[&amp;#34;目的：无配额限制&amp;lt;br/&amp;gt;直连本机 llama.cpp 或 Ollama&amp;#34;]&#10; C -.- C1[&amp;#34;目的：Web App 与 API 常在线&amp;lt;br/&amp;gt;本地模型改走云端 API&amp;#34;]&#10;&lt;/div&gt;&#10;&lt;script type="module"&gt;&#10; import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';&#10; mermaid.initialize({&#10; startOnLoad: true,&#10; theme: 'neutral',&#10; securityLevel: 'strict',&#10; flowchart: { curve: 'basis' }&#10; });&#10;&lt;/script&gt;&#10;&lt;p&gt;第 1 步不要投入任何东西——云版只用来确认&amp;quot;画布的工作方式你是否接受&amp;quot;。第 2 步才是正式开发环境。第 3 步等真的要给别人用时再做，因为自托管应用可以导出 DSL 迁移，前期投入不会浪费。&lt;/p&gt;</description></item><item><title>Dify 深度玩法（一）：它适合做什么，不适合做什么</title><link>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-01-positioning/</link><pubDate>Sat, 26 Sep 2026 20:00:00 +0800</pubDate><guid>https://caozuohua.github.io/posts/2026-09-26-dify-deep-dive-01-positioning/</guid><description>&lt;h1 id="dify-深度玩法一它适合做什么不适合做什么"&gt;Dify 深度玩法（一）：它适合做什么，不适合做什么&lt;/h1&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;本系列共五篇，基于 2026 年的 Dify（含新版 Agent 与 MCP 能力）整理自实际调研与项目设计。&#10;这一篇先回答最容易被跳过的问题：&lt;strong&gt;什么项目该用 Dify，什么项目用了反而更慢。&lt;/strong&gt;&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="一句话定位"&gt;一句话定位&lt;/h2&gt;&#10;&lt;p&gt;Dify 是一个 LLMOps 平台：把「可视化编排 + 知识库 RAG + Agent + 一键发布（Web App / API / 嵌入组件）」装进同一个画布。它与 LangChain 这类代码框架的本质区别是——&lt;strong&gt;Dify 是产品，LangChain 是框架&lt;/strong&gt;。框架给你最大自由，产品给你最快速度，代价是边界由平台划定。&lt;/p&gt;&#10;&lt;h2 id="三条判断标准"&gt;三条判断标准&lt;/h2&gt;&#10;&lt;p&gt;一个项目&amp;quot;适合 Dify&amp;quot;，通常同时满足三条：&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;逻辑主体是 IO + 数据整形 + LLM 判断&lt;/strong&gt;。抓数据、清洗、让模型打分或判定、输出文本——这条链路是 Dify 节点的母语。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;需要快速拿到可调用的出口&lt;/strong&gt;。你需要在几小时内拥有一个能点开的 Web App、一个 REST API、一个可嵌入的聊天组件，而不是先写两周前后端。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;改提示词的频率远高于改代码的频率&lt;/strong&gt;。Dify 上改一个 LLM 节点的 prompt 是秒级的，不需要重新发版。如果你的项目半年才改一次提示词，这个优势归零。&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;反过来，满足不了这三条的，用 Dify 通常更慢。下面这张决策图可以直接对着用：&lt;/p&gt;&#10;&lt;div class="mermaid"&gt;&#10;flowchart TD&#10; A[&amp;#34;接到一个 LLM 项目需求&amp;#34;] --&amp;gt; B{&amp;#34;逻辑主体是&amp;lt;br/&amp;gt;IO + 数据整形 + LLM 判断？&amp;#34;}&#10; B -- &amp;#34;不是：重计算/事务/低延迟&amp;#34; --&amp;gt; C[&amp;#34;直接写代码&amp;lt;br/&amp;gt;不要用 Dify&amp;#34;]&#10; B -- &amp;#34;是&amp;#34; --&amp;gt; D{&amp;#34;需要 3 天内拿到&amp;lt;br/&amp;gt;可给别人用的界面或 API？&amp;#34;}&#10; D -- &amp;#34;不需要，纯后台数据管道&amp;#34; --&amp;gt; E[&amp;#34;脚本也可以胜任&amp;lt;br/&amp;gt;Dify 是可选项&amp;#34;]&#10; D -- &amp;#34;需要&amp;#34; --&amp;gt; F{&amp;#34;会频繁调提示词&amp;lt;br/&amp;gt;和检索策略吗？&amp;#34;}&#10; F -- &amp;#34;不会&amp;#34; --&amp;gt; G[&amp;#34;写代码 + 配置文件&amp;lt;br/&amp;gt;更可控&amp;#34;]&#10; F -- &amp;#34;会&amp;#34; --&amp;gt; H[&amp;#34;用 Dify&amp;lt;br/&amp;gt;原型到生产都在画布上迭代&amp;#34;]&#10;&lt;/div&gt;&#10;&lt;script type="module"&gt;&#10; import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11/dist/mermaid.esm.min.mjs';&#10; mermaid.initialize({&#10; startOnLoad: true,&#10; theme: 'neutral',&#10; securityLevel: 'strict',&#10; flowchart: { curve: 'basis' }&#10; });&#10;&lt;/script&gt;&#10;&lt;h2 id="场景对照表"&gt;场景对照表&lt;/h2&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;场景&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;用 Dify&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;原因&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;多源抓取 → 清洗 → LLM 打分 → 输出日报&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;✅&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;典型的 IO + LLM 链路，改数据源不动代码&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;文档知识库问答（RAG）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;✅&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;分块、检索、重排、引用都是现成节点&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;一次性深度调研报告生成&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;✅&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;多 Agent 分工 + 引用校验节点&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;需要快速给客户演示的垂直领域助手&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;✅&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Web App 与 API 一键发布&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;高频低延迟 API（P95 要求数百毫秒内）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;❌&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;每个节点都有额外开销与队列&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;视频渲染、大规模数值计算&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;❌&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;沙箱 30 秒超时 + 内存上限，干不了重活&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;复杂有状态业务流程（事务、回滚、幂等）&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;❌&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;声明式分支表达不了状态机&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;逻辑需要严格 code review 与版本控制&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;⚠️&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;工作流导出为 YAML，diff 可读性差&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h2 id="关于拖拉拽的真实配比"&gt;关于&amp;quot;拖拉拽&amp;quot;的真实配比&lt;/h2&gt;&#10;&lt;p&gt;一个常见误解是&amp;quot;用 Dify = 纯拖拽&amp;quot;。实际项目里有效的配比是&lt;strong&gt;约八成拖拽、两成 Code 节点&lt;/strong&gt;：&lt;/p&gt;</description></item><item><title>标书控标排雷：构建售前经理的 AI Agent 工具库</title><link>https://caozuohua.github.io/posts/2026-08-27-tender-dehydration-agent/</link><pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate><guid>https://caozuohua.github.io/posts/2026-08-27-tender-dehydration-agent/</guid><description>&lt;h3 id="标书排雷售前经理的减负计划"&gt;标书排雷：售前经理的“减负”计划&lt;/h3&gt;&#10;&lt;p&gt;在售前工作中，标书分析往往是耗时最长且最容易遗漏细节的环节。动辄几百页的招标文件，包含着大量的技术指标、合规要求与潜在的“排雷”点。&lt;/p&gt;&#10;&lt;p&gt;为了提升售前效率，我计划构建一套基于 &lt;strong&gt;Dify&lt;/strong&gt; 的售前经理 AI Skill 工具库。本文将分享该项目的设计理念与技术实现。&lt;/p&gt;&#10;&lt;h3 id="1-为什么选择-agent-工具库"&gt;1. 为什么选择 Agent 工具库？&lt;/h3&gt;&#10;&lt;p&gt;标书分析的痛点在于“非结构化数据”与“动态标准”。不同行业、不同项目、不同客户的排雷规则完全不同，普通的搜索引擎或通用 LLM 无法处理复杂的规则约束。&lt;/p&gt;&#10;&lt;p&gt;我们需要的是一套可定制的 Agent 体系：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;竞品分析&lt;/strong&gt;：自动提取招标文件中的关键需求，对比已有产品优势。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;标书排雷&lt;/strong&gt;：基于规则库，动态识别招标文件中的敏感排他条款。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;配置报价&lt;/strong&gt;：根据需求自动匹配推荐方案。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="2-技术架构设计"&gt;2. 技术架构设计&lt;/h3&gt;&#10;&lt;p&gt;整个系统的核心在于**“数据前置处理 + Dify 智能编排”**。&lt;/p&gt;&#10;&lt;h4 id="第一阶段标书脱水-data-dehydration"&gt;第一阶段：标书脱水 (Data Dehydration)&lt;/h4&gt;&#10;&lt;p&gt;全量投喂 PDF 给 LLM 是极低效的。我设计了一个基于 Python 的前置处理流程：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;提取与降维&lt;/strong&gt;：使用 &lt;code&gt;pymupdf&lt;/code&gt; 提取文本，移除页眉页脚及冗余法律模板。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;结构化归一&lt;/strong&gt;：将分散的表格和条款转化为语义清晰的 Markdown 结构。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Token 节约&lt;/strong&gt;：只保留关键技术要求与限制条款，剔除 50% 以上无关字符，显著降低 LLM 压力，提升 RAG 检索准确度。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h4 id="第二阶段基于-dify-的动态排雷"&gt;第二阶段：基于 Dify 的动态排雷&lt;/h4&gt;&#10;&lt;p&gt;Dify 提供了理想的 Workflow 与知识库分组能力：&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;动态标准配置&lt;/strong&gt;：行业标准与规则以参数形式输入。&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;动态 Prompt&lt;/strong&gt;：Agent 根据当前“行业 + 场景 + 客户风格”标签，动态加载对应的排雷标准库。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="3-未来的扩展社交生态发布"&gt;3. 未来的扩展：社交生态发布&lt;/h3&gt;&#10;&lt;p&gt;商业计划的最后一步是公域传播。利用 Dify 的 API，我们将排雷后的合规知识点，自动摘要并脱敏，分发至小红书或抖音，构建售前经理的专业个人 IP。&lt;/p&gt;</description></item></channel></rss>