用向量数据库建立本地知识库
本实例是通过向量数据库对本地文本进行拆分,拆分后每一块文本转成向量存放到向量数据库。这样在搜索内容时,会先把问题转成向量,然后就可以根据问题向量在向量数据库里进行搜索,快速找到对应内容。本程序完全离线运行(无需网络连接),支持模型本地存储(./m3e-base)和数据本地存储(./vector_db)。可以用于企业知识库检索、法律文档查询、学术论文搜索、个人文档管理等场景。
多格式文档处理
支持格式有PDF、Word(.docx)、纯文本(.txt)、Markdown(.md)、HTML(.html)。自动识别文件类型并选择对应解析器,支持批量处理目录中的多种格式文件。
扩展支持的文件格式:
| 格式 | 扩展名 | 依赖包 |
| PDF | .pdf | pypdf |
| Word | .docx | python-docx |
| 纯文本 | .txt | - |
| Markdown | .md | unstructured |
| HTML | .html | unstructured |
文本预处理
使用递归字符拆分器智能分块(500字符/块,50字符重叠),自动剔除空白或无效文本块,自动识别文本编码格式(特别是对中文支持)。