1. 先搞清楚 Dify 里的 AIAgent 到底在干什么很多人第一次打开 Dify 的工作流画布看到开始、LLM、知识库、条件分支这些节点会觉得“这不就是个流程图工具吗”。但当你真正想做一个能自己判断、自己调工具、自己决定下一步的 AIAgent 时问题就来了模型怎么知道该调用哪个工具调用完结果怎么回到对话里多个工具之间怎么串起来Dify 给出的答案是 Agent 节点 FunctionCalling 策略 MCP 工具接入。简单说Agent 节点负责“思考”FunctionCalling 策略负责“决定调哪个工具”MCP 负责“把外部能力接进来”。三者配合你就能在 Dify 里手搓出一个能查地图、查天气、查数据库的 AIAgent。这篇内容面向零基础开发者从工作流编排讲到 MCP 接入再给出可复制的配置骨架和统一 Key/API 通道的 settings.json 示例。你不需要先精通大模型原理跟着步骤走就能跑通第一个 Agent 应用。2. TaoToken 前置统一 Key 与 API 通道准备在 Dify 里驱动 Agent 的模型需要 API Key。如果你同时用多个模型供应商每个都去申请 Key、配环境变量、改 base_url维护成本会很高。我自己的做法是用 TaoToken 做统一通道一个 Key 走多个模型Dify 里只需要填一次。TaoToken 的官网入口是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 地址是 https://taotoken.net/api 。注意 API 地址后面不加 UTM 参数直接填到 Dify 的模型配置里即可。你需要先拿到 API Key。进入控制台创建 Key 的路径是 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 创建完成后复制以 sk- 开头的字符串。这个 Key 后面会同时用在 Dify 模型配置和本地 settings.json 里。如果你只是想在 Dify 里快速验证模型能不能通可以先用模型对话页面发一条消息测试 https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_contentmodelsutm_campaignrewrite 。确认返回正常后再回到 Dify 配置。注意Dify 的模型供应商配置里OpenAI-API-compatible 类型的 base_url 填 https://taotoken.net/api 不要带末尾斜杠也不要带 UTM 参数。3. 可复制配置Dify 工作流 MCP settings.json3.1 工作流骨架开始 → Agent → 结束先建一个最简单的三节点工作流。开始节点接收用户输入Agent 节点做策略决策结束节点输出结果。这个骨架和 excerpt 里的案例结构一致但我会把每个配置项讲清楚。开始节点只需要一个变量比如 user_query类型选文本。Agent 节点的配置是核心逐项说明模型选择在 Dify 模型供应商里选 OpenAI-API-compatiblebase_url 填 https://taotoken.net/api API Key 填刚才创建的 sk- 字符串模型名填你实际要用的比如 qwen 系列或 claude 系列。保存后 Dify 会做一次连通性校验。工具配置点击 Agent 节点里的“”添加工具。如果你已经配好了 MCP 服务这里会列出 MCP 提供的工具函数。没有配 MCP 的话也可以先用 Dify 内置工具测试。指令配置用 Jinja 语法引用上游变量。比如你是一个出行规划助手。用户的问题是{{#start.user_query#}} 请先解析地点坐标再规划路线最后用简洁中文输出换乘方案。查询配置填 {{#start.user_query#}}把用户输入传给 Agent。最大迭代次数默认 5 到 10 都可以。太小会导致工具没调完就停太大可能循环。建议先设 8。输出变量如果结束节点只需要文本保持默认即可。需要结构化输出时再定义 JSON schema。结束节点引用 Agent 输出的 text 字段。3.2 MCP 工具接入的关键参数MCP 接入在 Dify 里通常通过插件或外部服务配置。以高德 MCP 为例你需要拿到 MCP 服务的 SSE 地址或 stdio 启动命令。Dify 的 MCP 配置界面里填{ mcpServers: { amap: { url: 你的 MCP SSE 地址, transport: sse } } }配置完成后Agent 节点的工具列表里会出现 maps_geo、maps_direction_transit_integrated 等函数。如果工具列表是空的说明 MCP 服务没连上先检查地址和网络。3.3 settings.json 统一通道示例如果你在本地用 Claude Code 或其他支持 settings.json 的工具可以把 TaoToken 作为统一通道写进去{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的Key, ANTHROPIC_MODEL: claude-sonnet-4-20250514 } }这个配置的作用是让本地工具走同一个 API 通道和 Dify 里用的 Key 保持一致。换模型时只改 ANTHROPIC_MODEL 字段不用重新申请 Key。如果你需要长期跑编码类 Agent可以了解 Coding Plan https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 。它适合需要稳定调用、多模型切换的场景。4. 验证请求从输入到工具调用的完整链路配置完成后在 Dify 预览窗口输入一条测试问题比如“佛山千灯湖地铁站到磨碟沙地铁站怎么走”。点击运行后观察 Agent 节点的执行记录。正常情况下你会看到类似这样的调用链第一次调用 maps_geo参数是“佛山千灯湖地铁站”返回坐标和城市“佛山”。第二次调用 maps_geo参数是“磨碟沙地铁站”返回坐标和城市“广州”。第三次调用 maps_direction_transit_integrated输入两组坐标和城市返回换乘方案。最后 Agent 整合结果输出“先乘广佛线至西塱站换乘广州 8 号线至磨碟沙站全程约 55 分钟”。如果你在本地用 curl 验证 TaoToken 通道是否通可以这样请求curl https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer sk-你的Key \ -H Content-Type: application/json \ -d { model: claude-sonnet-4-20250514, messages: [{role: user, content: 你好}] }返回 200 且 body 里有 choices 字段说明通道正常。如果返回 401检查 Key 是否复制完整返回 404检查 base_url 是否多写了路径。5. 本篇常见错排查5.1 Agent 节点报“模型不可用”最常见的原因是 base_url 填错。Dify 的 OpenAI-API-compatible 配置里base_url 应该是 https://taotoken.net/api 不要写成 https://taotoken.net/api/v1 。Dify 会自动拼接 /v1/chat/completions。多写一层路径会导致 404。另一个原因是模型名不在 TaoToken 支持的列表里。先去模型对话页面确认可用模型名再填到 Dify。5.2 MCP 工具列表为空先确认 MCP 服务本身是否启动。如果是 SSE 方式用浏览器或 curl 访问 SSE 地址看是否有 event stream 返回。如果是 stdio 方式检查启动命令的路径和权限。Dify 侧检查插件版本。Agent 策略插件需要从插件市场安装最新版旧版本可能不识别 MCP 工具。安装地址在 Dify 插件市场搜索“Agent 策略”即可。5.3 Agent 循环调用同一个工具把最大迭代次数调小比如从 10 降到 5。同时在指令里明确“如果已经获取到坐标不要重复调用 maps_geo”。FunctionCalling 策略依赖模型判断指令写得越具体循环概率越低。5.4 结束节点拿不到输出检查结束节点的变量引用是否指向 Agent 节点的输出字段。如果 Agent 输出变量名是 text结束节点就引用 {{#agent.text#}}。变量名不匹配会得到空值。5.5 settings.json 不生效本地工具的 settings.json 路径因工具而异。Claude Code 通常在用户目录下的 .claude/settings.json。改完后重启工具让环境变量重新加载。如果仍然不生效检查 JSON 格式是否合法逗号、引号是否写错。6. 继续搭建你的下一个 Agent跑通这个三节点工作流之后你可以往里面加更多东西。比如在开始节点后面加一个知识库检索节点让 Agent 先查文档再调工具或者在结束节点前加一个条件分支根据 Agent 输出决定走人工审核还是直接返回。Dify 的 Agent 策略插件和 MCP 工具生态还在快速迭代。我自己的习惯是每配一个新工具先用最小工作流验证工具本身能不能调通再把它塞进复杂流程里。这样出问题时排查范围小不会一上来就面对十几个节点互相甩锅。如果你在配置 Dify 模型时遇到 Key 或通道问题可以直接去 API Keys 页面重新生成一个 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 。接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 里面有各语言的请求示例。Claude Code 相关的配置参考 https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentClaudeCodeAnthropicutm_campaignrewrite 。先把一个能跑通的 Agent 跑起来比读十篇架构文章都有用。
企业数字化 ERP 产品动态
相关推荐
PyTorch U-Net+注意力机制实现视网膜血管分割 简介:本资源是一个面向深度学习初学者与生物医学图像处理研究者的PyTorch实战项目,聚焦视网膜血管分割这一典型医学图像分析任务,旨在帮助用户掌握U-Net基础架构及其注意力机制改进方法。资源包共15个文件,含11个Python源码&#… · 2026/9/26 20:29:35
水果图像分类实战:小样本数据清洗、增强与端侧部署 简介:本资源是面向人工智能与机器学习初学者及计算机视觉实践者的水果图像分类数据集,专用于训练和评估图像识别模型,解决五类常见水果(苹果、香蕉、葡萄、橙子、梨)的监督分类任务。压缩包共1310个文件,含… · 2026/9/26 20:29:27
Mark to Fix:用自然语言标记驱动视频修改工作流 1. 从“Mark to Fix”看视频修改工作流的底层逻辑1.1 这个工作流到底解决了什么痛点做过视频后期的人都有一个共同体会:改视频比做视频累十倍。一条三分钟的产品短片,从粗剪到定稿,中间可能要经历十几轮修改。导演说“第37秒那个转场太生硬”… · 2026/9/26 21:13:42
英语-语法-倒装句 分词结构全部倒装部分倒装,主语,谓语不变,但是要把助动词放在主语的前面。否定词在句首的时候需要把助动词提到主语的前面第二种情况 Only状语在句首 · 2026/9/26 21:13:42
BP神经网络预测股票价格:从数据预处理到防坑指南 简介:这是一份面向股票价格预测学习者的BP神经网络实战源码包,提供MATLAB脚本与配套CSV历史行情数据,覆盖从数据读取、归一化处理到网络训练和预测的核心流程,适合初学者快速入门,也便于相关课程设计与实验复现。压缩包… · 2026/9/26 21:13:42
PHP ceil()函数浮点数向上取整实现示例 PHP中ceil()函数在PHP中,ceil()函数用于向上取整。当我们需要将一个浮点数向上取整为一个大于等于该浮点数的最小整数时,就可以使用ceil()函数。ceil()函数的语法1float ceil(float $number)其中,$number表示需要进行向上取整操作的数值。cei… · 2026/9/26 21:13:35
弱模型模仿强模型为何退化?on-policy修正方案解析 1. 从一篇论文说起:为什么“模仿强模型”这条路走不通Salesforce AI 前段时间放出了一篇挺有意思的研究,核心结论用一句话概括就是:让一个能力较弱的智能体去模仿 Gemini 这类强模型的输出,效果不但没有提升,反而会退化… · 2026/9/26 21:13:35
Claude Code模板资产管理:从零搭建可复用的AI编程指令体系 1. 模板资产为什么值得单独建仓:从一次痛苦的Prompt复制说起过去很长一段时间,我对"AI编程模板"这件事是相当随意的。工作需要让Claude Code做代码审查,就从聊天记录里翻出一条写得还算顺手的Prompt,复制粘贴࿱… · 2026/9/26 21:13:35
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46