当前位置: 首页 > ds >正文

LlamaIndex的IngestionPipeline添加本地存储(本地文档存储)

LlamaIndex的IngestionPipeline支持添加本地存储(本地文档存储),用于管理摄取的文档及其元数据,从而实现文档去重、更新和持久化等功能。


具体说明

  • IngestionPipeline构造时可以传入docstore参数,指定文档存储组件,常见的本地文档存储是SimpleDocumentStore
  • SimpleDocumentStore是基于本地文件系统的简单文档存储,支持将文档(Node)持久化到本地文件夹。
  • 通过集成本地文档存储,管道可以:
    • 利用文档ID和内容哈希检测重复文档,避免重复处理。
    • 支持文档更新和删除旧文档。
    • 在管道运行时跳过已存在的文档,提高效率。
  • 除了文档存储,IngestionPipeline还支持缓存(cache)机制,也可以持久化到本地。
  • 通过调用pipeline.persist(path)pipeline.load(path),可以将缓存和文档存储持久化到本地文件夹,方便断点续传和复用。

示例代码

from llama_index.core import Document
from llama_index.core.ingestion import IngestionPipeline
from llama_index.core.storage.docstore import SimpleDocumentStore
from llama_index.core.node_parser import SentenceSplitter
from llama_index.embeddings.openai import OpenAIEmbedding# 定义本地文档存储
docstore = SimpleDocumentStore()# 创建摄取管道,添加本地文档存储
pipeline = IngestionPipeline(transformations=[SentenceSplitter(chunk_size=25, chunk_overlap=0),OpenAIEmbedding(),],docstore=docstore,
)# 运行管道,传入文档列表
nodes = pipeline.run(documents=[Document.example()])# 持久化管道状态(缓存和文档存储)到本地文件夹
pipeline.persist('./pipeline_storage')# 之后可以通过load恢复
pipeline.load('./pipeline_storage')
http://www.xdnf.cn/news/10848.html

相关文章:

  • Unity 环境搭建
  • 【springcloud】快速搭建一套分布式服务springcloudalibaba(四)
  • Python中join()方法完全指南:参数要求与常见用法解析
  • 【深度学习新浪潮】以Dify为例的大模型平台的对比分析
  • 38、响应处理-【源码分析】-HTTPMessageConverter原理
  • C++.双指针算法(1.1目录修正)
  • CA-Net复现
  • 多租户系统的实现方式
  • 第四十天打卡
  • 统计字符数
  • 「Java教案」算术运算符与表达式
  • #16 学习日志软件测试
  • 论文写作核心要点
  • 《高等数学》(同济大学·第7版)第一章第四节《无穷小与无穷大》的超级详细
  • 如何提升大模型召回率和实战案例
  • 页岩油试油试采
  • 深入理解C++面向对象编程:类与对象全面指南
  • 安装DockerDocker-Compose
  • [SC]SystemC中常用的宏和小工具
  • DeepSeek模型多模态扩展与跨模态理解实战
  • 线程池详细解析(一)
  • 空间智能重塑未来治理
  • ProxyPin抓APK数据包
  • 3.需求分析与测试用例设计方法
  • 为什么使用 ./ 表示当前目录:深入解析路径表示法的起源与原理
  • 太极APP:免Root,畅享Xposed模块的神奇魅力
  • 数值与字典解决方案二十七讲:两列数据相互去掉重复值后合并
  • 每天总结一个html标签——a标签
  • Docker安装Redis集群(3主3从+动态扩容、缩容)保姆级教程含踩坑及安装中遇到的问题解决
  • 判断用户输入昵称是否存在(Python)