🎯 RCT检测平台-Ultralytics MCP服务器
先进的人工智能物体检测平台,具有智能数据集上传、自定义模型训练和N8N自动化的MCP集成功能。
一个全面的模型上下文协议(MCP)服务器,将Ultralytics YOLO模型与N8N工作流无缝集成,提供完整的AI驱动的计算机视觉解决方案,支持10GB数据集上传和智能后台处理。
](https://www.docker.com/)   
✨ 主要特点
🎯 核心能力
- 🔬 高级AI检测:基于YOLO的目标检测和分析
- 📦 智能数据集上传:10GB限制,智能ZIP结构检测
- 🎯 定制模型培训:使用任何YOLO数据集训练自己的模型
- 🤖 YOLO11型号变体:从纳米/小/中/大/x大底座型号中选择
- ⚡ GPU 加速:NVIDIA CUDA支持快速训练/推理
- 🌐 web界面:漂亮的Streamlit仪表板
- 📊 实时监控:实时GPU统计数据和训练进度
- 🔌 MCP集成:与N8N连接以实现工作流自动化
- 🛡️ 后台处理:大文件的稳定上传处理
� 快速开始
一个命令设置
对于Windows用户:
setup.bat对于Linux/Mac用户:
chmod +x setup.sh
./setup.sh手动设置:
docker-compose up --build -d访问平台
- 🌐 主界面: http://localhost:8501
- 📊 TensorBoard: http://localhost:6006
- 🔌 MCP服务器: http://localhost:8092
- 📓 朱庇特: http://localhost:8888
� 需求
- Docker&Docker编写
- NVIDIA Docker运行时 (用于GPU支持)
- 8GB+内存 推荐
- 50GB+可用磁盘空间
🎯 数据集上传
支持的ZIP结构
该平台自动检测和组织各种ZIP结构:
✅ Structure 1 (Flat):
dataset.zip
├── data.yaml
├── images/
│ ├── img1.jpg
│ └── img2.jpg
└── labels/
├── img1.txt
└── img2.txt
✅ Structure 2 (Nested):
dataset.zip
└── my_dataset/
├── data.yaml
├── images/
│ ├── train/
│ └── val/
└── labels/
├── train/
└── val/
✅ Structure 3 (Split folders):
dataset.zip
├── data.yaml
├── train/
│ ├── images/
│ └── labels/
└── val/
├── images/
└── labels/上传过程
- 引导到 训练 页
- 点击 上传自定义数据集
- 选择您的ZIP文件(最多10GB)
- 输入数据集名称
- 点击 上传数据集
- 不刷新 在加工过程中
- 等待完成消息
- 🌐 流线型UI: http://localhost:8501
- 📊 TensorBoard: http://localhost:6006
- 📓 Jupyter 实验室: http://localhost:8888
- 🔗 MCP服务器: http://localhost:8092
🎮 可用服务
| 服务 | 端口 | 描述 | 状态 |
|---|---|---|---|
| Streamlit仪表板 | 8501 | 交互式YOLO模型界面 | ✅ 准备好了 |
| MCP服务器 | 8092 | N8N集成端点 | ✅ 准备好了 |
| TensorBoard | 6006 | 训练指标可视化 | ✅ 准备好了 |
| Jupyter实验室 | 8888 | 开发环境 | ✅ 准备好了 |
🛠️ MCP工具可用
我们的MCP服务器为AI工作流程提供了7个专用工具:
detect_objects-图像中的实时目标检测train_model-定制YOLO模型训练evaluate_model-模型性能评估predict_batch-多幅图像的批处理export_model-模型格式转换(ONNX、TensorRT等)benchmark_model-性能基准测试analyze_dataset-数据集统计和验证
🔌 N8N集成
使用我们的MCP服务器连接到N8N:
- 服务器终结点:
http://localhost:8092 - 运输:服务器发送事件(SSE)
- 健康检查:
http://localhost:8092/health
N8N工作流示例
{
"mcp_connection": {
"transport": "sse",
"endpoint": "http://localhost:8092/sse"
}
}📁 项目结构
ultralytics_mcp_server/
├── 🐳 docker-compose.yml # Orchestration configuration
├── 🔧 Dockerfile.ultralytics # CUDA-enabled Ultralytics container
├── 🔧 Dockerfile.mcp-connector # Node.js MCP server container
├── 📦 src/
│ └── server.js # MCP server implementation
├── 🎨 main_dashboard.py # Streamlit main interface
├── 📄 pages/ # Streamlit multi-page app
│ ├── train.py # Model training interface
│ └── inference.py # Inference interface
├── ⚡ startup.sh # Container initialization script
├── 📋 .dockerignore # Build optimization
└── 📖 README.md # This documentation🔧 配置
环境变量
CUDA_VISIBLE_DEVICES-GPU设备选择STREAMLIT_PORT-Streamlit服务端口(默认值:8501)MCP_PORT-MCP服务器端口(默认:8092)TENSORBOARD_PORT-TensorBoard端口(默认值:6006)
自定义配置
编辑 docker-compose.yml 自定义:
- 端口映射
- 卷装载
- 环境变量
- 资源限制
📊 使用示例
通过Streamlit进行物体检测
- 引导到http://localhost:8501
- 上传图像或视频
- 选择YOLO模型变量和置信阈值
- 运行推理并查看带注释的结果
使用YOLO11变体训练自定义模型
- 首选 训练 Streamlit中的页面
- 上传自定义数据集或选择内置数据集
- 选择 YOLO11型号变体:
- 约洛11n:快速训练,适合测试(1.9M参数) - yolo11s:平衡性能(9.1M参数) - 约洛11m:精度更高(20.1M参数) - 约洛11l:高精度训练(25.3M参数) - yolo11x:最大精度(43.9M参数)
- 配置纪元、批量大小、图像大小
- 使用实时GPU统计数据监控实时训练进度
- 模型自动保存到工作区
训练自定义模型
- 访问Streamlit界面中的培训页面
- 选择 YOLO11型号变体 (纳米/小/中/大/x大)
- 选择您的数据集(内置或自定义上传)
- 配置训练参数(纪元、批量大小、图像大小)
- 点击 开始训练 并监控进度
- 模型自动保存到工作区以供以后使用
模型变量选择:
- 约洛11n.pt -纳米:速度最快,精度最低(1.9M参数)
- yolo11s.pt -小:平衡良好(9.1M参数)
- 约洛11m.pt -中等:精度更高(20.1M参数)
- 约洛11l.pt -大:精度高(25.3M参数)
- 约洛11x.pt -X-Large:最高精度(43.9M参数)
N8N自动化
- 创建N8N工作流
- 添加MCP连接器节点
- 配置终结点:
http://localhost:8092 - 使用可用的工具进行自动化
🔍 监控与调试
容器状态
docker ps
docker-compose logs ultralytics-container
docker-compose logs mcp-connector-container健康检查
# MCP Server
curl http://localhost:8092/health
# Streamlit
curl http://localhost:8501/_stcore/health
# TensorBoard
curl http://localhost:6006🔄 重新启动和维护
重新启动服务
docker-compose restart更新和重建
docker-compose down
docker-compose up --build -d清除重置
docker-compose down
docker system prune -f
docker-compose up --build -d🎯 性能优化
- GPU内存:由CUDA运行时自动管理
- 批处理:针对多图像推理进行了优化
- 模型缓存:预装型号,响应更快
- 多线程:并发请求处理
🚨 故障排除
常见问题
容器重启循环
# Check logs
docker-compose logs ultralytics-container
# Restart with rebuild
docker-compose down
docker-compose up --build -dStreamlit未加载
# Verify container status
docker ps
# Check if files are copied correctly
docker exec ultralytics-container ls -la /ultralytics/未检测到GPU
# Check NVIDIA drivers
nvidia-smi
# Verify CUDA in container
docker exec ultralytics-container nvidia-smi🔧 发展
地方发展设置
- 克隆存储库
- 安装依赖项:
npm install(适用于MCP服务器) - 为Streamlit设置Python环境
- 单独运行服务进行调试
添加新的MCP工具
- 编辑
src/server.js - 在中添加工具定义
tools数组 - 在中实现处理程序
handleToolCall - 使用N8N集成进行测试
🤝 贡献
- 分叉存储库
- 创建特征分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add amazing feature') - 推送到分支(
git push origin feature/amazing-feature) - 打开拉取请求
📄 许可证
此项目根据AGPL-3.0许可证获得许可-请参阅 Ultralytics许可证 了解详情。
🙏 致谢
- 超锐 -感谢YOLO的出色实施
- N8N -用于工作流自动化平台
- 溪流 -对于漂亮的web界面框架
- 英伟达 -支持CUDA和GPU加速
📞 支持
- 🐛 问题:
- 💬 讨论:
- 📧 联系:创建支持问题
______________________________________________________________________
由以下材料制成❤️ 对于AI社区
🚀 准备好彻底改变您的计算机视觉工作流程了吗?从开始 docker-compose up -d!