最近身边越来越多人在聊AI Agent,说什么让AI自己去调工具、查资料、做分析,听起来特别酷。但我发现很多人一到实际动手搭建的时候就懵了,不知道从哪下手。今天咱们就来聊聊怎么用Dify这个平台,零代码把一个AI Agent给搭起来,而且是真正能用的那种。"},
{"speaker": "guest", "text": "对,你说的这个痛点特别真实。其实Dify把门槛已经降得很低了,但"能搭"和"搭好"之间差距还挺大的。我自己踩了不少坑,今天正好可以一起聊聊。"},
{"speaker": "host", "text": "那咱们先从最基础的说起。Dify里面既能建聊天助手,也能建Agent,这俩看起来界面几乎一样,左边写提示词,右边测试对话。那Agent到底特别在哪?"},
{"speaker": "guest", "text": "嗯,表面上确实长得差不多,但骨子里有两个关键区别。第一个是Agent有自己的策略引擎,默认用的是Function Call模式。你可以把它理解成——模型不光能聊天,还能自己判断"哦,这个问题我得去查一下",然后主动调用外部工具,而且它传参数、拿结果都是结构化的,不是靠提示词硬凑的。"},
{"speaker": "host", "text": "这个Function Call其实是OpenAI在2023年推出的能力对吧?现在大部分主流模型都支持了。"},
{"speaker": "guest", "text": "没错。但有些模型不支持,比如DeepSeek R1,这时候Dify会自动切换到ReAct模式。ReAct就是让模型走一个"想一想、做一做、看一看"的循环——先推理,再执行动作,再观察结果,一步步迭代。它的好处是兼容性广,因为本质上只需要模型能生成文本就行。第二个关键区别就是Agent能挂载外部工具,聊天助手做不到这一点。这才是Agent真正强大的地方。"},
{"speaker": "host", "text": "不过我注意到一个硬限制——Dify里Agent最多只能调用5次工具。这个限制影响大吗?"},
{"speaker": "guest", "text": "影响非常大,这基本决定了你的设计思路。我的核心建议就是:每个Agent只干一件事。比如一个专门查新闻做总结,一个专门分析股票,一个专门做知识库问答。千万别把十几个工具全塞进一个Agent里,不然调用次数不够用不说,模型在选工具的时候也容易犯迷糊。"},
{"speaker": "host", "text": "这个原则很重要。那说到工具,Dify 1.0之后工具都得从插件市场手动装了,据说现在有161个插件?"},
{"speaker": "guest", "text": "对,1.0之后预装的工具就剩几个基础的,像CurrentTime、Audio这种。其他的都得去Marketplace里自己挑。161个插件听起来很多,但其实常用的也就那么几类。搜索类的像Tavily、Jina,下载量都很高;爬虫类的FireCrawl特别适合需要把整个网站内容扒下来的场景;还有DALL-E做图片生成,Poke可以把Markdown转成PPT和Word,都挺实用的。"},
{"speaker": "host", "text": "在搜索工具里面,你特别推荐ESA,也就是Exa Search。它跟Tavily、Jina比,核心优势在哪?"},
{"speaker": "guest", "text": "最大的不同是检索方式。Tavily和Jina本质上还是偏传统的搜索查询,而ESA用的是类似RAG的向量检索——它预先把大量网站内容存到了自己的向量数据库里,查询的时候做的是语义匹配,不是关键词匹配。打个比方,你搜"人工智能最新进展",传统搜索引擎要求网页里得有这几个字才能匹配上,但ESA能理解"AI前沿突破"跟你要找的是一回事。这对模糊查询特别友好。"},
{"speaker": "host", "text": "而且ESA注册送的额度好像很慷慨?"},
{"speaker": "guest", "text": "非常慷慨,完成新手任务之后大概有230美元的额度,基本可以长期免费用。配置也简单,拿到API Key在Dify里粘贴保存就行。但重点是参数调优,这里面有几个坑一定要注意。"},
{"speaker": "host", "text": "展开说说?"},
{"speaker": "guest", "text": "首先搜索模式,ESA支持Neural也就是向量检索、Keyword关键词检索,还有Auto混合模式。我强烈推荐用Auto,兼具两者优势。然后返回条数,简单查询10条够了,做深度研究可以调到几十上百条。还有一个叫Use Auto-Prompt的选项,它会自动优化你的查询词,如果你没有专门做过提示词工程,建议开着。最关键的一个——Text Content,必须勾选!不勾的话返回的只有摘要,没有完整网页内容,Agent根本没法做深度分析。"},
{"speaker": "host", "text": "好,工具配好了,接下来就是我觉得最有意思的一个坑——时间感知问题。你能说说当时遇到了什么情况吗?"},
{"speaker": "guest", "text": "哎,这个坑真的很典型。我配好ESA之后,问Agent"给我AI相关新闻",它确实调了ESA去搜,但返回的新闻居然是2023年的!我心想不对啊,又加了CurrentTime工具让它知道现在几点几号,再问"最近一周的新闻",结果还是老新闻。"},
{"speaker": "host", "text": "这就奇怪了,明明有时间工具,为什么不用呢?"},
{"speaker": "guest", "text": "根本原因是大语言模型没有内置时钟。它的训练数据有个截止日期,之后的事它一概不知,而且它在推理的时候也不知道"今天是几号"。当用户说"最近一周",模型可能就根据训练数据里的时间分布去猜一个范围,而不是先查一下当前日期再算。关键是——如果你不在提示词里明确告诉它"先调用时间工具",很多模型就不会主动去调。"},
{"speaker": "host", "text": "那你后来是怎么解决的?"},
{"speaker": "guest", "text": "换模型。我把GPT-4o Mini换成了DeepSeek V3,效果立竿见影。DeepSeek V3是671B参数的MoE架构,推理规划能力强很多。换了之后,Agent会自动先调CurrentTime拿到当前日期,然后把精确的时间范围传给ESA去搜索,返回的就是真正的最新新闻了。而且更聪明的是,第二轮对话我追问"给我台湾最近一周的新闻",它不再重复调时间工具了——因为它记住了上一轮拿到的日期,直接在搜索里加上"台湾"和时间范围就完事了。"},
{"speaker": "host", "text": "这个对话记忆能力确实厉害,还能省下宝贵的工具调用次数。所以核心经验就是——如果Agent表现不好,先别急着改提示词,优先考虑换个工具调用能力更强的模型?"},
{"speaker": "guest", "text": "完全正确。模型之间在工具调用上的能力差异是巨大的。轻量模型像GPT-4o Mini可能需要你在提示词里手把手教它调用顺序,而DeepSeek V3、Claude 3.5 Sonnet这种级别的模型能自己规划整个工具调用链路。选Agent底座模型的时候,工具调用准确率和多步规划能力应该是最核心的考量,甚至比速度和成本更重要。"},
{"speaker": "host", "text": "最后再聊聊交互体验方面,有什么值得注意的?"},
{"speaker": "guest", "text": "Dify提供了几个很实用的小功能。比如开场白,你可以预设引导语和建议问题,降低用户的提问门槛;还有"下一步建议",Agent会根据当前对话预测用户接下来可能想问什么;如果是做客服场景的话,标注回复功能可以设定标准化模板,确保关键问题回答一致。这些细节看起来小,但对实际使用体验影响很大。"},
{"speaker": "host", "text": "好,那我来做个简单总结。搭Agent的核心思路其实就三条:第一,每个Agent专注一个任务,别贪多;第二,工具配置要细致,尤其ESA的Text Content一定要勾上,搜索模式用Auto;第三,模型选择至关重要,工具调用能力强的模型能帮你省掉大量调试时间。把这三条做好,基本就能搭出一个真正好用的AI Agent了。"},
{"speaker": "guest", "text": "总结得很到位。其实Dify已经把技术门槛降得很低了,剩下的就是设计思路和细节调优的问题。大家可以从一个简单的新闻查询Agent开始练手,把ESA和CurrentTime配好,感受一下Agent自主调用工具的过程,然后再慢慢扩展到更复杂的场景。动手试一试,比看十篇教程都管用。"}
],