LlamaParse
LlamaParse 是由 LlamaIndex 创建的一个 API,用于高效解析和表示文件,以便在使用 LlamaIndex 框架时进行高效检索和上下文增强。
LlamaParse 直接与 LlamaIndex 集成。
免费计划每天可处理最多 1000 页。付费计划每周免费处理 7000 页,额外每页收费 0.3 美分。
请阅读以下快速入门信息,或查看完整文档。
入门
首先,登录并从 https://cloud.llamaindex.ai ↗ 获取 API 密钥。
然后,确保安装了最新版本的 LlamaIndex。
注意: 如果您从 v0.9.X 升级,我们建议您遵循我们的迁移指南,并先卸载旧版本。
pip uninstall llama-index # 如果从 v0.9.x 或更早版本升级,请运行此命令
pip install -U llama-index --upgrade --no-cache-dir --force-reinstall
最后,安装该软件包:
pip install llama-parse
现在您可以运行以下代码来解析您的第一个 PDF 文件:
import nest_asyncio
nest_asyncio.apply()
from llama_parse import LlamaParse
parser = LlamaParse(
api_key="llx-...", # 也可以在环境变量中设置为 LLAMA_CLOUD_API_KEY
result_type="markdown", # 可选 "markdown" 和 "text"
num_workers=4, # 如果传入多个文件,将在 `num_workers` 个 API 调用中分割
verbose=True,
language="en", # 可选择定义语言,默认为 en
)
# 同步
documents = parser.load_data("./my_file.pdf")
# 同步批处理
documents = parser.load_data(["./my_file1.pdf", "./my_file2.pdf"])
# 异步
documents = await parser.aload_data("./my_file.pdf")
# 异步批处理
documents = await parser.aload_data(["./my_file1.pdf", "./my_file2.pdf"])
使用文件对象
您可以直接解析文件对象:
import nest_asyncio
nest_asyncio.apply()
from llama_parse import LlamaParse
parser = LlamaParse(
api_key="llx-...", # 也可以在环境变量中设置为 LLAMA_CLOUD_API_KEY
result_type="markdown", # 可选 "markdown" 和 "text"
num_workers=4, # 如果传入多个文件,将在 `num_workers` 个 API 调用中分割
verbose=True,
language="en", # 可选择定义语言,默认为 en
)
with open("./my_file1.pdf", "rb") as f:
documents = parser.load_data(f)
# 您也可以直接传递文件字节
with open("./my_file1.pdf", "rb") as f:
file_bytes = f.read()
documents = parser.load_data(file_bytes)
与 SimpleDirectoryReader
一起使用
您还可以将解析器集成为 SimpleDirectoryReader
中的默认 PDF 加载器:
import nest_asyncio
nest_asyncio.apply()
from llama_parse import LlamaParse
from llama_index.core import SimpleDirectoryReader
parser = LlamaParse(
api_key="llx-...", # 也可以在环境变量中设置为 LLAMA_CLOUD_API_KEY
result_type="markdown", # 可选 "markdown" 和 "text"
verbose=True,
)
file_extractor = {".pdf": parser}
documents = SimpleDirectoryReader(
"./data", file_extractor=file_extractor
).load_data()
SimpleDirectoryReader
的完整文档可以在 LlamaIndex 文档 中找到。
示例
在示例文件夹中可以找到几个端到端的索引示例
文档
https://docs.cloud.llamaindex.ai/
服务条款
请查看此处的服务条款。