DocAIParser#
- class langchain_google_community.docai.DocAIParser(*, client: DocumentProcessorServiceClient | None = None, project_id: str | None = None, location: str | None = None, gcs_output_path: str | None = None, processor_name: str | None = None)[source]#
Google Cloud Document AI 解析器。
有关Document AI的详细解释,请参阅产品文档。 https://cloud.google.com/document-ai/docs/overview
初始化解析器。
- Parameters:
client (DocumentProcessorServiceClient | None) – 使用的 DocumentProcessorServiceClient
location (str | None) – 一个Google Cloud位置,其中有一个Document AI处理器
gcs_output_path (str | None) – 在Google Cloud Storage上存储解析结果的路径
processor_name (str | None) – Document AI 处理器或处理器版本的完整资源名称
project_id (str | None)
- You should provide either a client or location (and then a client
将被实例化。
方法
__init__
(*[, client, project_id, location, ...])初始化解析器。
batch_parse
(blobs[, gcs_output_path, ...])懒解析一个blob列表。
docai_parse
(blobs, *[, gcs_output_path, ...])对一组blobs运行Google Document AI PDF批处理。
get_results
(operations)is_running
(operations)lazy_parse
(blob)懒解析一个blob。
online_process
(blob[, field_mask])使用在线处理懒解析一个blob。
operations_from_names
(operation_names)从它们的名称初始化长时间运行的操作。
parse
(blob)急切地将blob解析为一个或多个文档。
parse_from_results
(results)- __init__(*, client: DocumentProcessorServiceClient | None = None, project_id: str | None = None, location: str | None = None, gcs_output_path: str | None = None, processor_name: str | None = None)[source]#
初始化解析器。
- Parameters:
client (DocumentProcessorServiceClient | None) – 使用的 DocumentProcessorServiceClient
location (str | None) – 一个Google Cloud位置,其中有一个Document AI处理器
gcs_output_path (str | None) – 在Google Cloud Storage上存储解析结果的路径
processor_name (str | None) – Document AI 处理器或处理器版本的完整资源名称
project_id (str | None)
- You should provide either a client or location (and then a client
将被实例化。
- batch_parse(blobs: Sequence[Blob], gcs_output_path: str | None = None, timeout_sec: int = 3600, check_in_interval_sec: int = 60, **process_options_kwargs: Any) Iterator[Document] [来源]#
惰性地解析一个blob列表。
- Parameters:
blobs (Sequence[Blob]) – 要解析的blob列表。
gcs_output_path (str | None) – 在Google Cloud Storage上存储解析结果的路径。
timeout_sec (int) – 等待Document AI完成的超时时间,单位为秒。
check_in_interval_sec (int) – 等待下一次检查解析操作是否完成的间隔时间,单位为秒。
process_options_kwargs (Any) – 传递给文档AI处理器的可选参数
- Return type:
迭代器[文档]
- This is a long-running operation. A recommended way is to decouple
从创建LangChain文档解析: >>> operations = parser.docai_parse(blobs, gcs_path) >>> parser.is_running(operations) 你可以获取操作名称并保存它们: >>> names = [op.operation.name for op in operations] 当所有操作完成后,你可以使用它们的结果: >>> operations = parser.operations_from_names(operation_names) >>> results = parser.get_results(operations) >>> docs = parser.parse_from_results(results)
- docai_parse(blobs: Sequence[Blob], *, gcs_output_path: str | None = None, processor_name: str | None = None, batch_size: int = 1000, field_mask: str | None = None, **process_options_kwargs: Any) List[Operation] [source]#
在blob列表上运行Google Document AI PDF批量处理。
- Parameters:
blobs (Sequence[Blob]) – 要解析的blob列表
gcs_output_path (str | None) – 用于存储结果的GCS上的路径(文件夹)
processor_name (str | None) – Document AI 处理器的名称。
batch_size (int) – 每批文档的数量
field_mask (str | None) – 一个逗号分隔的列表,指定在Document AI响应中包含哪些字段。 建议: “text,pages.pageNumber,pages.layout”
process_options_kwargs (Any) – 传递给文档AI处理器的可选参数
- Return type:
列表[Operation]
Document AI 每批次有 1000 个文件的限制,因此超过该数量的批次需要拆分为多个请求。批处理是一个异步长时间运行的操作,结果存储在输出 GCS 存储桶中。
- get_results(operations: List[Operation]) List[DocAIParsingResults] [source]#
- Parameters:
操作 (列表[Operation])
- Return type:
- is_running(operations: List[Operation]) bool [source]#
- Parameters:
操作 (列表[Operation])
- Return type:
布尔
- lazy_parse(blob: Blob) Iterator[Document] [来源]#
懒散地解析一个blob。
- This is a long-running operation. A recommended way is to batch
将文档合并并使用batch_parse()方法。
- online_process(blob: Blob, field_mask: str | None = None, **process_options_kwargs: Any) Iterator[Document] [source]#
使用在线处理懒解析一个blob。
- operations_from_names(operation_names: List[str]) List[Operation] [source]#
从其名称初始化长时间运行的操作。
- Parameters:
operation_names (列表[字符串])
- Return type:
列表[Operation]
- parse(blob: Blob) list[Document] #
急切地将blob解析为一个或多个文档。
这是一个用于交互式开发环境的便捷方法。
生产应用程序应优先使用lazy_parse方法。
子类通常不应重写此解析方法。
- parse_from_results(results: List[DocAIParsingResults]) Iterator[Document] [source]#
- Parameters:
结果 (列表[DocAIParsingResults])
- Return type:
迭代器[文档]