微信扫码
添加专属顾问
我要投稿
无奈本地配置环境略显繁琐,对小白不是特别友好。
有没有可能在 Dify 上搭建一个类似的智能体,实现大模型长期记忆?
琢磨之余,发现 Dify 的官方案例中就有一款类似的智能体。
今日分享,把搭建过程拆解后分享出来,希望对有类似需求的你,有所启发。
参考上篇教程,相信你已完成 Dify 本地安装,若资源有限,也可使用官方的在线体验地址。
在 Dify 首页,第一个 Tab,官方内置了众多搭建好的智能体案例:
其中,有一个个性化记忆助手的智能体,点击添加到工作区:
在自己的工作室,可以看到这个智能体已复制进来:
点进来,就可以看到所有的编排逻辑,然后可根据自己需求进行修改:
Dify 中内置了一个全局变量 -- 会话变量,在右上角:
这个会话变量具体有什么用?
和多轮对话的内容一样,它也可以作为 LLM 的上下文,不过它的自定义程度更高。
比如在本文的智能体中,就定义了memory这样的会话变量,用来存储需要大模型记忆的信息。
问题来了:memory是怎么发挥作用的?
下面我们一起去探一探。
step 1 信息过滤: 判断用户输入中是否需要记忆的信息:
从上面的提示词,可以看出,这个节点上大模型只需输出 Yes 或 No,所以下个节点应该是条件判断。
step 2 条件判断:根据上一步大模型输出的 Yes 或 No,分别路由到不同的分支,如果有需要记忆的信息,则执行上方提取记忆的分支,否则走下面的分支。
step 3 提取记忆:通过大模型的角色设定,从用户输入中提取出值得记忆的信息。
在提示词中,指定了提取的三种类型记忆:
"facts": [],
"preferences": [],
"memories": []
step 4 存储记忆:这一步是代码节点,通过编写简单的 Python 代码,将上一步的记忆信息,保存到一开始定义的会话变量 - memory中。
step 5 根据记忆回复:把会话变量 - memory转换成字符串,也就是下图中的{x}result,放到角色提示词中,让大模型根据记忆,进行答复。
至此,基于对话内容中有需要缓存的记忆,上方提取记忆的分支就搞定了。
如果step 2判断为 No,则直接基于已有记忆进行答复,也即下方分支,流程图如下:
我在和它进行了几轮对话之后,点开右上角的会话变量,可以发现memory中已经缓存了多条事实类的记忆:
完美!
真的完美么?
相比直接把多条聊天记录作为上下文,这种方式要优雅很多,且极大减少了 Token 消耗量。
不过,个人认为至少还有两点缺陷:
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-11-21
Trigger 发布: 让 Dify Workflow 走向事件驱动
2025-11-20
Dify 自建部署完全指南:从上手到放弃到真香
2025-11-17
dify 1.10.0 Event-Driven Workflows 版本发布:全新 Trigger 触发器与升级指南详解
2025-11-16
Dify实战:Deepseek打造专属智能出题系统
2025-11-15
Dify应用开发指南:提示词工程VS上下文工程
2025-11-14
深夜:Dify 1.10.0事件驱动工作流程正式发布了
2025-11-11
关于智能体(AI Agent)搭建,Dify、n8n、Coze 超详细的总结!
2025-11-09
Dify版本选择秘诀:社区版与企业版功能差异详解
2025-09-03
2025-10-13
2025-09-16
2025-09-06
2025-09-02
2025-09-23
2025-09-04
2025-10-12
2025-08-25
2025-11-09
2025-09-30
2025-09-23
2025-09-06
2025-09-05
2025-08-29
2025-08-18
2025-08-02
2025-07-30