3K star!为RAG而生的数据清洗神器

现在的AI时代,人工智能和大模型的能力很大程度上依赖于数据的质量,但是 数据具有不同的形状和大小,因此处理数据非常具有挑战性。

今天我们分享一个开源项目,它为微调或者RAG而生,将任何非结构化数据转换为结构化,它就是:OmniParse

OmniParse 是什么

OmniParse 是一个平台,它可以提取和解析任何非结构化数据,将其转换为针对 GenAI (LLM) 应用程序优化的结构化、可操作数据。无论您处理的是文档、表格、图像、视频、音频文件还是网页,OmniParse 都可以将您的数据准备得干净、结构化,并可用于 RAG、微调等 AI 应用程序

以下是目前支持处理的文件类型:

安装和使用

源码安装

目前OmniParse源码安装仅适用于基于 Linux 的系统。这是由于某些依赖项和系统特定配置与 Windows 或 macOS 不兼容。

bash 复制代码
git clone <https://github.com/adithya-s-k/omniparse>
cd omniparse

创建虚拟环境:

ini 复制代码
conda create --n omniparse-venv python=3.10
conda activate omniparse-venv

安装依赖项:

arduino 复制代码
poetry install
# or
pip install -e .
# or
pip install -r pyproject.toml

docker安装

也可以通过docker来使用OmniParse

arduino 复制代码
docker build -t omniparse .
# if you are running on a gpu
docker run --gpus all -p 8000:8000 omniparse
# else
docker run -p 8000:8000 omniparse

运行服务

css 复制代码
#运行服务器:
python server.py --host 0.0.0.0 --port 8000 --documents --media --web

#--documents:加载所有帮助您解析和提取文档的模型(Surya OCR系列模型和Florence-2)。
#--media:加载Whisper模型来转录音频和视频文件。
#--web:设置selenium爬虫。

启动后会提供一个API服务,内容可以参考以下:

执行示例

以下是执行文档解析的例子,可以解析 PDF、PowerPoint 或 Word 文档。

bash 复制代码
#Curl 命令:
curl -X POST -F "file=@/path/to/document" <http://localhost:8000/parse_document>

解析图像文件(PNG、JPEG、JPG、TIFF、WEBP)。

bash 复制代码
#Curl 命令:

curl -X POST -F "file=@/path/to/image.jpg" <http://localhost:8000/parse_media/image>

产品特点

✅ 完全本地,无需外部 API

✅ 适合 T4 GPU

✅ 支持 ~20 种文件类型

✅ 将文档、多媒体和网页转换为高质量的结构化 markdown

✅ 表格提取、图像提取/字幕、音频/视频转录、网页抓取

✅ 使用 Docker 和 Skypilot 轻松部署

✅ Colab 友好

✅ 由 Gradio 提供支持的交互式 UI

总结

OmniParse 旨在成为一个摄取/解析平台,您可以在其中摄取任何类型的数据,例如文档、图像、音频、视频和 Web 内容,并获得最结构化、最可操作且对 GenAI (LLM) 友好的输出。目前来看项目的思路的实用性很不错,当然目前项目在使用上也有一些不完善,比如它擅长解析英语,但对于中文等语言可能会有困难,另外对于PDF中公式转LaTeX会有困难,具体的可以参考项目给出的信息。

项目信息

相关推荐
Good_Starry2 小时前
Git介绍--github/gitee/gitlab使用
git·gitee·gitlab·github
云端奇趣7 小时前
探索 3 个有趣的 GitHub 学习资源库
经验分享·git·学习·github
运营黑客9 小时前
发现一超级Prompt:让GPT-4o、Claude3.5性能再升级(附保姆级教程)
github
記億揺晃着的那天10 小时前
Github优质项目推荐-第二期
github
我爱学Python!11 小时前
基于 LangChain 的自动化测试用例的生成与执行
人工智能·自然语言处理·langchain·自动化·llm·测试用例·大语言模型
Uncertainty!!14 小时前
GitHub入门与实践
github
罗曼蒂克在消亡14 小时前
github项目——gpt-pilot自动创建应用
gpt·github·github项目
牛右刀薛面16 小时前
launcher.py: error: the following arguments are required: --output_dir
llm·sft·llamafactory