AI 模型管理 - 启用与分类联调方案
涉及页面
- AI 大模型 → 模型管理(
ai/model/model/index)
- 依赖模型下拉的业务页面(对话、图像、知识库、工作流)
业务流程与数据带入
- 模型管理列表按「模型类型」分组展示:同一类型的多行在类型列纵向合并成一格。
- 每行状态列改为「启用」开关,直接切换该模型的启用/停用。
- 启用某个模型时,后端自动关闭**同类型 + 同能力**下已启用的其他模型,前端只需整页刷新。
- 停用模型不会自动启用其他模型,该类型该能力可能因此没有可用模型。
API
| 方法 |
路径 |
说明 |
| PUT |
/ai/model/update-status |
更新模型启用状态(本次新增) |
| GET |
/ai/model/page |
模型分页,新增 capability 查询参数 |
| GET |
/ai/model/simple-list |
模型下拉,新增 capability 查询参数 |
请求参数(update-status):
| 参数 |
类型 |
必填 |
说明 |
| id |
Long |
是 |
模型编号 |
| status |
Integer |
是 |
0-启用,1-停用 |
请求参数(page):
| 参数 |
类型 |
必填 |
说明 |
| pageNo |
Integer |
是 |
页码 |
| pageSize |
Integer |
是 |
每页条数 |
| name |
String |
否 |
模型名字,模糊匹配 |
| model |
String |
否 |
模型标识,模糊匹配 |
| type |
Integer |
否 |
模型类型 |
| capability |
String |
否 |
模型能力:text-文本,vision-视觉 |
| platform |
String |
否 |
平台 |
| status |
Integer |
否 |
状态 |
响应字段新增(page / get / simple-list):
| 字段 |
类型 |
说明 |
| capability |
String |
模型能力:text-文本,vision-视觉 |
响应示例:
{
"code": 0,
"data": {
"list": [
{
"id": 2,
"name": "通义千问对话模型",
"model": "qwen-max",
"platform": "TongYi",
"type": 1,
"capability": "text",
"status": 0
},
{
"id": 4,
"name": "通义千问视觉模型",
"model": "qwen-vl-plus",
"platform": "TongYi",
"type": 1,
"capability": "vision",
"status": 0
}
],
"total": 4
}
}
字段展示规则
| 字段 |
展示位置 |
说明 |
| 模型类型 |
列表首列 |
同类型多行纵向合并,形成分类分组 |
| 模型能力 |
列表、表单 |
文本/视觉;仅对话类型需要区分 |
| 启用 |
列表状态列 |
开关控件,切换即调用 update-status |
| 模型标识 |
搜索表单 |
支持模糊搜索 |
业务规则说明
| 场景 |
规则 |
| 启用模型 |
自动关闭同 type + capability 的其他启用模型,保证每组只有一个启用 |
| 停用模型 |
只关闭自身,不自动启用其他模型 |
| 新建模型 |
若状态为启用,同样会关闭同组其他模型 |
| 编辑模型 |
模型类型、能力不可修改(前端已禁用);仅新建时可选 |
| 对话类型 |
文本能力与视觉能力各可启用一个,互不覆盖 |
| 非对话类型 |
能力固定为文本,每组只能启用一个 |
| 图片识别 |
只使用视觉能力的启用模型,未启用时接口直接报错提示去启用 |
注意事项
- 模型类型、能力在编辑时不可修改。若要改变模型归类,需删除后重新创建。
- 启用开关切换后必须整页刷新,因为同组其他行的状态已被后端改写。
- 图片识别(发票、报价单、质检报告)依赖视觉能力模型;如果停用了唯一的视觉模型,这些功能会报错并提示去启用。
- 能力字段在历史数据上由后端按模型标识自动判定(含
vl 的对话模型归为视觉),前端无需迁移。
- 非对话类型不需要展示能力字段,提交时可不传,后端默认按
text 处理。