# aperag
**Repository Path**: mirrors/aperag
## Basic Information
- **Project Name**: aperag
- **Description**: ApeRAG 是一个可立即投入生产的 RAG(检索增强生成)平台,它将图谱 RAG、向量搜索和全文搜索与先进的 AI 代理相结合
- **Primary Language**: Python
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: https://www.oschina.net/p/aperag
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 2
- **Created**: 2025-09-12
- **Last Updated**: 2025-11-01
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# ApeRAG


ApeRAG 是一个生产级 RAG(检索增强生成)平台,结合了图 RAG、向量搜索、全文搜索和先进的 AI 智能体。构建具有混合检索、多模态文档处理、智能代理和企业级管理功能的复杂 AI 应用程序。
**🚀 [在线体验 ApeRAG](https://rag.apecloud.com/)** - 通过我们的托管演示体验完整的平台功能
ApeRAG 是你构建自己的知识图谱、进行上下文工程以及部署能够自主搜索和推理知识库的智能 AI 代理的最佳选择。
[Read English Documentation](README.md)
- [快速开始](#快速开始)
- [核心特性](#核心特性)
- [Kubernetes 部署(推荐生产环境)](#kubernetes-部署推荐生产环境)
- [开发指南](./docs/development-guide-zh.md)
- [构建 Docker 镜像](./docs/build-docker-image-zh.md)
- [致谢](#致谢)
- [许可证](#许可证)
## 快速开始
> 视频教程:https://www.bilibili.com/video/BV1shJQzQEoN/?vd_source=18935912aec0fb362ed3f5ffcc8eec8d
> 在安装 ApeRAG 之前,请确保您的机器满足以下最低系统要求:
>
> - CPU >= 2 核心
> - RAM >= 4 GiB
> - Docker & Docker Compose
启动 ApeRAG 最简单的方法是通过 Docker Compose。在运行以下命令之前,请确保您的机器上已安装 [Docker](https://docs.docker.com/get-docker/) 和 [Docker Compose](https://docs.docker.com/compose/install/):
```bash
git clone https://github.com/apecloud/ApeRAG.git
cd ApeRAG
cp envs/env.template .env
docker-compose up -d --pull always
```
运行后,您可以在浏览器中访问 ApeRAG:
- **Web 界面**: http://localhost:3000/web/
- **API 文档**: http://localhost:8000/docs
#### MCP(模型上下文协议)支持
ApeRAG 支持 [MCP(模型上下文协议)](https://modelcontextprotocol.io/) 集成,允许 AI 助手直接与您的知识库交互。启动服务后,使用以下配置您的 MCP 客户端:
```json
{
"mcpServers": {
"aperag-mcp": {
"url": "https://rag.apecloud.com/mcp/",
"headers": {
"Authorization": "Bearer your-api-key-here"
}
}
}
}
```
**重要提示**:将 `http://localhost:8000` 替换为您实际的 ApeRAG API 地址,将 `your-api-key-here` 替换为 ApeRAG 设置中的有效 API 密钥。
MCP 服务器提供:
- **集合浏览**:列出和探索您的知识集合
- **混合搜索**:使用向量、全文和图搜索方法
- **智能查询**:对您的文档提出自然语言问题
#### 增强文档解析
为了获得增强的文档解析能力,ApeRAG 支持由 MinerU 驱动的**高级文档解析服务**,可为复杂文档、表格和公式提供优异的解析能力。
增强文档解析命令
```bash
# 启用高级文档解析服务
DOCRAY_HOST=http://aperag-docray:8639 docker compose --profile docray up -d
# 启用带 GPU 加速的高级解析
DOCRAY_HOST=http://aperag-docray-gpu:8639 docker compose --profile docray-gpu up -d
```
或使用 Makefile 快捷方式(需要 [GNU Make](https://www.gnu.org/software/make/)):
```bash
# 启用高级文档解析服务
make compose-up WITH_DOCRAY=1
# 启用带 GPU 加速的高级解析(推荐)
make compose-up WITH_DOCRAY=1 WITH_GPU=1
```
#### 开发与贡献
对于有兴趣进行源代码开发、高级配置或为 ApeRAG 做贡献的开发人员,请参考我们的[开发指南](./docs/development-guide-zh.md)获取详细的设置说明。
## 核心特性
**1. 先进的索引类型**:
五种全面的索引类型实现最优检索:**向量**、**全文**、**图谱**、**摘要**和**视觉** - 提供多维度的文档理解和搜索能力。
**2. 智能 AI 代理**:
内置 AI 智能体,支持 MCP(模型上下文协议)工具,能够自动识别相关集合、智能搜索内容,并提供网络搜索功能,实现全面的问答能力。
**3. 增强的图 RAG 与实体规范化**:
深度改造的 LightRAG 实现,具备先进的实体规范化(实体合并)功能,构建更清晰的知识图谱并改善关系理解。
**4. 多模态处理与视觉支持**:
完整的多模态文档处理,包括图像、图表和视觉内容分析的视觉能力,以及传统的文本处理。
**5. 混合检索引擎**:
复杂的检索系统,结合图 RAG、向量搜索、全文搜索、基于摘要的检索和基于视觉的搜索,实现全面的文档理解。
**6. MinerU 集成**:
由 MinerU 技术驱动的高级文档解析服务,为复杂文档、表格、公式和科学内容提供优异的解析能力,可选 GPU 加速。
**7. 生产级部署**:
完整的 Kubernetes 支持,配有 Helm charts 和 KubeBlocks 集成,简化生产级数据库(PostgreSQL、Redis、Qdrant、Elasticsearch、Neo4j)的部署。
**8. 企业管理**:
内置审计日志、LLM 模型管理、图形可视化、全面的文档管理界面和智能体工作流管理。
**9. MCP 集成**:
完全支持模型上下文协议(MCP),实现与 AI 助手和工具的无缝集成,支持直接访问知识库和智能查询。
**10. 开发者友好**:
FastAPI 后端、React 前端、使用 Celery 的异步任务处理、广泛的测试、全面的开发指南和智能体开发框架,便于贡献和定制。
## Kubernetes 部署(推荐生产环境)
> **具有高可用性和可扩展性的企业级部署**
使用我们提供的 Helm chart 将 ApeRAG 部署到 Kubernetes。这种方法提供高可用性、可扩展性和生产级管理能力。
### 前提条件
* [Kubernetes 集群](https://kubernetes.io/docs/setup/)(v1.20+)
* [`kubectl`](https://kubernetes.io/docs/tasks/tools/) 已配置并连接到您的集群
* [Helm v3+](https://helm.sh/docs/intro/install/) 已安装
### 克隆仓库
首先,克隆 ApeRAG 仓库以获取部署文件:
```bash
git clone https://github.com/apecloud/ApeRAG.git
cd ApeRAG
```
### 步骤 1:部署数据库服务
ApeRAG 需要 PostgreSQL、Redis、Qdrant 和 Elasticsearch。您有两个选择:
**选项 A:使用现有数据库** - 如果您的集群中已经运行这些数据库,请编辑 `deploy/aperag/values.yaml` 配置您的数据库连接详情,然后跳到步骤 2。
**选项 B:使用 KubeBlocks 部署数据库** - 使用我们的自动化数据库部署(数据库连接已预配置):
```bash
# 进入数据库部署脚本目录
cd deploy/databases/
# (可选)查看配置 - 默认设置适用于大多数情况
# edit 00-config.sh
# 安装 KubeBlocks 并部署数据库
bash ./01-prepare.sh # 安装 KubeBlocks
bash ./02-install-database.sh # 部署 PostgreSQL、Redis、Qdrant、Elasticsearch
# 监控数据库部署
kubectl get pods -n default
# 返回项目根目录进行步骤 2
cd ../../
```
等待所有数据库 pod 状态变为 `Running` 后再继续。
### 步骤 2:部署 ApeRAG 应用
```bash
# 如果您在步骤 1 中使用 KubeBlocks 部署了数据库,数据库连接已预配置
# 如果您使用现有数据库,请使用您的连接详情编辑 deploy/aperag/values.yaml
# 部署 ApeRAG
helm install aperag ./deploy/aperag --namespace default --create-namespace
# 监控 ApeRAG 部署
kubectl get pods -n default -l app.kubernetes.io/instance=aperag
```
### 配置选项
**资源要求**:默认包含 [`doc-ray`](https://github.com/apecloud/doc-ray) 服务(需要 4+ CPU 核心,8GB+ RAM)。要禁用:在 `values.yaml` 中设置 `docray.enabled: false`。
**高级设置**:查看 `values.yaml` 了解额外的配置选项,包括镜像、资源和 Ingress 设置。
### 访问您的部署
部署完成后,使用端口转发访问 ApeRAG:
```bash
# 转发端口以便快速访问
kubectl port-forward svc/aperag-frontend 3000:3000 -n default
kubectl port-forward svc/aperag-api 8000:8000 -n default
# 在浏览器中访问
# Web 界面: http://localhost:3000
# API 文档: http://localhost:8000/docs
```
对于生产环境,请在 `values.yaml` 中配置 Ingress 以获得外部访问。
### 故障排除
**数据库问题**:查看 `deploy/databases/README.md` 了解 KubeBlocks 管理、凭据和卸载程序。
**Pod 状态**:检查 pod 日志以查看任何部署问题:
```bash
kubectl logs -f deployment/aperag-api -n default
kubectl logs -f deployment/aperag-frontend -n default
```
## 致谢
ApeRAG 集成并构建在几个优秀的开源项目之上:
### LightRAG
ApeRAG 中基于图的知识检索能力由深度修改的 [LightRAG](https://github.com/HKUDS/LightRAG) 版本提供支持:
- **论文**: "LightRAG: Simple and Fast Retrieval-Augmented Generation" ([arXiv:2410.05779](https://arxiv.org/abs/2410.05779))
- **作者**: Zirui Guo, Lianghao Xia, Yanhua Yu, Tu Ao, Chao Huang
- **许可证**: MIT License
我们对 LightRAG 进行了广泛修改,以支持生产级并发处理、分布式任务队列(Celery/Prefect)和无状态操作。详情请参见我们的 [LightRAG 修改更新日志](./aperag/graph/changelog.md)。
## 社区
* [Discord](https://discord.gg/FsKpXukFuB)
* [Feishu](docs%2Fimages%2Ffeishu-qr-code.png)
## Star History

## 许可证
ApeRAG 采用 Apache License 2.0 许可。详情请参见 [LICENSE](./LICENSE) 文件。