ptai-eng/GoldPan
GitHub: ptai-eng/GoldPan
一款隐私优先的多模态数据提取与本地 RAG 工作空间,将 PDF、图片、音频、网页等多种格式转化为 AI 可用的本地知识库并支持智能问答。
Stars: 3 | Forks: 0
## 📖 简介
**GoldPan AI** 是一个先进的、隐私优先的系统,旨在解决现代数据提取和检索增强生成(RAG)的复杂性问题。通过将高度优化的并行处理与 Google Gemini 的多模态功能相结合,GoldPan 作为一个统一的 pipeline,能够将几乎所有数据格式提取、分块并嵌入到本地知识库中。
无论您是在处理海量企业文档、长时段的音频,还是动态的网页内容,GoldPan AI 都提供了一个集中且直观的工作空间,弥合了原始非结构化数据与可操作的 AI 智能之间的差距。

*(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绕过, 逆向工具