Merge remote-tracking branch 'origin/bonus-ai' into bonus-ai
This commit is contained in:
commit
e7a629b7c4
|
|
@ -45,7 +45,7 @@ export function delManager(id) {
|
|||
|
||||
export function uploadFile(formData) {
|
||||
return request({
|
||||
url: '/ai/manager/uploadFile',
|
||||
url: '/ai/model/uploadFile',
|
||||
method: 'post',
|
||||
data: formData,
|
||||
timeout: 600000, // 设置超时时间为 10 秒(10000 毫秒)
|
||||
|
|
|
|||
|
|
@ -20,12 +20,12 @@ import Layout from '@/layout'
|
|||
* roles: ['admin', 'common'] // 访问路由的角色权限
|
||||
* permissions: ['a:a:a', 'b:b:b'] // 访问路由的菜单权限
|
||||
* meta : {
|
||||
noCache: true // 如果设置为true,则不会被 <keep-alive> 缓存(默认 false)
|
||||
title: 'title' // 设置该路由在侧边栏和面包屑中展示的名字
|
||||
icon: 'svg-name' // 设置该路由的图标,对应路径src/assets/icons/svg
|
||||
breadcrumb: false // 如果设置为false,则不会在breadcrumb面包屑中显示
|
||||
activeMenu: '/system/user' // 当路由设置了该属性,则会高亮相对应的侧边栏。
|
||||
}
|
||||
noCache: true // 如果设置为true,则不会被 <keep-alive> 缓存(默认 false)
|
||||
title: 'title' // 设置该路由在侧边栏和面包屑中展示的名字
|
||||
icon: 'svg-name' // 设置该路由的图标,对应路径src/assets/icons/svg
|
||||
breadcrumb: false // 如果设置为false,则不会在breadcrumb面包屑中显示
|
||||
activeMenu: '/system/user' // 当路由设置了该属性,则会高亮相对应的侧边栏。
|
||||
}
|
||||
*/
|
||||
|
||||
// 公共路由
|
||||
|
|
@ -148,6 +148,20 @@ export const dynamicRoutes = [
|
|||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/dataCenter/evaluate/evaluate-details',
|
||||
component: Layout,
|
||||
hidden: true,
|
||||
permissions: ['evaluateDetails:details:list'],
|
||||
children: [
|
||||
{
|
||||
path: 'index/:evaluateId(\\d+)',
|
||||
component: () => import('@/views/dataCenter/evaluate/child/evaluateDetails'),
|
||||
name: 'Data',
|
||||
meta: { title: '模型评价详情', activeMenu: '/dataCenter/evaluateDetails' }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: '/dataCenter/dataSet-version',
|
||||
component: Layout,
|
||||
|
|
@ -221,8 +235,8 @@ export const dynamicRoutes = [
|
|||
]
|
||||
|
||||
// 防止连续点击多次路由报错
|
||||
let routerPush = Router.prototype.push;
|
||||
let routerReplace = Router.prototype.replace;
|
||||
let routerPush = Router.prototype.push
|
||||
let routerReplace = Router.prototype.replace
|
||||
// push
|
||||
Router.prototype.push = function push(location) {
|
||||
return routerPush.call(this, location).catch(err => err)
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
<script>
|
||||
import LabelStudio from 'label-studio';
|
||||
import 'label-studio/build/static/css/main.css';
|
||||
import '@/assets/styles/labelStudio.scss';
|
||||
import {agreement, manualAnnotate } from '../../../../api/dataCenter/annotationTask';
|
||||
|
||||
export default {
|
||||
|
|
@ -179,84 +179,25 @@ export default {
|
|||
</script>
|
||||
|
||||
<style scoped>
|
||||
.label-studio-annotator {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.annotation-container {
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
min-height: 500px; /* 设置最小高度 */
|
||||
}
|
||||
|
||||
.button-container {
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
.agree-button, .disagree-button {
|
||||
padding: 10px 20px;
|
||||
margin: 0 5px;
|
||||
border: none;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.agree-button {
|
||||
background-color: #4CAF50;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.disagree-button {
|
||||
background-color: #F44336;
|
||||
color: white;
|
||||
}
|
||||
|
||||
/* 弹出层样式 */
|
||||
.layui-layer {
|
||||
position: fixed;
|
||||
z-index: 1000;
|
||||
left: 0;
|
||||
top: 0;
|
||||
.label-studio-annotator{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.annotation-container{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.5); /* 半透明背景 */
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
justify-content: center;
|
||||
|
||||
.layui-layer-content {
|
||||
background-color: #fff;
|
||||
padding: 20px;
|
||||
border-radius: 5px;
|
||||
width: 400px; /* 宽度 */
|
||||
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.layui-layer-buttons {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.layui-btn {
|
||||
padding: 10px 15px;
|
||||
border: none;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.layui-btn-primary {
|
||||
background-color: #4CAF50;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.layui-btn-danger {
|
||||
background-color: #F44336;
|
||||
color: white;
|
||||
>div{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 5px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -5,22 +5,22 @@
|
|||
>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="正样本数" prop="justSqmple">
|
||||
<el-input v-model="form.justSqmple" placeholder="请输入正样本数"/>
|
||||
<el-input v-model="form.justSqmple" maxlength="8" placeholder="请输入正样本数"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="负样本数" prop="loseSample">
|
||||
<el-input v-model="form.loseSample" placeholder="请输入负样本数"/>
|
||||
<el-input v-model="form.loseSample" maxlength="8" placeholder="请输入负样本数"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="TP数量" prop="tpNum">
|
||||
<el-input v-model="form.tpNum" placeholder="请输入TP数量"/>
|
||||
<el-input v-model="form.tpNum" maxlength="8" placeholder="请输入TP数量"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="TN数量" prop="tnNum">
|
||||
<el-input v-model="form.tnNum" placeholder="请输入TN数量"/>
|
||||
<el-input v-model="form.tnNum" maxlength="8" placeholder="请输入TN数量"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="FP数量" prop="fpNum">
|
||||
<el-input v-model="form.fpNum" placeholder="请输入FP数量"/>
|
||||
<el-input v-model="form.fpNum" maxlength="8" placeholder="请输入FP数量"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="FN数量" prop="fnNum">
|
||||
<el-input v-model="form.fnNum" placeholder="请输入FN数量"/>
|
||||
<el-input v-model="form.fnNum" maxlength="8" placeholder="请输入FN数量"/>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
|
|
@ -39,7 +39,8 @@ export default {
|
|||
open: { type: Boolean, required: true },
|
||||
getList: { type: Function, required: true },
|
||||
title: { type: String, required: true },
|
||||
id: { type: [Number, null], default: 0 }
|
||||
evaluateId: { type: [Number, null], default: 0 },
|
||||
evaluateDetailId: { type: [Number, null], default: 0 }
|
||||
},
|
||||
computed: {
|
||||
isOpen: {
|
||||
|
|
@ -69,13 +70,13 @@ export default {
|
|||
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: 'blur' }
|
||||
|
||||
],
|
||||
tnNum:[{ required: true, message: '请输入TN数量', trigger: 'blur' },
|
||||
tnNum: [{ required: true, message: '请输入TN数量', trigger: 'blur' },
|
||||
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: 'blur' }
|
||||
],
|
||||
fpNum:[{ required: true, message: '请输入FP数量', trigger: 'blur' },
|
||||
fpNum: [{ required: true, message: '请输入FP数量', trigger: 'blur' },
|
||||
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: 'blur' }
|
||||
],
|
||||
fnNum:[{ required: true, message: '请输入FN数量', trigger: 'blur' },
|
||||
fnNum: [{ required: true, message: '请输入FN数量', trigger: 'blur' },
|
||||
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: 'blur' }
|
||||
]
|
||||
}
|
||||
|
|
@ -83,6 +84,11 @@ export default {
|
|||
},
|
||||
watch: {
|
||||
isOpen(newVal) {
|
||||
if (newVal && this.evaluateDetailId) {
|
||||
getDetails(this.evaluateDetailId).then(res => {
|
||||
this.form = res.data
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
@ -90,12 +96,21 @@ export default {
|
|||
submitForm() {
|
||||
this.$refs['form'].validate(valid => {
|
||||
if (valid) {
|
||||
this.form.evaluateId = this.id
|
||||
addDetails(this.form).then(response => {
|
||||
this.$modal.msgSuccess('新增成功')
|
||||
this.isOpen = false
|
||||
this.getList()
|
||||
})
|
||||
if (this.form.id != null) {
|
||||
updateDetails(this.form).then(res => {
|
||||
this.$modal.msgSuccess('修改成功')
|
||||
this.isOpen = false
|
||||
this.getList()
|
||||
})
|
||||
} else {
|
||||
this.form.evaluateId = this.evaluateId
|
||||
console.log(this.form)
|
||||
addDetails(this.form).then(response => {
|
||||
this.$modal.msgSuccess('新增成功')
|
||||
this.isOpen = false
|
||||
this.getList()
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@
|
|||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="处理速度" prop="processSpeed">
|
||||
<el-input v-model="form.processSpeed" placeholder="请输入处理速度"/>
|
||||
<el-input v-model="form.processSpeed" maxlength="10" placeholder="请输入处理速度"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="内存占用" prop="memoryUsage">
|
||||
<el-input v-model="form.memoryUsage" placeholder="请输入内存占用"/>
|
||||
<el-input v-model="form.memoryUsage" maxlength="10" placeholder="请输入内存占用"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="环境条件" prop="enviroConditions">
|
||||
<el-select v-model="form.enviroConditions" placeholder="请选择环境条件" clearable style="width: 100%">
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="评价人id" prop="userId">
|
||||
<el-form-item label="评价人" prop="userId">
|
||||
<el-input
|
||||
v-model="queryParams.userId"
|
||||
placeholder="请输入评价人id"
|
||||
placeholder="请输入评价人"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['system:details:add']"
|
||||
v-hasPermi="['evaluateDetails:details:add']"
|
||||
>新增
|
||||
</el-button>
|
||||
</el-col>
|
||||
|
|
@ -35,7 +35,7 @@
|
|||
size="mini"
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['system:details:edit']"
|
||||
v-hasPermi="['evaluateDetails:details:edit']"
|
||||
>修改
|
||||
</el-button>
|
||||
</el-col>
|
||||
|
|
@ -47,7 +47,7 @@
|
|||
size="mini"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['system:details:remove']"
|
||||
v-hasPermi="['evaluateDetails:details:remove']"
|
||||
>删除
|
||||
</el-button>
|
||||
</el-col>
|
||||
|
|
@ -56,32 +56,32 @@
|
|||
|
||||
<el-table v-loading="loading" :data="detailsList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column label="评价id" align="center" prop="evaluateId"/>
|
||||
<el-table-column label="评价人id" align="center" prop="userId"/>
|
||||
<el-table-column label="正样本数" align="center" prop="justSqmple"/>
|
||||
<el-table-column label="负样本数" align="center" prop="loseSample"/>
|
||||
<el-table-column label="TP数量" align="center" prop="tpNum"/>
|
||||
<el-table-column label="TN数量" align="center" prop="tnNum"/>
|
||||
<el-table-column label="FP数量" align="center" prop="fpNum"/>
|
||||
<el-table-column label="FN数量" align="center" prop="fnNum"/>
|
||||
<el-table-column type="index" label="序号" align="center" :index="indexMethod" width="50"/>
|
||||
<el-table-column label="评价人" align="center" min-width="80" prop="userId"/>
|
||||
<el-table-column label="正样本数" align="center" min-width="80" prop="justSqmple"/>
|
||||
<el-table-column label="负样本数" align="center" min-width="80" prop="loseSample"/>
|
||||
<el-table-column label="TP数量" align="center" min-width="80" prop="tpNum"/>
|
||||
<el-table-column label="TN数量" align="center" min-width="80" prop="tnNum"/>
|
||||
<el-table-column label="FP数量" align="center" min-width="80" prop="fpNum"/>
|
||||
<el-table-column label="FN数量" align="center" min-width="80" prop="fnNum"/>
|
||||
<el-table-column label="准确率" align="center" min-width="80" prop="accuracyRate"/>
|
||||
<el-table-column label="召回率" align="center" min-width="80" prop="recallRate"/>
|
||||
<el-table-column label="精确率" align="center" min-width="80" prop="accurateRate"/>
|
||||
<el-table-column label="F1分数" align="center" min-width="80" prop="fgrade"/>
|
||||
<el-table-column label="评价时间" align="center" prop="evaluteTime" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.evaluteTime, '{y}-{m}-{d}') }}</span>
|
||||
<span>{{ parseTime(scope.row.evaluteTime) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="准确率" align="center" prop="accuracyRate"/>
|
||||
<el-table-column label="召回率" align="center" prop="recallRate"/>
|
||||
<el-table-column label="精确率" align="center" prop="accurateRate"/>
|
||||
<el-table-column label="F1分数" align="center" prop="fGrade"/>
|
||||
<el-table-column label="是否删除" align="center" prop="isActive"/>
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['system:details:edit']"
|
||||
v-hasPermi="['evaluateDetails:details:edit']"
|
||||
>修改
|
||||
</el-button>
|
||||
<el-button
|
||||
|
|
@ -89,7 +89,7 @@
|
|||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['system:details:remove']"
|
||||
v-hasPermi="['evaluateDetails:details:remove']"
|
||||
>删除
|
||||
</el-button>
|
||||
</template>
|
||||
|
|
@ -103,16 +103,24 @@
|
|||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
<add-evaluate-details :title="title" :get-list="getList" :open="open" :evaluate-id="evaluateId"
|
||||
:evaluate-detail-id="id"
|
||||
@dialog-cancel="handleCancel"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listDetails, delDetails } from '@/api/dataCenter/evaluateDetails'
|
||||
import addEvaluateDetails from './addEvaluateDetails.vue'
|
||||
|
||||
export default {
|
||||
name: 'Details',
|
||||
components: { addEvaluateDetails },
|
||||
data() {
|
||||
return {
|
||||
evaluateId: null,
|
||||
id: null,
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
|
|
@ -140,12 +148,18 @@ export default {
|
|||
}
|
||||
},
|
||||
created() {
|
||||
this.evaluateId = Number(this.$route.params && this.$route.params.evaluateId)
|
||||
console.log(this.evaluateId)
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
indexMethod(index) {
|
||||
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + index + 1
|
||||
},
|
||||
/** 查询模型评价详情列表 */
|
||||
getList() {
|
||||
this.loading = true
|
||||
this.queryParams.evaluateId = this.evaluateId
|
||||
listDetails(this.queryParams).then(response => {
|
||||
this.detailsList = response.rows
|
||||
this.total = response.total
|
||||
|
|
@ -191,6 +205,9 @@ export default {
|
|||
this.$modal.msgSuccess('删除成功')
|
||||
}).catch(() => {
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.open = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,18 +56,17 @@
|
|||
|
||||
<el-table v-loading="loading" :data="evaluateList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column type="index" label="序号" align="center" :index="indexMethod" width="50"/>
|
||||
<el-table-column label="模型名称" align="center" min-width="120" prop="evaluateName">
|
||||
<template slot-scope="scope">
|
||||
<router-link :to="{
|
||||
path: '/dataCenter/dataSet-details/index/' + scope.row.datasetId,
|
||||
query: { dataType: scope.row.dataType,_t: Date.now() }
|
||||
}" class="link-type" @click=""
|
||||
path: '/dataCenter/evaluate/evaluate-details/index/' + scope.row.id,}" class="link-type" @click=""
|
||||
>
|
||||
<span>{{ scope.row.evaluateName }}</span>
|
||||
</router-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="版本号" align="center" min-width="120" prop="evaluateVersion"/>
|
||||
<el-table-column label="版本号" align="center" min-width="80" prop="evaluateVersion"/>
|
||||
<el-table-column label="验证样本总数" align="center" min-width="80" prop="sampleAll"/>
|
||||
<el-table-column label="准确率" align="center" min-width="80" prop="accuracyRate"/>
|
||||
<el-table-column label="召回率" align="center" min-width="80" prop="recallRate"/>
|
||||
|
|
@ -82,7 +81,7 @@
|
|||
<el-table-column label="环境条件" align="center" min-width="120" prop="enviroConditions"/>
|
||||
<el-table-column label="创建人" align="center" min-width="120" prop="createBy"/>
|
||||
<el-table-column label="创建时间" align="center" min-width="120" prop="createTime"/>
|
||||
<el-table-column label="操作" align="center" min-width="120" class-name="small-padding fixed-width">
|
||||
<el-table-column label="操作" align="center" min-width="120" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
|
|
@ -123,7 +122,9 @@
|
|||
<!-- 添加或修改模型评价对话框 -->
|
||||
<custom-dialog :title="title" :get-list="getList" :open="open" :id="id" @dialog-cancel="handleCancel"/>
|
||||
|
||||
<add-evaluate-details :title="title" :get-list="getList" :open="addOpen" :id="id" @dialog-cancel="handleCancel"/>
|
||||
<add-evaluate-details :title="title" :get-list="getList" :open="addOpen" :evaluate-id="id"
|
||||
@dialog-cancel="handleCancel"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -169,6 +170,9 @@ export default {
|
|||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
indexMethod(index) {
|
||||
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + index + 1
|
||||
},
|
||||
/** 查询模型评价列表 */
|
||||
getList() {
|
||||
this.loading = true
|
||||
|
|
|
|||
|
|
@ -5,10 +5,10 @@
|
|||
>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="镜像名称" prop="mirrorName">
|
||||
<el-input v-model="form.mirrorName" maxlength="100" placeholder="请输入镜像名称"/>
|
||||
<el-input v-model="form.mirrorName" maxlength="50" placeholder="请输入镜像名称"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="镜像版本" prop="mirrorVersion">
|
||||
<el-input v-model="form.mirrorVersion" placeholder="请输入镜像名称"/>
|
||||
<el-input v-model="form.mirrorVersion" maxlength="50" placeholder="请输入镜像版本"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属模型" prop="ownModel">
|
||||
<el-select v-model="form.ownModel" placeholder="请选择所属模型" clearable style="width: 100%">
|
||||
|
|
@ -145,14 +145,14 @@ export default {
|
|||
watch: {
|
||||
isOpen(newVal) {
|
||||
if (newVal) {
|
||||
console.log(this.mirrorId)
|
||||
listAll().then(response => {
|
||||
this.modelList = response.data
|
||||
})
|
||||
if (this.mirrorId) {
|
||||
getManager(this.mirrorId).then(response => {
|
||||
this.form = response.data
|
||||
})
|
||||
listAll().then(response => {
|
||||
this.modelList = response.data
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,10 +5,10 @@
|
|||
>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="模型名称" prop="modelName">
|
||||
<el-input v-model="form.modelName" maxlength="100" placeholder="请输入模型名称"/>
|
||||
<el-input v-model="form.modelName" maxlength="50" placeholder="请输入模型名称"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="版本号" prop="modelVersion">
|
||||
<el-input v-model="form.modelVersion" maxlength="100" placeholder="请输入版本号"/>
|
||||
<el-input v-model="form.modelVersion" maxlength="50" placeholder="请输入版本号"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据集" prop="datasetId">
|
||||
<el-select v-model="form.datasetId" placeholder="请选择数据集" clearable style="width: 100%">
|
||||
|
|
@ -66,7 +66,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import { getManager, addManager, updateManager } from '@/api/dataCenter/mirror'
|
||||
import { getManager, addManager, updateManager, uploadFile } from '@/api/dataCenter/model'
|
||||
import { datasetList } from '@/api/dataCenter/dataSet'
|
||||
import { generateUUID } from '../../../../utils/configure'
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue