15分钟搭建企业级AI平台:Bisheng微服务架构全解析
你还在为AI应用开发中的复杂流程烦恼?部署繁琐、组件不兼容、企业级功能缺失?Bisheng作为开源LLM应用开发运维平台,通过微服务架构和可视化编排,让企业AI落地效率提升10倍。本文将从架构设计到实际部署,带你掌握如何基于Bisheng快速构建企业级智能应用。
读完本文你将获得:
- 理解Bisheng微服务架构的核心组件与交互逻辑
- 掌握使用Docker Compose一键部署完整平台的方法
- 学会通过可视化工作流设计复杂AI应用
- 了解企业级特性如RBAC权限、SSO集成的实现方式
整体架构概览
Bisheng采用前后端分离的微服务架构,核心由8大服务组件构成,通过Docker容器化部署实现高可用。架构设计遵循"领域驱动"原则,将AI应用开发拆解为可复用的功能模块。
核心服务组件说明:
- 前端服务:基于React+TypeScript构建,提供可视化操作界面 frontend/
- API服务:FastAPI实现的后端接口,处理HTTP请求 src/backend/server.py
- 异步任务处理:Celery分布式任务队列,处理文档解析等耗时操作 src/backend/run_celery.py
- 数据存储层:包含MySQL(业务数据)、Redis(缓存)、Elasticsearch(全文检索)、Milvus(向量存储)和MinIO(文件存储)
核心服务详解
前端架构
Bisheng前端采用模块化设计,分为平台管理和应用客户端两大模块:
-
平台管理界面:src/frontend/platform/
- 用户管理、权限配置、系统监控等企业级功能
- 工作流设计器,支持拖拽式流程编排
-
应用客户端:src/frontend/client/
- 聊天界面、文档处理、报告生成等业务功能
- 多端适配,支持PC和移动端访问
前端技术栈:
- 框架:React 18 + TypeScript
- 构建工具:Vite
- 状态管理:Redux Toolkit
- UI组件库:Ant Design Pro
后端服务架构
后端采用分层架构设计,核心代码组织如下:
src/backend/bisheng/
├── api/ # API路由与控制器
├── chat/ # 聊天功能实现
├── database/ # 数据访问层
├── services/ # 业务逻辑层
├── workflow/ # 工作流引擎
└── server.py # 应用入口
关键技术特性:
- API设计:RESTful风格,支持版本控制(v1/v2) src/backend/bisheng/api/router.py
- 认证授权:JWT令牌认证,RBAC权限模型 src/backend/bisheng/api/JWT.py
- 工作流引擎:支持分支、循环、并行等复杂逻辑 src/backend/bisheng/workflow/
- 文档处理:高精度OCR识别、表格提取、布局分析 src/backend/bisheng/pptx2md/
数据存储架构
Bisheng采用多数据库协同方案,针对不同数据类型选择最优存储:
- MySQL:存储用户信息、权限配置等结构化数据 docker/mysql/conf/my.cnf
- Redis:缓存会话数据、任务队列 docker/redis/redis.conf
- Elasticsearch:文档全文检索、日志存储 docker-compose.yml#L124-L135
- Milvus:向量数据存储,支持高效相似度检索 docker-compose.yml#L176-L199
- MinIO:文件对象存储,支持海量非结构化数据 docker-compose.yml#L156-L175
一键部署流程
Bisheng提供Docker Compose一键部署方案,包含所有依赖服务,简化企业级部署复杂度。
环境准备
部署前确保满足以下条件:
- CPU ≥ 4核,内存 ≥ 16GB
- Docker 19.03.9+ 和 Docker Compose 1.25.1+
- 网络通畅,可访问Docker镜像仓库
部署步骤
- 克隆代码仓库
git clone https://link.gitcode.com/i/3e824796131dfd436e352390853d3689
cd bisheng/docker
- 启动服务栈
docker compose -f docker-compose.yml -p bisheng up -d
- 验证部署状态
docker compose -p bisheng ps
服务启动后,访问 http://localhost:3001 即可打开Bisheng平台,默认管理员账户需在首次访问时注册。
部署架构包含的服务容器:
- bisheng-mysql: MySQL数据库服务
- bisheng-redis: Redis缓存服务
- bisheng-backend: API服务
- bisheng-backend-worker: 异步任务处理
- bisheng-frontend: 前端Web服务
- bisheng-es: Elasticsearch服务
- bisheng-milvus-standalone: Milvus向量数据库
企业级特性实现
权限管理系统
Bisheng实现细粒度的RBAC权限模型,支持用户组、角色和权限的灵活配置:
权限配置文件路径:src/backend/bisheng/services/auth/
核心功能:
- 多维度权限控制:菜单、按钮、API接口
- 数据级权限:行级数据访问控制
- 操作审计:记录关键操作日志
安全合规
企业级安全特性通过多层次防护实现:
-
应用层安全
- 输入验证与输出编码
- CSRF防护与XSS过滤
- API请求限流 src/backend/bisheng/utils/http_middleware.py
-
系统层安全
- 容器安全扫描
- 敏感配置加密存储
- 定期漏洞扫描与补丁
-
集成能力
- SSO单点登录集成
- LDAP用户同步
- 审计日志导出
工作流引擎解析
Bisheng工作流引擎是平台的核心,支持可视化设计复杂AI应用逻辑,无需编写代码即可实现多步骤任务编排。
核心特性
- 可视化设计:拖拽式节点编排界面
- 丰富组件库:200+内置组件,覆盖LLM调用、文档处理等场景
- 复杂逻辑支持:循环、分支、并行、异常处理
- 人机协作:任务执行过程中的人工干预节点
工作流定义示例
以下是一个文档分析工作流的定义示例:
nodes:
- id: file_upload
type: file_input
name: 上传文档
- id: ocr_parse
type: document_parser
name: 文档解析
input: file_upload.output
- id: text_analysis
type: llm_chain
name: 内容分析
input: ocr_parse.text
parameters:
prompt: "分析以下文档内容并提取关键信息:{{input}}"
- id: report_generate
type: report_generator
name: 生成报告
input: text_analysis.result
parameters:
template: "fixed_layout"
工作流引擎实现代码:src/backend/bisheng/workflow/
实际应用场景
Bisheng已在多个行业落地复杂AI应用场景:
金融行业:信贷审核助手
利用工作流引擎实现自动化信贷文档审核:
- 上传信贷申请材料
- 自动解析身份证、财务数据等文档
- 风险评估模型分析申请人资质
- 生成审核报告并标记可疑项
关键技术组件:
医疗行业:病历分析系统
实现结构化病历提取与分析:
- 上传PDF格式病历文档
- 医学实体识别与关系抽取
- 自动生成诊断建议
- 结构化数据存储与统计分析
总结与展望
Bisheng通过微服务架构和可视化编排,降低了企业AI应用的开发门槛,同时提供企业级安全和集成能力。核心优势在于:
- 架构灵活性:松耦合服务设计,支持按需扩展
- 开发效率:可视化编排减少80%代码量
- 企业适配:安全合规特性满足行业监管要求
- 生态丰富:支持主流LLM模型和工具集成
未来 roadmap 包括:
- 多租户隔离增强
- 性能优化与大规模部署支持
- 更多行业专用组件库
Bisheng源码仓库:https://link.gitcode.com/i/3e824796131dfd436e352390853d3689
如果你在使用过程中遇到问题,可查阅官方文档或提交issue获取社区支持。欢迎贡献代码,共同完善这个企业AI开发平台。
附录:部署资源需求
| 环境类型 | CPU | 内存 | 存储 | 适用场景 |
|---|---|---|---|---|
| 开发环境 | 4核 | 16GB | 100GB | 功能验证、小型应用开发 |
| 测试环境 | 8核 | 32GB | 500GB | 性能测试、多用户试用 |
| 生产环境 | 16核+ | 64GB+ | 2TB+ | 企业级应用部署、高并发场景 |
建议生产环境采用Kubernetes部署,实现服务自动扩缩容和高可用保障。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



