发布时间:2026/7/10 12:01:18
从TXT文件构建RAG知识库
一、读取TXT文件中的文本TXT文件是最简单的文本格式读写TXT无需任何第三方库。Python代码先调用open函数打开TXT再调用read函数读取全部文本内容也可循环调用readline函数依次读取每行文本。比如下面代码依次读取TXT文件的每行文本并把各行文本依次添加到知识库数组knowledge中。 从文本文件读取知识库替代原数组 def load_knowledge_from_txt(file_path):knowledge []with open(file_path, “r”, encoding“utf-8”) as f:for line in f:line line.strip()if line: # 非空行才加入knowledge.append(line)return knowledge加载知识自动读 knowledge.txtknowledge load_knowledge_from_txt(“knowledge.txt”)二、兼容GBK字符集的TXT文件首先确保Python代码的同目录下存在knowledge.txt并且文件内容非空再运行上面的Python测试代码。可是Windows系统多半会报错“UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xca in position 4: invalid continuation byte”这是因为Windows系统默认把TXT文件保存为ASCII编码而非UTF-8编码。而Python代码企图以UTF-8编码打开TXT就会报编码格式不符的错误了。为了解决字符集编码冲突的问题需要改造前面的Python代码使得既支持UTF-8编码又支持GBK形式的ASCII编码。改造后的Python文件读取代码如下 从文本文件读取知识库替代原数组 def load_knowledge_from_txt(file_path):knowledge []encoding_type “utf-8”try:with open(file_path, “r”, encodingencoding_type) as f:f.readline()except:encoding_type “gbk”with open(file_path, r, encodingencoding_type) as f: for line in f: line line.strip() if line: # 非空行才加入 knowledge.append(line) return knowledge加载知识自动读 knowledge.txtknowledge load_knowledge_from_txt(“knowledge.txt”)可见上面代码先以UTF-8方式打开TXT如果遇到异常再以GBK方式打开TXT从而实现了同时兼容UTF-8与GBK的目标。三、对文本内容自动分块不过TXT文件中的文本很可能不是一句话一行字而是一段一段的文字每段都包含好几个句子那么上面代码依次调用readline函数并添加到数组每个数组元素都包含一大段文字十分臃肿。为此需要根据句号来拆分文本内容而非根据段落来拆分文本内容。基本要求如下1、读取TXT文件的所有文本内容。2、按照句号分割文本。3、每条知识设定字数下限比如不得少于50个汉字如果某条知识小于这个长度就要跟下一条知识合并。4、处理过程注意去除无效字符例如剔除空行、删除空格等等。根据上述逻辑可编写自动分块的Python测试代码如下 加载一整段 TXT 文本 def load_text(file_path):try:with open(file_path, “r”, encoding“utf-8”) as f:return f.read().strip()except:with open(file_path, “r”, encoding“gbk”) as f:return f.read().strip()读取一整段文本raw_text load_text(“knowledge.txt”) 自动把一段文字切成多段关键 def split_text(text, max_len50):sentences text.split(“。”) # 按句号分割chunks []current “”for sen in sentences: sen sen.strip() if not sen: continue # 加回去句号让语义完整 sen 。 if len(current) max_len: current sen else: if current: chunks.append(current.strip()) current sen if current: chunks.append(current.strip()) return chunks自动分块knowledge split_text(raw_text)至此初步实现了对TXT文件的读取和分块功能拆分后的每条知识仍然保存于knowledge数组后续的RAG构建及检索操作可套用之前的RAG测试代码框架。

相关新闻

【信息科学与工程学】【通信工程】第六篇 通感融合(通信与感知一体化) 03
2026/7/10 12:01:18

【信息科学与工程学】【通信工程】第六篇 通感融合(通信与感知一体化) 03

物理、电磁场、天线、微波、射频前端、信号处理、信息论、无线通信协议,一路到边缘计算、嵌入式算力、芯片微架构、功耗热管理、材料(GaN、硅光)这种跨层映射,每个知识点都要落到具体方程(麦克斯韦、香农容量、FFT、波束赋形、卡尔曼、排队论之类) 电信运营商射频-通信-…

阅读更多
Copilot Excel数据分析能力断层测试(附权威测评矩阵):你处于L1还是L5?立即自测
2026/7/10 11:01:18

Copilot Excel数据分析能力断层测试(附权威测评矩阵):你处于L1还是L5?立即自测

更多请点击: https://intelliparadigm.com 第一章:Copilot Excel数据分析能力断层测试(附权威测评矩阵):你处于L1还是L5?立即自测 Copilot for Excel 是微软将大模型深度嵌入电子表格的里程碑式实践&…

阅读更多
AI搜索双雄PK实录(2024Q2最新基准测试):从RAG延迟到 citation可信度,一文看透底层差异
2026/7/10 11:01:18

AI搜索双雄PK实录(2024Q2最新基准测试):从RAG延迟到 citation可信度,一文看透底层差异

更多请点击: https://codechina.net 第一章:AI搜索双雄PK实录(2024Q2最新基准测试):从RAG延迟到 citation可信度,一文看透底层差异 测试环境与数据集统一性保障 所有实验均在相同硬件配置下运行&#xff…

阅读更多
Dimension下载教程 Dimension 2026 保姆级安装步骤(附安装包)
2026/7/10 12:01:18

Dimension下载教程 Dimension 2026 保姆级安装步骤(附安装包)

文章目录Dimension 2026 下载Dimension 2026 安装教程Adobe Dimension新手入门:3D建模基础知识与安装指南Adobe Dimension 是一款面向设计师的 3D 合成工具,常与 Photoshop、Illustrator 配合使用。即便没有深厚的三维建模经验,只要熟悉二维设…

阅读更多
VIX与SKEW指数实战应用:3种基于上证50ETF的择时策略回测与绩效对比
2026/7/10 12:01:18

VIX与SKEW指数实战应用:3种基于上证50ETF的择时策略回测与绩效对比

VIX与SKEW指数实战应用:3种基于上证50ETF的择时策略回测与绩效对比 波动率指数(VIX)和偏度指数(SKEW)作为衡量市场情绪与风险的前瞻性指标,在量化交易领域具有重要价值。本文将深入探讨如何基于上证50ETF期…

阅读更多
家用电器安全设计剖析:从电热水壶看蒸汽/温控/熔断3重保护机制联动逻辑
2026/7/10 12:01:18

家用电器安全设计剖析:从电热水壶看蒸汽/温控/熔断3重保护机制联动逻辑

家用电器安全设计剖析:电热水壶三重保护机制的协同逻辑与失效防御 电热水壶作为现代家庭高频使用的小家电,其安全性能直接关系到用户的生命财产安全。一台合格的电热水壶需要在1.5-2分钟内将水加热至沸腾,同时确保在任何异常情况下都不会引发…

阅读更多
从TXT文件构建RAG知识库
2026/7/10 12:01:18

从TXT文件构建RAG知识库

一、读取TXT文件中的文本 TXT文件是最简单的文本格式,读写TXT无需任何第三方库。 Python代码先调用open函数打开TXT,再调用read函数读取全部文本内容,也可循环调用readline函数依次读取每行文本。 比如下面代码依次读取TXT文件的每行文本&…

阅读更多
【信息科学与工程学】【通信工程】第六篇 通感融合(通信与感知一体化) 03
2026/7/10 12:01:18

【信息科学与工程学】【通信工程】第六篇 通感融合(通信与感知一体化) 03

物理、电磁场、天线、微波、射频前端、信号处理、信息论、无线通信协议,一路到边缘计算、嵌入式算力、芯片微架构、功耗热管理、材料(GaN、硅光)这种跨层映射,每个知识点都要落到具体方程(麦克斯韦、香农容量、FFT、波束赋形、卡尔曼、排队论之类) 电信运营商射频-通信-…

阅读更多
Copilot Excel数据分析能力断层测试(附权威测评矩阵):你处于L1还是L5?立即自测
2026/7/10 11:01:18

Copilot Excel数据分析能力断层测试(附权威测评矩阵):你处于L1还是L5?立即自测

更多请点击: https://intelliparadigm.com 第一章:Copilot Excel数据分析能力断层测试(附权威测评矩阵):你处于L1还是L5?立即自测 Copilot for Excel 是微软将大模型深度嵌入电子表格的里程碑式实践&…

阅读更多
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御
2026/7/9 20:12:34

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

阅读更多
3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略
2026/7/9 0:51:16

3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略

3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾为Windows右键菜单中那些…

阅读更多
GXDE OS下Wayland兼容性实战:从deepin-mutter原理到VMware Tools修复
2026/7/8 22:48:04

GXDE OS下Wayland兼容性实战:从deepin-mutter原理到VMware Tools修复

如果你正在用 GXDE OS 或者任何基于 Deepin 的发行版,并且遇到了“检测到窗口系统采用 Wayland 协议,程序即将退出”这类弹窗,或者发现 VMware Tools 在 Ubuntu 24.04 这类默认 Wayland 的系统上启动失败,那这篇文章就是为你准备的…

阅读更多
Hive 倾斜 Join 实战:大表关联小表为什么也会慢
2026/7/10 0:01:17

Hive 倾斜 Join 实战:大表关联小表为什么也会慢

Hive 倾斜 Join 实战:大表关联小表为什么也会慢 一、一个反直觉的性能问题 "这不可能!小表才 5 万行,大表 5 亿行,Join 一下怎么会跑两个小时?" 上个月同事小王盯着 Yarn 上快跑炸的 MapReduce 任务&#xf…

阅读更多
无需安装 Office,用 Python 轻松替换 Excel 数据
2026/7/10 0:01:17

无需安装 Office,用 Python 轻松替换 Excel 数据

核心对象模型 库的核心操作围绕两个对象展开: Workbook:代表整个 Excel 工作簿,负责文件的加载与保存 Worksheet:代表单个工作表,提供单元格访问与查找替换能力 导入方式: from spire.xls import * from …

阅读更多
WindowResizer:终极免费窗口强制调整工具,轻松突破Windows尺寸限制
2026/7/10 0:01:17

WindowResizer:终极免费窗口强制调整工具,轻松突破Windows尺寸限制

WindowResizer:终极免费窗口强制调整工具,轻松突破Windows尺寸限制 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 还在为那些无法拖拽的"顽固窗口&qu…

阅读更多
基于Dify与DeepSeek构建私有知识库问答系统实战指南
2026/7/8 18:15:39

基于Dify与DeepSeek构建私有知识库问答系统实战指南

在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…

阅读更多
FAE放射组学分析工具:医学影像特征探索的完整解决方案
2026/7/8 10:11:21

FAE放射组学分析工具:医学影像特征探索的完整解决方案

FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE 你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…

阅读更多
DesktopNaotu:你的终极离线思维导图解决方案,告别网络依赖!
2026/7/9 3:17:42

DesktopNaotu:你的终极离线思维导图解决方案,告别网络依赖!

DesktopNaotu:你的终极离线思维导图解决方案,告别网络依赖! 【免费下载链接】DesktopNaotu 桌面版脑图 (百度脑图离线版,思维导图) 跨平台支持 Windows/Linux/Mac OS. (A cross-platform multilingual Mind Map Tool) 项目地址:…

阅读更多