Dify实现自动判断文档是否过期并自动下架机制

雨墨君_2077

雨墨君_2077

2026-11-14

584人浏览

原创

Dify知识库文档可通过元数据expires_at字段实现自动过期下架。需上传时手动填写标准格式YYYY-MM-DD的expires_at值,再通过定时任务(自托管版)或API调用(云/自托管版)比对当前日期并归档过期文档,归档后不可逆。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

dify实现自动判断文档是否过期并自动下架机制

需要让Dify平台上的知识库文档在超过有效期后自动失效,避免用户检索到陈旧信息。这要求系统能识别文档中明确标注的“有效期至”字段,并在当前日期超过该日期时,将对应文档从可检索状态中移除。

在文档元数据中添加有效期字段

上传文档前,必须为每份PDF或TXT文件手动补充一个名为expires_at的元数据字段,格式为YYYY-MM-DD(如2025-03-15)。Dify不解析文档正文中的日期文字,只读取上传时填写的元数据。

进入Dify控制台→知识库→选择目标知识库→点击“上传文档”→在弹出窗口中展开“高级设置”→在“元数据”栏输入{"expires_at": "2025-03-15"}→确认上传。这一步漏填或格式错误(如写成2025/03/15或2025-3-15)会导致后续判断完全失效。

配置定期执行的过期检测任务

方法一:使用Dify自带的定时任务(仅限自托管版)

编辑dify/docker/.env文件,在末尾新增一行:EXPIRE_CHECK_CRON=0 0 * * *,表示每天凌晨0点执行一次检查。

重启Dify服务:docker-compose down && docker-compose up -d。重启后系统会自动加载新配置,无需额外部署脚本。

方法二:通过外部调度器调用Dify API(云托管版或自托管版均适用)

Dify
Dify

Dify AI应用开发平台指南。用于构建LLM应用、工作流、Agent和知识库。当用户需要(1)使用Dify创建AI应用 (2)设计LLM工作流 (3)配置知识库RAG (4)开发AI Agent (5)调用Dify API (6)自托管部署Dify时激活此技能。

下载

准备一个Python脚本,使用requests向Dify管理API发送GET请求:GET /v1/knowledge-base/documents?status=active,需携带X-Tenant-Id和Authorization: Bearer 请求头。

遍历返回的每个文档,提取其metadata.expires_at值,与datetime.date.today()比较;若expires_at ,则发起PUT请求到/v1/knowledge-base/documents/{id},传入{"status": "archived"}。注意:该操作【不可逆】,归档后的文档无法通过API恢复为active状态,只能重新上传。

验证文档是否已下架

第一步:在Dify控制台的知识库文档列表页,筛选状态为“已归档”,确认目标文档出现在其中。

第二步:使用普通用户身份(非管理员Token)调用检索API:POST /v1/chat-messages,提问如“最新版报销流程是什么”,观察返回结果是否不再包含已过期文档的片段。

第三步:登录数据库(PostgreSQL),执行SELECT id, status, metadata->>'expires_at' FROM documents WHERE knowledge_base_id = 'kb_xxx';,核对过期文档的status字段是否已更新为archived。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

dify

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
WorkBuddy核心功能与实操模式
WorkBuddy核心功能与实操模式

深入探索WorkBuddy的强大功能。本专题包含智能问答、文档处理、会议纪要生成、日程管理、任务协作等核心模块的操作指南与最佳实践。通过图文并茂的教程,助您快速上手,最大化发挥WorkBuddy的办公效能。

2026.04.09

682

19

WorkBuddy核心功能与实操模式
WorkBuddy核心功能与实操模式

深入探索WorkBuddy的强大功能。本专题包含智能问答、文档处理、会议纪要生成、日程管理、任务协作等核心模块的操作指南与最佳实践。通过图文并茂的教程,助您快速上手,最大化发挥WorkBuddy的办公效能。

2026.04.09

682

19

Dify 本地部署与企业配置
Dify 本地部署与企业配置

本专题系统讲解 Dify 从零开始的本地部署方法与企业环境配置实践,涵盖 Docker 安装、依赖准备、数据库初始化、反向代理、参数调优、安全加固与多用户开通,帮助开发者与企业团队快速搭建稳定可用的 Dify 平台。

2026.06.05

1057

15

Dify Agent智能体开发实战教程
Dify Agent智能体开发实战教程

本专题聚焦 Dify Agent 智能体的设计与开发,涵盖 Agent 模式选择、工具集成、提示词设计、多步推理、上下文记忆与多 Agent 协作,帮助开发者构建可执行复杂业务任务的智能体应用。

2026.06.05

285

15

Dify RAG知识库构建实战教程
Dify RAG知识库构建实战教程

本专题围绕 Dify RAG 知识库的全流程实践展开,从文档导入、分段切片、向量化到混合检索、重排优化与召回评估,帮助你打造高准确率、低幻觉的企业知识问答应用。

2026.06.05

276

15

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

2026.11.12

20

15

Go-Zero安装与goctl环境配置教程
Go-Zero安装与goctl环境配置教程

本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。

2026.11.12

0

15

Go-Zero零基础入门教程
Go-Zero零基础入门教程

本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。

2026.11.12

20

15

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

120

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Dify零基础教程
Dify零基础教程

共0课时 | 160人学习

学习Agent,从Dify开始
学习Agent,从Dify开始

共0课时 | 162人学习

Dify 部署与运维指南
Dify 部署与运维指南

共0课时 | 0人学习