AI开放服务/开源项目

Unstructured

一个开源项目提供预处理非结构化数据的工具和API,用于机器学习的各阶段数据管道。

标签:

综合介绍

GitHub上的Unstructured-IO/unstructured项目提供一套开放源代码的库和API,用以构建用于标注、训练或生产机器学习管道的自定义预处理流程。它支持文本文档如PDF、HTML、Word等多种格式,用于转化非结构化数据到结构化输出,优化数据处理工作流,并且新推出API支持。

 

 

功能列表

提供开放源代码组件处理图像和文本文档
容器化运行或本地安装
支持构建多平台Docker镜像
提供API接口
提供快速安装和本地开发的指导
提供PDF文档解析示例
提供动态链接库
提供安全策略和bug提交模板
支持跨平台开发环境
收集匿名统计数据用以产品决策

 

 

使用帮助

容器化使用,利用Docker运行unstructured
本地安装,通过PyPI安装支持所有文档类型的Python SDK
开发环境设置,推荐使用pyenv管理虚拟环境,并运行make安装
本地文档处理,安装对应的系统依赖如libmagic、tesseract等
PDF文件解析,使用自动分区函数处理

 

在容器中运行库

 

以下说明旨在帮助您启动并运行 Docker 以与 unstructured 进行交互。如果您的计算机上尚未安装 docker,请参阅此处。

注意:我们构建多平台映像以支持 x86_64 和 Apple 芯片硬件。 docker pull 应该为您的架构下载相应的映像,但如果需要,您可以指定 ( –platform 例如 –platform linux/amd64 )。

我们为所有推 main 送到 的 Docker 映像构建 。我们用相应的短提交哈希(例如 `fbc7a69` )和应用程序版本(例如)标记每个图像 `0.5.5-dev1` 。我们还用 `latest` 标记了最新的图像。为了利用这一点, `docker pull` 请从我们的映像存储库中获取。

docker pull downloads.unstructured.io/unstructured-io/unstructured:latest

拉取后,您可以从此映像创建一个容器,并将其 shell 到它。

# create the container

还可以构建自己的 Docker 映像。

如果您只计划分析一种类型的数据,则可以通过注释掉其他数据类型所需的一些包/要求来加快映像的构建速度。请参阅 Dockerfile,了解您的用例需要哪些行。

make docker-build

进入正在运行的容器后,您可以直接在 Python 解释器的交互模式下进行尝试。

# this will drop you into a python console so you can run the below partition functions

 

安装库

 

使用以下说明启动 unstructured 并运行并测试您的安装。

安装 Python SDK 以支持所有文档 pip install “unstructured[all-docs]” 类型

对于不需要任何额外依赖项的纯文本文件、HTML、XML、JSON 和电子邮件,您可以运行 pip install unstructured

要处理其他文档类型,您可以安装这些文档所需的附加功能,例如 pip install “unstructured[docx,pptx]”

如果以下系统依赖项在您的系统上尚不可用,请安装它们。根据要分析的文档类型,您可能不需要所有这些文档类型。

  • libmagic-dev (文件类型检测)
  • poppler-utils (图片和 PDF)
  • tesseract-ocr (图像和 PDF,安装 tesseract-lang 以获得其他语言支持)
  • libreoffice (MS Office 文档)

 

pandoc (EPUB、RTF 和 Open Office 文档)。请注意,要处理 RTF 文件,您需要 version 2.14.2 或更新版本。运行 make install-pandoc or ./scripts/install-pandoc.sh 将为您安装正确的版本。

相关导航