为了解决这一问题,Dify 在最新版本中引入了会话变量和变量赋值节点。两者配合使用,使得通过 Chatflow 构建的 LLM 应用在记忆管理上更加灵活、可控,解决了 LLM 在精细管理特定记忆方面的不足。这些功能使 LLM 应用能够读取和写入用户输入的关键信息,从而满足特定应用的需求,提升了 LLM 在生产环境中的实际应用能力。
-
精准管理上下文:会话变量允许开发者在变量级别管理信息,而不是处理整块的聊天记录。这使得 LLM 应用能够更精确地存储和检索特定的信息片段。 -
结构化数据:会话变量支持多种数据类型,包括字符串、数字、对象和数组,使得处理复杂的结构化数据变得更加容易,而不仅仅是存储文本。 -
工作流集成:通过与变量赋值节点配套使用,开发者可以在工作流(Chatflow)的任意位置写入或更新变量值,以供下游的 LLM 节点访问。
? 变量赋值节点:设置和写入会话变量
变量赋值节点可以为支持写入的变量赋值,如本次版本更新中的会话变量。通过变量赋值节点,应用开发者可以将用户输入的信息赋值到会话变量中进行临时存储,并在后续对话中持续引用这些信息。
-
存储用户的语言偏好 -
在后续响应中持续使用选择的语言
?️ 更多应用场景
会话变量结合变量赋值节点不仅可以存储用户偏好,还能灵活处理多种类型的用户输入和 LLM 生成的信息。以下是一些典型应用场景:
-
门诊导诊助手:用于给就诊病人推荐合适的科室。通过会话变量记录用户输入的性别、年龄和症状,并基于这些信息进行判断,提供定制化的挂号建议。
-
对话摘要:在 Chatflow 上游的 LLM 节点中使用变量赋值节点作为总结节点,用于提取对话历史的概述,从而避免将完整的历史记录存储为记忆,防止记忆过载。 -
数据分析助手:对于数据分析师,最新的 Chatflow 可以实现在对话中检索外部系统的数据,并在后续对话中继续使用这些数据。
-
创意写作:支持复杂的创意过程,可以动态添加和修改故事组件。以 Object 数组类型将故事元素存入会话变量,如角色和情节等:
[{name: "Alice", role: "protagonist", trait: "brave"},{name: "Mystical Forest", type: "setting", atmosphere: "eerie"}]
这些应用场景展示了会话变量和变量赋值节点的强大功能,能够满足各种复杂的应用需求,提供了个性化的记忆存储。欢迎查阅帮助文档,使用 Chatflow 快速开始构建具备记忆管理功能的 LLM 应用。此外,我们还在探索页面提供了相关的应用模板,帮助你快速上手并体验最新功能,一起来试试吧!