langchain_community.document_loaders.parsers.docai
.DocAIParser¶
- class langchain_community.document_loaders.parsers.docai.DocAIParser(*, client: Optional[DocumentProcessorServiceClient] = None, location: Optional[str] = None, gcs_output_path: Optional[str] = None, processor_name: Optional[str] = None)[source]¶
[Deprecated] Google Cloud Document AI 解析器。
有关 Document AI 的详细说明,请参考产品文档。 https://cloud.google.com/document-ai/docs/overview
Notes
Deprecated since version 0.0.32.
初始化解析器。
- 参数:
client:要使用的DocumentProcessorServiceClient location:Document AI处理器所在的Google Cloud位置 gcs_output_path:用于存储解析结果的Google Cloud存储路径 processor_name:Document AI处理器或处理器版本的完整资源名称
您应该提供client或location(然后将实例化client)。
Methods
__init__
(*[, client, location, ...])初始化解析器。
batch_parse
(blobs[, gcs_output_path, ...])解析一个懒惰地列表的blob。
docai_parse
(blobs, *[, gcs_output_path, ...])在一组blob上运行Google Document AI PDF批处理。
get_results
(operations)is_running
(operations)lazy_parse
(blob)解析一个懒惰的blob。
online_process
(blob[, ...])解析一个blob,使用在线处理进行惰性解析。
operations_from_names
(operation_names)从名称初始化长时间运行的操作。
parse
(blob)将blob急切地解析为一个文档或多个文档。
parse_from_results
(results)- Parameters
client (Optional[DocumentProcessorServiceClient]) –
location (Optional[str]) –
gcs_output_path (Optional[str]) –
processor_name (Optional[str]) –
- __init__(*, client: Optional[DocumentProcessorServiceClient] = None, location: Optional[str] = None, gcs_output_path: Optional[str] = None, processor_name: Optional[str] = None)[source]¶
初始化解析器。
- 参数:
client:要使用的DocumentProcessorServiceClient location:Document AI处理器所在的Google Cloud位置 gcs_output_path:用于存储解析结果的Google Cloud存储路径 processor_name:Document AI处理器或处理器版本的完整资源名称
您应该提供client或location(然后将实例化client)。
- Parameters
client (Optional[DocumentProcessorServiceClient]) –
location (Optional[str]) –
gcs_output_path (Optional[str]) –
processor_name (Optional[str]) –
- batch_parse(blobs: Sequence[Blob], gcs_output_path: Optional[str] = None, timeout_sec: int = 3600, check_in_interval_sec: int = 60) Iterator[Document] [source]¶
解析一个懒惰地列表的blob。
- 参数:
blobs:要解析的blob列表。 gcs_output_path:用于存储解析结果的Google Cloud Storage路径。 timeout_sec:等待Document AI完成的超时时间,单位为秒。 check_in_interval_sec:等待下一次检查解析操作是否已完成的时间间隔,单位为秒。
- 这是一个长时间运行的操作。推荐的方法是将解析与创建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: Optional[str] = None, processor_name: Optional[str] = None, batch_size: int = 1000, enable_native_pdf_parsing: bool = True, field_mask: Optional[str] = None) List[Operation] [source]¶
在一组blob上运行Google Document AI PDF批处理。
- 参数:
blobs:要解析的blob列表 gcs_output_path:用于存储结果的GCS路径(文件夹) processor_name:Document AI处理器的名称。 batch_size:每批文档的数量 enable_native_pdf_parsing:解析器的配置选项 field_mask:逗号分隔的要包含在Document AI响应中的字段列表。
建议:”text,pages.pageNumber,pages.layout”
Document AI每批有1000个文件限制,因此超过该限制的批次需要拆分为多个请求。 批处理是异步长时间运行的操作,结果存储在输出GCS存储桶中。
- get_results(operations: List[Operation]) List[DocAIParsingResults] [source]¶
- Parameters
operations (List[Operation]) –
- Return type
List[DocAIParsingResults]
- is_running(operations: List[Operation]) bool [source]¶
- Parameters
operations (List[Operation]) –
- Return type
bool
- lazy_parse(blob: Blob) Iterator[Document] [source]¶
解析一个懒惰的blob。
- 参数:
blobs: 要解析的Blob
这是一个长时间运行的操作。推荐的方法是将文档批量处理,并使用`batch_parse()`方法。
- online_process(blob: Blob, enable_native_pdf_parsing: bool = True, field_mask: Optional[str] = None, page_range: Optional[List[int]] = None) Iterator[Document] [source]¶
解析一个blob,使用在线处理进行惰性解析。
- 参数:
blob:要解析的blob。 enable_native_pdf_parsing:启用pdf嵌入文本提取。 field_mask:逗号分隔的要包含在Document AI响应中的字段列表。
建议:”text,pages.pageNumber,pages.layout”
- page_range:要解析的页面编号列表。如果为`None`,
将解析整个文档。
- operations_from_names(operation_names: List[str]) List[Operation] [source]¶
从名称初始化长时间运行的操作。
- Parameters
operation_names (List[str]) –
- Return type
List[Operation]
- parse(blob: Blob) List[Document] ¶
将blob急切地解析为一个文档或多个文档。
这是一个用于交互式开发环境的便利方法。
生产应用程序应该更倾向于使用lazy_parse方法。
子类通常不应该覆盖这个解析方法。
- 参数:
blob:Blob实例
- 返回:
文档列表
- parse_from_results(results: List[DocAIParsingResults]) Iterator[Document] [source]¶
- Parameters
results (List[DocAIParsingResults]) –
- Return type
Iterator[Document]