- init.py: 新增6个虚拟人函数(create/list/upload/sync等),注册到ServerEnv - api_mapping: 新增create_group→CreateAssetGroup映射 - 外部API: 5个rl_virtual_*.dspy端点(创建组合/列表/上传/素材列表/状态) - 前端API: 4个submit/get dspy端点(UI表单提交和数据获取) - UI页面: 3个页面(创建组合/上传素材/查看素材) - index.ui: 左侧导航新增虚拟人素材分区(3个按钮) - load_path.py: RBAC新增virtual页面和api/%路径 - docs: api_downapp.md新增虚拟人API文档(5个端点)
74 lines
2.6 KiB
XML
74 lines
2.6 KiB
XML
{
|
||
"widgettype": "VBox",
|
||
"options": {
|
||
"width": "100%",
|
||
"padding": "16px"
|
||
},
|
||
"subwidgets": [
|
||
{
|
||
"widgettype": "Title4",
|
||
"options": {
|
||
"text": "创建虚拟人素材组合",
|
||
"fontWeight": "600",
|
||
"marginBottom": "16px"
|
||
}
|
||
},
|
||
{
|
||
"widgettype": "Text",
|
||
"options": {
|
||
"text": "创建素材组合后,可将虚拟人素材(图片/视频/音频)上传至该组合,用于Seedance 2.0视频生成。",
|
||
"cfontsize": 0.9,
|
||
"marginBottom": "16px"
|
||
}
|
||
},
|
||
{
|
||
"widgettype": "VBox",
|
||
"options": {
|
||
"padding": "16px",
|
||
"spacing": 12
|
||
},
|
||
"subwidgets": [
|
||
{
|
||
"widgettype": "Form",
|
||
"id": "virtual_group_form",
|
||
"options": {
|
||
"submit_url": "{{entire_url('api/submit_virtual_create_group.dspy')}}",
|
||
"fields": [
|
||
{
|
||
"uitype": "code",
|
||
"name": "vendor",
|
||
"label": "供应商",
|
||
"dataurl": "{{entire_url('api/get_vendor_list.dspy')}}",
|
||
"data_field": "value",
|
||
"text_field": "text",
|
||
"required": true
|
||
},
|
||
{
|
||
"uitype": "str",
|
||
"name": "name",
|
||
"label": "组合名称",
|
||
"placeholder": "例如:虚拟角色A",
|
||
"required": true
|
||
},
|
||
{
|
||
"uitype": "str",
|
||
"name": "description",
|
||
"label": "描述",
|
||
"placeholder": "可选,素材组合的描述"
|
||
}
|
||
]
|
||
},
|
||
"binds": [
|
||
{
|
||
"wid": "self",
|
||
"event": "submited",
|
||
"actiontype": "script",
|
||
"script": "await bricks.show_resp_message_or_error(event.params)"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|