AIHUB 模型市场使用指南

想了解如何在平台 AIHUB 模型市场中浏览/部署开源模型、调用推理接口(同步/异步)、做自动标注、微调或二次开发时读这篇

平台使用 / 数据智能与市场
AIHUBaihub模型市场model market开源模型一键部署在线推理异步推理async inferenceCeleryLabelStudio自动化标注模型微调fine-tune模型应用Web应用

AIHUB 模型市场使用指南

1. 概述

AIHUB 是 CubeStudio 平台提供的开源模型仓库,集成了大量可商用的开源 AI 模型,覆盖以下领域:

  • 计算机视觉:图像分类、目标检测、图像生成、人脸识别等
  • 自然语言处理:文本分类、情感分析、机器翻译、对话系统等
  • 语音处理:语音识别、语音合成、声纹识别等
  • 多模态模型:图文理解、图文生成、视频分析等

AIHUB 旨在为用户提供一站式模型服务,支持模型的快速部署、在线推理、自动化标注、微调训练和二次开发,大幅降低 AI 模型的应用门槛。

注意:文中“400+ 可商用开源模型”为总览性数字,实际可用模型数量随平台版本与上架情况变化,请以平台模型市场页面展示为准。

2. 快速入门

2.1 前提条件

  • 已部署 CubeStudio 平台并拥有有效账户
  • 具备相应项目空间的访问权限
  • 确保集群有足够的计算资源(CPU/GPU、内存)

2.2 部署第一个模型

  1. 进入模型市场:在 CubeStudio 导航栏中选择“AIHUB”
  2. 浏览模型:通过分类、搜索或标签筛选找到目标模型
  3. 一键部署:点击模型卡片上的“部署 Web”按钮
  4. 等待启动:系统将自动创建推理服务 Pod,状态变为 Running 即表示部署成功
  5. 体验效果:点击模型图片进入 Web 界面

3. 模型部署

3.1 部署流程

  1. 选择模型:在模型市场中找到适合的模型
  2. 启动部署:点击“部署 Web”,系统将自动跳转到 Pod 部署页面
  3. 监控状态:等待 Pod 状态变为 Running(通常包括镜像拉取、健康检查等步骤,约需 1-3 分钟)
  4. 访问应用:部署成功后,可通过 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:628inference_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 微调流程

对于预训练模型无法直接满足需求的场景,部分模型支持一键微调功能:

  1. 选择模型:在模型市场点击目标模型的“训练”按钮
  2. 进入微调界面:系统自动跳转到模型训练 Pipeline 配置页面
  3. 配置数据:在 Task 节点处配置训练数据和评估数据
    • 支持从本地、对象存储、数据库等多种数据源导入
    • 提供示例数据集供快速体验
  4. 启动训练:点击“运行 Pipeline”,系统自动创建训练任务
  5. 监控进度:通过 Pipeline 可视化界面实时监控训练状态和指标

注意:支持一键微调的模型清单随平台版本变化,请以模型市场中各模型是否提供“训练”按钮为准。

5.2 注意事项

  • 数据格式:确保训练数据符合模型要求的格式
  • 资源需求:微调通常需要更多计算资源(尤其是 GPU)
  • 超参数调整:可根据需求调整学习率、批量大小等超参数
  • 模型保存:微调后的模型会自动保存,可用于后续部署

6. 模型开发

6.1 开发流程

当 AIHUB 应用无法满足你的需求,可进行应用的二次开发

  1. 进入开发界面:点击模型的“开发”按钮
  2. 获取代码:系统提供完整的模型应用代码,包括 Dockerfile、启动脚本等
  3. 修改代码:基于业务需求修改模型逻辑、添加新功能,在 notebook 中运行
  4. 若你想把修正后的代码更新到平台的 AIHUB 应用市场,需要参考下面的开发文档和视频教程

6.2 开发指南

  • 开发文档:参见「06-二次开发」段的 AIHUB 应用开发指南(AIHUB 算法应用开发)
  • 视频教程AIHUB 应用开发视频教程

7. 故障排查

7.1 日志查看

  • Pod 日志:通过 Kubernetes Dashboard 或 kubectl logs 查看
  • 应用日志:在容器内的 /log.txt 查看应用(Gradio)相关日志
最后更新 2026-07-04完整文档以官方仓库为准:GitHub Wiki