ptai-eng/GoldPan

GitHub: ptai-eng/GoldPan

一款隐私优先的多模态数据提取与本地 RAG 工作空间,将 PDF、图片、音频、网页等多种格式转化为 AI 可用的本地知识库并支持智能问答。

Stars: 3 | Forks: 0

GoldPan Logo

GoldPan AI

A Privacy-First, Multimodal Data Extraction and Local RAG Pipeline

Seamlessly transform unstructured, massive data files into an AI-ready Knowledge Base.

Python 3.10+ Next.js 14 FastAPI License: MIT

## 📖 简介 **GoldPan AI** 是一个先进的、隐私优先的系统,旨在解决现代数据提取和检索增强生成(RAG)的复杂性问题。通过将高度优化的并行处理与 Google Gemini 的多模态功能相结合,GoldPan 作为一个统一的 pipeline,能够将几乎所有数据格式提取、分块并嵌入到本地知识库中。 无论您是在处理海量企业文档、长时段的音频,还是动态的网页内容,GoldPan AI 都提供了一个集中且直观的工作空间,弥合了原始非结构化数据与可操作的 AI 智能之间的差距。 ![GoldPan AI 界面](https://static.pigsec.cn/wp-content/uploads/repos/cas/d6/d613116105b1a6a58e9bc478a56a08c87758891ba29bb113dca7ffb2fea4614b.png) *(GoldPan AI 工作空间和知识库聊天界面)* ## ✨ 核心能力 ### 1. 通用格式支持与多模态提取 GoldPan AI 旨在无缝接入几乎任何数据格式: - **文档与文本:** PDF、DOCX、CSV、TXT、Markdown。 - **媒体(视觉与音频):** 高分辨率图像(JPG、PNG)和音频文件(MP3、WAV)通过 Gemini 最先进的多模态提取技术获得原生支持。 - **网页与动态内容:** YouTube 视频(直接获取字幕,绕过 HTML 抓取)、GitHub Blob URL(自动转换为原始代码),以及通过备用的 headless 浏览器支持充满动态 JavaScript 的网站。 ### 2. 高负载优化 处理大规模数据是其主要设计目标。 - **海量文件支持:** 该架构可以安全地处理任意大小的文档,从而规避了传统 LLM 上下文窗口的限制。 - **并行处理:** 内置的多线程(`ThreadPoolExecutor`)确保了闪电般的分块、嵌入和 API 通信速度,与顺序 pipeline 相比,提取过程的速度最高可提升 10 倍。 ### 3. 集成知识库(KB)工作空间 用于持久化数据管理的高级环境: - **本地向量数据库:** 由 `ChromaDB` 提供支持,确保您所有的向量化知识严格保留在本地,实现持久化和安全。 - **物理 Markdown 存储:** 当文档被接入 KB 时,它们也会作为干净的 `.md` 文件物理保存到集中的 `KB/` 目录中,从而允许进行外部版本控制和直接的人工审查。 - **无缝文档管理:** 直接从 UI 轻松跟踪、审查和删除文档。 ### 4. 交互式 RAG 聊天助手 与您处理后的数据进行智能交互: - **上下文感知 AI:** 提出复杂的问题,并获得完全基于您所接入文档的准确答案。 - **持久聊天记录:** 对话在本地保存,确保跨会话的连续性。 - **高级 UI/UX:** 采用 Next.js 和 TailwindCSS 构建的优雅的“暗石与金(Dark Stone & Gold)”美学,优先考虑阅读空间、专注度和现代设计原则。 ## 🏗️ 系统架构 GoldPan AI 运行在强大的解耦架构之上: - **后端:** 管理提取 pipeline(`markitdown`、`trafilatura`、`youtube-transcript-api`)、异步 HTTP 请求、分块算法和向量嵌入。 - **前端:** 提供交互式、高度响应的单页应用(SPA),具备实时进度跟踪、错误处理和聊天界面。 - **AI 引擎:** 利用 Google Gemini 1.5 Flash 进行快速多模态提取,并利用 Gemini Embedding 模型生成高维向量表示。 ## 🚀 快速开始 ### 前置条件 - Python 3.10+ - Node.js 18+ - Google Gemini API Key ### 安装 1. **克隆仓库** git clone https://github.com/ptai-eng/GoldPan.git cd GoldPan 2. **设置后端** cd backend python -m venv venv .\venv\Scripts\activate pip install -r requirements.txt 3. **设置前端** cd ..\frontend npm install ### 运行应用程序 1. **启动后端服务器(终端 1)** cd backend .\venv\Scripts\activate uvicorn main:app --reload --port 8000 2. **启动前端客户端(终端 2)** 从 `GoldPan` 根目录打开一个**新**的终端窗口: cd frontend npm run dev 3. 在浏览器中打开 `http://localhost:3000`。在设置面板中配置您的 Gemini API Key,然后开始提取! ## 📜 许可证 本项目基于 MIT 许可证授权。有关详细信息,请参阅 [LICENSE](LICENSE) 文件。
标签:Python, RAG, 人工智能, 数据提取, 无后门, 本地知识库, 用户模式Hook绕过, 逆向工具