文档加载器与解析器
使用 LlamaHub 加载器处理 200 多种源类型,并使用能够保留结构(表格、标题)的解析器。
文档加载器与解析器 是 CoddyKit 上的免费 AI Agents 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AI Agents 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AI Agents 课程共包含 4 节课。
本课时的部分内容尚未翻译,以英文显示。
LlamaIndex 与 LangChain
LlamaIndex(以前称为 GPT-Index)是另一个大型代理框架。它专注于 RAG 和以文档为中心的代理。
优势:针对不同索引类型的抽象更清晰,更擅长 PDF 和结构化文档解析,并提供深入的响应合成选项。
Install
# pip install llama-index
from llama_index.core import VectorStoreIndex, SimpleDirectoryReaderEasiest Path: SimpleDirectoryReader
documents = SimpleDirectoryReader('./docs').load_data()
print(f'{len(documents)} documents')
print(documents[0].text[:200])LlamaHub
LlamaHub 是一个由社区维护的数据加载器注册中心,提供 200 多种加载器:
# pip install llama-index-readers-notion
from llama_index.readers.notion import NotionPageReader
reader = NotionPageReader(integration_token='...')
docs = reader.load_data(database_ids=['db-id'])使用 LlamaParse 处理 PDF
LlamaParse 是业界标准的 PDF 解析器 — 可处理表格、多栏布局和数学公式:
# pip install llama-parse
from llama_parse import LlamaParse
parser = LlamaParse(result_type='markdown', api_key='...')
docs = parser.load_data('handbook.pdf')表格很难处理
标准 PDF 解析器往往会破坏表格。LlamaParse 会将表格提取为规范的 Markdown 表格 — 这对财务和科学文档至关重要。
Web Loaders
from llama_index.readers.web import SimpleWebPageReader
docs = SimpleWebPageReader().load_data(['https://example.com'])Database Loaders
from llama_index.readers.database import DatabaseReader
reader = DatabaseReader(sql_database=SQLDatabase(engine))
docs = reader.load_data(query='SELECT * FROM articles')文档元数据
每个 Document 都有可用于过滤和引用的元数据:
doc = documents[0]
print(doc.text)
print(doc.metadata)
# {'file_name': 'handbook.pdf', 'page_label': '1'}添加自定义元数据
在加载后丰富文档:
for doc in documents:
doc.metadata['department'] = 'engineering'
doc.metadata['last_reviewed'] = '2024-08'不将元数据提供给 LLM
有些元数据仅用于过滤,不应让 LLM 看到:
doc.excluded_llm_metadata_keys = ['internal_id', 'file_path']
# LLM still sees the text, but not those keys.异步加载
许多加载器支持异步操作,适合处理大型批次:
docs = await reader.aload_data(['url1', 'url2', 'url3'])LlamaParse 的优势
LlamaParse 以什么能力著称?
回顾
SimpleDirectoryReader 适合快速入门,LlamaHub 适合 SaaS 数据源,LlamaParse 适合处理复杂 PDF。Document.metadata 是您的好帮手。
常见问题解答
「文档加载器与解析器」课时是免费的吗?
是的 — 「文档加载器与解析器」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AI Agents 课程的其余内容,请升级到 CoddyKit PRO。 AI Agents 课程共包含 4 节课。
「文档加载器与解析器」这节课中我会学到什么?
使用 LlamaHub 加载器处理 200 多种源类型,并使用能够保留结构(表格、标题)的解析器。 你通过在浏览器中直接运行的动手代码来练习 AI Agents,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 AI Agents 需要有经验吗?
无需任何先前经验。CoddyKit 上的 AI Agents 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「文档加载器与解析器」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 AI Agents 课中编写并运行代码吗?
能。每节 AI Agents 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 文档加载器与解析器
- 索引层级:向量、树、关键词
- 查询引擎与响应合成
- 子问题分解策略