|
- <!-- 头部导航栏 -->
- {{template "base/head" .}}
- <!-- 弹窗 -->
- <div id="mask">
- <div id="loadingPage">
- <div class="rect1"></div>
- <div class="rect2"></div>
- <div class="rect3"></div>
- <div class="rect4"></div>
- <div class="rect5"></div>
- </div>
- </div>
- {{$repository := .Repository.ID}}
- <!-- 提示框 -->
- <div class="alert"></div>
-
- <div class="repository release dataset-list view">
- {{template "repo/header" .}}
- <!-- 列表容器 -->
- <div class="ui container {{if ne $.MODEL_COUNT 0}}active loader {{end}}" id="loadContainer">
- {{template "base/alert" .}}
- <div class="ui two column stackable grid">
- <div class="column">
- <div class="ui blue small menu compact selectcloudbrain">
- <a class="item" href="{{.RepoLink}}/modelmanage/show_model">{{$.i18n.Tr "repo.model.list"}}</a>
- <a class="active item" href="{{.RepoLink}}/modelmanage/convert_model">{{$.i18n.Tr "repo.model.convert"}}</a>
- </div>
- </div>
- <div class="column right aligned">
- <!-- -->
- <a class="ui button {{if .Permission.CanWrite $.UnitTypeModelManage}} green {{else}} disabled {{end}}" onclick="showcreate(this)">{{$.i18n.Tr "repo.model.manage.create_new_convert_task"}}</a>
- </div>
- </div>
-
- <!-- 中下列表展示区 -->
- <div class="ui grid">
- <div class="row" style="padding-top: 0;">
- <div class="ui eighteen wide column">
- <!-- 任务展示 -->
- <div class="dataset list" id="model_convert_list">
- <!-- 表头 -->
- <div class="ui grid stackable" style="background: #f0f0f0;;">
- <div class="row">
- <div class="three wide column padding0">
- <span style="margin:0 6px">任务名称</span>
- </div>
- <div class="one wide column text center padding0">
- <span>状态</span>
- </div>
- <div class="two wide column text center padding0">
- <span>原模型框架</span>
- </div>
- <div class="two wide column text center padding0">
- <span>转换后格式</span>
- </div>
- <div class="two wide column text center padding0">
- <span>创建时间</span>
- </div>
- <div class="two wide column text center padding0">
- <span>运行时长</span>
- </div>
- <div class="one wide column text center padding0">
- <span>{{$.i18n.Tr "repo.cloudbrain_creator"}}</span>
- </div>
- <div class="three wide column text center padding0">
- <span>{{$.i18n.Tr "repo.cloudbrain_operate"}}</span>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
-
- </div>
-
- </div>
-
- <!-- 确认模态框 -->
- <div id="deletemodel">
- <div class="ui basic modal first">
- <div class="ui icon header">
- <i class="trash icon"></i> 删除模型
- </div>
-
- <div class="content">
- <p>你确认删除该模型转换任务么?一旦删除不可恢复。</p>
- </div>
- <div class="actions">
- <div class="ui red basic inverted cancel button">
- <i class="remove icon"></i> {{.i18n.Tr "cloudbrain.operate_cancel"}}
- </div>
- <div class="ui green basic inverted ok button">
- <i class="checkmark icon"></i> {{.i18n.Tr "cloudbrain.operate_confirm"}}
- </div>
- </div>
- </div>
- </div>
- <div id="newmodelconvert">
- <div class="ui modal second">
- <div class="header" style="padding: 1rem;background-color: rgba(240, 240, 240, 100);">
- <h4 id="model_header"></h4>
- </div>
- <div class="content content-padding">
- <form id="formId" method="POST" class="ui form">
- <input type="hidden" name="initModel" value="{{$.MODEL_COUNT}}">
- <div class="ui error message">
- <!-- <p>asdasdasd</p> -->
- </div>
- <input type="hidden" name="_csrf" value="">
- <div class="unite min_title required inline field" id="task_name">
- <label>任务名称</label>
- <input style="width: 45%;" id="name" name="Name" required maxlength="25" onkeyup="this.value=this.value.replace(/[, ]/g,'')">
- </div>
- <div class="unite min_title inline field">
- <label for="description">任务描述</label>
- <textarea style="width: 83%;margin-left: 7px;" id="Description" name="Description" rows="3" maxlength="255" placeholder='{{.i18n.Tr "repo.modelarts.train_job.new_place"}}' onchange="this.value=this.value.substring(0, 255)" onkeydown="this.value=this.value.substring(0, 255)" onkeyup="this.value=this.value.substring(0, 256)"></textarea>
- </div>
- <div class="unite min_title inline field ">
- <label>模型</label>
- <div class="ui dropdown selection search width83 loading" id="choice_model">
- <input type="hidden" id="ModelId" name="ModelId" required>
- <div class="default text">选择模型</div>
- <i class="dropdown icon"></i>
- <div class="menu" id="model-name">
- </div>
- </div>
- </div>
- <div class="unite min_title inline field ">
- <label>模型版本</label>
- <div class="ui dropdown selection search width70" id="choice_version">
- <input type="hidden" id="ModelVersion" name="ModelVersion" required>
- <div class="default text">选择版本</div>
- <i class="dropdown icon"></i>
- <div class="menu" id="model-version">
-
- </div>
- </div>
- </div>
- <div class="unite min_title inline field">
- <label>原模型框架</label>
- <div class="ui dropdown selection search width70" id="choice_engine">
- <input type="hidden" id="SrcEngine" name="SrcEngine" required>
- <div class="default text">原模型框架</div>
- <i class="dropdown icon"></i>
- <div class="menu" id="src-engine">
-
- </div>
- </div>
- </div>
- <div class="unite min_title required inline field" id="inputshape_div">
- <label>输入张量形状</label>
- <input style="width: 45%;" id="inputshape" name="inputshape" required maxlength="25" onkeyup="this.value=this.value.replace(/[, ]/g,'')">
- </div>
- <div class="unite min_title required inline field" id="inputdataformat_div">
- <label>输入数据格式</label>
- <select id="inputdataformat" class="ui search dropdown" placeholder="" style='width:385px' name="inputdataformat">
- <option name="NHWC" value="NHWC">NHWC</option>
- <option name="NCHW" value="NCHW">NCHW</option>
- </select>
- </div>
- <div class="unite min_title inline field">
- <label>转换后格式</label>
- <select id="DestFormat" class="ui search dropdown" placeholder="" style='width:385px' name="DestFormat">
- <option name="ONNX" value="0">ONNX</option>
- <option name="TensorRT" value="1">TensorRT</option>
- </select>
- </div>
- <div class="unite min_title inline field">
- <label>网络输出数据类型</label>
- <select id="NetOutputFormat" class="ui search dropdown" placeholder="" style='width:385px' name="NetOutputFormat">
- <option name="FP32" value="0">FP32</option>
- <option name="FP16" value="1">FP16</option>
- </select>
- </div>
-
- <div class="unite min_title inline field" style="margin-left: 75px;">
- <button id="submitId" type="button" class="ui create_train_job green button" style="position: absolute;">
- 新建任务
- </button>
- </div>
- </form>
- <div class="actions" style="display: inline-block;margin-left: 180px;">
- <button class="ui button cancel" >{{.i18n.Tr "repo.cloudbrain.cancel"}}</button>
- </div>
- </div>
- </div>
-
- </div>
-
-
- {{template "base/footer" .}}
-
- <script>
- let repolink = {{.RepoLink}}
- let repoId = {{$repository}}
- const {_AppSubUrl, _StaticUrlPrefix, csrf} = window.config;
- $('input[name="_csrf"]').val(csrf)
-
- function createModelName(){
- let repoName = location.pathname.split('/')[2]
- let modelName = repoName + '_model_' + Math.random().toString(36).substr(2, 4)
- $('#name').val(modelName)
- $('#version').val("0.0.1")
- }
- function showcreate(obj){
- $('.ui.modal.second')
- .modal({
- centered: false,
- onShow:function(){
- $('#model_header').text("导入新模型")
- $('input[name="Version"]').addClass('model_disabled')
- $('.ui.dimmer').css({"background-color":"rgb(136, 136, 136,0.7)"})
- $("#job-name").empty()
- createModelName()
- loadTrainList()
-
- },
- onHide:function(){
- document.getElementById("formId").reset();
- $('#choice_model').dropdown('clear')
- $('#choice_version').dropdown('clear')
- $('.ui.dimmer').css({"background-color":""})
- $('.ui.error.message').text()
- $('.ui.error.message').css('display','none')
-
- }
- })
- .modal('show')
- }
-
- $(function(){
- $('#choice_model').dropdown({
- onChange:function(value){
- $(".ui.dropdown.selection.search.width70").addClass("loading")
- $('#choice_version').dropdown('clear')
- $("#job-version").empty()
- loadTrainVersion(value)
- }
- })
- })
-
- function loadTrainList(){
- $.get(`${repolink}/modelmanage/query_train_job?repoId=${repoId}`, (data) => {
-
- const n_length = data.length
- let train_html=''
- for (let i=0;i<n_length;i++){
- train_html += `<div class="item" data-value="${data[i].JobID}">${data[i].DisplayJobName}</div>`
- train_html += '</div>'
- }
- $("#job-name").append(train_html)
- $(".ui.dropdown.selection.search.width83").removeClass("loading")
- $('#choice_model .default.text').text(data[0].DisplayJobName)
- $('#choice_model input[name="JobId"]').val(data[0].JobID)
- loadTrainVersion()
-
- })
- }
- function loadTrainVersion(value){
- let JobID = !value ?$('#choice_model input[name="JobId"]').val(): value
- $.get(`${repolink}/modelmanage/query_train_job_version?JobID=${JobID}`, (data) => {
- const n_length = data.length
- let train_html=''
- for (let i=0;i<n_length;i++){
- train_html += `<div class="item" data-value="${data[i].VersionName}">${data[i].VersionName}</div>`
- train_html += '</div>'
- }
- if(data.length){
- $("#job-version").append(train_html)
- $(".ui.dropdown.selection.search.width70").removeClass("loading")
- var versionName = data[0].VersionName;
- if(versionName==null || versionName==""){
- versionName="V0001";
- }
- $('#choice_version .default.text').text(versionName)
- $('#choice_version input[name="VersionName"]').val(versionName)
- }
-
- })
- }
- </script>
|