xinference 0.14.4.post1__py3-none-any.whl → 0.15.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of xinference might be problematic. Click here for more details.
- xinference/_compat.py +51 -0
- xinference/_version.py +3 -3
- xinference/api/restful_api.py +5 -39
- xinference/client/restful/restful_client.py +3 -24
- xinference/conftest.py +1 -1
- xinference/constants.py +5 -0
- xinference/core/cache_tracker.py +1 -1
- xinference/core/chat_interface.py +8 -14
- xinference/core/event.py +1 -1
- xinference/core/model.py +82 -31
- xinference/core/scheduler.py +37 -37
- xinference/core/status_guard.py +1 -1
- xinference/core/supervisor.py +11 -10
- xinference/core/utils.py +80 -22
- xinference/core/worker.py +17 -16
- xinference/deploy/cmdline.py +8 -16
- xinference/deploy/local.py +1 -1
- xinference/deploy/supervisor.py +1 -1
- xinference/deploy/utils.py +1 -1
- xinference/deploy/worker.py +1 -1
- xinference/model/audio/cosyvoice.py +86 -41
- xinference/model/embedding/core.py +52 -31
- xinference/model/image/stable_diffusion/core.py +18 -1
- xinference/model/llm/__init__.py +21 -11
- xinference/model/llm/llama_cpp/core.py +16 -33
- xinference/model/llm/llm_family.json +619 -1297
- xinference/model/llm/llm_family.py +31 -52
- xinference/model/llm/llm_family_csghub.json +18 -35
- xinference/model/llm/llm_family_modelscope.json +573 -1119
- xinference/model/llm/lmdeploy/core.py +56 -88
- xinference/model/llm/mlx/core.py +46 -69
- xinference/model/llm/sglang/core.py +33 -18
- xinference/model/llm/transformers/chatglm.py +167 -305
- xinference/model/llm/transformers/cogvlm2.py +36 -63
- xinference/model/llm/transformers/cogvlm2_video.py +33 -223
- xinference/model/llm/transformers/core.py +49 -50
- xinference/model/llm/transformers/deepseek_vl.py +53 -96
- xinference/model/llm/transformers/glm4v.py +55 -111
- xinference/model/llm/transformers/intern_vl.py +39 -70
- xinference/model/llm/transformers/internlm2.py +32 -54
- xinference/model/llm/transformers/minicpmv25.py +22 -55
- xinference/model/llm/transformers/minicpmv26.py +158 -68
- xinference/model/llm/transformers/omnilmm.py +5 -28
- xinference/model/llm/transformers/qwen2_vl.py +208 -0
- xinference/model/llm/transformers/qwen_vl.py +34 -86
- xinference/model/llm/transformers/utils.py +32 -38
- xinference/model/llm/transformers/yi_vl.py +32 -72
- xinference/model/llm/utils.py +195 -489
- xinference/model/llm/vllm/core.py +153 -100
- xinference/model/rerank/core.py +41 -8
- xinference/model/rerank/model_spec.json +7 -0
- xinference/model/rerank/model_spec_modelscope.json +7 -1
- xinference/model/utils.py +1 -31
- xinference/thirdparty/cosyvoice/bin/export_jit.py +64 -0
- xinference/thirdparty/cosyvoice/bin/export_trt.py +8 -0
- xinference/thirdparty/cosyvoice/bin/inference.py +5 -2
- xinference/thirdparty/cosyvoice/cli/cosyvoice.py +38 -22
- xinference/thirdparty/cosyvoice/cli/model.py +139 -26
- xinference/thirdparty/cosyvoice/flow/flow.py +15 -9
- xinference/thirdparty/cosyvoice/flow/length_regulator.py +20 -1
- xinference/thirdparty/cosyvoice/hifigan/generator.py +8 -4
- xinference/thirdparty/cosyvoice/llm/llm.py +14 -13
- xinference/thirdparty/cosyvoice/transformer/attention.py +7 -3
- xinference/thirdparty/cosyvoice/transformer/decoder.py +1 -1
- xinference/thirdparty/cosyvoice/transformer/embedding.py +4 -3
- xinference/thirdparty/cosyvoice/transformer/encoder.py +4 -2
- xinference/thirdparty/cosyvoice/utils/common.py +36 -0
- xinference/thirdparty/cosyvoice/utils/file_utils.py +16 -0
- xinference/thirdparty/deepseek_vl/serve/assets/Kelpy-Codos.js +100 -0
- xinference/thirdparty/deepseek_vl/serve/assets/avatar.png +0 -0
- xinference/thirdparty/deepseek_vl/serve/assets/custom.css +355 -0
- xinference/thirdparty/deepseek_vl/serve/assets/custom.js +22 -0
- xinference/thirdparty/deepseek_vl/serve/assets/favicon.ico +0 -0
- xinference/thirdparty/deepseek_vl/serve/examples/app.png +0 -0
- xinference/thirdparty/deepseek_vl/serve/examples/chart.png +0 -0
- xinference/thirdparty/deepseek_vl/serve/examples/mirror.png +0 -0
- xinference/thirdparty/deepseek_vl/serve/examples/pipeline.png +0 -0
- xinference/thirdparty/deepseek_vl/serve/examples/puzzle.png +0 -0
- xinference/thirdparty/deepseek_vl/serve/examples/rap.jpeg +0 -0
- xinference/thirdparty/fish_speech/fish_speech/configs/base.yaml +87 -0
- xinference/thirdparty/fish_speech/fish_speech/configs/firefly_gan_vq.yaml +34 -0
- xinference/thirdparty/fish_speech/fish_speech/configs/lora/r_8_alpha_16.yaml +4 -0
- xinference/thirdparty/fish_speech/fish_speech/configs/text2semantic_finetune.yaml +83 -0
- xinference/thirdparty/fish_speech/fish_speech/datasets/protos/text-data.proto +24 -0
- xinference/thirdparty/fish_speech/fish_speech/i18n/README.md +27 -0
- xinference/thirdparty/fish_speech/fish_speech/text/chn_text_norm/.gitignore +114 -0
- xinference/thirdparty/fish_speech/fish_speech/text/chn_text_norm/README.md +36 -0
- xinference/thirdparty/fish_speech/fish_speech/webui/css/style.css +161 -0
- xinference/thirdparty/fish_speech/fish_speech/webui/html/footer.html +11 -0
- xinference/thirdparty/fish_speech/fish_speech/webui/js/animate.js +69 -0
- xinference/thirdparty/fish_speech/tools/sensevoice/README.md +59 -0
- xinference/thirdparty/matcha/VERSION +1 -0
- xinference/thirdparty/matcha/hifigan/LICENSE +21 -0
- xinference/thirdparty/matcha/hifigan/README.md +101 -0
- xinference/thirdparty/omnilmm/LICENSE +201 -0
- xinference/thirdparty/whisper/__init__.py +156 -0
- xinference/thirdparty/whisper/__main__.py +3 -0
- xinference/thirdparty/whisper/assets/gpt2.tiktoken +50256 -0
- xinference/thirdparty/whisper/assets/mel_filters.npz +0 -0
- xinference/thirdparty/whisper/assets/multilingual.tiktoken +50257 -0
- xinference/thirdparty/whisper/audio.py +157 -0
- xinference/thirdparty/whisper/decoding.py +826 -0
- xinference/thirdparty/whisper/model.py +314 -0
- xinference/thirdparty/whisper/normalizers/__init__.py +2 -0
- xinference/thirdparty/whisper/normalizers/basic.py +76 -0
- xinference/thirdparty/whisper/normalizers/english.json +1741 -0
- xinference/thirdparty/whisper/normalizers/english.py +550 -0
- xinference/thirdparty/whisper/timing.py +386 -0
- xinference/thirdparty/whisper/tokenizer.py +395 -0
- xinference/thirdparty/whisper/transcribe.py +605 -0
- xinference/thirdparty/whisper/triton_ops.py +109 -0
- xinference/thirdparty/whisper/utils.py +316 -0
- xinference/thirdparty/whisper/version.py +1 -0
- xinference/types.py +7 -49
- xinference/web/ui/build/asset-manifest.json +6 -6
- xinference/web/ui/build/index.html +1 -1
- xinference/web/ui/build/static/css/{main.4bafd904.css → main.632e9148.css} +2 -2
- xinference/web/ui/build/static/css/main.632e9148.css.map +1 -0
- xinference/web/ui/build/static/js/main.9cfafbd6.js +3 -0
- xinference/web/ui/build/static/js/{main.eb13fe95.js.LICENSE.txt → main.9cfafbd6.js.LICENSE.txt} +2 -0
- xinference/web/ui/build/static/js/main.9cfafbd6.js.map +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/01d6d198156bacbd436c51435edbd4b2cacd47a79db929105eba30f74b67d48d.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/10c69dc7a296779fcffedeff9393d832dfcb0013c36824adf623d3c518b801ff.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/59eb25f514afcc4fefd1b309d192b2455f1e0aec68a9de598ca4b2333fe2c774.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/68bede6d95bb5ef0b35bbb3ec5b8c937eaf6862c6cdbddb5ef222a7776aaf336.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/77d50223f3e734d4485cca538cb098a8c3a7a0a1a9f01f58cdda3af42fe1adf5.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/a56d5a642409a84988891089c98ca28ad0546432dfbae8aaa51bc5a280e1cdd2.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/d9ff696a3e3471f01b46c63d18af32e491eb5dc0e43cb30202c96871466df57f.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/f5039ddbeb815c51491a1989532006b96fc3ae49c6c60e3c097f875b4ae915ae.json +1 -0
- xinference/web/ui/node_modules/.package-lock.json +37 -0
- xinference/web/ui/node_modules/a-sync-waterfall/package.json +21 -0
- xinference/web/ui/node_modules/nunjucks/node_modules/commander/package.json +48 -0
- xinference/web/ui/node_modules/nunjucks/package.json +112 -0
- xinference/web/ui/package-lock.json +38 -0
- xinference/web/ui/package.json +1 -0
- {xinference-0.14.4.post1.dist-info → xinference-0.15.0.dist-info}/METADATA +8 -8
- {xinference-0.14.4.post1.dist-info → xinference-0.15.0.dist-info}/RECORD +141 -87
- xinference/model/llm/transformers/llama_2.py +0 -108
- xinference/web/ui/build/static/css/main.4bafd904.css.map +0 -1
- xinference/web/ui/build/static/js/main.eb13fe95.js +0 -3
- xinference/web/ui/build/static/js/main.eb13fe95.js.map +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/0b11a5339468c13b2d31ac085e7effe4303259b2071abd46a0a8eb8529233a5e.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/213b5913e164773c2b0567455377765715f5f07225fbac77ad8e1e9dc9648a47.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/5c26a23b5eacf5b752a08531577ae3840bb247745ef9a39583dc2d05ba93a82a.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/978b57d1a04a701bc3fcfebc511f5f274eed6ed7eade67f6fb76c27d5fd9ecc8.json +0 -1
- {xinference-0.14.4.post1.dist-info → xinference-0.15.0.dist-info}/LICENSE +0 -0
- {xinference-0.14.4.post1.dist-info → xinference-0.15.0.dist-info}/WHEEL +0 -0
- {xinference-0.14.4.post1.dist-info → xinference-0.15.0.dist-info}/entry_points.txt +0 -0
- {xinference-0.14.4.post1.dist-info → xinference-0.15.0.dist-info}/top_level.txt +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"\n}), 'Check');\nexports.default = _default;","map":{"version":3,"names":["_interopRequireDefault","require","Object","defineProperty","exports","value","default","_createSvgIcon","_jsxRuntime","_default","jsx","d"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/node_modules/@mui/icons-material/Check.js"],"sourcesContent":["\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"\n}), 'Check');\nexports.default = _default;"],"mappings":"AAAA,YAAY;AACZ,YAAY;;AAEZ,IAAIA,sBAAsB,GAAGC,OAAO,CAAC,8CAA8C,CAAC;AACpFC,MAAM,CAACC,cAAc,CAACC,OAAO,EAAE,YAAY,EAAE;EAC3CC,KAAK,EAAE;AACT,CAAC,CAAC;AACFD,OAAO,CAACE,OAAO,GAAG,KAAK,CAAC;AACxB,IAAIC,cAAc,GAAGP,sBAAsB,CAACC,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAC7E,IAAIO,WAAW,GAAGP,OAAO,CAAC,mBAAmB,CAAC;AAC9C,IAAIQ,QAAQ,GAAG,CAAC,CAAC,EAAEF,cAAc,CAACD,OAAO,GAAG,aAAa,CAAC,CAAC,EAAEE,WAAW,CAACE,GAAG,EAAE,MAAM,EAAE;EACpFC,CAAC,EAAE;AACL,CAAC,CAAC,EAAE,OAAO,CAAC;AACZP,OAAO,CAACE,OAAO,GAAGG,QAAQ","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"import _defineProperty from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/defineProperty.js\";import _toConsumableArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\";import _objectSpread from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/objectSpread2.js\";import _slicedToArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";import AddIcon from'@mui/icons-material/Add';import DeleteIcon from'@mui/icons-material/Delete';import{Alert,Box,Button,FormControlLabel,Radio,RadioGroup,TextField,Tooltip}from'@mui/material';import React,{useEffect,useState}from'react';import{jsx as _jsx}from\"react/jsx-runtime\";import{jsxs as _jsxs}from\"react/jsx-runtime\";import{Fragment as _Fragment}from\"react/jsx-runtime\";var modelFormatArr=[{value:'pytorch',label:'PyTorch'},{value:'ggufv2',label:'GGUF'},{value:'gptq',label:'GPTQ'},{value:'awq',label:'AWQ'},{value:'fp8',label:'FP8'}];var AddModelSpecs=function AddModelSpecs(_ref){var isJump=_ref.isJump,formData=_ref.formData,specsDataArr=_ref.specsDataArr,onGetArr=_ref.onGetArr,scrollRef=_ref.scrollRef;var _useState=useState(0),_useState2=_slicedToArray(_useState,2),count=_useState2[0],setCount=_useState2[1];var _useState3=useState([]),_useState4=_slicedToArray(_useState3,2),specsArr=_useState4[0],setSpecsArr=_useState4[1];var _useState5=useState([]),_useState6=_slicedToArray(_useState5,2),pathArr=_useState6[0],setPathArr=_useState6[1];var _useState7=useState([]),_useState8=_slicedToArray(_useState7,2),modelSizeAlertId=_useState8[0],setModelSizeAlertId=_useState8[1];var _useState9=useState([]),_useState10=_slicedToArray(_useState9,2),quantizationAlertId=_useState10[0],setQuantizationAlertId=_useState10[1];var _useState11=useState(false),_useState12=_slicedToArray(_useState11,2),isError=_useState12[0],setIsError=_useState12[1];var _useState13=useState(false),_useState14=_slicedToArray(_useState13,2),isAdd=_useState14[0],setIsAdd=_useState14[1];useEffect(function(){if(isJump){var dataArr=specsDataArr.map(function(item,index){var model_uri=item.model_uri,model_size_in_billions=item.model_size_in_billions,model_format=item.model_format,quantizations=item.quantizations,model_file_name_template=item.model_file_name_template;var size=model_size_in_billions;if(typeof size!=='number')size=size.split('_').join('.');return{id:index,model_uri:model_uri,model_size_in_billions:size,model_format:model_format,quantizations:quantizations,model_file_name_template:model_file_name_template};});setCount(dataArr.length);setSpecsArr(dataArr);var subPathArr=[];specsDataArr.forEach(function(item){if(item.model_format!=='ggufv2'){subPathArr.push(item.model_uri);}else{subPathArr.push(item.model_uri+'/'+item.model_file_name_template);}});setPathArr(subPathArr);}else{setSpecsArr([_objectSpread({id:count},formData)]);setCount(count+1);setPathArr([formData.model_uri]);}},[]);useEffect(function(){var arr=specsArr.map(function(item){var uri=item.model_uri,size=item.model_size_in_billions,modelFormat=item.model_format,quantizations=item.quantizations,model_file_name_template=item.model_file_name_template;var handleSize=parseInt(size)===parseFloat(size)?Number(size):size.split('.').join('_');var handleQuantization=quantizations;if(modelFormat==='pytorch'){handleQuantization=['none'];}else if(handleQuantization[0]===''&&modelFormat==='ggufv2'){handleQuantization=['default'];}return{model_uri:uri,model_size_in_billions:handleSize,model_format:modelFormat,quantizations:handleQuantization,model_file_name_template:model_file_name_template};});setIsError(true);if(modelSizeAlertId.length===0&&quantizationAlertId.length===0){setIsError(false);}onGetArr(arr,isError);isAdd&&handleScrollBottom();setIsAdd(false);},[specsArr,isError]);var handleAddSpecs=function handleAddSpecs(){setCount(count+1);var item={id:count,model_uri:'/path/to/llama-1',model_size_in_billions:7,model_format:'pytorch',quantizations:[]};setSpecsArr([].concat(_toConsumableArray(specsArr),[item]));setIsAdd(true);setPathArr([].concat(_toConsumableArray(pathArr),['/path/to/llama-1']));};var handleUpdateSpecsArr=function handleUpdateSpecsArr(index,type,newValue){if(type==='model_format'){var subPathArr=_toConsumableArray(pathArr);if(specsArr[index].model_format!=='ggufv2'){pathArr[index]=specsArr[index].model_uri;}else{pathArr[index]=specsArr[index].model_uri+'/'+specsArr[index].model_file_name_template;}setPathArr(subPathArr);}setSpecsArr(specsArr.map(function(item,subIndex){if(subIndex===index){if(type==='quantizations'){return _objectSpread(_objectSpread({},item),{},_defineProperty({},type,[newValue]));}else if(type==='model_format'){if(newValue==='ggufv2'){var _getPathComponents=getPathComponents(pathArr[index]),baseDir=_getPathComponents.baseDir,filename=_getPathComponents.filename;var obj=_objectSpread(_objectSpread({},item),{},{model_format:newValue,quantizations:[''],model_uri:baseDir,model_file_name_template:filename});return obj;}else{var _ref2;var id=item.id,model_size_in_billions=item.model_size_in_billions,model_format=item.model_format;return _ref2={id:id,model_uri:pathArr[index],model_size_in_billions:model_size_in_billions,model_format:model_format},_defineProperty(_ref2,type,newValue),_defineProperty(_ref2,\"quantizations\",['']),_ref2;}}else if(type==='model_uri'){var _subPathArr=_toConsumableArray(pathArr);_subPathArr[index]=newValue;setPathArr(_subPathArr);if(item.model_format==='ggufv2'){var _getPathComponents2=getPathComponents(newValue),_baseDir=_getPathComponents2.baseDir,_filename=_getPathComponents2.filename;var _obj=_objectSpread(_objectSpread({},item),{},{model_uri:_baseDir,model_file_name_template:_filename});return _obj;}else{return _objectSpread(_objectSpread({},item),{},_defineProperty({},type,newValue));}}else{return _objectSpread(_objectSpread({},item),{},_defineProperty({},type,newValue));}}return item;}));};var handleDeleteSpecs=function handleDeleteSpecs(index){setSpecsArr(specsArr.filter(function(_,subIndex){return index!==subIndex;}));};var getPathComponents=function getPathComponents(path){var normalizedPath=path.replace(/\\\\/g,'/');var baseDir=normalizedPath.substring(0,normalizedPath.lastIndexOf('/'));var filename=normalizedPath.substring(normalizedPath.lastIndexOf('/')+1);return{baseDir:baseDir,filename:filename};};var handleModelSize=function handleModelSize(index,value,id){setModelSizeAlertId(modelSizeAlertId.filter(function(item){return item!==id;}));handleUpdateSpecsArr(index,'model_size_in_billions',value);if(value!==''&&(!Number(value)||Number(value)<=0)){var modelSizeAlertIdArr=Array.from(new Set([].concat(_toConsumableArray(modelSizeAlertId),[id])));setModelSizeAlertId(modelSizeAlertIdArr);}};var handleQuantization=function handleQuantization(model_format,index,value,id){setQuantizationAlertId(quantizationAlertId.filter(function(item){return item!==id;}));handleUpdateSpecsArr(index,'quantizations',value);if((model_format==='gptq'||model_format==='awq'||model_format==='fp8')&&value===''){var quantizationAlertIdArr=Array.from(new Set([].concat(_toConsumableArray(quantizationAlertId),[id])));setQuantizationAlertId(quantizationAlertIdArr);}};var handleScrollBottom=function handleScrollBottom(){scrollRef.current.scrollTo({top:scrollRef.current.scrollHeight,behavior:'smooth'});};return/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"label\",{style:{marginBottom:'20px'},children:\"Model Specs\"}),/*#__PURE__*/_jsx(Button,{variant:\"contained\",size:\"small\",endIcon:/*#__PURE__*/_jsx(AddIcon,{}),className:\"addBtn\",onClick:handleAddSpecs,children:\"more\"})]}),/*#__PURE__*/_jsx(\"div\",{className:\"specs_container\",children:specsArr.map(function(item,index){return/*#__PURE__*/_jsxs(\"div\",{className:\"item\",children:[/*#__PURE__*/_jsx(\"label\",{style:{paddingLeft:5},children:\"Model Format\"}),/*#__PURE__*/_jsx(RadioGroup,{value:item.model_format,onChange:function onChange(e){handleUpdateSpecsArr(index,'model_format',e.target.value);if(e.target.value==='gptq'||e.target.value==='awq'||e.target.value==='fp8'){var quantizationAlertIdArr=Array.from(new Set([].concat(_toConsumableArray(quantizationAlertId),[item.id])));setQuantizationAlertId(quantizationAlertIdArr);}},children:/*#__PURE__*/_jsx(Box,{sx:styles.checkboxWrapper,children:modelFormatArr.map(function(item){return/*#__PURE__*/_jsx(Box,{sx:{marginLeft:'10px'},children:/*#__PURE__*/_jsx(FormControlLabel,{value:item.value,control:/*#__PURE__*/_jsx(Radio,{}),label:item.label})},item.value);})})}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"}),/*#__PURE__*/_jsx(TextField,{error:item.model_uri!==''?false:true,style:{minWidth:'60%'},label:\"Model Path\",size:\"small\",value:item.model_format!=='ggufv2'?item.model_uri:item.model_uri+'/'+item.model_file_name_template,onChange:function onChange(e){handleUpdateSpecsArr(index,'model_uri',e.target.value);},helperText:\"For PyTorch, provide the model directory. For GGUF, provide the model file path.\"}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"}),/*#__PURE__*/_jsx(TextField,{error:Number(item.model_size_in_billions)>0?false:true,label:\"Model Size in Billions\",size:\"small\",value:item.model_size_in_billions,onChange:function onChange(e){handleModelSize(index,e.target.value,item.id);}}),modelSizeAlertId.includes(item.id)&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:\"Please enter a number greater than 0.\"}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"}),item.model_format!=='pytorch'&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{style:{minWidth:'60%'},label:item.model_format==='gptq'||item.model_format==='awq'||item.model_format==='fp8'?'Quantization':'Quantization (Optional)',size:\"small\",value:item.quantizations[0],onChange:function onChange(e){handleQuantization(item.model_format,index,e.target.value,item.id);},helperText:item.model_format==='gptq'||item.model_format==='awq'||item.model_format==='fp8'?'For GPTQ/AWQ/FP8 models, please be careful to fill in the quantization corresponding to the model you want to register.':''}),item.model_format!=='ggufv2'&&quantizationAlertId.includes(item.id)&&item.quantizations[0]==''&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:\"Quantization cannot be left empty.\"})]}),specsArr.length>1&&/*#__PURE__*/_jsx(Tooltip,{title:\"Delete specs\",placement:\"top\",children:/*#__PURE__*/_jsx(\"div\",{className:\"deleteBtn\",onClick:function onClick(){return handleDeleteSpecs(index);},children:/*#__PURE__*/_jsx(DeleteIcon,{className:\"deleteIcon\"})})})]},item.id);})})]});};export default AddModelSpecs;var styles={baseFormControl:{width:'100%',margin:'normal',size:'small'},checkboxWrapper:{display:'flex',flexWrap:'wrap',alignItems:'center',width:'100%'}};","map":{"version":3,"names":["AddIcon","DeleteIcon","Alert","Box","Button","FormControlLabel","Radio","RadioGroup","TextField","Tooltip","React","useEffect","useState","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","modelFormatArr","value","label","AddModelSpecs","_ref","isJump","formData","specsDataArr","onGetArr","scrollRef","_useState","_useState2","_slicedToArray","count","setCount","_useState3","_useState4","specsArr","setSpecsArr","_useState5","_useState6","pathArr","setPathArr","_useState7","_useState8","modelSizeAlertId","setModelSizeAlertId","_useState9","_useState10","quantizationAlertId","setQuantizationAlertId","_useState11","_useState12","isError","setIsError","_useState13","_useState14","isAdd","setIsAdd","dataArr","map","item","index","model_uri","model_size_in_billions","model_format","quantizations","model_file_name_template","size","split","join","id","length","subPathArr","forEach","push","_objectSpread","arr","uri","modelFormat","handleSize","parseInt","parseFloat","Number","handleQuantization","handleScrollBottom","handleAddSpecs","concat","_toConsumableArray","handleUpdateSpecsArr","type","newValue","subIndex","_defineProperty","_getPathComponents","getPathComponents","baseDir","filename","obj","_ref2","_getPathComponents2","handleDeleteSpecs","filter","_","path","normalizedPath","replace","substring","lastIndexOf","handleModelSize","modelSizeAlertIdArr","Array","from","Set","quantizationAlertIdArr","current","scrollTo","top","scrollHeight","behavior","children","style","marginBottom","variant","endIcon","className","onClick","paddingLeft","onChange","e","target","sx","styles","checkboxWrapper","marginLeft","control","padding","error","minWidth","helperText","includes","severity","title","placement","baseFormControl","width","margin","display","flexWrap","alignItems"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/scenes/register_model/components/addModelSpecs.js"],"sourcesContent":["import AddIcon from '@mui/icons-material/Add'\nimport DeleteIcon from '@mui/icons-material/Delete'\nimport {\n Alert,\n Box,\n Button,\n FormControlLabel,\n Radio,\n RadioGroup,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport React, { useEffect, useState } from 'react'\n\nconst modelFormatArr = [\n { value: 'pytorch', label: 'PyTorch' },\n { value: 'ggufv2', label: 'GGUF' },\n { value: 'gptq', label: 'GPTQ' },\n { value: 'awq', label: 'AWQ' },\n { value: 'fp8', label: 'FP8' },\n]\n\nconst AddModelSpecs = ({\n isJump,\n formData,\n specsDataArr,\n onGetArr,\n scrollRef,\n}) => {\n const [count, setCount] = useState(0)\n const [specsArr, setSpecsArr] = useState([])\n const [pathArr, setPathArr] = useState([])\n const [modelSizeAlertId, setModelSizeAlertId] = useState([])\n const [quantizationAlertId, setQuantizationAlertId] = useState([])\n const [isError, setIsError] = useState(false)\n const [isAdd, setIsAdd] = useState(false)\n\n useEffect(() => {\n if (isJump) {\n const dataArr = specsDataArr.map((item, index) => {\n const {\n model_uri,\n model_size_in_billions,\n model_format,\n quantizations,\n model_file_name_template,\n } = item\n let size = model_size_in_billions\n if (typeof size !== 'number') size = size.split('_').join('.')\n\n return {\n id: index,\n model_uri,\n model_size_in_billions: size,\n model_format,\n quantizations,\n model_file_name_template,\n }\n })\n setCount(dataArr.length)\n setSpecsArr(dataArr)\n\n const subPathArr = []\n specsDataArr.forEach((item) => {\n if (item.model_format !== 'ggufv2') {\n subPathArr.push(item.model_uri)\n } else {\n subPathArr.push(item.model_uri + '/' + item.model_file_name_template)\n }\n })\n setPathArr(subPathArr)\n } else {\n setSpecsArr([\n {\n id: count,\n ...formData,\n },\n ])\n setCount(count + 1)\n setPathArr([formData.model_uri])\n }\n }, [])\n\n useEffect(() => {\n const arr = specsArr.map((item) => {\n const {\n model_uri: uri,\n model_size_in_billions: size,\n model_format: modelFormat,\n quantizations,\n model_file_name_template,\n } = item\n const handleSize =\n parseInt(size) === parseFloat(size)\n ? Number(size)\n : size.split('.').join('_')\n\n let handleQuantization = quantizations\n if (modelFormat === 'pytorch') {\n handleQuantization = ['none']\n } else if (handleQuantization[0] === '' && modelFormat === 'ggufv2') {\n handleQuantization = ['default']\n }\n\n return {\n model_uri: uri,\n model_size_in_billions: handleSize,\n model_format: modelFormat,\n quantizations: handleQuantization,\n model_file_name_template,\n }\n })\n setIsError(true)\n if (modelSizeAlertId.length === 0 && quantizationAlertId.length === 0) {\n setIsError(false)\n }\n onGetArr(arr, isError)\n isAdd && handleScrollBottom()\n setIsAdd(false)\n }, [specsArr, isError])\n\n const handleAddSpecs = () => {\n setCount(count + 1)\n const item = {\n id: count,\n model_uri: '/path/to/llama-1',\n model_size_in_billions: 7,\n model_format: 'pytorch',\n quantizations: [],\n }\n setSpecsArr([...specsArr, item])\n setIsAdd(true)\n setPathArr([...pathArr, '/path/to/llama-1'])\n }\n\n const handleUpdateSpecsArr = (index, type, newValue) => {\n if (type === 'model_format') {\n const subPathArr = [...pathArr]\n if (specsArr[index].model_format !== 'ggufv2') {\n pathArr[index] = specsArr[index].model_uri\n } else {\n pathArr[index] =\n specsArr[index].model_uri +\n '/' +\n specsArr[index].model_file_name_template\n }\n setPathArr(subPathArr)\n }\n\n setSpecsArr(\n specsArr.map((item, subIndex) => {\n if (subIndex === index) {\n if (type === 'quantizations') {\n return { ...item, [type]: [newValue] }\n } else if (type === 'model_format') {\n if (newValue === 'ggufv2') {\n const { baseDir, filename } = getPathComponents(pathArr[index])\n const obj = {\n ...item,\n model_format: newValue,\n quantizations: [''],\n model_uri: baseDir,\n model_file_name_template: filename,\n }\n return obj\n } else {\n const { id, model_size_in_billions, model_format } = item\n return {\n id,\n model_uri: pathArr[index],\n model_size_in_billions,\n model_format,\n [type]: newValue,\n quantizations: [''],\n }\n }\n } else if (type === 'model_uri') {\n const subPathArr = [...pathArr]\n subPathArr[index] = newValue\n setPathArr(subPathArr)\n if (item.model_format === 'ggufv2') {\n const { baseDir, filename } = getPathComponents(newValue)\n const obj = {\n ...item,\n model_uri: baseDir,\n model_file_name_template: filename,\n }\n return obj\n } else {\n return { ...item, [type]: newValue }\n }\n } else {\n return { ...item, [type]: newValue }\n }\n }\n return item\n })\n )\n }\n\n const handleDeleteSpecs = (index) => {\n setSpecsArr(specsArr.filter((_, subIndex) => index !== subIndex))\n }\n\n const getPathComponents = (path) => {\n const normalizedPath = path.replace(/\\\\/g, '/')\n const baseDir = normalizedPath.substring(0, normalizedPath.lastIndexOf('/'))\n const filename = normalizedPath.substring(\n normalizedPath.lastIndexOf('/') + 1\n )\n return { baseDir, filename }\n }\n\n const handleModelSize = (index, value, id) => {\n setModelSizeAlertId(modelSizeAlertId.filter((item) => item !== id))\n handleUpdateSpecsArr(index, 'model_size_in_billions', value)\n if (value !== '' && (!Number(value) || Number(value) <= 0)) {\n const modelSizeAlertIdArr = Array.from(new Set([...modelSizeAlertId, id]))\n setModelSizeAlertId(modelSizeAlertIdArr)\n }\n }\n\n const handleQuantization = (model_format, index, value, id) => {\n setQuantizationAlertId(quantizationAlertId.filter((item) => item !== id))\n handleUpdateSpecsArr(index, 'quantizations', value)\n if (\n (model_format === 'gptq' ||\n model_format === 'awq' ||\n model_format === 'fp8') &&\n value === ''\n ) {\n const quantizationAlertIdArr = Array.from(\n new Set([...quantizationAlertId, id])\n )\n setQuantizationAlertId(quantizationAlertIdArr)\n }\n }\n\n const handleScrollBottom = () => {\n scrollRef.current.scrollTo({\n top: scrollRef.current.scrollHeight,\n behavior: 'smooth',\n })\n }\n\n return (\n <>\n <div>\n <label style={{ marginBottom: '20px' }}>Model Specs</label>\n <Button\n variant=\"contained\"\n size=\"small\"\n endIcon={<AddIcon />}\n className=\"addBtn\"\n onClick={handleAddSpecs}\n >\n more\n </Button>\n </div>\n <div className=\"specs_container\">\n {specsArr.map((item, index) => (\n <div className=\"item\" key={item.id}>\n <label\n style={{\n paddingLeft: 5,\n }}\n >\n Model Format\n </label>\n <RadioGroup\n value={item.model_format}\n onChange={(e) => {\n handleUpdateSpecsArr(index, 'model_format', e.target.value)\n if (\n e.target.value === 'gptq' ||\n e.target.value === 'awq' ||\n e.target.value === 'fp8'\n ) {\n const quantizationAlertIdArr = Array.from(\n new Set([...quantizationAlertId, item.id])\n )\n setQuantizationAlertId(quantizationAlertIdArr)\n }\n }}\n >\n <Box sx={styles.checkboxWrapper}>\n {modelFormatArr.map((item) => (\n <Box key={item.value} sx={{ marginLeft: '10px' }}>\n <FormControlLabel\n value={item.value}\n control={<Radio />}\n label={item.label}\n />\n </Box>\n ))}\n </Box>\n </RadioGroup>\n <Box padding=\"15px\"></Box>\n\n <TextField\n error={item.model_uri !== '' ? false : true}\n style={{ minWidth: '60%' }}\n label=\"Model Path\"\n size=\"small\"\n value={\n item.model_format !== 'ggufv2'\n ? item.model_uri\n : item.model_uri + '/' + item.model_file_name_template\n }\n onChange={(e) => {\n handleUpdateSpecsArr(index, 'model_uri', e.target.value)\n }}\n helperText=\"For PyTorch, provide the model directory. For GGUF, provide the model file path.\"\n />\n <Box padding=\"15px\"></Box>\n\n <TextField\n error={Number(item.model_size_in_billions) > 0 ? false : true}\n label=\"Model Size in Billions\"\n size=\"small\"\n value={item.model_size_in_billions}\n onChange={(e) => {\n handleModelSize(index, e.target.value, item.id)\n }}\n />\n {modelSizeAlertId.includes(item.id) && (\n <Alert severity=\"error\">\n Please enter a number greater than 0.\n </Alert>\n )}\n <Box padding=\"15px\"></Box>\n\n {item.model_format !== 'pytorch' && (\n <>\n <TextField\n style={{ minWidth: '60%' }}\n label={\n item.model_format === 'gptq' ||\n item.model_format === 'awq' ||\n item.model_format === 'fp8'\n ? 'Quantization'\n : 'Quantization (Optional)'\n }\n size=\"small\"\n value={item.quantizations[0]}\n onChange={(e) => {\n handleQuantization(\n item.model_format,\n index,\n e.target.value,\n item.id\n )\n }}\n helperText={\n item.model_format === 'gptq' ||\n item.model_format === 'awq' ||\n item.model_format === 'fp8'\n ? 'For GPTQ/AWQ/FP8 models, please be careful to fill in the quantization corresponding to the model you want to register.'\n : ''\n }\n />\n {item.model_format !== 'ggufv2' &&\n quantizationAlertId.includes(item.id) &&\n item.quantizations[0] == '' && (\n <Alert severity=\"error\">\n Quantization cannot be left empty.\n </Alert>\n )}\n </>\n )}\n\n {specsArr.length > 1 && (\n <Tooltip title=\"Delete specs\" placement=\"top\">\n <div\n className=\"deleteBtn\"\n onClick={() => handleDeleteSpecs(index)}\n >\n <DeleteIcon className=\"deleteIcon\" />\n </div>\n </Tooltip>\n )}\n </div>\n ))}\n </div>\n </>\n )\n}\n\nexport default AddModelSpecs\n\nconst styles = {\n baseFormControl: {\n width: '100%',\n margin: 'normal',\n size: 'small',\n },\n checkboxWrapper: {\n display: 'flex',\n flexWrap: 'wrap',\n alignItems: 'center',\n width: '100%',\n },\n}\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"import _toConsumableArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\";import _defineProperty from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/defineProperty.js\";import _objectSpread from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/objectSpread2.js\";import _regeneratorRuntime from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js\";import _asyncToGenerator from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";import _slicedToArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";import'./styles/registerModelStyle.css';import CheckIcon from'@mui/icons-material/Check';import KeyboardDoubleArrowRightIcon from'@mui/icons-material/KeyboardDoubleArrowRight';import NotesIcon from'@mui/icons-material/Notes';import{Alert,Box,Button,Checkbox,Chip,FormControl,FormControlLabel,InputLabel,MenuItem,Radio,RadioGroup,Select,Stack,Switch,TextField,Tooltip}from'@mui/material';import React,{useContext,useEffect,useRef,useState}from'react';import{useCookies}from'react-cookie';import{useNavigate,useParams}from'react-router-dom';import{ApiContext}from'../../components/apiContext';import CopyComponent from'../../components/copyComponent/copyComponent';import fetchWrapper from'../../components/fetchWrapper';import{isValidBearerToken}from'../../components/utils';import AddControlnet from'./components/addControlnet';import AddModelSpecs from'./components/addModelSpecs';import languages from'./data/languages';import{jsx as _jsx}from\"react/jsx-runtime\";import{jsxs as _jsxs}from\"react/jsx-runtime\";import{Fragment as _Fragment}from\"react/jsx-runtime\";var SUPPORTED_LANGUAGES_DICT={en:'English',zh:'Chinese'};var SUPPORTED_FEATURES=['Generate','Chat','Vision'];// Convert dictionary of supported languages into list\nvar SUPPORTED_LANGUAGES=Object.keys(SUPPORTED_LANGUAGES_DICT);var RegisterModelComponent=function RegisterModelComponent(_ref){var modelType=_ref.modelType,customData=_ref.customData;var endPoint=useContext(ApiContext).endPoint;var _useContext=useContext(ApiContext),setErrorMsg=_useContext.setErrorMsg;var _useState=useState(customData),_useState2=_slicedToArray(_useState,2),formData=_useState2[0],setFormData=_useState2[1];var _useState3=useState([]),_useState4=_slicedToArray(_useState3,2),promptStyles=_useState4[0],setPromptStyles=_useState4[1];var _useState5=useState({chat:[],generate:[]}),_useState6=_slicedToArray(_useState5,2),family=_useState6[0],setFamily=_useState6[1];var _useState7=useState([]),_useState8=_slicedToArray(_useState7,2),languagesArr=_useState8[0],setLanguagesArr=_useState8[1];var _useState9=useState(false),_useState10=_slicedToArray(_useState9,2),isContextLengthAlert=_useState10[0],setIsContextLengthAlert=_useState10[1];var _useState11=useState(false),_useState12=_slicedToArray(_useState11,2),isDimensionsAlert=_useState12[0],setIsDimensionsAlert=_useState12[1];var _useState13=useState(false),_useState14=_slicedToArray(_useState13,2),isMaxTokensAlert=_useState14[0],setIsMaxTokensAlert=_useState14[1];var _useState15=useState(''),_useState16=_slicedToArray(_useState15,2),jsonData=_useState16[0],setJsonData=_useState16[1];var _useState17=useState(false),_useState18=_slicedToArray(_useState17,2),isSpecsArrError=_useState18[0],setIsSpecsArrError=_useState18[1];var _useState19=useState(false),_useState20=_slicedToArray(_useState19,2),isValidLauncherArgsAlert=_useState20[0],setIsValidLauncherArgsAlert=_useState20[1];var scrollRef=useRef(null);var _useCookies=useCookies(['token']),_useCookies2=_slicedToArray(_useCookies,1),cookie=_useCookies2[0];var navigate=useNavigate();var _useParams=useParams(),registerModelType=_useParams.registerModelType,model_name=_useParams.model_name;var _useState21=useState(model_name?true:false),_useState22=_slicedToArray(_useState21,2),isShow=_useState22[0],setIsShow=_useState22[1];var _useState23=useState(model_name?JSON.parse(sessionStorage.getItem('customJsonData')).model_specs:[]),_useState24=_slicedToArray(_useState23,2),specsArr=_useState24[0],setSpecsArr=_useState24[1];var _useState25=useState(model_name?JSON.parse(sessionStorage.getItem('customJsonData')).controlnet:[]),_useState26=_slicedToArray(_useState25,2),controlnetArr=_useState26[0],setControlnetArr=_useState26[1];var _useState27=useState({}),_useState28=_slicedToArray(_useState27,2),contrastObj=_useState28[0],setContrastObj=_useState28[1];var _useState29=useState(true),_useState30=_slicedToArray(_useState29,2),isEqual=_useState30[0],setIsEqual=_useState30[1];useEffect(function(){if(model_name){var data=JSON.parse(sessionStorage.getItem('customJsonData'));if(modelType==='LLM'){var lagArr=data.model_lang.filter(function(item){return item!=='en'&&item!=='zh';});setLanguagesArr(lagArr);var version=data.version,_model_name=data.model_name,model_description=data.model_description,context_length=data.context_length,model_lang=data.model_lang,model_ability=data.model_ability,model_family=data.model_family,model_specs=data.model_specs,prompt_style=data.prompt_style;var specsDataArr=model_specs.map(function(item){var model_uri=item.model_uri,model_size_in_billions=item.model_size_in_billions,model_format=item.model_format,quantizations=item.quantizations,model_file_name_template=item.model_file_name_template;return{model_uri:model_uri,model_size_in_billions:model_size_in_billions,model_format:model_format,quantizations:quantizations,model_file_name_template:model_file_name_template};});var llmData={version:version,model_name:_model_name,model_description:model_description,context_length:context_length,model_lang:model_lang,model_ability:model_ability,model_family:model_family,model_specs:specsDataArr};prompt_style?llmData.prompt_style=prompt_style:'';setFormData(llmData);setContrastObj(llmData);setSpecsArr(specsDataArr);}else{if(modelType==='embedding'){var _lagArr=data.language.filter(function(item){return item!=='en'&&item!=='zh';});setLanguagesArr(_lagArr);var _model_name2=data.model_name,dimensions=data.dimensions,max_tokens=data.max_tokens,model_uri=data.model_uri,language=data.language;var embeddingData={model_name:_model_name2,dimensions:dimensions,max_tokens:max_tokens,model_uri:model_uri,language:language};setFormData(embeddingData);setContrastObj(embeddingData);}else if(modelType==='rerank'){var _lagArr2=data.language.filter(function(item){return item!=='en'&&item!=='zh';});setLanguagesArr(_lagArr2);var _model_name3=data.model_name,_model_uri=data.model_uri,_language=data.language;var rerankData={model_name:_model_name3,model_uri:_model_uri,language:_language};setFormData(rerankData);setContrastObj(rerankData);}else if(modelType==='image'){var _model_name4=data.model_name,_model_uri2=data.model_uri,_model_family=data.model_family,controlnet=data.controlnet;var _controlnetArr=controlnet.map(function(item){var model_name=item.model_name,model_uri=item.model_uri,model_family=item.model_family;return{model_name:model_name,model_uri:model_uri,model_family:model_family};});var imageData={model_name:_model_name4,model_uri:_model_uri2,model_family:_model_family,controlnet:_controlnetArr};setFormData(imageData);setContrastObj(imageData);setControlnetArr(_controlnetArr);}else if(modelType==='audio'){var _model_name5=data.model_name,_model_uri3=data.model_uri,multilingual=data.multilingual,_model_family2=data.model_family;var audioData={model_name:_model_name5,model_uri:_model_uri3,multilingual:multilingual,model_family:_model_family2};setFormData(audioData);setContrastObj(audioData);}else if(modelType==='flexible'){var _model_name6=data.model_name,_model_uri4=data.model_uri,_model_description=data.model_description,launcher=data.launcher,launcher_args=data.launcher_args;var flexibleData={model_name:_model_name6,model_uri:_model_uri4,model_description:_model_description,launcher:launcher,launcher_args:launcher_args};setFormData(flexibleData);setContrastObj(flexibleData);}}}},[model_name]);useEffect(function(){if(sessionStorage.getItem('auth')==='true'&&!isValidBearerToken(sessionStorage.getItem('token'))&&!isValidBearerToken(cookie.token)){navigate('/login',{replace:true});return;}var getBuiltinFamilies=/*#__PURE__*/function(){var _ref2=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(){var response,errorData,data;return _regeneratorRuntime().wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return fetch(endPoint+'/v1/models/families',{method:'GET',headers:{'Content-Type':'application/json'}});case 2:response=_context.sent;if(response.ok){_context.next=10;break;}_context.next=6;return response.json();case 6:errorData=_context.sent;// Assuming the server returns error details in JSON format\nsetErrorMsg(\"Server error: \".concat(response.status,\" - \").concat(errorData.detail||'Unknown error'));_context.next=16;break;case 10:_context.next=12;return response.json();case 12:data=_context.sent;data.chat.push('other');data.generate.push('other');setFamily(data);case 16:case\"end\":return _context.stop();}},_callee);}));return function getBuiltinFamilies(){return _ref2.apply(this,arguments);};}();var getBuiltInPromptStyles=/*#__PURE__*/function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(){var response,errorData,data,res,key,v;return _regeneratorRuntime().wrap(function _callee2$(_context2){while(1)switch(_context2.prev=_context2.next){case 0:_context2.next=2;return fetch(endPoint+'/v1/models/prompts',{method:'GET',headers:{'Content-Type':'application/json'}});case 2:response=_context2.sent;if(response.ok){_context2.next=10;break;}_context2.next=6;return response.json();case 6:errorData=_context2.sent;// Assuming the server returns error details in JSON format\nsetErrorMsg(\"Server error: \".concat(response.status,\" - \").concat(errorData.detail||'Unknown error'));_context2.next=16;break;case 10:_context2.next=12;return response.json();case 12:data=_context2.sent;res=[];for(key in data){v=data[key];v['name']=key;res.push(v);}setPromptStyles(res);case 16:case\"end\":return _context2.stop();}},_callee2);}));return function getBuiltInPromptStyles(){return _ref3.apply(this,arguments);};}();if(Object.prototype.hasOwnProperty.call(customData,'model_ability')&&Object.prototype.hasOwnProperty.call(customData,'model_family')){// avoid keep requesting backend to get prompts\nif(promptStyles.length===0){getBuiltInPromptStyles().catch(function(error){setErrorMsg(error.message||'An unexpected error occurred when getting builtin prompt styles.');console.error('Error: ',error);});}if(family.chat.length===0){getBuiltinFamilies().catch(function(error){setErrorMsg(error.message||'An unexpected error occurred when getting builtin prompt styles.');console.error('Error: ',error);});}}},[cookie.token]);useEffect(function(){setJsonData(JSON.stringify(formData,null,4));if(contrastObj.model_name){deepEqual(contrastObj,formData)?setIsEqual(true):setIsEqual(false);}},[formData]);var getFamilyByAbility=function getFamilyByAbility(){if(formData.model_ability.includes('chat')||formData.model_ability.includes('vision')){return family.chat;}else{return family.generate;}};var sortStringsByFirstLetter=function sortStringsByFirstLetter(arr){return arr.sort(function(a,b){var firstCharA=a.charAt(0).toLowerCase();var firstCharB=b.charAt(0).toLowerCase();if(firstCharA<firstCharB){return-1;}if(firstCharA>firstCharB){return 1;}return 0;});};var handleClick=/*#__PURE__*/function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(){var key,type;return _regeneratorRuntime().wrap(function _callee3$(_context3){while(1)switch(_context3.prev=_context3.next){case 0:console.log('formData',modelType,formData);_context3.t0=_regeneratorRuntime().keys(formData);case 2:if((_context3.t1=_context3.t0()).done){_context3.next=10;break;}key=_context3.t1.value;type=Object.prototype.toString.call(formData[key]).slice(8,-1);if(!(key!=='model_description'&&(type==='Array'&&key!=='controlnet'&&formData[key].length===0||type==='String'&&formData[key]===''||type==='Number'&&formData[key]<=0))){_context3.next=8;break;}setErrorMsg('Please fill in valid value for all fields');return _context3.abrupt(\"return\");case 8:_context3.next=2;break;case 10:if(!(isSpecsArrError||isContextLengthAlert||isDimensionsAlert||isMaxTokensAlert)){_context3.next=13;break;}setErrorMsg('Please fill in valid value for all fields');return _context3.abrupt(\"return\");case 13:try{fetchWrapper.post(\"/v1/model_registrations/\".concat(modelType),{model:JSON.stringify(formData),persist:true}).then(function(){navigate(\"/launch_model/custom/\".concat(modelType.toLowerCase()));sessionStorage.setItem('modelType','/launch_model/custom/llm');sessionStorage.setItem('subType',\"/launch_model/custom/\".concat(modelType.toLowerCase()));}).catch(function(error){console.error('Error:',error);if(error.response.status!==403&&error.response.status!==401){setErrorMsg(error.message);}});}catch(error){console.error('There was a problem with the fetch operation:',error);setErrorMsg(error.message||'An unexpected error occurred.');}case 14:case\"end\":return _context3.stop();}},_callee3);}));return function handleClick(){return _ref4.apply(this,arguments);};}();var handleNumber=function handleNumber(value,parameterName){setIsContextLengthAlert(false);setIsDimensionsAlert(false);setIsMaxTokensAlert(false);setFormData(_objectSpread(_objectSpread({},formData),{},_defineProperty({},parameterName,value)));if(value!==''&&(!Number(value)||Number(value)<=0||parseInt(value)!==parseFloat(value))){parameterName==='context_length'?setIsContextLengthAlert(true):'';parameterName==='dimensions'?setIsDimensionsAlert(true):'';parameterName==='max_tokens'?setIsMaxTokensAlert(true):'';}else if(value!==''){setFormData(_objectSpread(_objectSpread({},formData),{},_defineProperty({},parameterName,Number(value))));}};var toggleLanguage=function toggleLanguage(lang){if(modelType==='LLM'){if(formData.model_lang.includes(lang)){setFormData(_objectSpread(_objectSpread({},formData),{},{model_lang:formData.model_lang.filter(function(l){return l!==lang;})}));}else{setFormData(_objectSpread(_objectSpread({},formData),{},{model_lang:[].concat(_toConsumableArray(formData.model_lang),[lang])}));}}else{if(formData.language.includes(lang)){setFormData(_objectSpread(_objectSpread({},formData),{},{language:formData.language.filter(function(l){return l!==lang;})}));}else{setFormData(_objectSpread(_objectSpread({},formData),{},{language:[].concat(_toConsumableArray(formData.language),[lang])}));}}};var toggleAbility=function toggleAbility(ability){if(formData.model_ability.includes(ability)){var obj=JSON.parse(JSON.stringify(formData));if(ability==='chat'){delete obj.prompt_style;}setFormData(_objectSpread(_objectSpread({},obj),{},{model_ability:formData.model_ability.filter(function(a){return a!==ability;}),model_family:''}));}else{setFormData(_objectSpread(_objectSpread({},formData),{},{model_ability:[].concat(_toConsumableArray(formData.model_ability),[ability]),model_family:''}));}};var toggleFamily=function toggleFamily(value){var ps=promptStyles.find(function(item){return item.name===value;});if(formData.model_ability.includes('chat')&&ps){var _ps$stop,_ps$stop_token_ids;var prompt_style={style_name:ps.style_name,system_prompt:ps.system_prompt,roles:ps.roles,intra_message_sep:ps.intra_message_sep,inter_message_sep:ps.inter_message_sep,stop:(_ps$stop=ps.stop)!==null&&_ps$stop!==void 0?_ps$stop:null,stop_token_ids:(_ps$stop_token_ids=ps.stop_token_ids)!==null&&_ps$stop_token_ids!==void 0?_ps$stop_token_ids:null};setFormData(_objectSpread(_objectSpread({},formData),{},{model_family:value,prompt_style:prompt_style}));}else{var version=formData.version,_model_name7=formData.model_name,model_description=formData.model_description,context_length=formData.context_length,model_lang=formData.model_lang,model_ability=formData.model_ability,model_specs=formData.model_specs;setFormData({version:version,model_name:_model_name7,model_description:model_description,context_length:context_length,model_lang:model_lang,model_ability:model_ability,model_family:value,model_specs:model_specs});}};var handleSelectLanguages=function handleSelectLanguages(value){var arr=[].concat(_toConsumableArray(languagesArr),[value]);setLanguagesArr(arr);if(modelType==='LLM'){setFormData(_objectSpread(_objectSpread({},formData),{},{model_lang:Array.from(new Set([].concat(_toConsumableArray(formData.model_lang),_toConsumableArray(arr))))}));}else{setFormData(_objectSpread(_objectSpread({},formData),{},{language:Array.from(new Set([].concat(_toConsumableArray(formData.language),_toConsumableArray(arr))))}));}};var handleDeleteLanguages=function handleDeleteLanguages(item){var arr=languagesArr.filter(function(subItem){return subItem!==item;});setLanguagesArr(arr);if(modelType==='LLM'){setFormData(_objectSpread(_objectSpread({},formData),{},{model_lang:formData.model_lang.filter(function(subItem){return subItem!==item;})}));}else{setFormData(_objectSpread(_objectSpread({},formData),{},{language:formData.language.filter(function(subItem){return subItem!==item;})}));}};var getSpecsArr=function getSpecsArr(arr,isSpecsArrError){setFormData(_objectSpread(_objectSpread({},formData),{},{model_specs:arr}));setIsSpecsArrError(isSpecsArrError);};var getControlnetArr=function getControlnetArr(arr){setFormData(_objectSpread(_objectSpread({},formData),{},{controlnet:arr}));};var handleCancel=function handleCancel(){navigate(\"/launch_model/custom/\".concat(registerModelType));};var handleEdit=function handleEdit(){fetchWrapper.delete(\"/v1/model_registrations/\".concat(registerModelType==='llm'?'LLM':registerModelType,\"/\").concat(model_name)).then(function(){return handleClick();}).catch(function(error){console.error('Error:',error);if(error.response.status!==403&&error.response.status!==401){setErrorMsg(error.message);}});};var deepEqual=function deepEqual(obj1,obj2){if(obj1===obj2)return true;if(typeof obj1!=='object'||typeof obj2!=='object'||obj1==null||obj2==null){return false;}var keysA=Object.keys(obj1);var keysB=Object.keys(obj2);if(keysA.length!==keysB.length)return false;for(var _i=0,_keysA=keysA;_i<_keysA.length;_i++){var key=_keysA[_i];if(!keysB.includes(key)||!deepEqual(obj1[key],obj2[key])){return false;}}return true;};return/*#__PURE__*/_jsxs(Box,{style:{display:'flex',overFlow:'hidden',maxWidth:'100%'},children:[/*#__PURE__*/_jsxs(\"div\",{className:\"show-json\",children:[/*#__PURE__*/_jsx(\"p\",{children:\"Show custom json config used by api\"}),isShow?/*#__PURE__*/_jsx(Tooltip,{title:\"Pack up\",placement:\"top\",children:/*#__PURE__*/_jsx(KeyboardDoubleArrowRightIcon,{className:\"icon arrow\",onClick:function onClick(){return setIsShow(!isShow);}})}):/*#__PURE__*/_jsx(Tooltip,{title:\"Unfold\",placement:\"top\",children:/*#__PURE__*/_jsx(NotesIcon,{className:\"icon notes\",onClick:function onClick(){return setIsShow(!isShow);}})})]}),/*#__PURE__*/_jsxs(\"div\",{ref:scrollRef,className:isShow?'formBox':'formBox broaden',children:[/*#__PURE__*/_jsxs(FormControl,{style:{width:'100%'},children:[customData.model_name&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Model Name\",error:formData.model_name?false:true,value:formData.model_name,size:\"small\",helperText:\"Alphanumeric characters with properly placed hyphens and underscores. Must not match any built-in model names.\",onChange:function onChange(event){return setFormData(_objectSpread(_objectSpread({},formData),{},{model_name:event.target.value}));}}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.model_description&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Model Description (Optional)\",value:formData.model_description,size:\"small\",onChange:function onChange(event){return setFormData(_objectSpread(_objectSpread({},formData),{},{model_description:event.target.value}));}}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.context_length&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{error:Number(formData.context_length)>0?false:true,label:\"Context Length\",value:formData.context_length,size:\"small\",onChange:function onChange(event){handleNumber(event.target.value,'context_length');}}),isContextLengthAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:\"Please enter an integer greater than 0.\"}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.dimensions&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Dimensions\",error:Number(formData.dimensions)>0?false:true,value:formData.dimensions,size:\"small\",onChange:function onChange(event){handleNumber(event.target.value,'dimensions');}}),isDimensionsAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:\"Please enter an integer greater than 0.\"}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.max_tokens&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Max Tokens\",error:Number(formData.max_tokens)>0?false:true,value:formData.max_tokens,size:\"small\",onChange:function onChange(event){handleNumber(event.target.value,'max_tokens');}}),isMaxTokensAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:\"Please enter an integer greater than 0.\"}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.model_uri&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Model Path\",error:formData.model_uri?false:true,value:formData.model_uri,size:\"small\",helperText:\"Provide the model directory path.\",onChange:function onChange(event){return setFormData(_objectSpread(_objectSpread({},formData),{},{model_uri:event.target.value}));}}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),(customData.model_lang||customData.language)&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"label\",{style:{paddingLeft:5,color:modelType==='LLM'?formData.model_lang.length===0?'#d32f2f':'inherit':formData.language.length===0?'#d32f2f':'inherit'},children:\"Model Languages\"}),/*#__PURE__*/_jsxs(Box,{className:\"checkboxWrapper\",children:[SUPPORTED_LANGUAGES.map(function(lang){return/*#__PURE__*/_jsx(Box,{sx:{marginRight:'10px'},children:/*#__PURE__*/_jsx(FormControlLabel,{control:/*#__PURE__*/_jsx(Checkbox,{checked:modelType==='LLM'?formData.model_lang.includes(lang):formData.language.includes(lang),onChange:function onChange(){return toggleLanguage(lang);},name:lang}),label:SUPPORTED_LANGUAGES_DICT[lang],style:{paddingLeft:10}})},lang);}),/*#__PURE__*/_jsxs(FormControl,{sx:{m:1,minWidth:120},size:\"small\",children:[/*#__PURE__*/_jsx(InputLabel,{children:\"Languages\"}),/*#__PURE__*/_jsx(Select,{value:'',label:\"Languages\",onChange:function onChange(e){return handleSelectLanguages(e.target.value);},MenuProps:{PaperProps:{style:{maxHeight:'20vh'}}},children:languages.filter(function(item){return!languagesArr.includes(item.code);}).map(function(item){return/*#__PURE__*/_jsx(MenuItem,{value:item.code,children:item.code},item.code);})})]})]}),/*#__PURE__*/_jsx(Stack,{direction:\"row\",spacing:1,style:{marginLeft:'10px'},children:languagesArr.map(function(item){return/*#__PURE__*/_jsx(Chip,{label:item,variant:\"outlined\",size:\"small\",color:\"primary\",onDelete:function onDelete(){return handleDeleteLanguages(item);}},item);})}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),'multilingual'in customData&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"label\",{style:{paddingLeft:5},children:\"Multilingual\"}),/*#__PURE__*/_jsx(FormControlLabel,{style:{marginLeft:0,width:50},control:/*#__PURE__*/_jsx(Switch,{checked:formData.multilingual}),onChange:function onChange(e){return setFormData(_objectSpread(_objectSpread({},formData),{},{multilingual:e.target.checked}));}}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.model_ability&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"label\",{style:{paddingLeft:5,color:formData.model_ability.length==0?'#d32f2f':'inherit'},children:\"Model Abilities\"}),/*#__PURE__*/_jsx(Box,{className:\"checkboxWrapper\",children:SUPPORTED_FEATURES.map(function(ability){return/*#__PURE__*/_jsx(Box,{sx:{marginRight:'10px'},children:/*#__PURE__*/_jsx(FormControlLabel,{control:/*#__PURE__*/_jsx(Checkbox,{checked:formData.model_ability.includes(ability.toLowerCase()),onChange:function onChange(){return toggleAbility(ability.toLowerCase());},name:ability}),label:ability,style:{paddingLeft:10}})},ability);})}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),(customData.model_family===''||customData.model_family)&&/*#__PURE__*/_jsxs(FormControl,{children:[/*#__PURE__*/_jsx(\"label\",{style:{paddingLeft:5,color:'inherit'},children:\"Model Family\"}),modelType==='LLM'&&formData.model_family&&/*#__PURE__*/_jsxs(Alert,{icon:/*#__PURE__*/_jsx(CheckIcon,{fontSize:\"inherit\"}),severity:\"success\",children:[\"Please be careful to select the family name corresponding to the model you want to register. If not found, please choose\",/*#__PURE__*/_jsx(\"i\",{style:{fontStyle:'italic',fontWeight:700},children:\" other\"}),\".\"]}),modelType==='LLM'&&!formData.model_family&&/*#__PURE__*/_jsxs(Alert,{severity:\"error\",children:[\"Please be careful to select the family name corresponding to the model you want to register. If not found, please choose\",/*#__PURE__*/_jsx(\"i\",{style:{fontStyle:'italic',fontWeight:700},children:\" other\"}),\".\"]}),/*#__PURE__*/_jsx(RadioGroup,{value:formData.model_family,onChange:function onChange(e){toggleFamily(e.target.value);},children:/*#__PURE__*/_jsxs(Box,{className:\"checkboxWrapper\",style:{paddingLeft:'10px'},children:[modelType==='LLM'&&sortStringsByFirstLetter(getFamilyByAbility()).map(function(v){return/*#__PURE__*/_jsx(Box,{sx:{width:'20%'},children:/*#__PURE__*/_jsx(FormControlLabel,{value:v,control:/*#__PURE__*/_jsx(Radio,{}),label:v})},v);}),(modelType==='image'||modelType==='audio')&&/*#__PURE__*/_jsx(FormControlLabel,{value:formData.model_family,checked:true,control:/*#__PURE__*/_jsx(Radio,{}),label:formData.model_family})]})}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.model_specs&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(AddModelSpecs,{isJump:model_name?true:false,formData:customData.model_specs[0],specsDataArr:specsArr,onGetArr:getSpecsArr,scrollRef:scrollRef}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.controlnet&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(AddControlnet,{controlnetDataArr:controlnetArr,onGetControlnetArr:getControlnetArr,scrollRef:scrollRef}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.launcher&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Launcher\",error:formData.launcher?false:true,value:formData.launcher,size:\"small\",helperText:\"Provide the model launcher.\",onChange:function onChange(event){return setFormData(_objectSpread(_objectSpread({},formData),{},{launcher:event.target.value}));}}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]}),customData.launcher_args&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TextField,{label:\"Launcher Arguments (Optional)\",value:formData.launcher_args,size:\"small\",helperText:\"A JSON-formatted dictionary representing the arguments passed to the Launcher.\",onChange:function onChange(event){try{JSON.parse(event.target.value);setIsValidLauncherArgsAlert(false);}catch(_unused){setIsValidLauncherArgsAlert(true);}return setFormData(_objectSpread(_objectSpread({},formData),{},{launcher_args:event.target.value}));},multiline:true,rows:4}),isValidLauncherArgsAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:\"Please enter the JSON-formatted dictionary.\"}),/*#__PURE__*/_jsx(Box,{padding:\"15px\"})]})]}),model_name?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Button,{variant:\"contained\",color:\"primary\",type:\"submit\",onClick:handleEdit,disabled:isEqual,children:\"Edit\"}),/*#__PURE__*/_jsx(Button,{style:{marginLeft:30},variant:\"outlined\",color:\"primary\",type:\"submit\",onClick:handleCancel,children:\"Cancel\"})]}):/*#__PURE__*/_jsx(Box,{width:'100%',children:/*#__PURE__*/_jsx(Button,{variant:\"contained\",color:\"primary\",type:\"submit\",onClick:handleClick,children:\"Register Model\"})})]}),/*#__PURE__*/_jsxs(\"div\",{className:isShow?'jsonBox':'jsonBox hide',children:[/*#__PURE__*/_jsxs(\"div\",{className:\"jsonBox-header\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"jsonBox-title\",children:\"JSON Format\"}),/*#__PURE__*/_jsx(CopyComponent,{tip:'Copy all',text:jsonData})]}),/*#__PURE__*/_jsx(\"textarea\",{readOnly:true,className:\"textarea\",value:jsonData})]})]});};export default RegisterModelComponent;","map":{"version":3,"names":["CheckIcon","KeyboardDoubleArrowRightIcon","NotesIcon","Alert","Box","Button","Checkbox","Chip","FormControl","FormControlLabel","InputLabel","MenuItem","Radio","RadioGroup","Select","Stack","Switch","TextField","Tooltip","React","useContext","useEffect","useRef","useState","useCookies","useNavigate","useParams","ApiContext","CopyComponent","fetchWrapper","isValidBearerToken","AddControlnet","AddModelSpecs","languages","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SUPPORTED_LANGUAGES_DICT","en","zh","SUPPORTED_FEATURES","SUPPORTED_LANGUAGES","Object","keys","RegisterModelComponent","_ref","modelType","customData","endPoint","_useContext","setErrorMsg","_useState","_useState2","_slicedToArray","formData","setFormData","_useState3","_useState4","promptStyles","setPromptStyles","_useState5","chat","generate","_useState6","family","setFamily","_useState7","_useState8","languagesArr","setLanguagesArr","_useState9","_useState10","isContextLengthAlert","setIsContextLengthAlert","_useState11","_useState12","isDimensionsAlert","setIsDimensionsAlert","_useState13","_useState14","isMaxTokensAlert","setIsMaxTokensAlert","_useState15","_useState16","jsonData","setJsonData","_useState17","_useState18","isSpecsArrError","setIsSpecsArrError","_useState19","_useState20","isValidLauncherArgsAlert","setIsValidLauncherArgsAlert","scrollRef","_useCookies","_useCookies2","cookie","navigate","_useParams","registerModelType","model_name","_useState21","_useState22","isShow","setIsShow","_useState23","JSON","parse","sessionStorage","getItem","model_specs","_useState24","specsArr","setSpecsArr","_useState25","controlnet","_useState26","controlnetArr","setControlnetArr","_useState27","_useState28","contrastObj","setContrastObj","_useState29","_useState30","isEqual","setIsEqual","data","lagArr","model_lang","filter","item","version","model_description","context_length","model_ability","model_family","prompt_style","specsDataArr","map","model_uri","model_size_in_billions","model_format","quantizations","model_file_name_template","llmData","language","dimensions","max_tokens","embeddingData","rerankData","imageData","multilingual","audioData","launcher","launcher_args","flexibleData","token","replace","getBuiltinFamilies","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","response","errorData","wrap","_callee$","_context","prev","next","fetch","method","headers","sent","ok","json","concat","status","detail","push","stop","apply","arguments","getBuiltInPromptStyles","_ref3","_callee2","res","key","v","_callee2$","_context2","prototype","hasOwnProperty","call","length","catch","error","message","console","stringify","deepEqual","getFamilyByAbility","includes","sortStringsByFirstLetter","arr","sort","a","b","firstCharA","charAt","toLowerCase","firstCharB","handleClick","_ref4","_callee3","type","_callee3$","_context3","log","t0","t1","done","value","toString","slice","abrupt","post","model","persist","then","setItem","handleNumber","parameterName","_objectSpread","_defineProperty","Number","parseInt","parseFloat","toggleLanguage","lang","l","_toConsumableArray","toggleAbility","ability","obj","toggleFamily","ps","find","name","_ps$stop","_ps$stop_token_ids","style_name","system_prompt","roles","intra_message_sep","inter_message_sep","stop_token_ids","handleSelectLanguages","Array","from","Set","handleDeleteLanguages","subItem","getSpecsArr","getControlnetArr","handleCancel","handleEdit","delete","obj1","obj2","keysA","keysB","_i","_keysA","style","display","overFlow","maxWidth","children","className","title","placement","onClick","ref","width","label","size","helperText","onChange","event","target","padding","severity","paddingLeft","color","sx","marginRight","control","checked","m","minWidth","e","MenuProps","PaperProps","maxHeight","code","direction","spacing","marginLeft","variant","onDelete","icon","fontSize","fontStyle","fontWeight","isJump","onGetArr","controlnetDataArr","onGetControlnetArr","_unused","multiline","rows","disabled","tip","text","readOnly"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/scenes/register_model/registerModel.js"],"sourcesContent":["import './styles/registerModelStyle.css'\n\nimport CheckIcon from '@mui/icons-material/Check'\nimport KeyboardDoubleArrowRightIcon from '@mui/icons-material/KeyboardDoubleArrowRight'\nimport NotesIcon from '@mui/icons-material/Notes'\nimport {\n Alert,\n Box,\n Button,\n Checkbox,\n Chip,\n FormControl,\n FormControlLabel,\n InputLabel,\n MenuItem,\n Radio,\n RadioGroup,\n Select,\n Stack,\n Switch,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport React, { useContext, useEffect, useRef, useState } from 'react'\nimport { useCookies } from 'react-cookie'\nimport { useNavigate, useParams } from 'react-router-dom'\n\nimport { ApiContext } from '../../components/apiContext'\nimport CopyComponent from '../../components/copyComponent/copyComponent'\nimport fetchWrapper from '../../components/fetchWrapper'\nimport { isValidBearerToken } from '../../components/utils'\nimport AddControlnet from './components/addControlnet'\nimport AddModelSpecs from './components/addModelSpecs'\nimport languages from './data/languages'\nconst SUPPORTED_LANGUAGES_DICT = { en: 'English', zh: 'Chinese' }\nconst SUPPORTED_FEATURES = ['Generate', 'Chat', 'Vision']\n\n// Convert dictionary of supported languages into list\nconst SUPPORTED_LANGUAGES = Object.keys(SUPPORTED_LANGUAGES_DICT)\n\nconst RegisterModelComponent = ({ modelType, customData }) => {\n const endPoint = useContext(ApiContext).endPoint\n const { setErrorMsg } = useContext(ApiContext)\n const [formData, setFormData] = useState(customData)\n const [promptStyles, setPromptStyles] = useState([])\n const [family, setFamily] = useState({\n chat: [],\n generate: [],\n })\n const [languagesArr, setLanguagesArr] = useState([])\n const [isContextLengthAlert, setIsContextLengthAlert] = useState(false)\n const [isDimensionsAlert, setIsDimensionsAlert] = useState(false)\n const [isMaxTokensAlert, setIsMaxTokensAlert] = useState(false)\n const [jsonData, setJsonData] = useState('')\n const [isSpecsArrError, setIsSpecsArrError] = useState(false)\n const [isValidLauncherArgsAlert, setIsValidLauncherArgsAlert] =\n useState(false)\n const scrollRef = useRef(null)\n const [cookie] = useCookies(['token'])\n const navigate = useNavigate()\n\n const { registerModelType, model_name } = useParams()\n const [isShow, setIsShow] = useState(model_name ? true : false)\n const [specsArr, setSpecsArr] = useState(\n model_name\n ? JSON.parse(sessionStorage.getItem('customJsonData')).model_specs\n : []\n )\n const [controlnetArr, setControlnetArr] = useState(\n model_name\n ? JSON.parse(sessionStorage.getItem('customJsonData')).controlnet\n : []\n )\n const [contrastObj, setContrastObj] = useState({})\n const [isEqual, setIsEqual] = useState(true)\n\n useEffect(() => {\n if (model_name) {\n const data = JSON.parse(sessionStorage.getItem('customJsonData'))\n\n if (modelType === 'LLM') {\n const lagArr = data.model_lang.filter(\n (item) => item !== 'en' && item !== 'zh'\n )\n setLanguagesArr(lagArr)\n\n const {\n version,\n model_name,\n model_description,\n context_length,\n model_lang,\n model_ability,\n model_family,\n model_specs,\n prompt_style,\n } = data\n const specsDataArr = model_specs.map((item) => {\n const {\n model_uri,\n model_size_in_billions,\n model_format,\n quantizations,\n model_file_name_template,\n } = item\n return {\n model_uri,\n model_size_in_billions,\n model_format,\n quantizations,\n model_file_name_template,\n }\n })\n const llmData = {\n version,\n model_name,\n model_description,\n context_length,\n model_lang,\n model_ability,\n model_family,\n model_specs: specsDataArr,\n }\n prompt_style ? (llmData.prompt_style = prompt_style) : ''\n setFormData(llmData)\n setContrastObj(llmData)\n setSpecsArr(specsDataArr)\n } else {\n if (modelType === 'embedding') {\n const lagArr = data.language.filter(\n (item) => item !== 'en' && item !== 'zh'\n )\n setLanguagesArr(lagArr)\n\n const { model_name, dimensions, max_tokens, model_uri, language } =\n data\n const embeddingData = {\n model_name,\n dimensions,\n max_tokens,\n model_uri,\n language,\n }\n setFormData(embeddingData)\n setContrastObj(embeddingData)\n } else if (modelType === 'rerank') {\n const lagArr = data.language.filter(\n (item) => item !== 'en' && item !== 'zh'\n )\n setLanguagesArr(lagArr)\n\n const { model_name, model_uri, language } = data\n const rerankData = {\n model_name,\n model_uri,\n language,\n }\n setFormData(rerankData)\n setContrastObj(rerankData)\n } else if (modelType === 'image') {\n const { model_name, model_uri, model_family, controlnet } = data\n const controlnetArr = controlnet.map((item) => {\n const { model_name, model_uri, model_family } = item\n return {\n model_name,\n model_uri,\n model_family,\n }\n })\n const imageData = {\n model_name,\n model_uri,\n model_family,\n controlnet: controlnetArr,\n }\n setFormData(imageData)\n setContrastObj(imageData)\n setControlnetArr(controlnetArr)\n } else if (modelType === 'audio') {\n const { model_name, model_uri, multilingual, model_family } = data\n const audioData = {\n model_name,\n model_uri,\n multilingual,\n model_family,\n }\n setFormData(audioData)\n setContrastObj(audioData)\n } else if (modelType === 'flexible') {\n const {\n model_name,\n model_uri,\n model_description,\n launcher,\n launcher_args,\n } = data\n const flexibleData = {\n model_name,\n model_uri,\n model_description,\n launcher,\n launcher_args,\n }\n setFormData(flexibleData)\n setContrastObj(flexibleData)\n }\n }\n }\n }, [model_name])\n\n useEffect(() => {\n if (\n sessionStorage.getItem('auth') === 'true' &&\n !isValidBearerToken(sessionStorage.getItem('token')) &&\n !isValidBearerToken(cookie.token)\n ) {\n navigate('/login', { replace: true })\n return\n }\n\n const getBuiltinFamilies = async () => {\n const response = await fetch(endPoint + '/v1/models/families', {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n if (!response.ok) {\n const errorData = await response.json() // Assuming the server returns error details in JSON format\n setErrorMsg(\n `Server error: ${response.status} - ${\n errorData.detail || 'Unknown error'\n }`\n )\n } else {\n const data = await response.json()\n data.chat.push('other')\n data.generate.push('other')\n setFamily(data)\n }\n }\n\n const getBuiltInPromptStyles = async () => {\n const response = await fetch(endPoint + '/v1/models/prompts', {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n if (!response.ok) {\n const errorData = await response.json() // Assuming the server returns error details in JSON format\n setErrorMsg(\n `Server error: ${response.status} - ${\n errorData.detail || 'Unknown error'\n }`\n )\n } else {\n const data = await response.json()\n let res = []\n for (const key in data) {\n let v = data[key]\n v['name'] = key\n res.push(v)\n }\n setPromptStyles(res)\n }\n }\n\n if (\n Object.prototype.hasOwnProperty.call(customData, 'model_ability') &&\n Object.prototype.hasOwnProperty.call(customData, 'model_family')\n ) {\n // avoid keep requesting backend to get prompts\n if (promptStyles.length === 0) {\n getBuiltInPromptStyles().catch((error) => {\n setErrorMsg(\n error.message ||\n 'An unexpected error occurred when getting builtin prompt styles.'\n )\n console.error('Error: ', error)\n })\n }\n if (family.chat.length === 0) {\n getBuiltinFamilies().catch((error) => {\n setErrorMsg(\n error.message ||\n 'An unexpected error occurred when getting builtin prompt styles.'\n )\n console.error('Error: ', error)\n })\n }\n }\n }, [cookie.token])\n\n useEffect(() => {\n setJsonData(JSON.stringify(formData, null, 4))\n if (contrastObj.model_name) {\n deepEqual(contrastObj, formData) ? setIsEqual(true) : setIsEqual(false)\n }\n }, [formData])\n\n const getFamilyByAbility = () => {\n if (\n formData.model_ability.includes('chat') ||\n formData.model_ability.includes('vision')\n ) {\n return family.chat\n } else {\n return family.generate\n }\n }\n\n const sortStringsByFirstLetter = (arr) => {\n return arr.sort((a, b) => {\n const firstCharA = a.charAt(0).toLowerCase()\n const firstCharB = b.charAt(0).toLowerCase()\n if (firstCharA < firstCharB) {\n return -1\n }\n if (firstCharA > firstCharB) {\n return 1\n }\n return 0\n })\n }\n\n const handleClick = async () => {\n console.log('formData', modelType, formData)\n\n for (let key in formData) {\n const type = Object.prototype.toString.call(formData[key]).slice(8, -1)\n if (\n key !== 'model_description' &&\n ((type === 'Array' &&\n key !== 'controlnet' &&\n formData[key].length === 0) ||\n (type === 'String' && formData[key] === '') ||\n (type === 'Number' && formData[key] <= 0))\n ) {\n setErrorMsg('Please fill in valid value for all fields')\n return\n }\n }\n\n if (\n isSpecsArrError ||\n isContextLengthAlert ||\n isDimensionsAlert ||\n isMaxTokensAlert\n ) {\n setErrorMsg('Please fill in valid value for all fields')\n return\n }\n\n try {\n fetchWrapper\n .post(`/v1/model_registrations/${modelType}`, {\n model: JSON.stringify(formData),\n persist: true,\n })\n .then(() => {\n navigate(`/launch_model/custom/${modelType.toLowerCase()}`)\n sessionStorage.setItem('modelType', '/launch_model/custom/llm')\n sessionStorage.setItem(\n 'subType',\n `/launch_model/custom/${modelType.toLowerCase()}`\n )\n })\n .catch((error) => {\n console.error('Error:', error)\n if (error.response.status !== 403 && error.response.status !== 401) {\n setErrorMsg(error.message)\n }\n })\n } catch (error) {\n console.error('There was a problem with the fetch operation:', error)\n setErrorMsg(error.message || 'An unexpected error occurred.')\n }\n }\n\n const handleNumber = (value, parameterName) => {\n setIsContextLengthAlert(false)\n setIsDimensionsAlert(false)\n setIsMaxTokensAlert(false)\n setFormData({ ...formData, [parameterName]: value })\n\n if (\n value !== '' &&\n (!Number(value) ||\n Number(value) <= 0 ||\n parseInt(value) !== parseFloat(value))\n ) {\n parameterName === 'context_length' ? setIsContextLengthAlert(true) : ''\n parameterName === 'dimensions' ? setIsDimensionsAlert(true) : ''\n parameterName === 'max_tokens' ? setIsMaxTokensAlert(true) : ''\n } else if (value !== '') {\n setFormData({ ...formData, [parameterName]: Number(value) })\n }\n }\n\n const toggleLanguage = (lang) => {\n if (modelType === 'LLM') {\n if (formData.model_lang.includes(lang)) {\n setFormData({\n ...formData,\n model_lang: formData.model_lang.filter((l) => l !== lang),\n })\n } else {\n setFormData({\n ...formData,\n model_lang: [...formData.model_lang, lang],\n })\n }\n } else {\n if (formData.language.includes(lang)) {\n setFormData({\n ...formData,\n language: formData.language.filter((l) => l !== lang),\n })\n } else {\n setFormData({\n ...formData,\n language: [...formData.language, lang],\n })\n }\n }\n }\n\n const toggleAbility = (ability) => {\n if (formData.model_ability.includes(ability)) {\n const obj = JSON.parse(JSON.stringify(formData))\n if (ability === 'chat') {\n delete obj.prompt_style\n }\n setFormData({\n ...obj,\n model_ability: formData.model_ability.filter((a) => a !== ability),\n model_family: '',\n })\n } else {\n setFormData({\n ...formData,\n model_ability: [...formData.model_ability, ability],\n model_family: '',\n })\n }\n }\n\n const toggleFamily = (value) => {\n const ps = promptStyles.find((item) => item.name === value)\n if (formData.model_ability.includes('chat') && ps) {\n const prompt_style = {\n style_name: ps.style_name,\n system_prompt: ps.system_prompt,\n roles: ps.roles,\n intra_message_sep: ps.intra_message_sep,\n inter_message_sep: ps.inter_message_sep,\n stop: ps.stop ?? null,\n stop_token_ids: ps.stop_token_ids ?? null,\n }\n setFormData({\n ...formData,\n model_family: value,\n prompt_style,\n })\n } else {\n const {\n version,\n model_name,\n model_description,\n context_length,\n model_lang,\n model_ability,\n model_specs,\n } = formData\n setFormData({\n version,\n model_name,\n model_description,\n context_length,\n model_lang,\n model_ability,\n model_family: value,\n model_specs,\n })\n }\n }\n\n const handleSelectLanguages = (value) => {\n const arr = [...languagesArr, value]\n setLanguagesArr(arr)\n if (modelType === 'LLM') {\n setFormData({\n ...formData,\n model_lang: Array.from(new Set([...formData.model_lang, ...arr])),\n })\n } else {\n setFormData({\n ...formData,\n language: Array.from(new Set([...formData.language, ...arr])),\n })\n }\n }\n\n const handleDeleteLanguages = (item) => {\n const arr = languagesArr.filter((subItem) => subItem !== item)\n setLanguagesArr(arr)\n if (modelType === 'LLM') {\n setFormData({\n ...formData,\n model_lang: formData.model_lang.filter((subItem) => subItem !== item),\n })\n } else {\n setFormData({\n ...formData,\n language: formData.language.filter((subItem) => subItem !== item),\n })\n }\n }\n\n const getSpecsArr = (arr, isSpecsArrError) => {\n setFormData({ ...formData, model_specs: arr })\n setIsSpecsArrError(isSpecsArrError)\n }\n\n const getControlnetArr = (arr) => {\n setFormData({ ...formData, controlnet: arr })\n }\n\n const handleCancel = () => {\n navigate(`/launch_model/custom/${registerModelType}`)\n }\n\n const handleEdit = () => {\n fetchWrapper\n .delete(\n `/v1/model_registrations/${\n registerModelType === 'llm' ? 'LLM' : registerModelType\n }/${model_name}`\n )\n .then(() => handleClick())\n .catch((error) => {\n console.error('Error:', error)\n if (error.response.status !== 403 && error.response.status !== 401) {\n setErrorMsg(error.message)\n }\n })\n }\n\n const deepEqual = (obj1, obj2) => {\n if (obj1 === obj2) return true\n if (\n typeof obj1 !== 'object' ||\n typeof obj2 !== 'object' ||\n obj1 == null ||\n obj2 == null\n ) {\n return false\n }\n\n let keysA = Object.keys(obj1)\n let keysB = Object.keys(obj2)\n if (keysA.length !== keysB.length) return false\n for (let key of keysA) {\n if (!keysB.includes(key) || !deepEqual(obj1[key], obj2[key])) {\n return false\n }\n }\n return true\n }\n\n return (\n <Box style={{ display: 'flex', overFlow: 'hidden', maxWidth: '100%' }}>\n <div className=\"show-json\">\n <p>Show custom json config used by api</p>\n {isShow ? (\n <Tooltip title=\"Pack up\" placement=\"top\">\n <KeyboardDoubleArrowRightIcon\n className=\"icon arrow\"\n onClick={() => setIsShow(!isShow)}\n />\n </Tooltip>\n ) : (\n <Tooltip title=\"Unfold\" placement=\"top\">\n <NotesIcon\n className=\"icon notes\"\n onClick={() => setIsShow(!isShow)}\n />\n </Tooltip>\n )}\n </div>\n <div ref={scrollRef} className={isShow ? 'formBox' : 'formBox broaden'}>\n {/* Base Information */}\n <FormControl style={{ width: '100%' }}>\n {/* name */}\n {customData.model_name && (\n <>\n <TextField\n label=\"Model Name\"\n error={formData.model_name ? false : true}\n value={formData.model_name}\n size=\"small\"\n helperText=\"Alphanumeric characters with properly placed hyphens and underscores. Must not match any built-in model names.\"\n onChange={(event) =>\n setFormData({ ...formData, model_name: event.target.value })\n }\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* description */}\n {customData.model_description && (\n <>\n <TextField\n label=\"Model Description (Optional)\"\n value={formData.model_description}\n size=\"small\"\n onChange={(event) =>\n setFormData({\n ...formData,\n model_description: event.target.value,\n })\n }\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* Context Length */}\n {customData.context_length && (\n <>\n <TextField\n error={Number(formData.context_length) > 0 ? false : true}\n label=\"Context Length\"\n value={formData.context_length}\n size=\"small\"\n onChange={(event) => {\n handleNumber(event.target.value, 'context_length')\n }}\n />\n {isContextLengthAlert && (\n <Alert severity=\"error\">\n Please enter an integer greater than 0.\n </Alert>\n )}\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* dimensions */}\n {customData.dimensions && (\n <>\n <TextField\n label=\"Dimensions\"\n error={Number(formData.dimensions) > 0 ? false : true}\n value={formData.dimensions}\n size=\"small\"\n onChange={(event) => {\n handleNumber(event.target.value, 'dimensions')\n }}\n />\n {isDimensionsAlert && (\n <Alert severity=\"error\">\n Please enter an integer greater than 0.\n </Alert>\n )}\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* Max Tokens */}\n {customData.max_tokens && (\n <>\n <TextField\n label=\"Max Tokens\"\n error={Number(formData.max_tokens) > 0 ? false : true}\n value={formData.max_tokens}\n size=\"small\"\n onChange={(event) => {\n handleNumber(event.target.value, 'max_tokens')\n }}\n />\n {isMaxTokensAlert && (\n <Alert severity=\"error\">\n Please enter an integer greater than 0.\n </Alert>\n )}\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* path */}\n {customData.model_uri && (\n <>\n <TextField\n label=\"Model Path\"\n error={formData.model_uri ? false : true}\n value={formData.model_uri}\n size=\"small\"\n helperText=\"Provide the model directory path.\"\n onChange={(event) =>\n setFormData({ ...formData, model_uri: event.target.value })\n }\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* model_lang */}\n {(customData.model_lang || customData.language) && (\n <>\n <label\n style={{\n paddingLeft: 5,\n color:\n modelType === 'LLM'\n ? formData.model_lang.length === 0\n ? '#d32f2f'\n : 'inherit'\n : formData.language.length === 0\n ? '#d32f2f'\n : 'inherit',\n }}\n >\n Model Languages\n </label>\n <Box className=\"checkboxWrapper\">\n {SUPPORTED_LANGUAGES.map((lang) => (\n <Box key={lang} sx={{ marginRight: '10px' }}>\n <FormControlLabel\n control={\n <Checkbox\n checked={\n modelType === 'LLM'\n ? formData.model_lang.includes(lang)\n : formData.language.includes(lang)\n }\n onChange={() => toggleLanguage(lang)}\n name={lang}\n />\n }\n label={SUPPORTED_LANGUAGES_DICT[lang]}\n style={{\n paddingLeft: 10,\n }}\n />\n </Box>\n ))}\n <FormControl sx={{ m: 1, minWidth: 120 }} size=\"small\">\n <InputLabel>Languages</InputLabel>\n <Select\n value={''}\n label=\"Languages\"\n onChange={(e) => handleSelectLanguages(e.target.value)}\n MenuProps={{\n PaperProps: {\n style: { maxHeight: '20vh' },\n },\n }}\n >\n {languages\n .filter((item) => !languagesArr.includes(item.code))\n .map((item) => (\n <MenuItem key={item.code} value={item.code}>\n {item.code}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </Box>\n <Stack direction=\"row\" spacing={1} style={{ marginLeft: '10px' }}>\n {languagesArr.map((item) => (\n <Chip\n key={item}\n label={item}\n variant=\"outlined\"\n size=\"small\"\n color=\"primary\"\n onDelete={() => handleDeleteLanguages(item)}\n />\n ))}\n </Stack>\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* multilingual */}\n {'multilingual' in customData && (\n <>\n <label\n style={{\n paddingLeft: 5,\n }}\n >\n Multilingual\n </label>\n <FormControlLabel\n style={{ marginLeft: 0, width: 50 }}\n control={<Switch checked={formData.multilingual} />}\n onChange={(e) =>\n setFormData({ ...formData, multilingual: e.target.checked })\n }\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* abilities */}\n {customData.model_ability && (\n <>\n <label\n style={{\n paddingLeft: 5,\n color:\n formData.model_ability.length == 0 ? '#d32f2f' : 'inherit',\n }}\n >\n Model Abilities\n </label>\n <Box className=\"checkboxWrapper\">\n {SUPPORTED_FEATURES.map((ability) => (\n <Box key={ability} sx={{ marginRight: '10px' }}>\n <FormControlLabel\n control={\n <Checkbox\n checked={formData.model_ability.includes(\n ability.toLowerCase()\n )}\n onChange={() => toggleAbility(ability.toLowerCase())}\n name={ability}\n />\n }\n label={ability}\n style={{\n paddingLeft: 10,\n }}\n />\n </Box>\n ))}\n </Box>\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* family */}\n {(customData.model_family === '' || customData.model_family) && (\n <FormControl>\n <label\n style={{\n paddingLeft: 5,\n color: 'inherit',\n }}\n >\n Model Family\n </label>\n {modelType === 'LLM' && formData.model_family && (\n <Alert\n icon={<CheckIcon fontSize=\"inherit\" />}\n severity=\"success\"\n >\n Please be careful to select the family name corresponding to\n the model you want to register. If not found, please choose\n <i style={{ fontStyle: 'italic', fontWeight: 700 }}> other</i>\n .\n </Alert>\n )}\n {modelType === 'LLM' && !formData.model_family && (\n <Alert severity=\"error\">\n Please be careful to select the family name corresponding to\n the model you want to register. If not found, please choose\n <i style={{ fontStyle: 'italic', fontWeight: 700 }}> other</i>\n .\n </Alert>\n )}\n <RadioGroup\n value={formData.model_family}\n onChange={(e) => {\n toggleFamily(e.target.value)\n }}\n >\n <Box\n className=\"checkboxWrapper\"\n style={{ paddingLeft: '10px' }}\n >\n {modelType === 'LLM' &&\n sortStringsByFirstLetter(getFamilyByAbility()).map((v) => (\n <Box sx={{ width: '20%' }} key={v}>\n <FormControlLabel\n value={v}\n control={<Radio />}\n label={v}\n />\n </Box>\n ))}\n {(modelType === 'image' || modelType === 'audio') && (\n <FormControlLabel\n value={formData.model_family}\n checked\n control={<Radio />}\n label={formData.model_family}\n />\n )}\n </Box>\n </RadioGroup>\n <Box padding=\"15px\"></Box>\n </FormControl>\n )}\n\n {/* specs */}\n {customData.model_specs && (\n <>\n <AddModelSpecs\n isJump={model_name ? true : false}\n formData={customData.model_specs[0]}\n specsDataArr={specsArr}\n onGetArr={getSpecsArr}\n scrollRef={scrollRef}\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* controlnet */}\n {customData.controlnet && (\n <>\n <AddControlnet\n controlnetDataArr={controlnetArr}\n onGetControlnetArr={getControlnetArr}\n scrollRef={scrollRef}\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* launcher */}\n {customData.launcher && (\n <>\n <TextField\n label=\"Launcher\"\n error={formData.launcher ? false : true}\n value={formData.launcher}\n size=\"small\"\n helperText=\"Provide the model launcher.\"\n onChange={(event) =>\n setFormData({ ...formData, launcher: event.target.value })\n }\n />\n <Box padding=\"15px\"></Box>\n </>\n )}\n\n {/* launcher_args */}\n {customData.launcher_args && (\n <>\n <TextField\n label=\"Launcher Arguments (Optional)\"\n value={formData.launcher_args}\n size=\"small\"\n helperText=\"A JSON-formatted dictionary representing the arguments passed to the Launcher.\"\n onChange={(event) => {\n try {\n JSON.parse(event.target.value)\n setIsValidLauncherArgsAlert(false)\n } catch {\n setIsValidLauncherArgsAlert(true)\n }\n return setFormData({\n ...formData,\n launcher_args: event.target.value,\n })\n }}\n multiline\n rows={4}\n />\n {isValidLauncherArgsAlert && (\n <Alert severity=\"error\">\n Please enter the JSON-formatted dictionary.\n </Alert>\n )}\n <Box padding=\"15px\"></Box>\n </>\n )}\n </FormControl>\n\n {model_name ? (\n <>\n <Button\n variant=\"contained\"\n color=\"primary\"\n type=\"submit\"\n onClick={handleEdit}\n disabled={isEqual}\n >\n Edit\n </Button>\n <Button\n style={{ marginLeft: 30 }}\n variant=\"outlined\"\n color=\"primary\"\n type=\"submit\"\n onClick={handleCancel}\n >\n Cancel\n </Button>\n </>\n ) : (\n <Box width={'100%'}>\n <Button\n variant=\"contained\"\n color=\"primary\"\n type=\"submit\"\n onClick={handleClick}\n >\n Register Model\n </Button>\n </Box>\n )}\n </div>\n\n {/* JSON */}\n <div className={isShow ? 'jsonBox' : 'jsonBox hide'}>\n <div className=\"jsonBox-header\">\n <div className=\"jsonBox-title\">JSON Format</div>\n <CopyComponent tip={'Copy all'} text={jsonData} />\n </div>\n <textarea readOnly className=\"textarea\" value={jsonData} />\n </div>\n </Box>\n )\n}\n\nexport default RegisterModelComponent\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"import _slicedToArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";import{TabContext,TabList,TabPanel}from'@mui/lab';import{Box,Tab}from'@mui/material';import React,{useEffect}from'react';import{useCookies}from'react-cookie';import{useNavigate}from'react-router-dom';import ErrorMessageSnackBar from'../../components/errorMessageSnackBar';import Title from'../../components/Title';import{isValidBearerToken}from'../../components/utils';import RegisterModelComponent from'./registerModel';import{jsx as _jsx}from\"react/jsx-runtime\";import{jsxs as _jsxs}from\"react/jsx-runtime\";var RegisterModel=function RegisterModel(){var _React$useState=React.useState(sessionStorage.getItem('registerModelType')?sessionStorage.getItem('registerModelType'):'/register_model/llm'),_React$useState2=_slicedToArray(_React$useState,2),tabValue=_React$useState2[0],setTabValue=_React$useState2[1];var _useCookies=useCookies(['token']),_useCookies2=_slicedToArray(_useCookies,1),cookie=_useCookies2[0];var navigate=useNavigate();useEffect(function(){if(sessionStorage.getItem('auth')==='true'&&!isValidBearerToken(sessionStorage.getItem('token'))&&!isValidBearerToken(cookie.token)){navigate('/login',{replace:true});}},[cookie.token]);var handleTabChange=function handleTabChange(_,newValue){setTabValue(newValue);navigate(newValue);sessionStorage.setItem('registerModelType',newValue);};return/*#__PURE__*/_jsxs(Box,{m:\"20px\",style:{overflow:'hidden'},children:[/*#__PURE__*/_jsx(Title,{title:\"Register Model\"}),/*#__PURE__*/_jsx(ErrorMessageSnackBar,{}),/*#__PURE__*/_jsxs(TabContext,{value:tabValue,children:[/*#__PURE__*/_jsx(Box,{sx:{borderBottom:1,borderColor:'divider'},children:/*#__PURE__*/_jsxs(TabList,{value:tabValue,onChange:handleTabChange,\"aria-label\":\"tabs\",children:[/*#__PURE__*/_jsx(Tab,{label:\"Language Model\",value:\"/register_model/llm\"}),/*#__PURE__*/_jsx(Tab,{label:\"Embedding Model\",value:\"/register_model/embedding\"}),/*#__PURE__*/_jsx(Tab,{label:\"Rerank Model\",value:\"/register_model/rerank\"}),/*#__PURE__*/_jsx(Tab,{label:\"Image Model\",value:\"/register_model/image\"}),/*#__PURE__*/_jsx(Tab,{label:\"Audio Model\",value:\"/register_model/audio\"}),/*#__PURE__*/_jsx(Tab,{label:\"Flexible Model\",value:\"/register_model/flexible\"})]})}),/*#__PURE__*/_jsx(TabPanel,{value:\"/register_model/llm\",sx:{padding:0},children:/*#__PURE__*/_jsx(RegisterModelComponent,{modelType:\"LLM\",customData:{version:1,model_name:'custom-llm',model_description:'This is a custom model description.',context_length:2048,model_lang:['en'],model_ability:['generate'],model_family:'',model_specs:[{model_uri:'/path/to/llama-1',model_size_in_billions:7,model_format:'pytorch',quantizations:['none']}],prompt_style:undefined}})}),/*#__PURE__*/_jsx(TabPanel,{value:\"/register_model/embedding\",sx:{padding:0},children:/*#__PURE__*/_jsx(RegisterModelComponent,{modelType:\"embedding\",customData:{model_name:'custom-embedding',dimensions:768,max_tokens:512,model_uri:'/path/to/embedding-model',language:['en']}})}),/*#__PURE__*/_jsx(TabPanel,{value:\"/register_model/rerank\",sx:{padding:0},children:/*#__PURE__*/_jsx(RegisterModelComponent,{modelType:\"rerank\",customData:{model_name:'custom-rerank',model_uri:'/path/to/rerank-model',language:['en']}})}),/*#__PURE__*/_jsx(TabPanel,{value:\"/register_model/image\",sx:{padding:0},children:/*#__PURE__*/_jsx(RegisterModelComponent,{modelType:\"image\",customData:{model_name:'custom-image',model_uri:'/path/to/image-model',model_family:'stable_diffusion',controlnet:[]}})}),/*#__PURE__*/_jsx(TabPanel,{value:\"/register_model/audio\",sx:{padding:0},children:/*#__PURE__*/_jsx(RegisterModelComponent,{modelType:\"audio\",customData:{model_name:'custom-audio',model_uri:'/path/to/audio-model',multilingual:false,model_family:'whisper'}})}),/*#__PURE__*/_jsx(TabPanel,{value:\"/register_model/flexible\",sx:{padding:0},children:/*#__PURE__*/_jsx(RegisterModelComponent,{modelType:\"flexible\",customData:{model_name:'flexible-model',model_description:'This is a model description.',model_uri:'/path/to/model',launcher:'xinference.model.flexible.launchers.transformers',launcher_args:'{}'}})})]})]});};export default RegisterModel;","map":{"version":3,"names":["TabContext","TabList","TabPanel","Box","Tab","React","useEffect","useCookies","useNavigate","ErrorMessageSnackBar","Title","isValidBearerToken","RegisterModelComponent","jsx","_jsx","jsxs","_jsxs","RegisterModel","_React$useState","useState","sessionStorage","getItem","_React$useState2","_slicedToArray","tabValue","setTabValue","_useCookies","_useCookies2","cookie","navigate","token","replace","handleTabChange","_","newValue","setItem","m","style","overflow","children","title","value","sx","borderBottom","borderColor","onChange","label","padding","modelType","customData","version","model_name","model_description","context_length","model_lang","model_ability","model_family","model_specs","model_uri","model_size_in_billions","model_format","quantizations","prompt_style","undefined","dimensions","max_tokens","language","controlnet","multilingual","launcher","launcher_args"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/scenes/register_model/index.js"],"sourcesContent":["import { TabContext, TabList, TabPanel } from '@mui/lab'\nimport { Box, Tab } from '@mui/material'\nimport React, { useEffect } from 'react'\nimport { useCookies } from 'react-cookie'\nimport { useNavigate } from 'react-router-dom'\n\nimport ErrorMessageSnackBar from '../../components/errorMessageSnackBar'\nimport Title from '../../components/Title'\nimport { isValidBearerToken } from '../../components/utils'\nimport RegisterModelComponent from './registerModel'\n\nconst RegisterModel = () => {\n const [tabValue, setTabValue] = React.useState(\n sessionStorage.getItem('registerModelType')\n ? sessionStorage.getItem('registerModelType')\n : '/register_model/llm'\n )\n const [cookie] = useCookies(['token'])\n const navigate = useNavigate()\n\n useEffect(() => {\n if (\n sessionStorage.getItem('auth') === 'true' &&\n !isValidBearerToken(sessionStorage.getItem('token')) &&\n !isValidBearerToken(cookie.token)\n ) {\n navigate('/login', { replace: true })\n }\n }, [cookie.token])\n\n const handleTabChange = (_, newValue) => {\n setTabValue(newValue)\n navigate(newValue)\n sessionStorage.setItem('registerModelType', newValue)\n }\n\n return (\n <Box m=\"20px\" style={{ overflow: 'hidden' }}>\n <Title title=\"Register Model\" />\n <ErrorMessageSnackBar />\n <TabContext value={tabValue}>\n <Box sx={{ borderBottom: 1, borderColor: 'divider' }}>\n <TabList\n value={tabValue}\n onChange={handleTabChange}\n aria-label=\"tabs\"\n >\n <Tab label=\"Language Model\" value=\"/register_model/llm\" />\n <Tab label=\"Embedding Model\" value=\"/register_model/embedding\" />\n <Tab label=\"Rerank Model\" value=\"/register_model/rerank\" />\n <Tab label=\"Image Model\" value=\"/register_model/image\" />\n <Tab label=\"Audio Model\" value=\"/register_model/audio\" />\n <Tab label=\"Flexible Model\" value=\"/register_model/flexible\" />\n </TabList>\n </Box>\n <TabPanel value=\"/register_model/llm\" sx={{ padding: 0 }}>\n <RegisterModelComponent\n modelType=\"LLM\"\n customData={{\n version: 1,\n model_name: 'custom-llm',\n model_description: 'This is a custom model description.',\n context_length: 2048,\n model_lang: ['en'],\n model_ability: ['generate'],\n model_family: '',\n model_specs: [\n {\n model_uri: '/path/to/llama-1',\n model_size_in_billions: 7,\n model_format: 'pytorch',\n quantizations: ['none'],\n },\n ],\n prompt_style: undefined,\n }}\n />\n </TabPanel>\n <TabPanel value=\"/register_model/embedding\" sx={{ padding: 0 }}>\n <RegisterModelComponent\n modelType=\"embedding\"\n customData={{\n model_name: 'custom-embedding',\n dimensions: 768,\n max_tokens: 512,\n model_uri: '/path/to/embedding-model',\n language: ['en'],\n }}\n />\n </TabPanel>\n <TabPanel value=\"/register_model/rerank\" sx={{ padding: 0 }}>\n <RegisterModelComponent\n modelType=\"rerank\"\n customData={{\n model_name: 'custom-rerank',\n model_uri: '/path/to/rerank-model',\n language: ['en'],\n }}\n />\n </TabPanel>\n <TabPanel value=\"/register_model/image\" sx={{ padding: 0 }}>\n <RegisterModelComponent\n modelType=\"image\"\n customData={{\n model_name: 'custom-image',\n model_uri: '/path/to/image-model',\n model_family: 'stable_diffusion',\n controlnet: [],\n }}\n />\n </TabPanel>\n <TabPanel value=\"/register_model/audio\" sx={{ padding: 0 }}>\n <RegisterModelComponent\n modelType=\"audio\"\n customData={{\n model_name: 'custom-audio',\n model_uri: '/path/to/audio-model',\n multilingual: false,\n model_family: 'whisper',\n }}\n />\n </TabPanel>\n <TabPanel value=\"/register_model/flexible\" sx={{ padding: 0 }}>\n <RegisterModelComponent\n modelType=\"flexible\"\n customData={{\n model_name: 'flexible-model',\n model_description: 'This is a model description.',\n model_uri: '/path/to/model',\n launcher: 'xinference.model.flexible.launchers.transformers',\n launcher_args: '{}',\n }}\n />\n </TabPanel>\n </TabContext>\n </Box>\n )\n}\n\nexport default RegisterModel\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|