Prompt 语宙Prompt 语宙
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • 强化 AI 学习
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • 社区
  • AI 生图 Prompt
    • 写实人像
    • 产品与广告
    • 游戏资产与 3D
    • 界面与图标
    • 建筑与室内
    • 动漫与插画
    • 风景与自然
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
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • 社区
  • AI 生图 Prompt
    • 写实人像
    • 产品与广告
    • 游戏资产与 3D
    • 界面与图标
    • 建筑与室内
    • 动漫与插画
    • 风景与自然
已有帐户? 登陆
  • 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 上关注我。

大语言模型 API 市场的变迁之路 [译]
大语言模型的“破解”研究:仅需二十次尝试 [译]
只要运用得当,电商与人工智能就是完美搭档 [译]
AI 操作指南 [译]
利用 AI 进行角色扮演:对作家和教育者来说是个重要工具 [译]
分享
Email 复制链接 打印
Share
上一篇 6 个残酷真相,让你成为更好的人 [译]
下一篇 你需要的不仅是韧性,更需要朋友和金钱 [译]
发表评价

发表评价 取消回复

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

Please select a rating!

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

最近更新

ReSyncer – 清华联合百度推出的AI视频编辑工具
AIGC 资讯
MotionClone – 文本驱动的AI视频动作克隆框架
AIGC 资讯
Mini-Monkey – 华科联合华南理工推出的多模态AI模型
AIGC 资讯
MDT-A2G – 复旦&腾讯优图推出的AI模型,可根据语音同步生成手势
AIGC 资讯

相关推荐

强化 AI 学习

V-JEPA:迈向 Yann LeCun 先进机器智能(AMI)愿景的新里程碑 [译]

宝玉的分享
强化 AI 学习

全速前行:2024 年的机器学习、人工智能与数据(MAD)领域展望 [译]

宝玉的分享
为达到 1930 年平均英国工人产出,每位工人现在所需的每周工作小时数。
强化 AI 学习

利用工具和技术,减少工作时间,提升生活质量 [译]

宝玉的分享
强化 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.