当前位置: 首页 > news >正文

DocsGPT 二次开发:打造面向国内用户的私有 AI 知识库平台

基于 GitHub 17.8K Star 的开源 RAG 项目,我们做了什么,为什么做,接下来要做什么

前言

大家好,我是张大鹏。

最近在研究 RAG(检索增强生成)相关的开源项目,想找到一个适合做二次开发的底座,用来搭建面向国内用户的私有 AI 知识库平台。

看了一圈下来,最终选定了 DocsGPT。这是一个 GitHub 上 17.8K Star 的开源项目,功能非常全面,架构也很清晰。但原版是面向海外用户的,全英文界面,文档也是英文的,直接拿来用不太合适。

所以我们做了一轮二次开发:中文化、清理、重构。这篇文章就是来聊聊这个过程,以及我们后续的计划。

DocsGPT 是什么

DocsGPT 是一个开源的 AI 知识库平台,核心能力是RAG + Agent

简单来说,你可以把各种文档(PDF、Word、Excel、网页、音频等)丢给它,它会自动解析、向量化,然后你就可以用自然语言去提问,它会基于你的文档内容给出准确的回答,并且附带来源引用。

核心功能

  • 广泛的格式支持:PDF、DOCX、CSV、XLSX、EPUB、MD、HTML、JSON、PPTX、图片、音频(MP3、WAV、M4A 等)
  • 语音工作流:支持语音输入、音频转录、会议录音导入
  • 多模型支持:兼容 OpenAI、Google、Anthropic 等云端模型,也支持 Ollama、vLLM、llama.cpp 等本地推理引擎
  • Agent 系统:支持 Classic、Agentic、Research、Workflow 四种 Agent 类型
  • 工具链:内置 API Tool、Brave Search、Postgres、Telegram 等工具,支持自定义开发
  • 丰富的集成:React/HTML 聊天组件、搜索组件、Discord/Telegram 机器人、Chatwoot 扩展
  • 灵活部署:Docker Compose 一键部署,支持 Kubernetes 生产级部署

技术架构

┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Frontend │────▶│ Backend API │────▶│ LLM Layer │ │ React/Vite │ │ Flask │ │ 多模型适配 │ └─────────────┘ └──────┬──────┘ └─────────────┘ │ ┌────────────┼────────────┐ │ │ │ ┌─────▼─────┐ ┌───▼───┐ ┌─────▼─────┐ │ VectorStore│ │Postgres│ │ Redis │ │ 向量存储 │ │ 用户数据│ │ 缓存/队列 │ └───────────┘ └───────┘ └───────────┘ │ ┌──────▼──────┐ │ Celery │ │ 异步任务队列 │ └─────────────┘

后端是 Flask,前端是 React + Vite,异步任务用 Celery + Redis,数据存储用 PostgreSQL,向量存储支持 FAISS、Elasticsearch、Qdrant、Milvus 等多种后端。

和同类项目对比

项目Star语言Agent多模型本地部署工具链
DocsGPT17.8KPython
Dify60K+Python
FastGPT20K+TypeScript
MaxKB15K+Python

Dify 功能最全但比较重,FastGPT 前端好看但 Agent 能力弱,MaxKB 轻量但扩展性差。DocsGPT 在功能全面性和架构清晰度之间找到了一个不错的平衡点。

为什么选择 DocsGPT 做二次开发

选 DocsGPT 有几个原因:

1. 架构清晰,模块化设计

DocsGPT 的代码组织得很好。后端的 LLM、向量存储、解析器、Agent、工具都是抽象的,有统一的接口。想加新的模型提供商、新的向量后端、新的工具,都很方便。

# LLM 提供商统一接口示例application/llm/├── base.py# 基类├── openai.py# OpenAI├── google.py# Google├── anthropic.py# Anthropic└── ollama.py# Ollama# 向量存储统一接口application/vectorstore/├── base.py ├── faiss.py ├── elasticsearch.py ├── qdrant.py └── milvus.py

2. 多模型支持

不像有些项目只支持 OpenAI,DocsGPT 原生支持 10+ 种云端和本地模型。这对国内用户很重要,因为很多人想用 DeepSeek、通义千问、文心一言等国产模型。

3. Agent 和工具链能力强

DocsGPT 的 Agent 系统不只是简单的对话,支持 Workflow 编排、Webhook 触发、异步任务,还有完整的工具开发框架。这意味着你可以让它不只是"回答问题",还能"执行操作"。

4. 原版的问题

当然,原版也有一些不适合直接用的地方:

  • 全英文界面和文档:国内用户用起来有门槛
  • 社区运营文件多:CODE_OF_CONDUCT、CONTRIBUTING、HACKTOBERFEST 等,对我们没用
  • 默认模型是海外的:需要适配国内模型
  • 缺少中文社区支持:遇到问题只能看英文文档

所以,二次开发是必要的。

我们做了什么

1. 清理开源社区文件

删除了 24 个对私有项目无用的文件:

  • 根目录:CODE_OF_CONDUCT.md、CONTRIBUTING.md、HACKTOBERFEST.md、SECURITY.md、codecov.yml、.vale.ini、md-gen.py
  • .github/:FUNDING.yml、ISSUE_TEMPLATE/、PULL_REQUEST_TEMPLATE.md、THREAT_MODEL.md、holopin.yml、labeler.yml、dependabot.yml、styles/
  • workflows/:labeler.yml、npm-publish.yml、react-widget-build.yml、sync_fork.yaml、vale.yml、holopin.yml、zizmor.yml

保留了核心 CI/CD(pytest、lint、Docker 构建)和 MIT LICENSE。

2. 全面中文翻译

翻译了 42 个文档文件,约 5,150 行内容:

  • README.md
  • docs/content/ 下所有页面(首页、快速开始、部署、Agent、工具、模型、扩展、指南)
  • 所有 _meta.js 导航标题
  • docs/public/llms.txt 文档导航地图

翻译规则:

  • 技术术语(API、Docker、Kubernetes 等)保留英文
  • 代码块、命令、URL 不翻译
  • Mermaid 图表标签翻译为中文

3. Nextra i18n 双语支持

配置了 Nextra i18n,默认中文,可切换英文:

// docs/next.config.jsi18n:{locales:['zh','en'],defaultLocale:'zh',}
// docs/theme.config.jsxi18n:[{locale:'zh',text:'中文'},{locale:'en',text:'English'},]

用户访问/docs默认中文,/docs/en切换英文。

4. README 重构

  • 移除所有广告链接(Discord、Twitter、博客、赞助商)
  • Badge 改为指向自己的仓库
  • 新增"关于本项目"章节,标注大鹏AI教育和张大鹏

5. 建立研究目录

research/ ├── CSDN/ # CSDN 博客文章 │ └── 001-xxx.md ├── 公众号/ # 微信公众号文章 │ └── 001-xxx.md └── superpowers/ # 设计文档和实施计划 ├── specs/ └── plans/

后续计划

短期(1-2 周)

  • 前端界面中文化:把 React 前端的硬编码英文全部翻译
  • 国内模型适配:接入 DeepSeek、通义千问、文心一言
  • 部署教程:写一套面向国内用户的 Docker 部署教程

中期(1-2 月)

  • Agent 实战系列:用 DocsGPT 搭建各种实用 Agent
  • 工具开发系列:自定义工具开发教程
  • 公众号运营:同步发布技术文章

长期

  • 中文社区建设:建立中文交流群
  • 国产化适配:适配更多国内模型和服务
  • 企业级功能:权限管理、审计日志、多租户等

总结

DocsGPT 是一个非常优秀的开源 RAG + Agent 平台,架构清晰、功能全面、扩展性强。我们选择它作为二次开发的底座,做了中文化、清理、重构等工作,让它更适合国内用户使用。

后续会持续更新,分享更多关于 RAG、Agent、工具开发的实战经验。

如果你也对 AI 知识库平台感兴趣,欢迎关注交流。


项目地址:https://github.com/DaPengRuYi/DocsGPT

作者:张大鹏 | 大鹏AI教育

http://www.jsqmd.com/news/706125/

相关文章:

  • 高精度 98陀螺 0.01度/小时 2.7w
  • Cubase15.0.21 Pro一键安装完整版下载安装Cubase 15 Pro最新版下载安装教程支持Win/Mac双系统版送104G原厂音源Mac系统苹果不关SIP安装Cubase15.0.21
  • 权威见证:Ledger 携手京东开启官方授权新篇章,正品保障触手可及
  • 太阳能路灯选技术,看准这三点不踩坑
  • DevEco Studio:卡片预览
  • 海凌科HLK-W801开发板开箱:从零配置平头哥CDK到MQTT通信实战
  • 若依Vue3.8.2项目开发+Gitee提交完整流程(学生信息模块)
  • 躲进弹坑更安全吗?
  • 2026年呼和浩特正规床垫厂家销售TOP5,你知道几个?
  • 2026云南纯水设备标杆名录:云南净水设备、云南污水处理、云南纯水设备、四川净水设备、四川污水处理、四川纯水设备选择指南 - 优质品牌商家
  • Materialize:用SQL实现毫秒级实时数据处理的增量物化视图引擎
  • 《深耕QClaw协作逻辑,构建无误解的智能体沟通体系》
  • 边缘计算中视觉语言动作模型的优化与加速
  • STM32CubeMX生成的工程,为什么开发板能跑QEMU却不行?深入排查SystemInit函数
  • ASP Folder:深入解析ASP文件夹在Web开发中的应用
  • 基于LLM与向量数据库的智能体框架Lore:构建私有知识库AI助手
  • 2026玉溪蓝莓批发厂家排行:澄江蓝莓/玉溪蓝莓/云南蓝莓/澄江花香蓝莓/玉溪花香蓝莓/云南花香蓝莓/选择指南 - 优质品牌商家
  • Postgresql数据库快速入门
  • 利用Awesome LLM Apps仓库:从开源项目学习大模型应用开发实战
  • SVM中拉格朗日乘数法与松弛变量的应用原理
  • 3D人脸识别技术研究
  • 监控靠报警?还是靠AI?90%的系统其实“早就该宕了”
  • AI助手配置管理工具cursor-kit:统一管理Cursor、Copilot、AntiGravity配置
  • 沙箱隔离失效的11个隐性信号,第8个已在金融客户生产环境触发RCE——MCP 2026隔离健康度自检清单
  • 国产中间件兼容性黑洞:MCP 2026在东方通TongWeb 7.0.4.12下JNDI绑定失败的4层根因分析(从JNI调用栈到国密BCC证书链完整性验证)
  • TiMEM-AI:用大语言模型实现可解释时间序列预测的实践指南
  • 票据结构化信息解析
  • 新闻文本自动摘要预处理技术与实践
  • 深度学习图像增强实战:Keras工具链与领域优化
  • Revornix:基于LLM的AI代码助手架构解析与实战指南