AIHUB 模型市场使用指南
1. 概述
AIHUB 是 CubeStudio 平台提供的开源模型仓库,集成了大量可商用的开源 AI 模型,覆盖以下领域:
- 计算机视觉:图像分类、目标检测、图像生成、人脸识别等
- 自然语言处理:文本分类、情感分析、机器翻译、对话系统等
- 语音处理:语音识别、语音合成、声纹识别等
- 多模态模型:图文理解、图文生成、视频分析等
AIHUB 旨在为用户提供一站式模型服务,支持模型的快速部署、在线推理、自动化标注、微调训练和二次开发,大幅降低 AI 模型的应用门槛。

注意:文中“400+ 可商用开源模型”为总览性数字,实际可用模型数量随平台版本与上架情况变化,请以平台模型市场页面展示为准。
2. 快速入门
2.1 前提条件
- 已部署 CubeStudio 平台并拥有有效账户
- 具备相应项目空间的访问权限
- 确保集群有足够的计算资源(CPU/GPU、内存)
2.2 部署第一个模型
- 进入模型市场:在 CubeStudio 导航栏中选择“AIHUB”
- 浏览模型:通过分类、搜索或标签筛选找到目标模型
- 一键部署:点击模型卡片上的“部署 Web”按钮
- 等待启动:系统将自动创建推理服务 Pod,状态变为 Running 即表示部署成功
- 体验效果:点击模型图片进入 Web 界面
3. 模型部署
3.1 部署流程
- 选择模型:在模型市场中找到适合的模型

- 启动部署:点击“部署 Web”,系统将自动跳转到 Pod 部署页面

- 监控状态:等待 Pod 状态变为 Running(通常包括镜像拉取、健康检查等步骤,约需 1-3 分钟)
- 访问应用:部署成功后,可通过 Web 界面体验模型效果

3.2 资源管理
- 释放资源:对于不再需要的模型,点击“卸载 Web”即可释放相关资源
- 资源监控:若部署失败,请检查集群资源是否充足,可释放其他闲置应用后重试
4. 模型推理
4.1 推理接口
模型部署成功后,系统会自动提供以下接口:
- HTTP API 接口:用于程序化调用模型推理服务
- 自动化标注接口:与 LabelStudio 等标注平台集成,支持自动标注(部分模型)

4.2 使用方式
4.2.1 Web 界面推理
- 直接通过浏览器访问部署后的 Web 界面,上传数据并查看推理结果
- 支持实时交互,适合演示和快速验证
4.2.2 同步 API 调用
每个 AIHUB 应用的同步推理接口路径形如 /aihub/<model_name>/api/model/<model_name>/version/<version>/,使用 POST 方法,请求体为该模型的推理参数(JSON),字段名与模型在 Web 界面中暴露的输入项一致(例如图像类模型常用 image,文本类常用 text)。
# 示例:调用同步推理接口(参数字段依模型而定)
curl -X POST \
'http://<service-address>/aihub/<model_name>/api/model/<model_name>/version/<version>/' \
-H 'Content-Type: application/json' \
-d '{"image": "https://your-host/your_image.jpg"}'
说明:同步推理端点路径由应用服务自动注册,见
aihub/src/cubestudio/aihub/web/server.py:628(inference_url)与aihub/src/cubestudio/aihub/web/celery_app.py:63。早期文档中出现的/predict仅为示意,并非实际路径。
4.2.3 异步调用
异步推理适用于大批量数据处理、非实时决策等无需立即获取结果的场景。系统通过 Celery + Redis 任务队列有序调度推理任务,避免高并发时服务卡顿。
前提:异步接口仅在应用容器配置了有效的
REDIS_URL环境变量时才启用(非本地默认值)。启用后服务会自动拉起一个 Celery Worker 消费按APPNAME命名的队列。见aihub/src/cubestudio/aihub/web/server.py:449。
统一接口地址:/aihub/<model_name>/api/async/,通过 HTTP 方法区分操作:
| 方法 | 用途 | 参数 |
|---|---|---|
| POST | 提交推理任务 | Body:推理参数或 {"tasks": [...]} |
| GET | 查询任务状态 | Query:?task_ids=id1,id2 |
| DELETE | 取消任务 | Body:{"task_ids": ["id1","id2"]} |
提交任务(POST)
单条提交:直接传推理参数,和同步接口入参一致。批量提交:用 tasks 数组包裹多组参数。可选传 callback_url,推理完成后系统会主动 POST 通知。
# 单条提交
curl -X POST \
http://<service-address>/aihub/<model_name>/api/async/ \
-H 'Content-Type: application/json' \
-d '{"text": "your_data_here"}'
# 批量提交(带回调)
curl -X POST \
http://<service-address>/aihub/<model_name>/api/async/ \
-H 'Content-Type: application/json' \
-d '{
"tasks": [
{"text": "data_1"},
{"text": "data_2"}
],
"callback_url": "http://your-server/callback"
}'
返回示例:
{"status": 0, "task_ids": ["abc123", "def456"], "message": "已提交 2 个异步推理任务"}
查询状态(GET)
通过 task_ids 查询参数(逗号分隔)轮询任务进度,状态值包括 PENDING(排队中)、PROCESSING(推理中)、SUCCESS(完成)、FAILURE(失败)。其中 PROCESSING 为任务开始执行时主动设置的自定义状态(见 aihub/src/cubestudio/aihub/web/celery_app.py:60)。
curl "http://<service-address>/aihub/<model_name>/api/async/?task_ids=abc123,def456"
返回示例:
{
"status": 0,
"data": [
{"task_id": "abc123", "state": "SUCCESS", "result": {"status": 0, "result": [{"text": "推理结果"}]}},
{"task_id": "def456", "state": "PROCESSING"}
]
}
取消任务(DELETE)
仅非终态(即 SUCCESS / FAILURE 以外)的任务可取消;已终态的任务会返回“无法取消”。
curl -X DELETE \
http://<service-address>/aihub/<model_name>/api/async/ \
-H 'Content-Type: application/json' \
-d '{"task_ids": ["abc123"]}'
回调通知
提交任务时若指定了 callback_url,推理完成或失败后系统会向该地址 POST 通知(成功带 result,失败带 error):
{"task_id": "abc123", "state": "SUCCESS", "result": {"status": 0, "result": [{"text": "推理结果"}]}}
4.2.4 自动化标注
- 配置 LabelStudio 等标注工具,将 AIHUB 模型作为预测后端
- 支持批量数据自动预标注,提升标注效率
5. 模型微调
5.1 微调流程
对于预训练模型无法直接满足需求的场景,部分模型支持一键微调功能:
- 选择模型:在模型市场点击目标模型的“训练”按钮

- 进入微调界面:系统自动跳转到模型训练 Pipeline 配置页面
- 配置数据:在 Task 节点处配置训练数据和评估数据
- 支持从本地、对象存储、数据库等多种数据源导入
- 提供示例数据集供快速体验
- 启动训练:点击“运行 Pipeline”,系统自动创建训练任务

- 监控进度:通过 Pipeline 可视化界面实时监控训练状态和指标
注意:支持一键微调的模型清单随平台版本变化,请以模型市场中各模型是否提供“训练”按钮为准。
5.2 注意事项
- 数据格式:确保训练数据符合模型要求的格式
- 资源需求:微调通常需要更多计算资源(尤其是 GPU)
- 超参数调整:可根据需求调整学习率、批量大小等超参数
- 模型保存:微调后的模型会自动保存,可用于后续部署
6. 模型开发
6.1 开发流程
当 AIHUB 应用无法满足你的需求,可进行应用的二次开发:
- 进入开发界面:点击模型的“开发”按钮

- 获取代码:系统提供完整的模型应用代码,包括 Dockerfile、启动脚本等

- 修改代码:基于业务需求修改模型逻辑、添加新功能,在 notebook 中运行
- 若你想把修正后的代码更新到平台的 AIHUB 应用市场,需要参考下面的开发文档和视频教程
6.2 开发指南
- 开发文档:参见「06-二次开发」段的 AIHUB 应用开发指南(AIHUB 算法应用开发)
- 视频教程:AIHUB 应用开发视频教程
7. 故障排查
7.1 日志查看
- Pod 日志:通过 Kubernetes Dashboard 或
kubectl logs查看 - 应用日志:在容器内的
/log.txt查看应用(Gradio)相关日志