万字长文深度复盘!我如何用Dify把一个TB级知识库的文档分类工作,从一周缩短到一小时?

在知识库的使用场景中有这样一类需求,就是希望在同一个知识库里面,不同的人可以查看不同的文档内容。最常见的就是不同级别的人能够查看的文档范围是不一样的。在这里,我们结合Dfy的元数据给出了一种解决思路,并进行了两种方案设计,最终业务方的选择放到了文章结尾的位置。
首先简单介绍一下什么是文档的元数据。在Dify的每个知识库里面,可以单独设置元数据字段,例如“发布时间”,然后我们就可以针对知识库里面每一个文档设置元数据对应的值,比如“一月、二月、三月”等。这样我们在知识检索的时候就以根据元数据过滤查询不同月份的文档了。

那么如何将这个元数据应用到文档的分级分类管理上呢?

方案A,采用string类型元数据

1、首选定义用户等级为一级,二级,三级,四级;

2、在知识库中增加string类型元数据role_level,并对文档进行标注,例如:

(1)当前文档允许一级,二级角色访问,则role_level赋值为:“一级、二级”

(2)当前文档允许一、二、三、四级角色访问,则role_level赋值:“一级、二级、三级、四级”。如下图所示:

3、在知识库工作流程中,首先获取用户访问等级(通过数据库或者其他手段);

4、在知识检索节点设置元数据过滤,并使用包含条件,如下图所示

即查询元数据值中包含当前用户级别的文档。

5、例如,当前用户角色为“二级”,过滤查询包含当前用户角色等级的文档,此时包含“二级”的文档如:“一级、二级”;“一级、二级、三级”;“一级、二级、三级、四级”均可查询,但是仅配置元数值据为“一级”的文档则当前用户无法访问;

6、又例如:当前用户角色为“四级”,则仅允许访问标注为“一级、二级、三级、四级”的文档,其他文档均不能访问。从而做到了细粒度的文档访问权限控制。

方案B,使用number类型元数据控制

1、定义用户等级为数字1、2、3、4;

2、在知识库中设置number类型元数据role_level,并对文档进行标注,标注当前文档访问等级,1 /2 /3 /4,如下图所示

3、在知识库工作流程中,同样先获取用户访问等级,

4、在知识检索节点增加元数据过滤,并使用≤条件过滤

即,仅允许用户访问元数据等级比自己级别低的文档;

5、例如,当前用户等级为2,则过滤查询等级为“1/2”的文档;当前用户等级为4时,则过滤查询保密等级为“1/2/3/4”的文档,从而做到细粒度的文档访问权限控制。

写在最后

最后将这两种方案提供给业务方时,业务方毫不犹豫地选择了方案A。虽然方案A需要配置更多的文字,但是使用起来更加直观易懂。用户分四个等级,文档想让哪个看就配上哪个角色,方案B还需要算一下大于小于的,麻烦的很。

业务方还进一步扩展思路,除了按照等级之外,还可以按照部门、团队等灵活配置,非常灵活。这确实是我没有想到的,我还是陷入了工程化的思维里面了。行吧,回见~

如何高效转型Al大模型领域?

作为一名在一线互联网行业奋斗多年的老兵,我深知持续学习和进步的重要性,尤其是在复杂且深入的Al大模型开发领域。为什么精准学习如此关键?

  • 系统的技术路线图:帮助你从入门到精通,明确所需掌握的知识点。
  • 高效有序的学习路径:避免无效学习,节省时间,提升效率。
  • 完整的知识体系:建立系统的知识框架,为职业发展打下坚实基础。

AI大模型从业者的核心竞争力

  • 持续学习能力:Al技术日新月异,保持学习是关键。
  • 跨领域思维:Al大模型需要结合业务场景,具备跨领域思考能力的从业者更受欢迎。
  • 解决问题的能力:AI大模型的应用需要解决实际问题,你的编程经验将大放异彩。

以前总有人问我说:老师能不能帮我预测预测将来的风口在哪里?

现在没什么可说了,一定是Al;我们国家已经提出来:算力即国力!

未来已来,大模型在未来必然走向人类的生活中,无论你是前端,后端还是数据分析,都可以在这个领域上来,我还是那句话,在大语言AI模型时代,只要你有想法,你就有结果!只要你愿意去学习,你就能卷动的过别人!

现在,你需要的只是一份清晰的转型计划和一群志同道合的伙伴。作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

在这里插入图片描述

### 关于ESP8266的全面学习资料 #### ESP8266简介与功能详解 ESP8266是款专为物联网(IoT)设计的Wi-Fi模块,具备强大的网络连接能力。此款微控制器不仅支持TCP/IP协议栈还提供了系列用于处理符串的API接口以及最佳实践指导[^1]。 对于基于ESP8266的应用开发而言,理解其内置函数库至关重要。这些库涵盖了从基本的数据类型定义到复杂的网络编程等多个方面: - **符串操作**:包括创建、复制、拼接等常见任务; - **内存管理**:动态分配和释放堆空间的方法; - **串口通讯**:通过UART与其他设备交换数据的技术细节; - **网络安全特性**:确保传输过程中的信息安全措施; - **性能调优技巧**:提高应用程序运行效率的方式; - **错误恢复机制**:当遇到意外情况时如何优雅地应对并恢复正常服务; 以上各项内容均能在官方文档中找到详尽描述,并配有实际案例供参考学习。 #### 示例代码展示 为了更好地掌握上述知识点,在这里给出段简单的Python风格伪代码来说明怎样利用ESP8266发送HTTP请求获取网页内容: ```python import urequests as requests # 导入轻量http客户端库 def fetch_webpage(url): try: response = requests.get(url) # 发送GET请求至指定URL if response.status_code == 200: # 如果状态码表示成功,则打印页面主体部分 print(response.text) response.close() # 记得关闭连接以节省资源 except Exception as e: print(f"Error occurred while fetching webpage: {e}") ``` 这段代码展示了如何使用`urequests`这个专门为MicroPython环境定制的小型化版本requests库来进行标准HTTP GET请求的操作流程。它能够有效地简化原本较为繁琐的过程,让开发者可以更专注于业务逻辑本身而不是底层实现。 另外,还有更多实用的例子可以在开源项目【ESP8266-Demos】里发现,该项目包含了多个不同场景下的具体实施方案,非常适合用来加深理解和练习技能[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值