Prompt 语宙Prompt 语宙
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • 强化 AI 学习
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • 社区
Search
  • Contact
  • Blog
  • Complaint
  • Advertise
© 2024 Prompt 语宙. HalfPX. All Rights Reserved.
阅读: LlamaIndex 数据摄入管道 [译]
Share
登陆
通知 阅读更多
Font Resizer字体
Font Resizer字体
Prompt 语宙Prompt 语宙
Search
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • 强化 AI 学习
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • 社区
已有帐户? 登陆
  • Contact
  • Blog
  • Complaint
  • Advertise
© 2023 Prompt 语宙. Paooo.com. All Rights Reserved.
Prompt 语宙 > 强化 AI 学习 > LlamaIndex 数据摄入管道 [译]
强化 AI 学习

LlamaIndex 数据摄入管道 [译]

宝玉的分享
最近更新: 2026年5月23日 下午6:26
SHARE

LlamaIndex 的数据摄入管道是一种全新且改进的方法,用于高效摄入和管理数据文档。

阅读目录
  • 数据变换
  • 缓存机制
  • 文档管理策略
  • 集成向量存储
  • 数据持久化
  • 结论

这一管道特别适用于需要将输入文档经过一系列处理步骤(如切分、嵌入等)后才进行索引建立的情况,比如我们的 RAG 管道就是这样。

此外,它还具备缓存、文档存储管理、向量存储更新等实用功能。

数据变换

数据变换是数据摄入管道的核心组件。

每个数据变换都会接收一个节点列表,经过一系列必要的修改后,输出另一个节点列表。数据摄入管道就是由这些有序的数据变换步骤组成的。

我们在初始化管道时即定义这些数据变换。

pipeline = IngestionPipeline(
transformations=[
SentenceSplitter(chunk_size=25, chunk_overlap=0),
TitleExtractor(),
OpenAIEmbedding(),
]
)

我们可以使用的数据变换包括:

  1. 文本分割器(TextSplitter)
  2. 节点解析器(NodeParser)
  3. 元数据提取器(MetadataExtractor)
  4. 任何嵌入模型(Any embedding model)

我们也可以根据需要创建自定义的数据变换。相关指南即将发布。

缓存机制

在管道运行过程中,一个变换的输出会成为下一个变换的输入。

管道会缓存节点列表和变换对。因此,如果我们对相同的节点列表进行重复的变换操作,管道会直接从缓存中获取结果。

我们可以通过执行 ingest_cache.clear() 来清除缓存。

此外,我们还可以利用 Redis 等服务来实现更高级的缓存机制:

pipeline = IngestionPipeline(
transformations=[
SentenceSplitter(chunk_size=25, chunk_overlap=0),
TitleExtractor(),
OpenAIEmbedding(),
],
cache=IngestionCache(
cache=RedisCache(
redis_uri="redis://127.0.0.1:6379", collection="test_cache"
)
),
)

文档管理策略

为了避免对同一文档重复执行变换,数据摄入管道利用文档的 ID 和内容哈希来识别并处理重复文档。

启用文档管理功能,需要将文档存储系统(docstore)集成到管道中。

pipeline = IngestionPipeline(
transformations=[
SentenceSplitter(chunk_size=25, chunk_overlap=0),
TitleExtractor(),
OpenAIEmbedding(),
],
docstore=SimpleDocumentStore()
)

系统会比较文档存储中已有文档的哈希值和输入文档的哈希值,从而筛选出不需要变换的文档。

文档管理主要有三种策略:

  1. 仅检查文档重复情况
  2. 实现文档的更新操作
  3. 在更新文档的同时删除旧文档。

更多细节的指南即将发布。

集成向量存储

如果向管道中添加了向量存储(vectorstore),管道会自动将经过一系列变换后的最终输出节点加入到这个向量存储中。

import qdrant_client
client = qdrant_client.QdrantClient(location=":memory:")
vector_store = QdrantVectorStore(client=client, collection_name="test_store")
pipeline = IngestionPipeline(
transformations=[
SentenceSplitter(chunk_size=25, chunk_overlap=0),
TitleExtractor(),
OpenAIEmbedding(),
],
vector_store=vector_store,
)
# Ingest directly into a vector db
pipeline.run(documents=[Document.example()])

接着,我们可以利用这个已填充的向量存储来创建向量存储索引。

from llama_index import VectorStoreIndex
index = VectorStoreIndex.from_vector_store(vector_store)

为了实现这一点,变换序列中的最后一个步骤必须是一个嵌入(embedding)变换。

数据持久化

数据摄入管道支持将缓存和文档存储持久化到一个文件夹中(默认路径为 ./pipeline_storage)。

pipeline = IngestionPipeline(
transformations=[
SentenceSplitter(chunk_size=25, chunk_overlap=0),
TitleExtractor(),
OpenAIEmbedding(),
]
)
# Now let's save the pipeline (cache and docstore)
pipeline.persist('./pipeline_storage')

定义好管道后,我们需要像下面这样从存储中加载它:

pipeline.load('./pipeline_storage')

这样一来,当我们运行管道时,它会先利用已有的缓存数据,同时跳过文档存储中已存在的同一文档。

需要注意的是,如果我们使用的是远程缓存或文档存储系统,例如 Redis,那么上述的持久化步骤就不必要了。

结论

综上所述,LlamaIndex 的新型数据摄入管道不仅提高了文档摄入和管理的效率,还使得对文档执行一系列变换变得直观且高效。

欲了解更多,请查看官方文档:摄入管道


感谢您的阅读,敬请期待更多内容。

我会定期在 Twitter 上分享关于这些主题及我正在探索的内容。欢迎在 Twitter 上关注我。

激发创造力:将语言模型打造成层次化策略,提升解决复杂问题的探索效率 [译]
Chapter 1: Research and Development | 2024 AI Index Report
通过在粘贴的文本中加入不可见指令,实现对大语言模型的提示注入 [译]
整合人工智能的两大策略 [译]
我那价值 5 亿美元的火星探测车失误:一个失败的故事 [译]
分享
Email 复制链接 打印
Share
上一篇 6 个残酷真相,让你成为更好的人 [译]
下一篇 你需要的不仅是韧性,更需要朋友和金钱 [译]
发表评价

发表评价 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Please select a rating!

Ad image
- 入群领取知识星球折扣卷, 仅剩99份 -
Ad imageAd image

最近更新

腾讯开源Hunyuan3D-2.1:工业级3D生成模型,支持PBR材质与多模态输入,1秒极速出图
AI 工具 AIGC 资讯
字节跳动MAGREF横空出世:单图+文本一键生成多主体视频,AI视频生成迎来新范式
AI 工具 AIGC 资讯
微软研究院发布Code Researcher:AI Agent深度挖掘代码库与提交历史,自动化修复系统级崩溃
AI 工具 AIGC 资讯
字节跳动Seaweed APT2革新:单GPU 24帧/秒,AAPT技术攻克长视频生成难题,AI视频生成迈入实时交互新纪元
AI 工具 最新趋势

相关推荐

强化 AI 学习

科学与工程助力更优秀的文本生成 [译]

宝玉的分享
图 3: 三款应用的定性任务评估。这幅图展示了在 Google Maps、Gmail 和 Lightroom 上执行的三种不同任务的定性成果。它体现了 AppAgent 在不同应用场景中准确感知、推理和执行任务的能力。由于篇幅限制,部分非关键细节已被省略。
强化 AI 学习

AppAgent: 像人类用户一样操作手机的多模态智能体 [译]

宝玉的分享
Mozilla 开发者在静态分析集成方面的研究图
强化 AI 学习

谷歌如何简化代码审查流程,实现 97% 开发者满意度 [译]

宝玉的分享
强化 AI 学习

大语言模型能取代编译器吗? [译]

宝玉的分享
/ Prompt 语宙 /

Experience the limitless creative possibilities of generative AI and unlock new levels of innovation.

Quick Link

  • Remaker AI
  • BGRemaker 抠图Hot
  • AIGC 工具
  • Prompt 咒语生成器
  • 去水印工具

Support

  • Contact
  • Blog
  • Complaint
  • Advertise

标签

Agent AI AI Agent AIGC AI大模型 AI安全 AI工具 AI智能体 AI模型 AI绘画 AI编程 AI编程助手 AI编程工具 AI视频生成 AI音乐生成 Anthropic Cerebras WSE-3 chatgpt Claude Claude Code DeepSeek Gemini GPT-5.3 Instant GPT-5.3-Codex-Spark GPT-5.4 MCP协议 meta Midjourney MiniMax Mistral AI MoE架构 openai prompt Qwen3 RAG SWE-Bench xAI 上海人工智能实验室 世界模型 人工智能 人物 代码生成 企业级AI 全模态大模型 具身智能 图像生成 图像生成模型 多智能体 多模态 多模态AI 多模态大模型 多模态模型 大模型 大模型应用 大语言模型 字节跳动 小红书 展台 开源 开源AI 开源AI工具 开源大模型 开源工具 开源平台 开源框架 开源模型 开源项目 强化学习 微软 扩散模型 推理模型 教程 数字人 文本转语音 早报 昆仑万维 智谱AI 月之暗面 本地部署 清华大学 生成式AI 美团 腾讯 腾讯混元 自然语言处理 英伟达 蚂蚁集团 视觉语言模型 视频生成 视频生成模型 语音合成 谷歌 谷歌AI 谷歌DeepMind 通义千问 阶跃星辰 阿里巴巴 阿里通义 面壁智能 香港大学
Prompt 语宙Prompt 语宙
Follow US
© 2009-2026 Prompt 语宙. Paooo.com. All Rights Reserved.