跳转到内容

Python 使用指南



某些参数特定于 Python 实现



这控制用于发送解析API请求的工作线程数量。默认值为4。

parser = LlamaParse(
num_workers=10
)


在同步模式下(见下文),Python 将轮询检查作业状态。默认轮询间隔为 1 秒。

parser = LlamaParse(
check_interval=10
)


默认情况下,LlamaParse会在任务上传和检查时打印状态信息。您可以禁用此输出。

parser = LlamaParse(
verbose=False
)


与 SimpleDirectoryReader 配合使用

Section titled “Use with SimpleDirectoryReader”

您可以在LlamaIndex中直接使用SimpleDirectoryReader来调用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()


也可以直接调用解析器,共有4种模式:

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_pagesmax_pages 结合使用。

Note:

  • 由于Python SDK的限制,在解析单个文档时,只有当设置了target_pagesmax_pages时,分区作业才会并发运行。如果target_pagesmax_pages均未设置,则在解析单个文档时分区作业将按顺序运行。
  • 在解析多个文档时,并发处理是在文档级别进行的。