主题
已弃用
本页记录的是已弃用的 Parse v1 API。新的接入请使用 Parse v2;改造已有的 v1 代码请见v1 到 v2 迁移指南。
Python 专有选项
有些参数是 Python 实现特有的
worker 数量
它控制解析时用于发 API 请求的 worker 数量。默认为 4。
- Python
parser = LlamaParse(
num_workers=10
)检查间隔
在同步模式下(见下文)Python 会轮询检查任务状态。默认为 1 秒。
- Python
parser = LlamaParse(
check_interval=10
)详细输出模式
默认情况下,LlamaParse 会在上传与检查任务时打印其状态。你可以关闭这些输出。
- Python
parser = LlamaParse(
verbose=False
)配合 SimpleDirectoryReader 使用
你可以通过 SimpleDirectoryReader 在 LlamaIndex 里直接使用 LlamaParse。它会解析 data 目录里的所有文件并返回解析后的文档。
from llama_cloud_services import LlamaParse
from llama_index.core import SimpleDirectoryReader
parser = LlamaParse()
file_extractor = {".pdf": parser}
documents = SimpleDirectoryReader(
"./data", file_extractor=file_extractor
).load_data()直接使用
也可以直接调用解析器,共四种模式:
同步解析
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"])大文档拆分
LlamaParse.partition_pages 选项可以把一个大文档的解析拆成若干个较小的任务。默认不开启拆分,以保持 Python SDK 与裸 API 的默认行为一致。
parser = LlamaParse(
api_key="llx-...",
num_workers=4,
partition_pages=100, # Split large documents into partitions of up to 100 pages each
)
result = parser.parse("./1000-page-long.pdf")在这个例子里,一份 1000 页的文档会被拆成 10 个任务(每个 100 页),最多同时运行其中 4 个。等全部任务完成后,再返回合并后的拆分结果。
partition_pages 可以与 target_pages、max_pages 一起使用。
注意:
- 受 Python SDK 的实现限制,解析单个文档时,只有设了
target_pages或max_pages之一,拆分出的任务才会并发跑;若target_pages与max_pages都不设,单个文档的拆分会顺序执行。 - 解析多个文档时,并发是在文档这一层处理的。