—1 大模型 RAG 的难题是什么?
RAG 或者 Fine-tuning 微调作为大模型的增强技术,最核心的技术在于如何把企业的私有数据清洗转换成知识,企业中能够第一时间拿到的私有数据,往往是异构的、数据质量参差不齐,通过数据工程把数据变成知识就不是一件很容易的事儿。
OmniParse 正是为此而生的利器!它将任何非结构化数据转换为结构化知识。
Github 地址:https://github.com/adithya-s-k/omniparse
—2 OmniParse 有哪些核心功能?
OmniParse是一个平台,能够将任何非结构化数据摄取并解析为结构化、可操作的数据,这些数据已针对大模型应用程序进行了优化。无论您正在处理文档、表格、图像、视频、音频文件还是网页,OmniParse 都会使您的数据变得干净、结构化,并为诸如 RAG、微调 等 AI 大模型应用程序做好准备。
OmniParse 平台核心特性如下所示:
✅ 完全本地化,无需外部 API
✅ 适配 T4 GPU
✅ 支持约20种文件类型
✅ 将文档、多媒体和网页转换为高质量的结构化 Markdown
✅ 表格提取、图像提取/加标注、音频/视频转录、网页爬虫
✅ 易于使用 Docke r和 Skypilot 进行部署
✅ Colab 友好
✅ 由 Gradio 驱动的交互式用户界面
OmniParse 目前支持以下的数据类型,主流的数据格式都提供了良好的支持。
—3 OmniParse 如何安装和使用?
OmniParse 平台支持以下2种安装方式:
第一、通过源码直接安装
目前 OmniParse 源码安装仅适用于基于 Linux 的系统。这是由于某些依赖项和系统特定配置与 Windows 或 macOS 不兼容。
git clone <https://github.com/adithya-s-k/omniparse>
cd omniparse
创建虚拟环境
conda create --n omniparse-venv python=3.10
conda activate omniparse-venv
安装依赖项
poetry install
# or
pip install -e .
# or
pip install -r pyproject.toml
第二、通过 Docker 安装
也可以通过 Docker 来使用 OmniParse
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
第三、运行服务
#运行服务器:
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 文档。
#Curl 命令:
curl -X POST -F "file=@/path/to/document" <http://localhost:8000/parse_document>
第二、解析图像文件(PNG、JPEG、JPG、TIFF、WEBP)。
#Curl 命令:
curl -X POST -F "file=@/path/to/image.jpg" <http://localhost:8000/parse_media/image>
—4 总结
OmniParse 旨在构建一个全面的数据摄取与解析平台,该平台能够处理包括文档、图像、音频、视频及 Web 内容在内的各类数据,并输出高度结构化、易于操作且专为 GenAI(大型语言模型)优化的数据。当前,该项目的核心理念展现出良好的实用性,尽管在实际应用中仍面临一些待完善的方面。例如,它在处理英语数据方面表现出色,但面对中文等语言时可能会遇到挑战;同时,对于 PDF 文件中的公式转换为 LaTeX 格式,也存在一定的难度。当然相信随着开源社区持续的更新,这些问题都会逐步解决。
来源:玄姐讲 AGI