# MaxKB4j **Repository Path**: taisan/MaxKB4j ## Basic Information - **Project Name**: MaxKB4j - **Description**: 🔥MaxKB4j 是一款基于Java语言开发的LLM工作流应用和 RAG 的开源LLMOps平台,项目主要借鉴了MaxKB、Dify和FastGPT, 使用高性能、高稳定性以及安全可靠的JAVA语言重新设计开发。MaxKB4j广泛应用于智能客服、企业内部知识库、学术研究与教育等场景。 - **Primary Language**: Java - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: https://tarzan.blog.csdn.net/ - **GVP Project**: No ## Statistics - **Stars**: 441 - **Forks**: 175 - **Created**: 2024-12-30 - **Last Updated**: 2026-01-08 ## Categories & Tags **Categories**: rag **Tags**: RAG, Agent, LLMOps, openAI, langchain4j ## README # 🧠 MaxKB4j — 企业级智能问答系统:开箱即用的 RAG + LLM 工作流引擎 > **MaxKB4j = Max Knowledge Base for Java** > 一个开箱即用、安全可靠、模型中立的 **RAG(检索增强生成)+ LLM 工作流引擎**,专为构建企业级智能问答系统而设计。 > 广泛应用于 智能客服、企业内部知识库、数据分析、学术研究与教育等场景。
--- ## 🔥 为什么选择 MaxKB4j? | 传统方案痛点 | MaxKB4j 解决方案 | |--------------|------------------------------------------------------------| | 需要大量代码集成 RAG | ✅ 开箱即用,上传文档即可问答 | | 模型绑定,迁移成本高 | ✅ 模型中立,自由切换本地/公有大模型 | | 无法处理复杂业务逻辑 | ✅ 可视化工作流引擎,支持条件分支、工具调用等 | | 难以嵌入现有系统 | ✅ 提供 REST API + Web SDK,5 分钟集成 | | AI 无法理解项目上下文 | ✅ 支持 [MCP 协议](https://modelcontextprotocol.io/),成为真正的编程协作者 | --- ## ✨ 核心特性 ### 🔍 开箱即用的知识库问答 - 支持 **上传本地文档**(PDF/Word/TXT/Markdown 等) - 支持 **自动爬取网页内容** - 支持 **自定义工作流知识库写入** - 自动完成:文本分段 → 向量化 → 存入向量数据库 → 构建 RAG 流程 - 显著减少大模型“幻觉”,提升回答准确性与可信度 ### 🌐 模型中立,灵活对接 支持各类主流大模型,包括: - **本地私有模型**:DeepSeek-R1、Llama 3、Qwen 2 等(通过 Ollama / Xorbits Inference / LocalAI) - **国内公有模型**:通义千问、腾讯混元、字节豆包、百度千帆、智谱 GLM、Kimi、DeepSeek等 - **国际公有模型**:OpenAI (GPT)、Anthropic (Claude)、Google (Gemini) ### ⚙️ 可视化工作流编排 - 内置 **低代码 AI 工作流引擎**,支持条件分支、函数调用、多轮对话记忆 - 提供丰富 **内置函数工具库**(HTTP 请求、数据库查询、时间处理、正则提取等) - 适用于复杂业务场景:客服工单生成、数据报告解读、内部制度问答等 ### 🧩 无缝嵌入现有系统 - 提供 **RESTful API** 和 **前端嵌入组件(iframe / Web SDK)** - 无需改造原有系统,5 分钟集成智能问答能力 ### 🤖 MCP Server 支持(Model Context Protocol) - 支持 [MCP](https://modelcontextprotocol.io/) 协议,让 AI 理解**代码上下文**、项目结构、依赖关系 - 不再只是“聊天机器人”,而是真正的 **AI 编程协作者** ### 🎙️ 多模态扩展 - 语音识别(ASR)、语音合成(TTS) - 图像识别(OCR)、图像生成(Stable Diffusion) ### 🔒 用户权限管理 - 细粒度权限控制(应用 / 知识库 / 工具 / 模型) - 审计日志、认证授权(基于 Sa-Token) --- ## 🚀 快速开始 ### 1. 环境要求 - Java 17+ - PostgreSQL 12+(启用 pgvector 扩展) - MongoDB 6.0+(可选,用于全文检索) ### 2. 部署启动 #### 2.1 本地启动(JAR 方式) ```bash # 启动应用 java -jar MaxKB4j.jar ``` #### 2.2. 基于Docker 部署 ```bash docker run --name maxkb4j -d --restart always -p 8080:8080 -e SPRING_DATASOURCE_URL=jdbc:postgresql://localhost:5432/MaxKB4j -e SPRING_DATASOURCE_USERNAME=postgres -e SPRING_DATASOURCE_PASSWORD=123456 -e SPRING_DATA_MONGODB_URI=mongodb://admin:123456@localhost:27017/MaxKB4j?authSource=admin registry.cn-hangzhou.aliyuncs.com/tarzanx/maxkb4j ``` - `-p 8080:8080` 中的第一个 8080 是宿主机的端口,第二个 8080 是docker容器开发的端口 - `-e SPRING_DATASOURCE_URL=jdbc:postgresql://localhost:5432/MaxKB4j -e SPRING_DATASOURCE_USERNAME=postgres -e SPRING_DATASOURCE_PASSWORD=123456` 是PostgreSQL数据库的连接配置参数, 可以根据需要进行修改 - `-e SPRING_DATA_MONGODB_URI=mongodb://admin:123456@localhost:27017/MaxKB4j?authSource=admin`是MongoDB的连接配置参数, 可以根据需要进行修改 #### 2.3. Docker-Compose 部署(推荐) ```yaml # docker-compose.yml 示例见项目根目录 docker-compose up -d ``` #### 2.4. 部署到第三方平台
---
## ❓ 反馈与建议
欢迎社区用户提交 **Bug 报告**、**使用问题** 或 **新功能建议**!
- 如果你发现了程序中的异常行为,请提交一个 **Issue**,帮助我们改进项目;
- 如果你有好的想法或希望增加某项功能,也欢迎通过 Issue 提出建议;
- 更鼓励你直接贡献代码 👉 欢迎提交 **Pull Request (PR)**!
🔗 **提交入口**:[Gitee Issues 页面](https://gitee.com/taisan/MaxKB4j/issues)
> 💡 提交 Issue 时,请尽量提供以下信息以加快处理速度:
> - 使用的 MaxKB4j 版本
> - Java 运行环境(JDK 版本)
> - 复现步骤或示例代码
> - 错误日志或截图(如有)
---
## 💖 支持与赞助
> 本项目由个人开发者维护,您的支持将帮助项目持续迭代!
| 赞助金额 | 权益 |
|------|--------------------------------------------------------------------|
| ¥10 | 添加作者微信(`vxhqqh`),加入交流群(备注“已赞助”) |
| ¥50 | 上述权益 + 免费加入[《👉 知识星球🔥》](https://wx.zsxq.com/group/28882525858841) |
| ¥500 | 加微信获取 **V2 完整前后端源码** |
| 支付宝赞赏码 |
微信赞赏码 |
|---|---|
![]() |
![]() |