xinference 0.16.3__py3-none-any.whl → 1.2.1__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 +24 -2
- xinference/_version.py +3 -3
- xinference/api/restful_api.py +219 -77
- xinference/client/restful/restful_client.py +47 -2
- xinference/constants.py +1 -0
- xinference/core/chat_interface.py +6 -1
- xinference/core/model.py +124 -34
- xinference/core/supervisor.py +180 -12
- xinference/core/utils.py +73 -4
- xinference/core/worker.py +102 -4
- xinference/deploy/cmdline.py +3 -1
- xinference/deploy/test/test_cmdline.py +56 -0
- xinference/isolation.py +24 -0
- xinference/model/audio/__init__.py +12 -0
- xinference/model/audio/core.py +37 -4
- xinference/model/audio/cosyvoice.py +39 -6
- xinference/model/audio/f5tts.py +200 -0
- xinference/model/audio/f5tts_mlx.py +260 -0
- xinference/model/audio/fish_speech.py +70 -110
- xinference/model/audio/melotts.py +110 -0
- xinference/model/audio/model_spec.json +179 -3
- xinference/model/audio/model_spec_modelscope.json +27 -0
- xinference/model/audio/utils.py +32 -0
- xinference/model/audio/whisper.py +35 -10
- xinference/model/audio/whisper_mlx.py +208 -0
- xinference/model/embedding/core.py +322 -6
- xinference/model/embedding/model_spec.json +8 -1
- xinference/model/embedding/model_spec_modelscope.json +9 -1
- xinference/model/image/core.py +69 -1
- xinference/model/image/model_spec.json +145 -4
- xinference/model/image/model_spec_modelscope.json +150 -4
- xinference/model/image/stable_diffusion/core.py +50 -15
- xinference/model/llm/__init__.py +6 -2
- xinference/model/llm/llm_family.json +1055 -93
- xinference/model/llm/llm_family.py +15 -36
- xinference/model/llm/llm_family_modelscope.json +1031 -78
- xinference/model/llm/memory.py +1 -1
- xinference/model/llm/mlx/core.py +285 -47
- xinference/model/llm/sglang/core.py +2 -0
- xinference/model/llm/transformers/chatglm.py +9 -5
- xinference/model/llm/transformers/cogagent.py +272 -0
- xinference/model/llm/transformers/core.py +3 -0
- xinference/model/llm/transformers/glm_edge_v.py +230 -0
- xinference/model/llm/transformers/qwen2_vl.py +12 -1
- xinference/model/llm/transformers/utils.py +16 -8
- xinference/model/llm/utils.py +55 -4
- xinference/model/llm/vllm/core.py +137 -12
- xinference/model/llm/vllm/xavier/__init__.py +13 -0
- xinference/model/llm/vllm/xavier/allocator.py +74 -0
- xinference/model/llm/vllm/xavier/block.py +111 -0
- xinference/model/llm/vllm/xavier/block_manager.py +71 -0
- xinference/model/llm/vllm/xavier/block_tracker.py +129 -0
- xinference/model/llm/vllm/xavier/collective.py +74 -0
- xinference/model/llm/vllm/xavier/collective_manager.py +147 -0
- xinference/model/llm/vllm/xavier/engine.py +247 -0
- xinference/model/llm/vllm/xavier/executor.py +134 -0
- xinference/model/llm/vllm/xavier/scheduler.py +438 -0
- xinference/model/llm/vllm/xavier/test/__init__.py +13 -0
- xinference/model/llm/vllm/xavier/test/test_xavier.py +147 -0
- xinference/model/llm/vllm/xavier/transfer.py +319 -0
- xinference/model/rerank/core.py +11 -4
- xinference/model/video/diffusers.py +14 -0
- xinference/model/video/model_spec.json +15 -0
- xinference/model/video/model_spec_modelscope.json +16 -0
- xinference/thirdparty/cosyvoice/bin/average_model.py +92 -0
- xinference/thirdparty/cosyvoice/bin/export_jit.py +12 -2
- xinference/thirdparty/cosyvoice/bin/export_onnx.py +112 -0
- xinference/thirdparty/cosyvoice/bin/export_trt.sh +9 -0
- xinference/thirdparty/cosyvoice/bin/inference.py +5 -7
- xinference/thirdparty/cosyvoice/bin/spk2info.pt +0 -0
- xinference/thirdparty/cosyvoice/bin/train.py +42 -8
- xinference/thirdparty/cosyvoice/cli/cosyvoice.py +96 -25
- xinference/thirdparty/cosyvoice/cli/frontend.py +77 -30
- xinference/thirdparty/cosyvoice/cli/model.py +330 -80
- xinference/thirdparty/cosyvoice/dataset/dataset.py +6 -2
- xinference/thirdparty/cosyvoice/dataset/processor.py +76 -14
- xinference/thirdparty/cosyvoice/flow/decoder.py +92 -13
- xinference/thirdparty/cosyvoice/flow/flow.py +99 -9
- xinference/thirdparty/cosyvoice/flow/flow_matching.py +110 -13
- xinference/thirdparty/cosyvoice/flow/length_regulator.py +5 -4
- xinference/thirdparty/cosyvoice/hifigan/discriminator.py +140 -0
- xinference/thirdparty/cosyvoice/hifigan/generator.py +58 -42
- xinference/thirdparty/cosyvoice/hifigan/hifigan.py +67 -0
- xinference/thirdparty/cosyvoice/llm/llm.py +139 -6
- xinference/thirdparty/cosyvoice/tokenizer/assets/multilingual_zh_ja_yue_char_del.tiktoken +58836 -0
- xinference/thirdparty/cosyvoice/tokenizer/tokenizer.py +279 -0
- xinference/thirdparty/cosyvoice/transformer/embedding.py +2 -2
- xinference/thirdparty/cosyvoice/transformer/encoder_layer.py +7 -7
- xinference/thirdparty/cosyvoice/transformer/upsample_encoder.py +318 -0
- xinference/thirdparty/cosyvoice/utils/common.py +28 -1
- xinference/thirdparty/cosyvoice/utils/executor.py +69 -7
- xinference/thirdparty/cosyvoice/utils/file_utils.py +2 -12
- xinference/thirdparty/cosyvoice/utils/frontend_utils.py +9 -5
- xinference/thirdparty/cosyvoice/utils/losses.py +20 -0
- xinference/thirdparty/cosyvoice/utils/scheduler.py +1 -2
- xinference/thirdparty/cosyvoice/utils/train_utils.py +101 -45
- xinference/thirdparty/f5_tts/api.py +166 -0
- xinference/thirdparty/f5_tts/configs/E2TTS_Base_train.yaml +44 -0
- xinference/thirdparty/f5_tts/configs/E2TTS_Small_train.yaml +44 -0
- xinference/thirdparty/f5_tts/configs/F5TTS_Base_train.yaml +46 -0
- xinference/thirdparty/f5_tts/configs/F5TTS_Small_train.yaml +46 -0
- xinference/thirdparty/f5_tts/eval/README.md +49 -0
- xinference/thirdparty/f5_tts/eval/ecapa_tdnn.py +330 -0
- xinference/thirdparty/f5_tts/eval/eval_infer_batch.py +207 -0
- xinference/thirdparty/f5_tts/eval/eval_infer_batch.sh +13 -0
- xinference/thirdparty/f5_tts/eval/eval_librispeech_test_clean.py +84 -0
- xinference/thirdparty/f5_tts/eval/eval_seedtts_testset.py +84 -0
- xinference/thirdparty/f5_tts/eval/utils_eval.py +405 -0
- xinference/thirdparty/f5_tts/infer/README.md +191 -0
- xinference/thirdparty/f5_tts/infer/SHARED.md +74 -0
- xinference/thirdparty/f5_tts/infer/examples/basic/basic.toml +11 -0
- xinference/thirdparty/f5_tts/infer/examples/basic/basic_ref_en.wav +0 -0
- xinference/thirdparty/f5_tts/infer/examples/basic/basic_ref_zh.wav +0 -0
- xinference/thirdparty/f5_tts/infer/examples/multi/country.flac +0 -0
- xinference/thirdparty/f5_tts/infer/examples/multi/main.flac +0 -0
- xinference/thirdparty/f5_tts/infer/examples/multi/story.toml +19 -0
- xinference/thirdparty/f5_tts/infer/examples/multi/story.txt +1 -0
- xinference/thirdparty/f5_tts/infer/examples/multi/town.flac +0 -0
- xinference/thirdparty/f5_tts/infer/examples/vocab.txt +2545 -0
- xinference/thirdparty/f5_tts/infer/infer_cli.py +226 -0
- xinference/thirdparty/f5_tts/infer/infer_gradio.py +851 -0
- xinference/thirdparty/f5_tts/infer/speech_edit.py +193 -0
- xinference/thirdparty/f5_tts/infer/utils_infer.py +538 -0
- xinference/thirdparty/f5_tts/model/__init__.py +10 -0
- xinference/thirdparty/f5_tts/model/backbones/README.md +20 -0
- xinference/thirdparty/f5_tts/model/backbones/dit.py +163 -0
- xinference/thirdparty/f5_tts/model/backbones/mmdit.py +146 -0
- xinference/thirdparty/f5_tts/model/backbones/unett.py +219 -0
- xinference/thirdparty/f5_tts/model/cfm.py +285 -0
- xinference/thirdparty/f5_tts/model/dataset.py +319 -0
- xinference/thirdparty/f5_tts/model/modules.py +658 -0
- xinference/thirdparty/f5_tts/model/trainer.py +366 -0
- xinference/thirdparty/f5_tts/model/utils.py +185 -0
- xinference/thirdparty/f5_tts/scripts/count_max_epoch.py +33 -0
- xinference/thirdparty/f5_tts/scripts/count_params_gflops.py +39 -0
- xinference/thirdparty/f5_tts/socket_server.py +159 -0
- xinference/thirdparty/f5_tts/train/README.md +77 -0
- xinference/thirdparty/f5_tts/train/datasets/prepare_csv_wavs.py +139 -0
- xinference/thirdparty/f5_tts/train/datasets/prepare_emilia.py +230 -0
- xinference/thirdparty/f5_tts/train/datasets/prepare_libritts.py +92 -0
- xinference/thirdparty/f5_tts/train/datasets/prepare_ljspeech.py +65 -0
- xinference/thirdparty/f5_tts/train/datasets/prepare_wenetspeech4tts.py +125 -0
- xinference/thirdparty/f5_tts/train/finetune_cli.py +174 -0
- xinference/thirdparty/f5_tts/train/finetune_gradio.py +1846 -0
- xinference/thirdparty/f5_tts/train/train.py +75 -0
- xinference/thirdparty/fish_speech/fish_speech/conversation.py +266 -1
- xinference/thirdparty/fish_speech/fish_speech/i18n/locale/en_US.json +2 -1
- xinference/thirdparty/fish_speech/fish_speech/i18n/locale/es_ES.json +2 -1
- xinference/thirdparty/fish_speech/fish_speech/i18n/locale/ja_JP.json +2 -2
- xinference/thirdparty/fish_speech/fish_speech/i18n/locale/ko_KR.json +123 -0
- xinference/thirdparty/fish_speech/fish_speech/i18n/locale/zh_CN.json +2 -1
- xinference/thirdparty/fish_speech/fish_speech/models/text2semantic/llama.py +137 -29
- xinference/thirdparty/fish_speech/fish_speech/models/vqgan/modules/firefly.py +9 -9
- xinference/thirdparty/fish_speech/fish_speech/models/vqgan/modules/fsq.py +1 -1
- xinference/thirdparty/fish_speech/fish_speech/text/clean.py +17 -11
- xinference/thirdparty/fish_speech/fish_speech/text/spliter.py +1 -1
- xinference/thirdparty/fish_speech/fish_speech/tokenizer.py +152 -0
- xinference/thirdparty/fish_speech/fish_speech/train.py +2 -2
- xinference/thirdparty/fish_speech/fish_speech/utils/__init__.py +2 -1
- xinference/thirdparty/fish_speech/fish_speech/utils/utils.py +22 -0
- xinference/thirdparty/fish_speech/fish_speech/webui/launch_utils.py +1 -1
- xinference/thirdparty/fish_speech/fish_speech/webui/manage.py +2 -2
- xinference/thirdparty/fish_speech/tools/{post_api.py → api_client.py} +34 -18
- xinference/thirdparty/fish_speech/tools/api_server.py +98 -0
- xinference/thirdparty/fish_speech/tools/download_models.py +5 -5
- xinference/thirdparty/fish_speech/tools/e2e_webui.py +232 -0
- xinference/thirdparty/fish_speech/tools/fish_e2e.py +298 -0
- xinference/thirdparty/fish_speech/tools/inference_engine/__init__.py +192 -0
- xinference/thirdparty/fish_speech/tools/inference_engine/reference_loader.py +125 -0
- xinference/thirdparty/fish_speech/tools/inference_engine/utils.py +39 -0
- xinference/thirdparty/fish_speech/tools/inference_engine/vq_manager.py +57 -0
- xinference/thirdparty/fish_speech/tools/llama/eval_in_context.py +2 -2
- xinference/thirdparty/fish_speech/tools/llama/generate.py +484 -72
- xinference/thirdparty/fish_speech/tools/run_webui.py +104 -0
- xinference/thirdparty/fish_speech/tools/schema.py +170 -0
- xinference/thirdparty/fish_speech/tools/server/agent/__init__.py +57 -0
- xinference/thirdparty/fish_speech/tools/server/agent/generate.py +119 -0
- xinference/thirdparty/fish_speech/tools/server/agent/generation_utils.py +122 -0
- xinference/thirdparty/fish_speech/tools/server/agent/pre_generation_utils.py +72 -0
- xinference/thirdparty/fish_speech/tools/server/api_utils.py +75 -0
- xinference/thirdparty/fish_speech/tools/server/exception_handler.py +27 -0
- xinference/thirdparty/fish_speech/tools/server/inference.py +45 -0
- xinference/thirdparty/fish_speech/tools/server/model_manager.py +122 -0
- xinference/thirdparty/fish_speech/tools/server/model_utils.py +129 -0
- xinference/thirdparty/fish_speech/tools/server/views.py +246 -0
- xinference/thirdparty/fish_speech/tools/vqgan/extract_vq.py +7 -1
- xinference/thirdparty/fish_speech/tools/vqgan/inference.py +2 -3
- xinference/thirdparty/fish_speech/tools/webui/__init__.py +173 -0
- xinference/thirdparty/fish_speech/tools/webui/inference.py +91 -0
- xinference/thirdparty/fish_speech/tools/webui/variables.py +14 -0
- xinference/thirdparty/matcha/utils/utils.py +2 -2
- xinference/thirdparty/melo/api.py +135 -0
- xinference/thirdparty/melo/app.py +61 -0
- xinference/thirdparty/melo/attentions.py +459 -0
- xinference/thirdparty/melo/commons.py +160 -0
- xinference/thirdparty/melo/configs/config.json +94 -0
- xinference/thirdparty/melo/data/example/metadata.list +20 -0
- xinference/thirdparty/melo/data_utils.py +413 -0
- xinference/thirdparty/melo/download_utils.py +67 -0
- xinference/thirdparty/melo/infer.py +25 -0
- xinference/thirdparty/melo/init_downloads.py +14 -0
- xinference/thirdparty/melo/losses.py +58 -0
- xinference/thirdparty/melo/main.py +36 -0
- xinference/thirdparty/melo/mel_processing.py +174 -0
- xinference/thirdparty/melo/models.py +1030 -0
- xinference/thirdparty/melo/modules.py +598 -0
- xinference/thirdparty/melo/monotonic_align/__init__.py +16 -0
- xinference/thirdparty/melo/monotonic_align/core.py +46 -0
- xinference/thirdparty/melo/preprocess_text.py +135 -0
- xinference/thirdparty/melo/split_utils.py +174 -0
- xinference/thirdparty/melo/text/__init__.py +35 -0
- xinference/thirdparty/melo/text/chinese.py +199 -0
- xinference/thirdparty/melo/text/chinese_bert.py +107 -0
- xinference/thirdparty/melo/text/chinese_mix.py +253 -0
- xinference/thirdparty/melo/text/cleaner.py +36 -0
- xinference/thirdparty/melo/text/cleaner_multiling.py +110 -0
- xinference/thirdparty/melo/text/cmudict.rep +129530 -0
- xinference/thirdparty/melo/text/cmudict_cache.pickle +0 -0
- xinference/thirdparty/melo/text/english.py +284 -0
- xinference/thirdparty/melo/text/english_bert.py +39 -0
- xinference/thirdparty/melo/text/english_utils/abbreviations.py +35 -0
- xinference/thirdparty/melo/text/english_utils/number_norm.py +97 -0
- xinference/thirdparty/melo/text/english_utils/time_norm.py +47 -0
- xinference/thirdparty/melo/text/es_phonemizer/base.py +140 -0
- xinference/thirdparty/melo/text/es_phonemizer/cleaner.py +109 -0
- xinference/thirdparty/melo/text/es_phonemizer/es_symbols.json +79 -0
- xinference/thirdparty/melo/text/es_phonemizer/es_symbols.txt +1 -0
- xinference/thirdparty/melo/text/es_phonemizer/es_symbols_v2.json +83 -0
- xinference/thirdparty/melo/text/es_phonemizer/es_to_ipa.py +12 -0
- xinference/thirdparty/melo/text/es_phonemizer/example_ipa.txt +400 -0
- xinference/thirdparty/melo/text/es_phonemizer/gruut_wrapper.py +253 -0
- xinference/thirdparty/melo/text/es_phonemizer/punctuation.py +174 -0
- xinference/thirdparty/melo/text/es_phonemizer/spanish_symbols.txt +1 -0
- xinference/thirdparty/melo/text/es_phonemizer/test.ipynb +124 -0
- xinference/thirdparty/melo/text/fr_phonemizer/base.py +140 -0
- xinference/thirdparty/melo/text/fr_phonemizer/cleaner.py +122 -0
- xinference/thirdparty/melo/text/fr_phonemizer/en_symbols.json +78 -0
- xinference/thirdparty/melo/text/fr_phonemizer/example_ipa.txt +1 -0
- xinference/thirdparty/melo/text/fr_phonemizer/fr_symbols.json +89 -0
- xinference/thirdparty/melo/text/fr_phonemizer/fr_to_ipa.py +30 -0
- xinference/thirdparty/melo/text/fr_phonemizer/french_abbreviations.py +48 -0
- xinference/thirdparty/melo/text/fr_phonemizer/french_symbols.txt +1 -0
- xinference/thirdparty/melo/text/fr_phonemizer/gruut_wrapper.py +258 -0
- xinference/thirdparty/melo/text/fr_phonemizer/punctuation.py +172 -0
- xinference/thirdparty/melo/text/french.py +94 -0
- xinference/thirdparty/melo/text/french_bert.py +39 -0
- xinference/thirdparty/melo/text/japanese.py +647 -0
- xinference/thirdparty/melo/text/japanese_bert.py +49 -0
- xinference/thirdparty/melo/text/ko_dictionary.py +44 -0
- xinference/thirdparty/melo/text/korean.py +192 -0
- xinference/thirdparty/melo/text/opencpop-strict.txt +429 -0
- xinference/thirdparty/melo/text/spanish.py +122 -0
- xinference/thirdparty/melo/text/spanish_bert.py +39 -0
- xinference/thirdparty/melo/text/symbols.py +290 -0
- xinference/thirdparty/melo/text/tone_sandhi.py +769 -0
- xinference/thirdparty/melo/train.py +635 -0
- xinference/thirdparty/melo/train.sh +19 -0
- xinference/thirdparty/melo/transforms.py +209 -0
- xinference/thirdparty/melo/utils.py +424 -0
- xinference/types.py +17 -1
- xinference/web/ui/build/asset-manifest.json +6 -6
- xinference/web/ui/build/index.html +1 -1
- xinference/web/ui/build/static/css/main.51a587ff.css +2 -0
- xinference/web/ui/build/static/css/main.51a587ff.css.map +1 -0
- xinference/web/ui/build/static/js/main.b0936c54.js +3 -0
- xinference/web/ui/build/static/js/main.b0936c54.js.map +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/03c4052f1b91f6ba0c5389bdcf49c43319b4076c08e4b8585dab312538ae290a.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/1786b83003b8e9605a0f5f855a185d4d16e38fc893dfb326a2a9cca206b4240a.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/17cbc181dd674b9150b80c73ed6a82656de0082d857f6e5f66d9716129ac0b38.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/185ceb8872d562e032b47e79df6a45670e06345b8ed70aad1a131e0476783c5c.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/26b8c9f34b0bed789b3a833767672e39302d1e0c09b4276f4d58d1df7b6bd93b.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/2b484da66c724d0d56a40849c109327408796a668b1381511b6e9e03baa48658.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/2cbbbce9b84df73330d4c42b82436ed881b3847628f2fbc346aa62e2859fd88c.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/2ec9b14431ed33ce6901bf9f27007be4e6e472709c99d6e22b50ce528e4b78ee.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/3b966db018f96be4a055d6ca205f0990d4d0b370e2980c17d8bca2c9a021819c.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/3eefb411b24c2b3ce053570ef50daccf154022f0e168be5ed0fec21394baf9f4.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/522b229e3cac219123f0d69673f5570e191c2d2a505dc65b312d336eae2279c0.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/52e45f17ba300580ea3fcc9f9228ccba194bb092b76f25e9255af311f8b05aab.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/5a0bc4631f936459afc1a3b1d3ec2420118b1f00e11f60ccac3e08088f3f27a8.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/611fa2c6c53b66039991d06dfb0473b5ab37fc63b4564e0f6e1718523768a045.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/6329bc76c406fe5eb305412383fbde5950f847bb5e43261f73f37622c365acb4.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/63c8e07687ea53a4f8a910ee5e42e0eb26cd1acbfbe820f3e3248a786ee51401.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/69b2d5001684174ec9da57e07914eed3eac4960018bceb6cbfa801d861301d7c.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/710c1acda69e561e30a933b98c6a56d50197868b15c21e2aad55ab6d46649eb6.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/720deca1fce5a1dc5056048fa8258fd138a82ea855f350b6613f104a73fb761f.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/76a23b92d26a499c57e61eea2b895fbc9771bd0849a72e66f8e633192017978b.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/858063f23b34dfe600254eb5afd85518b0002ec4b30b7386616c45600826e3b2.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/920b82c1c89124cf217109eeedbfcd3aae3b917be50c9dfb6bbb4ce26bdfd2e7.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/94d8b7aeb0076f2ce07db598cea0e87b13bc8d5614eb530b8d6e696c2daf6f88.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/9e917fe7022d01b2ccbe5cc0ce73d70bb72bee584ff293bad71bdff6695dee28.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/9f28fdb8399f1d0474f0aca86f1658dc94f5bf0c90f6146352de150692de8862.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/a0dfafa06b2bb7cba8cad41c482503f61944f759f4318139362602ef5cc47ccb.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/a3ff866acddf34917a7ee399e0e571a4dfd8ba66d5057db885f243e16a6eb17d.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/afb8084f539534cd594755ea2205ecd5bd1f62dddcfdf75a2eace59a28131278.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/b57b1438b77294c1f3f6cfce12ac487d8106c6f016975ba0aec94d98997e2e1e.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/b9917b0bf8e4d55ccbac1c334aa04d6ff3c5b6ed9e5d38b9ea2c687fa7d3f5a9.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/bbcc94b0149963d1d6f267ee1f4f03d3925b758392ce2f516c3fe8af0e0169fc.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/bdee44abeadc4abc17d41c52eb49c6e19a4b1a267b6e16876ce91bdeeebfc52d.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/beb112b70f4a56db95920a9e20efb6c97c37b68450716730217a9ee1a9ae92be.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/c88db97be0cdf440193b3995996e83510a04cb00048135485fc0e26d197e80b5.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/d49e5314d34310a62d01a03067ce1bec5da00abce84c5196aa9c6842fa79a430.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/d7664d18c4ddbad9c3a6a31b91f7c00fb0dde804608674a9860ee50f33e54708.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/d9072c318b819b7c90a0f7e9cc0b6413b4dbeb8e9859898e53d75ea882fcde99.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/db16a983bc08a05f0439cc61ca0840e49e1d8400eef678909f16c032a418a3d6.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/dc249829767b8abcbc3677e0b07b6d3ecbfdfe6d08cfe23a665eb33373a9aa9d.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/e242c583c2dbc2784f0fcf513523975f7d5df447e106c1c17e49e8578a6fc3ed.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/eac5f1296513e69e4b96f750ddccd4d0264e2bae4e4c449144e83274a48698d9.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/ed57202cb79649bb716400436590245547df241988fc7c8e1d85d132299542d2.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/f125bf72e773a14cdaebd0c343e80adb909d12e317ee5c00cd4a57442fbe2c62.json +1 -0
- xinference/web/ui/node_modules/.cache/babel-loader/f91af913d7f91c410719ab13136aaed3aaf0f8dda06652f25c42cb5231587398.json +1 -0
- xinference/web/ui/node_modules/.package-lock.json +67 -3
- xinference/web/ui/node_modules/@babel/runtime/package.json +592 -538
- xinference/web/ui/node_modules/html-parse-stringify/package.json +50 -0
- xinference/web/ui/node_modules/i18next/dist/esm/package.json +1 -0
- xinference/web/ui/node_modules/i18next/package.json +129 -0
- xinference/web/ui/node_modules/react-i18next/.eslintrc.json +74 -0
- xinference/web/ui/node_modules/react-i18next/dist/es/package.json +1 -0
- xinference/web/ui/node_modules/react-i18next/package.json +162 -0
- xinference/web/ui/node_modules/void-elements/package.json +34 -0
- xinference/web/ui/package-lock.json +69 -3
- xinference/web/ui/package.json +2 -0
- xinference/web/ui/src/locales/en.json +186 -0
- xinference/web/ui/src/locales/zh.json +186 -0
- {xinference-0.16.3.dist-info → xinference-1.2.1.dist-info}/METADATA +96 -36
- {xinference-0.16.3.dist-info → xinference-1.2.1.dist-info}/RECORD +335 -146
- {xinference-0.16.3.dist-info → xinference-1.2.1.dist-info}/WHEEL +1 -1
- xinference/thirdparty/cosyvoice/bin/export_trt.py +0 -8
- xinference/thirdparty/fish_speech/fish_speech/configs/lora/__init__.py +0 -0
- xinference/thirdparty/fish_speech/fish_speech/datasets/__init__.py +0 -0
- xinference/thirdparty/fish_speech/fish_speech/datasets/protos/__init__.py +0 -0
- xinference/thirdparty/fish_speech/fish_speech/i18n/locale/__init__.py +0 -0
- xinference/thirdparty/fish_speech/fish_speech/models/__init__.py +0 -0
- xinference/thirdparty/fish_speech/fish_speech/models/vqgan/modules/__init__.py +0 -0
- xinference/thirdparty/fish_speech/fish_speech/webui/__init__.py +0 -0
- xinference/thirdparty/fish_speech/tools/__init__.py +0 -0
- xinference/thirdparty/fish_speech/tools/api.py +0 -440
- xinference/thirdparty/fish_speech/tools/commons.py +0 -35
- xinference/thirdparty/fish_speech/tools/llama/__init__.py +0 -0
- xinference/thirdparty/fish_speech/tools/msgpack_api.py +0 -34
- xinference/thirdparty/fish_speech/tools/vqgan/__init__.py +0 -0
- xinference/thirdparty/fish_speech/tools/webui.py +0 -485
- xinference/web/ui/build/static/css/main.5061c4c3.css +0 -2
- xinference/web/ui/build/static/css/main.5061c4c3.css.map +0 -1
- xinference/web/ui/build/static/js/main.2f269bb3.js +0 -3
- xinference/web/ui/build/static/js/main.2f269bb3.js.map +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/07ce9e632e6aff24d7aa3ad8e48224433bbfeb0d633fca723453f1fcae0c9f1c.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/1130403f9e46f5738a23b45ac59b57de8f360c908c713e2c0670c2cce9bd367a.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/131091b25d26b17cdca187d7542a21475c211138d900cf667682260e76ef9463.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/1f269fb2a368363c1cb2237825f1dba093b6bdd8c44cc05954fd19ec2c1fff03.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/331312668fa8bd3d7401818f4a25fa98135d7f61371cd6bfff78b18cf4fbdd92.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/40f17338fc75ae095de7d2b4d8eae0d5ca0193a7e2bcece4ee745b22a7a2f4b7.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/4de9a6942c5f1749d6cbfdd54279699975f16016b182848bc253886f52ec2ec3.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/822586ed1077201b64b954f12f25e3f9b45678c1acbabe53d8af3ca82ca71f33.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/8d33354bd2100c8602afc3341f131a88cc36aaeecd5a4b365ed038514708e350.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/9375a35b05d56989b2755bf72161fa707c92f28569d33765a75f91a568fda6e9.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/a158a9ffa0c9b169aee53dd4a0c44501a596755b4e4f6ede7746d65a72e2a71f.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/bd6ad8159341315a1764c397621a560809f7eb7219ab5174c801fca7e969d943.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/c7bf40bab396765f67d0fed627ed3665890608b2d0edaa3e8cb7cfc96310db45.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/d6c643278a0b28320e6f33a60f5fb64c053997cbdc39a60e53ccc574688ade9e.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/e42b72d4cc1ea412ebecbb8d040dc6c6bfee462c33903c2f1f3facb602ad742e.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/e64b7e8cedcf43d4c95deba60ec1341855c887705805bb62431693118b870c69.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/f5039ddbeb815c51491a1989532006b96fc3ae49c6c60e3c097f875b4ae915ae.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/f72f011744c4649fabddca6f7a9327861ac0a315a89b1a2e62a39774e7863845.json +0 -1
- xinference/web/ui/node_modules/.cache/babel-loader/feabb04b4aa507102da0a64398a40818e878fd1df9b75dda8461b3e1e7ff3f11.json +0 -1
- /xinference/thirdparty/{cosyvoice/bin → f5_tts}/__init__.py +0 -0
- /xinference/thirdparty/{cosyvoice/flow → melo}/__init__.py +0 -0
- /xinference/thirdparty/{cosyvoice/hifigan → melo/text/english_utils}/__init__.py +0 -0
- /xinference/thirdparty/{cosyvoice/llm → melo/text/es_phonemizer}/__init__.py +0 -0
- /xinference/thirdparty/{fish_speech/fish_speech/configs → melo/text/fr_phonemizer}/__init__.py +0 -0
- /xinference/web/ui/build/static/js/{main.2f269bb3.js.LICENSE.txt → main.b0936c54.js.LICENSE.txt} +0 -0
- {xinference-0.16.3.dist-info → xinference-1.2.1.dist-info}/LICENSE +0 -0
- {xinference-0.16.3.dist-info → xinference-1.2.1.dist-info}/entry_points.txt +0 -0
- {xinference-0.16.3.dist-info → xinference-1.2.1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"ast":null,"code":"import _toConsumableArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\";import _slicedToArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";import'./styles/modelCardStyle.css';import{ChatOutlined,Close,Delete,EditNote,EditNoteOutlined,ExpandLess,ExpandMore,Grade,HelpCenterOutlined,HelpOutline,RocketLaunchOutlined,StarBorder,UndoOutlined}from'@mui/icons-material';import{Alert,Backdrop,Box,Button,Chip,CircularProgress,Collapse,Drawer,FormControl,FormControlLabel,Grid,IconButton,InputLabel,ListItemButton,ListItemText,MenuItem,Paper,Select,Snackbar,Stack,Switch,Table,TableBody,TableCell,TableContainer,TableHead,TablePagination,TableRow,TextField,Tooltip}from'@mui/material';import{styled}from'@mui/material/styles';import React,{useContext,useEffect,useRef,useState}from'react';import{useTranslation}from'react-i18next';import{useNavigate}from'react-router-dom';import{ApiContext}from'../../components/apiContext';import CopyComponent from'../../components/copyComponent/copyComponent';import DeleteDialog from'../../components/deleteDialog';import fetchWrapper from'../../components/fetchWrapper';import TitleTypography from'../../components/titleTypography';import AddPair from'./components/addPair';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 llmAllDataKey=['model_uid','model_name','model_type','model_engine','model_format','model_size_in_billions','quantization','n_gpu','n_gpu_layers','replica','request_limits','worker_ip','gpu_idx','download_hub','model_path','gguf_quantization','gguf_model_path','cpu_offload','peft_model_config'];var csghubArr=['qwen2-instruct'];var ModelCard=function ModelCard(_ref){var _JSON$parse,_JSON$parse2;var url=_ref.url,modelData=_ref.modelData,gpuAvailable=_ref.gpuAvailable,modelType=_ref.modelType,_ref$is_custom=_ref.is_custom,is_custom=_ref$is_custom===void 0?false:_ref$is_custom,onHandleCompleteDelete=_ref.onHandleCompleteDelete,onHandlecustomDelete=_ref.onHandlecustomDelete,onGetCollectionArr=_ref.onGetCollectionArr;var _useState=useState(false),_useState2=_slicedToArray(_useState,2),hover=_useState2[0],setHover=_useState2[1];var _useState3=useState(false),_useState4=_slicedToArray(_useState3,2),selected=_useState4[0],setSelected=_useState4[1];var _useState5=useState(false),_useState6=_slicedToArray(_useState5,2),requestLimitsAlert=_useState6[0],setRequestLimitsAlert=_useState6[1];var _useState7=useState(false),_useState8=_slicedToArray(_useState7,2),GPUIdxAlert=_useState8[0],setGPUIdxAlert=_useState8[1];var _useState9=useState(false),_useState10=_slicedToArray(_useState9,2),isOther=_useState10[0],setIsOther=_useState10[1];var _useState11=useState(false),_useState12=_slicedToArray(_useState11,2),isPeftModelConfig=_useState12[0],setIsPeftModelConfig=_useState12[1];var _useState13=useState(false),_useState14=_slicedToArray(_useState13,2),openSnackbar=_useState14[0],setOpenSnackbar=_useState14[1];var _useState15=useState(false),_useState16=_slicedToArray(_useState15,2),openErrorSnackbar=_useState16[0],setOpenErrorSnackbar=_useState16[1];var _useState17=useState(''),_useState18=_slicedToArray(_useState17,2),errorSnackbarValue=_useState18[0],setErrorSnackbarValue=_useState18[1];var _useContext=useContext(ApiContext),isCallingApi=_useContext.isCallingApi,setIsCallingApi=_useContext.setIsCallingApi;var _useContext2=useContext(ApiContext),isUpdatingModel=_useContext2.isUpdatingModel;var _useContext3=useContext(ApiContext),setErrorMsg=_useContext3.setErrorMsg;var navigate=useNavigate();// Model parameter selections\nvar _useState19=useState(''),_useState20=_slicedToArray(_useState19,2),modelUID=_useState20[0],setModelUID=_useState20[1];var _useState21=useState(''),_useState22=_slicedToArray(_useState21,2),modelEngine=_useState22[0],setModelEngine=_useState22[1];var _useState23=useState(''),_useState24=_slicedToArray(_useState23,2),modelFormat=_useState24[0],setModelFormat=_useState24[1];var _useState25=useState(''),_useState26=_slicedToArray(_useState25,2),modelSize=_useState26[0],setModelSize=_useState26[1];var _useState27=useState(''),_useState28=_slicedToArray(_useState27,2),quantization=_useState28[0],setQuantization=_useState28[1];var _useState29=useState('auto'),_useState30=_slicedToArray(_useState29,2),nGPU=_useState30[0],setNGPU=_useState30[1];var _useState31=useState(gpuAvailable===0?'CPU':'GPU'),_useState32=_slicedToArray(_useState31,2),nGpu=_useState32[0],setNGpu=_useState32[1];var _useState33=useState(-1),_useState34=_slicedToArray(_useState33,2),nGPULayers=_useState34[0],setNGPULayers=_useState34[1];var _useState35=useState(1),_useState36=_slicedToArray(_useState35,2),replica=_useState36[0],setReplica=_useState36[1];var _useState37=useState(''),_useState38=_slicedToArray(_useState37,2),requestLimits=_useState38[0],setRequestLimits=_useState38[1];var _useState39=useState(''),_useState40=_slicedToArray(_useState39,2),workerIp=_useState40[0],setWorkerIp=_useState40[1];var _useState41=useState(''),_useState42=_slicedToArray(_useState41,2),GPUIdx=_useState42[0],setGPUIdx=_useState42[1];var _useState43=useState(''),_useState44=_slicedToArray(_useState43,2),downloadHub=_useState44[0],setDownloadHub=_useState44[1];var _useState45=useState(''),_useState46=_slicedToArray(_useState45,2),modelPath=_useState46[0],setModelPath=_useState46[1];var _useState47=useState(''),_useState48=_slicedToArray(_useState47,2),ggufQuantizations=_useState48[0],setGgufQuantizations=_useState48[1];var _useState49=useState(''),_useState50=_slicedToArray(_useState49,2),ggufModelPath=_useState50[0],setGgufModelPath=_useState50[1];var _useState51=useState(false),_useState52=_slicedToArray(_useState51,2),cpuOffload=_useState52[0],setCpuOffload=_useState52[1];var _useState53=useState({}),_useState54=_slicedToArray(_useState53,2),enginesObj=_useState54[0],setEnginesObj=_useState54[1];var _useState55=useState([]),_useState56=_slicedToArray(_useState55,2),engineOptions=_useState56[0],setEngineOptions=_useState56[1];var _useState57=useState([]),_useState58=_slicedToArray(_useState57,2),formatOptions=_useState58[0],setFormatOptions=_useState58[1];var _useState59=useState([]),_useState60=_slicedToArray(_useState59,2),sizeOptions=_useState60[0],setSizeOptions=_useState60[1];var _useState61=useState([]),_useState62=_slicedToArray(_useState61,2),quantizationOptions=_useState62[0],setQuantizationOptions=_useState62[1];var _useState63=useState(false),_useState64=_slicedToArray(_useState63,2),customDeleted=_useState64[0],setCustomDeleted=_useState64[1];var _useState65=useState([]),_useState66=_slicedToArray(_useState65,2),customParametersArr=_useState66[0],setCustomParametersArr=_useState66[1];var _useState67=useState([]),_useState68=_slicedToArray(_useState67,2),loraListArr=_useState68[0],setLoraListArr=_useState68[1];var _useState69=useState([]),_useState70=_slicedToArray(_useState69,2),imageLoraLoadKwargsArr=_useState70[0],setImageLoraLoadKwargsArr=_useState70[1];var _useState71=useState([]),_useState72=_slicedToArray(_useState71,2),imageLoraFuseKwargsArr=_useState72[0],setImageLoraFuseKwargsArr=_useState72[1];var _useState73=useState(false),_useState74=_slicedToArray(_useState73,2),isOpenCachedList=_useState74[0],setIsOpenCachedList=_useState74[1];var _useState75=useState(false),_useState76=_slicedToArray(_useState75,2),isDeleteCached=_useState76[0],setIsDeleteCached=_useState76[1];var _useState77=useState([]),_useState78=_slicedToArray(_useState77,2),cachedListArr=_useState78[0],setCachedListArr=_useState78[1];var _useState79=useState(''),_useState80=_slicedToArray(_useState79,2),cachedModelVersion=_useState80[0],setCachedModelVersion=_useState80[1];var _useState81=useState(''),_useState82=_slicedToArray(_useState81,2),cachedRealPath=_useState82[0],setCachedRealPath=_useState82[1];var _useState83=useState(0),_useState84=_slicedToArray(_useState83,2),page=_useState84[0],setPage=_useState84[1];var _useState85=useState(false),_useState86=_slicedToArray(_useState85,2),isDeleteCustomModel=_useState86[0],setIsDeleteCustomModel=_useState86[1];var _useState87=useState(false),_useState88=_slicedToArray(_useState87,2),isJsonShow=_useState88[0],setIsJsonShow=_useState88[1];var _useState89=useState(false),_useState90=_slicedToArray(_useState89,2),isHistory=_useState90[0],setIsHistory=_useState90[1];var _useState91=useState([]),_useState92=_slicedToArray(_useState91,2),customArr=_useState92[0],setCustomArr=_useState92[1];var _useState93=useState([]),_useState94=_slicedToArray(_useState93,2),loraArr=_useState94[0],setLoraArr=_useState94[1];var _useState95=useState([]),_useState96=_slicedToArray(_useState95,2),imageLoraLoadArr=_useState96[0],setImageLoraLoadArr=_useState96[1];var _useState97=useState([]),_useState98=_slicedToArray(_useState97,2),imageLoraFuseArr=_useState98[0],setImageLoraFuseArr=_useState98[1];var _useState99=useState(0),_useState100=_slicedToArray(_useState99,2),customParametersArrLength=_useState100[0],setCustomParametersArrLength=_useState100[1];var parentRef=useRef(null);var _useTranslation=useTranslation(),t=_useTranslation.t;var range=function range(start,end){return new Array(end-start+1).fill(undefined).map(function(_,i){return i+start;});};var isCached=function isCached(spec){if(Array.isArray(spec.cache_status)){return spec.cache_status.some(function(cs){return cs;});}else{return spec.cache_status===true;}};// model size can be int or string. For string style, \"1_8\" means 1.8 as an example.\nvar convertModelSize=function convertModelSize(size){return size.toString().includes('_')?size:parseInt(size,10);};useEffect(function(){var keyArr=[];for(var key in enginesObj){keyArr.push(key);}if(keyArr.length){handleLlmHistory();}},[enginesObj]);useEffect(function(){if(modelEngine){var format=_toConsumableArray(new Set(enginesObj[modelEngine].map(function(item){return item.model_format;})));setFormatOptions(format);if(!isHistory||!format.includes(modelFormat)){setModelFormat('');}if(format.length===1){setModelFormat(format[0]);}}},[modelEngine]);useEffect(function(){if(modelEngine&&modelFormat){var sizes=_toConsumableArray(new Set(enginesObj[modelEngine].filter(function(item){return item.model_format===modelFormat;}).map(function(item){return item.model_size_in_billions;})));setSizeOptions(sizes);if(!isHistory||sizeOptions.length&&JSON.stringify(sizes)!==JSON.stringify(sizeOptions)){setModelSize('');}if(sizes.length===1){setModelSize(sizes[0]);}}},[modelEngine,modelFormat]);useEffect(function(){if(modelEngine&&modelFormat&&modelSize){var quants=_toConsumableArray(new Set(enginesObj[modelEngine].filter(function(item){return item.model_format===modelFormat&&item.model_size_in_billions===convertModelSize(modelSize);}).flatMap(function(item){return item.quantizations;})));setQuantizationOptions(quants);if(!isHistory||!quants.includes(quantization)){setQuantization('');}if(quants.length===1){setQuantization(quants[0]);}}},[modelEngine,modelFormat,modelSize]);useEffect(function(){setCustomParametersArrLength(customParametersArr.length);if(parentRef.current&&customParametersArr.length>customParametersArrLength){parentRef.current.scrollTo({top:parentRef.current.scrollHeight,behavior:'smooth'});}},[customParametersArr]);var getNGPURange=function getNGPURange(){if(gpuAvailable===0){// remain 'auto' for distributed situation\nreturn['auto','CPU'];}return['auto','CPU'].concat(range(1,gpuAvailable));};var getNewNGPURange=function getNewNGPURange(){if(gpuAvailable===0){return['CPU'];}else{return['GPU','CPU'];}};var getModelEngine=function getModelEngine(model_name){fetchWrapper.get(\"/v1/engines/\".concat(model_name)).then(function(data){setEnginesObj(data);setEngineOptions(Object.keys(data));setIsCallingApi(false);}).catch(function(error){console.error('Error:',error);if(error.response.status!==403){setErrorMsg(error.message);}setIsCallingApi(false);});};var launchModel=function launchModel(){if(isCallingApi||isUpdatingModel){return;}setIsCallingApi(true);try{var _String,_String2;var modelDataWithID_LLM={// If user does not fill model_uid, pass null (None) to server and server generates it.\nmodel_uid:(modelUID===null||modelUID===void 0?void 0:modelUID.trim())===''?null:modelUID===null||modelUID===void 0?void 0:modelUID.trim(),model_name:modelData.model_name,model_type:modelType,model_engine:modelEngine,model_format:modelFormat,model_size_in_billions:convertModelSize(modelSize),quantization:quantization,n_gpu:parseInt(nGPU,10)===0||nGPU==='CPU'?null:nGPU==='auto'?'auto':parseInt(nGPU,10),replica:replica,request_limits:((_String=String(requestLimits))===null||_String===void 0?void 0:_String.trim())===''?null:Number((_String2=String(requestLimits))===null||_String2===void 0?void 0:_String2.trim()),worker_ip:(workerIp===null||workerIp===void 0?void 0:workerIp.trim())===''?null:workerIp===null||workerIp===void 0?void 0:workerIp.trim(),gpu_idx:(GPUIdx===null||GPUIdx===void 0?void 0:GPUIdx.trim())===''?null:handleGPUIdx(GPUIdx===null||GPUIdx===void 0?void 0:GPUIdx.trim()),download_hub:downloadHub===''?null:downloadHub,model_path:(modelPath===null||modelPath===void 0?void 0:modelPath.trim())===''?null:modelPath===null||modelPath===void 0?void 0:modelPath.trim()};var modelDataWithID_other={model_uid:(modelUID===null||modelUID===void 0?void 0:modelUID.trim())===''?null:modelUID===null||modelUID===void 0?void 0:modelUID.trim(),model_name:modelData.model_name,model_type:modelType,replica:replica,n_gpu:nGpu==='GPU'?'auto':null,worker_ip:(workerIp===null||workerIp===void 0?void 0:workerIp.trim())===''?null:workerIp.trim(),gpu_idx:(GPUIdx===null||GPUIdx===void 0?void 0:GPUIdx.trim())===''?null:handleGPUIdx(GPUIdx===null||GPUIdx===void 0?void 0:GPUIdx.trim()),download_hub:downloadHub===''?null:downloadHub,model_path:(modelPath===null||modelPath===void 0?void 0:modelPath.trim())===''?null:modelPath===null||modelPath===void 0?void 0:modelPath.trim()};if(nGPULayers>=0)modelDataWithID_LLM.n_gpu_layers=nGPULayers;if(ggufQuantizations)modelDataWithID_other.gguf_quantization=ggufQuantizations;if(ggufModelPath)modelDataWithID_other.gguf_model_path=ggufModelPath;if(modelType==='image')modelDataWithID_other.cpu_offload=cpuOffload;var modelDataWithID=modelType==='LLM'?modelDataWithID_LLM:modelDataWithID_other;if(loraListArr.length||imageLoraLoadKwargsArr.length||imageLoraFuseKwargsArr.length){var peft_model_config={};if(imageLoraLoadKwargsArr.length){var image_lora_load_kwargs={};imageLoraLoadKwargsArr.forEach(function(item){image_lora_load_kwargs[item.key]=handleValueType(item.value);});peft_model_config['image_lora_load_kwargs']=image_lora_load_kwargs;}if(imageLoraFuseKwargsArr.length){var image_lora_fuse_kwargs={};imageLoraFuseKwargsArr.forEach(function(item){image_lora_fuse_kwargs[item.key]=handleValueType(item.value);});peft_model_config['image_lora_fuse_kwargs']=image_lora_fuse_kwargs;}if(loraListArr.length){var lora_list=loraListArr;lora_list.map(function(item){delete item.id;});peft_model_config['lora_list']=lora_list;}modelDataWithID['peft_model_config']=peft_model_config;}if(customParametersArr.length){customParametersArr.forEach(function(item){modelDataWithID[item.key]=handleValueType(item.value);});}// First fetcher request to initiate the model\nfetchWrapper.post('/v1/models',modelDataWithID).then(function(){navigate(\"/running_models/\".concat(modelType));sessionStorage.setItem('runningModelType',\"/running_models/\".concat(modelType));var historyArr=JSON.parse(localStorage.getItem('historyArr'))||[];var historyModelNameArr=historyArr.map(function(item){return item.model_name;});if(historyModelNameArr.includes(modelDataWithID.model_name)){historyArr=historyArr.map(function(item){if(item.model_name===modelDataWithID.model_name){return modelDataWithID;}return item;});}else{historyArr.push(modelDataWithID);}localStorage.setItem('historyArr',JSON.stringify(historyArr));setIsCallingApi(false);}).catch(function(error){console.error('Error:',error);if(error.response.status!==403){setErrorMsg(error.message);}setIsCallingApi(false);});}catch(error){setOpenErrorSnackbar(true);setErrorSnackbarValue(\"\".concat(error));setIsCallingApi(false);}};var handleGPUIdx=function handleGPUIdx(data){var arr=[];data.split(',').forEach(function(item){arr.push(Number(item));});return arr;};var handeCustomDelete=function handeCustomDelete(e){e.stopPropagation();var subType=sessionStorage.getItem('subType').split('/');if(subType){subType[3];fetchWrapper.delete(\"/v1/model_registrations/\".concat(subType[3]==='llm'?'LLM':subType[3],\"/\").concat(modelData.model_name)).then(function(){setCustomDeleted(true);onHandlecustomDelete(modelData.model_name);setIsDeleteCustomModel(false);}).catch(function(error){console.error(error);if(error.response.status!==403){setErrorMsg(error.message);}});}};var judgeArr=function judgeArr(arr,keysArr){if(arr.length&&arr[arr.length-1][keysArr[0]]!==''&&arr[arr.length-1][keysArr[1]]!==''){return true;}else if(arr.length===0){return true;}else{return false;}};var handleValueType=function handleValueType(str){str=String(str);if(str.toLowerCase()==='none'){return null;}else if(str.toLowerCase()==='true'){return true;}else if(str.toLowerCase()==='false'){return false;}else if(Number(str)||str!==''&&Number(str)===0){return Number(str);}else{return str;}};var StyledTableRow=styled(TableRow)(function(_ref2){var theme=_ref2.theme;return{'&:nth-of-type(odd)':{backgroundColor:theme.palette.action.hover}};});var emptyRows=page>=0?Math.max(0,(1+page)*5-cachedListArr.length):0;var handleChangePage=function handleChangePage(_,newPage){setPage(newPage);};var handleOpenCachedList=function handleOpenCachedList(){setIsOpenCachedList(true);getCachedList();document.body.style.overflow='hidden';};var handleCloseCachedList=function handleCloseCachedList(){document.body.style.overflow='auto';setHover(false);setIsOpenCachedList(false);if(cachedListArr.length===0){onHandleCompleteDelete(modelData.model_name);}};var getCachedList=function getCachedList(){fetchWrapper.get(\"/v1/cache/models?model_name=\".concat(modelData.model_name)).then(function(data){return setCachedListArr(data.list);}).catch(function(error){console.error(error);if(error.response.status!==403){setErrorMsg(error.message);}});};var handleOpenDeleteCachedDialog=function handleOpenDeleteCachedDialog(real_path,model_version){setCachedRealPath(real_path);setCachedModelVersion(model_version);setIsDeleteCached(true);};var handleDeleteCached=function handleDeleteCached(){fetchWrapper.delete(\"/v1/cache/models?model_version=\".concat(cachedModelVersion)).then(function(){var cachedArr=cachedListArr.filter(function(item){return item.real_path!==cachedRealPath;});setCachedListArr(cachedArr);setIsDeleteCached(false);if(cachedArr.length){if((page+1)*5>=cachedListArr.length&&cachedArr.length%5===0){setPage(cachedArr.length/5-1);}}}).catch(function(error){console.error(error);if(error.response.status!==403){setErrorMsg(error.message);}});};var handleJsonDataPresentation=function handleJsonDataPresentation(){var arr=sessionStorage.getItem('subType').split('/');sessionStorage.setItem('registerModelType',\"/register_model/\".concat(arr[arr.length-1]));sessionStorage.setItem('customJsonData',JSON.stringify(modelData));navigate(\"/register_model/\".concat(arr[arr.length-1],\"/\").concat(modelData.model_name));};var handleGetHistory=function handleGetHistory(){var historyArr=JSON.parse(localStorage.getItem('historyArr'))||[];return historyArr.filter(function(item){return item.model_name===modelData.model_name;});};var handleLlmHistory=function handleLlmHistory(){var arr=handleGetHistory();if(arr.length){var _peft_model_config$lo;var _arr$=arr[0],model_engine=_arr$.model_engine,model_format=_arr$.model_format,model_size_in_billions=_arr$.model_size_in_billions,_quantization=_arr$.quantization,n_gpu=_arr$.n_gpu,n_gpu_layers=_arr$.n_gpu_layers,_replica=_arr$.replica,model_uid=_arr$.model_uid,request_limits=_arr$.request_limits,worker_ip=_arr$.worker_ip,gpu_idx=_arr$.gpu_idx,download_hub=_arr$.download_hub,model_path=_arr$.model_path,peft_model_config=_arr$.peft_model_config;if(!engineOptions.includes(model_engine)){setModelEngine('');}else{setModelEngine(model_engine||'');}setModelFormat(model_format||'');setModelSize(String(model_size_in_billions)||'');setQuantization(_quantization||'');setNGPU(n_gpu||'auto');if(n_gpu_layers>=0){setNGPULayers(n_gpu_layers);}else{setNGPULayers(-1);}setReplica(_replica||1);setModelUID(model_uid||'');setRequestLimits(request_limits||'');setWorkerIp(worker_ip||'');setGPUIdx((gpu_idx===null||gpu_idx===void 0?void 0:gpu_idx.join(','))||'');setDownloadHub(download_hub||'');setModelPath(model_path||'');var loraData=[];peft_model_config===null||peft_model_config===void 0?void 0:(_peft_model_config$lo=peft_model_config.lora_list)===null||_peft_model_config$lo===void 0?void 0:_peft_model_config$lo.forEach(function(item){loraData.push({lora_name:item.lora_name,local_path:item.local_path});});setLoraArr(loraData);var customData=[];for(var key in arr[0]){!llmAllDataKey.includes(key)&&customData.push({key:key,value:arr[0][key]||'none'});}setCustomArr(customData);if(model_uid||request_limits||worker_ip||gpu_idx!==null&&gpu_idx!==void 0&&gpu_idx.join(',')||download_hub||model_path)setIsOther(true);if(loraData.length){setIsOther(true);setIsPeftModelConfig(true);}}};var handleOtherHistory=function handleOtherHistory(){var arr=handleGetHistory();if(arr.length){var _arr$0$gpu_idx;setModelUID(arr[0].model_uid||'');setReplica(arr[0].replica||1);setNGpu(arr[0].n_gpu==='auto'?'GPU':'CPU');setGPUIdx(((_arr$0$gpu_idx=arr[0].gpu_idx)===null||_arr$0$gpu_idx===void 0?void 0:_arr$0$gpu_idx.join(','))||'');setWorkerIp(arr[0].worker_ip||'');setDownloadHub(arr[0].download_hub||'');setModelPath(arr[0].model_path||'');setGgufQuantizations(arr[0].gguf_quantization||'');setGgufModelPath(arr[0].gguf_model_path||'');setCpuOffload(arr[0].cpu_offload||false);if(arr[0].model_type==='image'){var _arr$0$peft_model_con,_arr$0$peft_model_con2;var loraData=[];(_arr$0$peft_model_con=arr[0].peft_model_config)===null||_arr$0$peft_model_con===void 0?void 0:(_arr$0$peft_model_con2=_arr$0$peft_model_con.lora_list)===null||_arr$0$peft_model_con2===void 0?void 0:_arr$0$peft_model_con2.forEach(function(item){loraData.push({lora_name:item.lora_name,local_path:item.local_path});});setLoraArr(loraData);var ImageLoraLoadData=[];for(var key in(_arr$0$peft_model_con3=arr[0].peft_model_config)===null||_arr$0$peft_model_con3===void 0?void 0:_arr$0$peft_model_con3.image_lora_load_kwargs){var _arr$0$peft_model_con3,_arr$0$peft_model_con4;ImageLoraLoadData.push({key:key,value:((_arr$0$peft_model_con4=arr[0].peft_model_config)===null||_arr$0$peft_model_con4===void 0?void 0:_arr$0$peft_model_con4.image_lora_load_kwargs[key])||'none'});}setImageLoraLoadArr(ImageLoraLoadData);var ImageLoraFuseData=[];for(var _key in(_arr$0$peft_model_con5=arr[0].peft_model_config)===null||_arr$0$peft_model_con5===void 0?void 0:_arr$0$peft_model_con5.image_lora_fuse_kwargs){var _arr$0$peft_model_con5,_arr$0$peft_model_con6;ImageLoraFuseData.push({key:_key,value:((_arr$0$peft_model_con6=arr[0].peft_model_config)===null||_arr$0$peft_model_con6===void 0?void 0:_arr$0$peft_model_con6.image_lora_fuse_kwargs[_key])||'none'});}setImageLoraFuseArr(ImageLoraFuseData);if(loraData.length||ImageLoraLoadData.length||ImageLoraFuseData.length){setIsPeftModelConfig(true);}}var customData=[];for(var _key2 in arr[0]){!llmAllDataKey.includes(_key2)&&customData.push({key:_key2,value:arr[0][_key2]||'none'});}setCustomArr(customData);}};var handleCollection=function handleCollection(bool){setHover(false);var collectionArr=JSON.parse(localStorage.getItem('collectionArr'))||[];if(bool){collectionArr.push(modelData.model_name);}else{collectionArr=collectionArr.filter(function(item){return item!==modelData.model_name;});}localStorage.setItem('collectionArr',JSON.stringify(collectionArr));onGetCollectionArr(collectionArr);};var handleDeleteChip=function handleDeleteChip(){var arr=JSON.parse(localStorage.getItem('historyArr'));var newArr=arr.filter(function(item){return item.model_name!==modelData.model_name;});localStorage.setItem('historyArr',JSON.stringify(newArr));setIsHistory(false);if(modelType==='LLM'){setModelEngine('');setModelFormat('');setModelSize('');setQuantization('');setNGPU('auto');setReplica(1);setModelUID('');setRequestLimits('');setWorkerIp('');setGPUIdx('');setDownloadHub('');setModelPath('');setLoraArr([]);setCustomArr([]);setIsOther(false);setIsPeftModelConfig(false);}else{setModelUID('');setReplica(1);setNGpu(gpuAvailable===0?'CPU':'GPU');setGPUIdx('');setWorkerIp('');setDownloadHub('');setModelPath('');setGgufQuantizations('');setGgufModelPath('');setCpuOffload(false);setLoraArr([]);setImageLoraLoadArr([]);setImageLoraFuseArr([]);setCustomArr([]);setIsPeftModelConfig(false);}};var normalizeLanguage=function normalizeLanguage(language){if(Array.isArray(language)){return language.map(function(lang){return lang.toLowerCase();});}else if(typeof language==='string'){return[language.toLowerCase()];}else{return[];}};// Set two different states based on mouse hover\nreturn/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Paper,{id:modelData.model_name,className:\"container\",onMouseEnter:function onMouseEnter(){return setHover(true);},onMouseLeave:function onMouseLeave(){return setHover(false);},onClick:function onClick(){if(!selected&&!customDeleted){var arr=handleGetHistory();if(arr.length)setIsHistory(true);setSelected(true);if(modelType==='LLM'){getModelEngine(modelData.model_name);}else{handleOtherHistory();}}},elevation:hover?24:4,children:modelType==='LLM'?/*#__PURE__*/_jsxs(Box,{className:\"descriptionCard\",children:[is_custom&&/*#__PURE__*/_jsxs(\"div\",{className:\"cardTitle\",children:[/*#__PURE__*/_jsx(TitleTypography,{value:modelData.model_name}),/*#__PURE__*/_jsxs(\"div\",{className:\"iconButtonBox\",children:[/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.edit'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"show\",onClick:function onClick(e){e.stopPropagation();setIsJsonShow(true);},children:/*#__PURE__*/_jsx(EditNote,{})})}),/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.delete'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"delete\",onClick:function onClick(e){e.stopPropagation();setIsDeleteCustomModel(true);},children:/*#__PURE__*/_jsx(Delete,{})})})]})]}),!is_custom&&/*#__PURE__*/_jsxs(\"div\",{className:\"cardTitle\",children:[/*#__PURE__*/_jsx(TitleTypography,{value:modelData.model_name}),/*#__PURE__*/_jsx(\"div\",{className:\"iconButtonBox\",children:(_JSON$parse=JSON.parse(localStorage.getItem('collectionArr')))!==null&&_JSON$parse!==void 0&&_JSON$parse.includes(modelData.model_name)?/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.unfavorite'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"collection\",onClick:function onClick(e){e.stopPropagation();handleCollection(false);},children:/*#__PURE__*/_jsx(Grade,{style:{color:'rgb(255, 206, 0)'}})})}):/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.favorite'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"cancellation-of-collections\",onClick:function onClick(e){e.stopPropagation();handleCollection(true);},children:/*#__PURE__*/_jsx(StarBorder,{})})})})]}),/*#__PURE__*/_jsxs(Stack,{spacing:1,direction:\"row\",useFlexGap:true,flexWrap:\"wrap\",sx:{marginLeft:1},children:[modelData.model_lang&&function(){return modelData.model_lang.map(function(v){return/*#__PURE__*/_jsx(Chip,{label:v,variant:\"outlined\",size:\"small\",onClick:function onClick(e){e.stopPropagation();}},v);});}(),function(){if(modelData.model_specs&&modelData.model_specs.some(function(spec){return isCached(spec);})){return/*#__PURE__*/_jsx(Chip,{label:t('launchModel.manageCachedModels'),variant:\"outlined\",color:\"primary\",size:\"small\",deleteIcon:/*#__PURE__*/_jsx(EditNote,{}),onDelete:handleOpenCachedList,onClick:function onClick(e){e.stopPropagation();handleOpenCachedList();}});}}(),function(){if(is_custom&&customDeleted){return/*#__PURE__*/_jsx(Chip,{label:\"Deleted\",variant:\"outlined\",size:\"small\"});}}()]}),modelData.model_description&&/*#__PURE__*/_jsx(\"p\",{className:\"p\",title:modelData.model_description,children:modelData.model_description}),/*#__PURE__*/_jsxs(\"div\",{className:\"iconRow\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"iconItem\",children:[/*#__PURE__*/_jsxs(\"span\",{className:\"boldIconText\",children:[Math.floor(modelData.context_length/1000),\"K\"]}),/*#__PURE__*/_jsx(\"small\",{className:\"smallText\",children:t('launchModel.contextLength')})]}),function(){if(modelData.model_ability&&modelData.model_ability.includes('chat')){return/*#__PURE__*/_jsxs(\"div\",{className:\"iconItem\",children:[/*#__PURE__*/_jsx(ChatOutlined,{className:\"muiIcon\"}),/*#__PURE__*/_jsx(\"small\",{className:\"smallText\",children:t('launchModel.chatModel')})]});}else if(modelData.model_ability&&modelData.model_ability.includes('generate')){return/*#__PURE__*/_jsxs(\"div\",{className:\"iconItem\",children:[/*#__PURE__*/_jsx(EditNoteOutlined,{className:\"muiIcon\"}),/*#__PURE__*/_jsx(\"small\",{className:\"smallText\",children:t('launchModel.generateModel')})]});}else{return/*#__PURE__*/_jsxs(\"div\",{className:\"iconItem\",children:[/*#__PURE__*/_jsx(HelpCenterOutlined,{className:\"muiIcon\"}),/*#__PURE__*/_jsx(\"small\",{className:\"smallText\",children:t('launchModel.otherModel')})]});}}()]})]}):/*#__PURE__*/_jsxs(Box,{className:\"descriptionCard\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"titleContainer\",children:[is_custom&&/*#__PURE__*/_jsxs(\"div\",{className:\"cardTitle\",children:[/*#__PURE__*/_jsx(TitleTypography,{value:modelData.model_name}),/*#__PURE__*/_jsxs(\"div\",{className:\"iconButtonBox\",children:[/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.edit'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"show\",onClick:function onClick(e){e.stopPropagation();setIsJsonShow(true);},children:/*#__PURE__*/_jsx(EditNote,{})})}),/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.delete'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"delete\",onClick:function onClick(e){e.stopPropagation();setIsDeleteCustomModel(true);},disabled:customDeleted,children:/*#__PURE__*/_jsx(Delete,{})})})]})]}),!is_custom&&/*#__PURE__*/_jsxs(\"div\",{className:\"cardTitle\",children:[/*#__PURE__*/_jsx(TitleTypography,{value:modelData.model_name}),/*#__PURE__*/_jsx(\"div\",{className:\"iconButtonBox\",children:(_JSON$parse2=JSON.parse(localStorage.getItem('collectionArr')))!==null&&_JSON$parse2!==void 0&&_JSON$parse2.includes(modelData.model_name)?/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.unfavorite'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"collection\",onClick:function onClick(e){e.stopPropagation();handleCollection(false);},children:/*#__PURE__*/_jsx(Grade,{style:{color:'rgb(255, 206, 0)'}})})}):/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.favorite'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"cancellation-of-collections\",onClick:function onClick(e){e.stopPropagation();handleCollection(true);},children:/*#__PURE__*/_jsx(StarBorder,{})})})})]}),/*#__PURE__*/_jsxs(Stack,{spacing:1,direction:\"row\",useFlexGap:true,flexWrap:\"wrap\",sx:{marginLeft:1},children:[function(){if(modelData.language){return normalizeLanguage(modelData.language).map(function(v){return/*#__PURE__*/_jsx(Chip,{label:v,variant:\"outlined\",size:\"small\",onClick:function onClick(e){e.stopPropagation();}},v);});}else if(modelData.model_family){return/*#__PURE__*/_jsx(Chip,{label:modelData.model_family,variant:\"outlined\",size:\"small\",onClick:function onClick(e){e.stopPropagation();}});}}(),function(){if(modelData.cache_status){return/*#__PURE__*/_jsx(Chip,{label:t('launchModel.manageCachedModels'),variant:\"outlined\",color:\"primary\",size:\"small\",deleteIcon:/*#__PURE__*/_jsx(EditNote,{}),onDelete:handleOpenCachedList,onClick:function onClick(e){e.stopPropagation();handleOpenCachedList();}});}}(),function(){if(is_custom&&customDeleted){return/*#__PURE__*/_jsx(Chip,{label:\"Deleted\",variant:\"outlined\",size:\"small\"});}}()]}),modelData.model_description&&/*#__PURE__*/_jsx(\"p\",{className:\"p\",title:modelData.model_description,children:modelData.model_description})]}),modelData.dimensions&&/*#__PURE__*/_jsxs(\"div\",{className:\"iconRow\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"iconItem\",children:[/*#__PURE__*/_jsx(\"span\",{className:\"boldIconText\",children:modelData.dimensions}),/*#__PURE__*/_jsx(\"small\",{className:\"smallText\",children:t('launchModel.dimensions')})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"iconItem\",children:[/*#__PURE__*/_jsx(\"span\",{className:\"boldIconText\",children:modelData.max_tokens}),/*#__PURE__*/_jsx(\"small\",{className:\"smallText\",children:t('launchModel.maxTokens')})]})]}),!selected&&hover&&/*#__PURE__*/_jsx(\"p\",{className:\"instructionText\",children:t('launchModel.clickToLaunchModel')})]})}),/*#__PURE__*/_jsx(DeleteDialog,{text:t('launchModel.confirmDeleteCustomModel'),isDelete:isDeleteCustomModel,onHandleIsDelete:function onHandleIsDelete(){return setIsDeleteCustomModel(false);},onHandleDelete:handeCustomDelete}),/*#__PURE__*/_jsx(Drawer,{open:selected,onClose:function onClose(){setSelected(false);setHover(false);},anchor:'right',children:/*#__PURE__*/_jsxs(\"div\",{className:\"drawerCard\",children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:'flex',alignItems:'center'},children:[/*#__PURE__*/_jsx(TitleTypography,{value:modelData.model_name}),isHistory&&/*#__PURE__*/_jsx(Chip,{label:t('launchModel.lastConfig'),variant:\"outlined\",size:\"small\",color:\"primary\",onDelete:handleDeleteChip})]}),modelType==='LLM'?/*#__PURE__*/_jsx(Box,{ref:parentRef,className:\"formContainer\",display:\"flex\",flexDirection:\"column\",width:\"100%\",mx:\"auto\",children:/*#__PURE__*/_jsxs(Grid,{rowSpacing:0,columnSpacing:1,children:[/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"modelEngine-label\",children:t('launchModel.modelEngine')}),/*#__PURE__*/_jsx(Select,{labelId:\"modelEngine-label\",value:modelEngine,onChange:function onChange(e){return setModelEngine(e.target.value);},label:t('launchModel.modelEngine'),children:engineOptions.map(function(engine){var subArr=[];enginesObj[engine].forEach(function(item){subArr.push(item.model_format);});var arr=_toConsumableArray(new Set(subArr));var specs=modelData.model_specs.filter(function(spec){return arr.includes(spec.model_format);});var cached=specs.some(function(spec){return isCached(spec);});var displayedEngine=cached?engine+' '+t('launchModel.cached'):engine;return/*#__PURE__*/_jsx(MenuItem,{value:engine,children:displayedEngine},engine);})})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,disabled:!modelEngine,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"modelFormat-label\",children:t('launchModel.modelFormat')}),/*#__PURE__*/_jsx(Select,{labelId:\"modelFormat-label\",value:modelFormat,onChange:function onChange(e){return setModelFormat(e.target.value);},label:t('launchModel.modelFormat'),children:formatOptions.map(function(format){var specs=modelData.model_specs.filter(function(spec){return spec.model_format===format;});var cached=specs.some(function(spec){return isCached(spec);});var displayedFormat=cached?format+' '+t('launchModel.cached'):format;return/*#__PURE__*/_jsx(MenuItem,{value:format,children:displayedFormat},format);})})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,disabled:!modelFormat,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"modelSize-label\",children:t('launchModel.modelSize')}),/*#__PURE__*/_jsx(Select,{labelId:\"modelSize-label\",value:modelSize,onChange:function onChange(e){return setModelSize(e.target.value);},label:t('launchModel.modelSize'),children:sizeOptions.map(function(size){var specs=modelData.model_specs.filter(function(spec){return spec.model_format===modelFormat;}).filter(function(spec){return spec.model_size_in_billions===size;});var cached=specs.some(function(spec){return isCached(spec);});var displayedSize=cached?size+' '+t('launchModel.cached'):size;return/*#__PURE__*/_jsx(MenuItem,{value:size,children:displayedSize},size);})})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,disabled:!modelFormat||!modelSize,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"quantization-label\",children:t('launchModel.quantization')}),/*#__PURE__*/_jsx(Select,{labelId:\"quantization-label\",value:quantization,onChange:function onChange(e){return setQuantization(e.target.value);},label:t('launchModel.quantization'),children:quantizationOptions.map(function(quant){var specs=modelData.model_specs.filter(function(spec){return spec.model_format===modelFormat;}).filter(function(spec){return spec.model_size_in_billions===convertModelSize(modelSize);});var spec=specs.find(function(s){return s.quantizations.includes(quant);});var cached=Array.isArray(spec===null||spec===void 0?void 0:spec.cache_status)?spec===null||spec===void 0?void 0:spec.cache_status[spec===null||spec===void 0?void 0:spec.quantizations.indexOf(quant)]:spec===null||spec===void 0?void 0:spec.cache_status;var displayedQuant=cached?quant+' '+t('launchModel.cached'):quant;return/*#__PURE__*/_jsx(MenuItem,{value:quant,children:displayedQuant},quant);})})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:modelFormat!=='ggufv2'&&modelFormat!=='ggmlv3'?/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,disabled:!modelFormat||!modelSize||!quantization,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"n-gpu-label\",children:t('launchModel.nGPU')}),/*#__PURE__*/_jsx(Select,{labelId:\"n-gpu-label\",value:nGPU,onChange:function onChange(e){return setNGPU(e.target.value);},label:t('launchModel.nGPU'),children:getNGPURange().map(function(v){return/*#__PURE__*/_jsx(MenuItem,{value:v,children:v},v);})})]}):/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{disabled:!modelFormat||!modelSize||!quantization,type:\"number\",label:t('launchModel.nGpuLayers'),InputProps:{inputProps:{min:-1}},value:nGPULayers,onChange:function onChange(e){return setNGPULayers(parseInt(e.target.value,10));}})})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{disabled:!modelFormat||!modelSize||!quantization,type:\"number\",InputProps:{inputProps:{min:1}},label:t('launchModel.replica'),value:replica,onChange:function onChange(e){return setReplica(parseInt(e.target.value,10));}})})}),/*#__PURE__*/_jsx(ListItemButton,{onClick:function onClick(){return setIsOther(!isOther);},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:'flex',alignItems:'center'},children:[/*#__PURE__*/_jsx(ListItemText,{primary:t('launchModel.optionalConfigurations'),style:{marginRight:10}}),isOther?/*#__PURE__*/_jsx(ExpandLess,{}):/*#__PURE__*/_jsx(ExpandMore,{})]})}),/*#__PURE__*/_jsxs(Collapse,{in:isOther,timeout:\"auto\",unmountOnExit:true,children:[/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:modelUID,label:t('launchModel.modelUID.optional'),onChange:function onChange(e){return setModelUID(e.target.value);}})})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(TextField,{value:requestLimits,label:t('launchModel.requestLimits.optional'),onChange:function onChange(e){setRequestLimitsAlert(false);setRequestLimits(e.target.value);if(e.target.value!==''&&(!Number(e.target.value)||Number(e.target.value)<1||parseInt(e.target.value)!==parseFloat(e.target.value))){setRequestLimitsAlert(true);}}}),requestLimitsAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:t('launchModel.enterIntegerGreaterThanZero')})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:workerIp,label:t('launchModel.workerIp.optional'),onChange:function onChange(e){return setWorkerIp(e.target.value);}})})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(TextField,{value:GPUIdx,label:t('launchModel.GPUIdx.optional'),onChange:function onChange(e){setGPUIdxAlert(false);setGPUIdx(e.target.value);var regular=/^\\d+(?:,\\d+)*$/;if(e.target.value!==''&&!regular.test(e.target.value)){setGPUIdxAlert(true);}}}),GPUIdxAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:t('launchModel.enterCommaSeparatedNumbers')})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"quantization-label\",children:t('launchModel.downloadHub.optional')}),/*#__PURE__*/_jsx(Select,{labelId:\"download_hub-label\",value:downloadHub,onChange:function onChange(e){e.target.value==='none'?setDownloadHub(''):setDownloadHub(e.target.value);},label:t('launchModel.downloadHub.optional'),children:(csghubArr.includes(modelData.model_name)?['none','huggingface','modelscope','openmind_hub','csghub']:['none','huggingface','modelscope','openmind_hub']).map(function(item){return/*#__PURE__*/_jsx(MenuItem,{value:item,children:item},item);})})]})}),/*#__PURE__*/_jsx(Grid,{item:true,xs:12,children:/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:modelPath,label:t('launchModel.modelPath.optional'),onChange:function onChange(e){return setModelPath(e.target.value);}})})}),/*#__PURE__*/_jsx(ListItemButton,{onClick:function onClick(){return setIsPeftModelConfig(!isPeftModelConfig);},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:'flex',alignItems:'center'},children:[/*#__PURE__*/_jsx(ListItemText,{primary:t('launchModel.loraConfig'),style:{marginRight:10}}),isPeftModelConfig?/*#__PURE__*/_jsx(ExpandLess,{}):/*#__PURE__*/_jsx(ExpandMore,{})]})}),/*#__PURE__*/_jsx(Collapse,{in:isPeftModelConfig,timeout:\"auto\",unmountOnExit:true,style:{marginLeft:'30px'},children:/*#__PURE__*/_jsx(AddPair,{customData:{title:t('launchModel.loraModelConfig'),key:'lora_name',value:'local_path'},onGetArr:function onGetArr(arr){setLoraListArr(arr);},onJudgeArr:judgeArr,pairData:loraArr})})]}),/*#__PURE__*/_jsx(AddPair,{customData:{title:\"\".concat(t('launchModel.additionalParametersForInferenceEngine')).concat(modelEngine?': '+modelEngine:''),key:'key',value:'value'},onGetArr:function onGetArr(arr){setCustomParametersArr(arr);},onJudgeArr:judgeArr,pairData:customArr})]})}):/*#__PURE__*/_jsx(Box,{ref:parentRef,className:\"formContainer\",display:\"flex\",flexDirection:\"column\",width:\"100%\",mx:\"auto\",children:/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:modelUID,label:t('launchModel.modelUID.optional'),onChange:function onChange(e){return setModelUID(e.target.value);}}),/*#__PURE__*/_jsx(TextField,{style:{marginTop:'25px'},type:\"number\",InputProps:{inputProps:{min:1}},label:t('launchModel.replica'),value:replica,onChange:function onChange(e){return setReplica(parseInt(e.target.value,10));}}),/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"n-gpu-label\",children:t('launchModel.device')}),/*#__PURE__*/_jsx(Select,{labelId:\"n-gpu-label\",value:nGpu,onChange:function onChange(e){return setNGpu(e.target.value);},label:t('launchModel.nGPU'),children:getNewNGPURange().map(function(v){return/*#__PURE__*/_jsx(MenuItem,{value:v,children:v},v);})})]}),nGpu==='GPU'&&/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(TextField,{value:GPUIdx,label:t('launchModel.GPUIdx'),onChange:function onChange(e){setGPUIdxAlert(false);setGPUIdx(e.target.value);var regular=/^\\d+(?:,\\d+)*$/;if(e.target.value!==''&&!regular.test(e.target.value)){setGPUIdxAlert(true);}}}),GPUIdxAlert&&/*#__PURE__*/_jsx(Alert,{severity:\"error\",children:t('launchModel.enterCommaSeparatedNumbers')})]}),/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:workerIp,label:t('launchModel.workerIp'),onChange:function onChange(e){return setWorkerIp(e.target.value);}})}),/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"quantization-label\",children:t('launchModel.downloadHub.optional')}),/*#__PURE__*/_jsx(Select,{labelId:\"download_hub-label\",value:downloadHub,onChange:function onChange(e){e.target.value==='none'?setDownloadHub(''):setDownloadHub(e.target.value);},label:t('launchModel.downloadHub.optional'),children:['none','huggingface','modelscope','openmind_hub'].map(function(item){return/*#__PURE__*/_jsx(MenuItem,{value:item,children:item},item);})})]}),/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:modelPath,label:t('launchModel.modelPath.optional'),onChange:function onChange(e){return setModelPath(e.target.value);}})}),modelData.gguf_quantizations&&/*#__PURE__*/_jsxs(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:[/*#__PURE__*/_jsx(InputLabel,{id:\"quantization-label\",children:t('launchModel.GGUFQuantization.optional')}),/*#__PURE__*/_jsx(Select,{labelId:\"gguf_quantizations-label\",value:ggufQuantizations,onChange:function onChange(e){e.target.value==='none'?setGgufQuantizations(''):setGgufQuantizations(e.target.value);},label:t('launchModel.GGUFQuantization.optional'),children:['none'].concat(_toConsumableArray(modelData.gguf_quantizations)).map(function(item){return/*#__PURE__*/_jsx(MenuItem,{value:item,children:item},item);})})]}),modelData.gguf_quantizations&&/*#__PURE__*/_jsx(FormControl,{variant:\"outlined\",margin:\"normal\",fullWidth:true,children:/*#__PURE__*/_jsx(TextField,{variant:\"outlined\",value:ggufModelPath,label:t('launchModel.GGUFModelPath.optional'),onChange:function onChange(e){return setGgufModelPath(e.target.value);}})}),modelType==='image'&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{marginBlock:'10px'},children:/*#__PURE__*/_jsx(FormControlLabel,{label:/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"span\",{children:t('launchModel.CPUOffload')}),/*#__PURE__*/_jsx(Tooltip,{title:t('launchModel.CPUOffload.tip'),placement:\"top\",children:/*#__PURE__*/_jsx(IconButton,{children:/*#__PURE__*/_jsx(HelpOutline,{})})})]}),labelPlacement:\"start\",control:/*#__PURE__*/_jsx(Switch,{checked:cpuOffload}),onChange:function onChange(e){setCpuOffload(e.target.checked);}})}),/*#__PURE__*/_jsx(ListItemButton,{onClick:function onClick(){return setIsPeftModelConfig(!isPeftModelConfig);},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:'flex',alignItems:'center'},children:[/*#__PURE__*/_jsx(ListItemText,{primary:t('launchModel.loraConfig'),style:{marginRight:10}}),isPeftModelConfig?/*#__PURE__*/_jsx(ExpandLess,{}):/*#__PURE__*/_jsx(ExpandMore,{})]})}),/*#__PURE__*/_jsxs(Collapse,{in:isPeftModelConfig,timeout:\"auto\",unmountOnExit:true,style:{marginLeft:'30px'},children:[/*#__PURE__*/_jsx(AddPair,{customData:{title:t('launchModel.loraModelConfig'),key:'lora_name',value:'local_path'},onGetArr:function onGetArr(arr){setLoraListArr(arr);},onJudgeArr:judgeArr,pairData:loraArr}),/*#__PURE__*/_jsx(AddPair,{customData:{title:t('launchModel.loraLoadKwargsForImageModel'),key:'key',value:'value'},onGetArr:function onGetArr(arr){setImageLoraLoadKwargsArr(arr);},onJudgeArr:judgeArr,pairData:imageLoraLoadArr}),/*#__PURE__*/_jsx(AddPair,{customData:{title:t('launchModel.loraFuseKwargsForImageModel'),key:'key',value:'value'},onGetArr:function onGetArr(arr){setImageLoraFuseKwargsArr(arr);},onJudgeArr:judgeArr,pairData:imageLoraFuseArr})]})]}),/*#__PURE__*/_jsx(AddPair,{customData:{title:t('launchModel.additionalParametersForInferenceEngine'),key:'key',value:'value'},onGetArr:function onGetArr(arr){setCustomParametersArr(arr);},onJudgeArr:judgeArr,pairData:customArr})]})}),/*#__PURE__*/_jsxs(Box,{className:\"buttonsContainer\",children:[/*#__PURE__*/_jsx(\"button\",{title:t('launchModel.launch'),className:\"buttonContainer\",onClick:function onClick(){return launchModel(url,modelData);},disabled:modelType==='LLM'&&(isCallingApi||isUpdatingModel||!(modelFormat&&modelSize&&modelData&&(quantization||!modelData.is_builtin&&modelFormat!=='pytorch'))||!judgeArr(loraListArr,['lora_name','local_path'])||!judgeArr(imageLoraLoadKwargsArr,['key','value'])||!judgeArr(imageLoraFuseKwargsArr,['key','value'])||requestLimitsAlert||GPUIdxAlert)||(modelType==='embedding'||modelType==='rerank')&&GPUIdxAlert||!judgeArr(customParametersArr,['key','value']),children:function(){if(isCallingApi||isUpdatingModel){return/*#__PURE__*/_jsx(Box,{className:\"buttonItem\",style:{backgroundColor:'#f2f2f2'},children:/*#__PURE__*/_jsx(CircularProgress,{size:\"20px\",sx:{color:'#000000'}})});}else if(!(modelFormat&&modelSize&&modelData&&(quantization||!modelData.is_builtin&&modelFormat!=='pytorch'))){return/*#__PURE__*/_jsx(Box,{className:\"buttonItem\",style:{backgroundColor:'#f2f2f2'},children:/*#__PURE__*/_jsx(RocketLaunchOutlined,{size:\"20px\"})});}else{return/*#__PURE__*/_jsx(Box,{className:\"buttonItem\",children:/*#__PURE__*/_jsx(RocketLaunchOutlined,{color:\"#000000\",size:\"20px\"})});}}()}),/*#__PURE__*/_jsx(\"button\",{title:t('launchModel.goBack'),className:\"buttonContainer\",onClick:function onClick(){setSelected(false);setHover(false);},children:/*#__PURE__*/_jsx(Box,{className:\"buttonItem\",children:/*#__PURE__*/_jsx(UndoOutlined,{color:\"#000000\",size:\"20px\"})})})]})]})}),/*#__PURE__*/_jsx(Backdrop,{sx:{color:'#fff',zIndex:function zIndex(theme){return theme.zIndex.drawer+1;}},open:isJsonShow,children:/*#__PURE__*/_jsxs(\"div\",{className:\"jsonDialog\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"jsonDialog-title\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"title-name\",children:modelData.model_name}),/*#__PURE__*/_jsx(CopyComponent,{tip:t('launchModel.copyJson'),text:JSON.stringify(modelData,null,4)})]}),/*#__PURE__*/_jsx(\"div\",{className:\"main-box\",children:/*#__PURE__*/_jsx(\"textarea\",{readOnly:true,className:\"textarea-box\",value:JSON.stringify(modelData,null,4)})}),/*#__PURE__*/_jsxs(\"div\",{className:\"but-box\",children:[/*#__PURE__*/_jsx(Button,{onClick:function onClick(){setIsJsonShow(false);},style:{marginRight:30},children:t('launchModel.cancel')}),/*#__PURE__*/_jsx(Button,{onClick:handleJsonDataPresentation,children:t('launchModel.edit')})]})]})}),/*#__PURE__*/_jsx(Snackbar,{anchorOrigin:{vertical:'top',horizontal:'center'},open:openSnackbar,onClose:function onClose(){return setOpenSnackbar(false);},message:t('launchModel.fillCompleteParametersBeforeAdding')}),/*#__PURE__*/_jsx(Snackbar,{anchorOrigin:{vertical:'top',horizontal:'center'},open:openErrorSnackbar,onClose:function onClose(){return setOpenErrorSnackbar(false);},children:/*#__PURE__*/_jsx(Alert,{severity:\"error\",variant:\"filled\",sx:{width:'100%'},children:errorSnackbarValue})}),/*#__PURE__*/_jsx(Backdrop,{sx:{color:'#fff',zIndex:function zIndex(theme){return theme.zIndex.drawer+1;}},open:isOpenCachedList,children:/*#__PURE__*/_jsxs(\"div\",{className:\"dialogBox\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"dialogTitle\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"dialogTitle-model_name\",children:modelData.model_name}),/*#__PURE__*/_jsx(Close,{style:{cursor:'pointer'},onClick:handleCloseCachedList})]}),/*#__PURE__*/_jsx(TableContainer,{component:Paper,children:/*#__PURE__*/_jsxs(Table,{sx:{minWidth:500},style:{height:'500px',width:'100%'},stickyHeader:true,\"aria-label\":\"simple pagination table\",children:[/*#__PURE__*/_jsx(TableHead,{children:/*#__PURE__*/_jsxs(TableRow,{children:[modelType==='LLM'&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TableCell,{align:\"left\",children:t('launchModel.model_format')}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",children:t('launchModel.model_size_in_billions')}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",children:t('launchModel.quantizations')})]}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",style:{width:192},children:t('launchModel.real_path')}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",style:{width:46}}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",style:{width:192},children:t('launchModel.path')}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",style:{width:46}}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",style:{whiteSpace:'nowrap',minWidth:116},children:t('launchModel.ipAddress')}),/*#__PURE__*/_jsx(TableCell,{align:\"left\",children:t('launchModel.operation')})]})}),/*#__PURE__*/_jsxs(TableBody,{style:{position:'relative'},children:[cachedListArr.slice(page*5,page*5+5).map(function(row){return/*#__PURE__*/_jsxs(StyledTableRow,{style:{maxHeight:90},children:[modelType==='LLM'&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(TableCell,{component:\"th\",scope:\"row\",children:row.model_format===null?'—':row.model_format}),/*#__PURE__*/_jsx(TableCell,{children:row.model_size_in_billions===null?'—':row.model_size_in_billions}),/*#__PURE__*/_jsx(TableCell,{children:row.quantization===null?'—':row.quantization})]}),/*#__PURE__*/_jsx(TableCell,{children:/*#__PURE__*/_jsx(Tooltip,{title:row.real_path,children:/*#__PURE__*/_jsx(\"div\",{className:modelType==='LLM'?'pathBox':'pathBox pathBox2',children:row.real_path})})}),/*#__PURE__*/_jsx(TableCell,{children:/*#__PURE__*/_jsx(CopyComponent,{tip:t('launchModel.copyRealPath'),text:row.real_path})}),/*#__PURE__*/_jsx(TableCell,{children:/*#__PURE__*/_jsx(Tooltip,{title:row.path,children:/*#__PURE__*/_jsx(\"div\",{className:modelType==='LLM'?'pathBox':'pathBox pathBox2',children:row.path})})}),/*#__PURE__*/_jsx(TableCell,{children:/*#__PURE__*/_jsx(CopyComponent,{tip:t('launchModel.copyPath'),text:row.path})}),/*#__PURE__*/_jsx(TableCell,{children:row.actor_ip_address}),/*#__PURE__*/_jsx(TableCell,{align:modelType==='LLM'?'center':'left',children:/*#__PURE__*/_jsx(IconButton,{\"aria-label\":\"delete\",size:\"large\",onClick:function onClick(){return handleOpenDeleteCachedDialog(row.real_path,row.model_version);},children:/*#__PURE__*/_jsx(Delete,{})})})]},row.model_name);}),emptyRows>0&&/*#__PURE__*/_jsx(TableRow,{style:{height:89.4*emptyRows},children:/*#__PURE__*/_jsx(TableCell,{})}),cachedListArr.length===0&&/*#__PURE__*/_jsx(\"div\",{className:\"empty\",children:t('launchModel.noCacheForNow')})]})]})}),/*#__PURE__*/_jsx(TablePagination,{style:{float:'right'},rowsPerPageOptions:[5],count:cachedListArr.length,rowsPerPage:5,page:page,onPageChange:handleChangePage})]})}),/*#__PURE__*/_jsx(DeleteDialog,{text:t('launchModel.confirmDeleteCacheFiles'),isDelete:isDeleteCached,onHandleIsDelete:function onHandleIsDelete(){return setIsDeleteCached(false);},onHandleDelete:handleDeleteCached})]});};export default ModelCard;","map":{"version":3,"names":["ChatOutlined","Close","Delete","EditNote","EditNoteOutlined","ExpandLess","ExpandMore","Grade","HelpCenterOutlined","HelpOutline","RocketLaunchOutlined","StarBorder","UndoOutlined","Alert","Backdrop","Box","Button","Chip","CircularProgress","Collapse","Drawer","FormControl","FormControlLabel","Grid","IconButton","InputLabel","ListItemButton","ListItemText","MenuItem","Paper","Select","Snackbar","Stack","Switch","Table","TableBody","TableCell","TableContainer","TableHead","TablePagination","TableRow","TextField","Tooltip","styled","React","useContext","useEffect","useRef","useState","useTranslation","useNavigate","ApiContext","CopyComponent","DeleteDialog","fetchWrapper","TitleTypography","AddPair","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","llmAllDataKey","csghubArr","ModelCard","_ref","_JSON$parse","_JSON$parse2","url","modelData","gpuAvailable","modelType","_ref$is_custom","is_custom","onHandleCompleteDelete","onHandlecustomDelete","onGetCollectionArr","_useState","_useState2","_slicedToArray","hover","setHover","_useState3","_useState4","selected","setSelected","_useState5","_useState6","requestLimitsAlert","setRequestLimitsAlert","_useState7","_useState8","GPUIdxAlert","setGPUIdxAlert","_useState9","_useState10","isOther","setIsOther","_useState11","_useState12","isPeftModelConfig","setIsPeftModelConfig","_useState13","_useState14","openSnackbar","setOpenSnackbar","_useState15","_useState16","openErrorSnackbar","setOpenErrorSnackbar","_useState17","_useState18","errorSnackbarValue","setErrorSnackbarValue","_useContext","isCallingApi","setIsCallingApi","_useContext2","isUpdatingModel","_useContext3","setErrorMsg","navigate","_useState19","_useState20","modelUID","setModelUID","_useState21","_useState22","modelEngine","setModelEngine","_useState23","_useState24","modelFormat","setModelFormat","_useState25","_useState26","modelSize","setModelSize","_useState27","_useState28","quantization","setQuantization","_useState29","_useState30","nGPU","setNGPU","_useState31","_useState32","nGpu","setNGpu","_useState33","_useState34","nGPULayers","setNGPULayers","_useState35","_useState36","replica","setReplica","_useState37","_useState38","requestLimits","setRequestLimits","_useState39","_useState40","workerIp","setWorkerIp","_useState41","_useState42","GPUIdx","setGPUIdx","_useState43","_useState44","downloadHub","setDownloadHub","_useState45","_useState46","modelPath","setModelPath","_useState47","_useState48","ggufQuantizations","setGgufQuantizations","_useState49","_useState50","ggufModelPath","setGgufModelPath","_useState51","_useState52","cpuOffload","setCpuOffload","_useState53","_useState54","enginesObj","setEnginesObj","_useState55","_useState56","engineOptions","setEngineOptions","_useState57","_useState58","formatOptions","setFormatOptions","_useState59","_useState60","sizeOptions","setSizeOptions","_useState61","_useState62","quantizationOptions","setQuantizationOptions","_useState63","_useState64","customDeleted","setCustomDeleted","_useState65","_useState66","customParametersArr","setCustomParametersArr","_useState67","_useState68","loraListArr","setLoraListArr","_useState69","_useState70","imageLoraLoadKwargsArr","setImageLoraLoadKwargsArr","_useState71","_useState72","imageLoraFuseKwargsArr","setImageLoraFuseKwargsArr","_useState73","_useState74","isOpenCachedList","setIsOpenCachedList","_useState75","_useState76","isDeleteCached","setIsDeleteCached","_useState77","_useState78","cachedListArr","setCachedListArr","_useState79","_useState80","cachedModelVersion","setCachedModelVersion","_useState81","_useState82","cachedRealPath","setCachedRealPath","_useState83","_useState84","page","setPage","_useState85","_useState86","isDeleteCustomModel","setIsDeleteCustomModel","_useState87","_useState88","isJsonShow","setIsJsonShow","_useState89","_useState90","isHistory","setIsHistory","_useState91","_useState92","customArr","setCustomArr","_useState93","_useState94","loraArr","setLoraArr","_useState95","_useState96","imageLoraLoadArr","setImageLoraLoadArr","_useState97","_useState98","imageLoraFuseArr","setImageLoraFuseArr","_useState99","_useState100","customParametersArrLength","setCustomParametersArrLength","parentRef","_useTranslation","t","range","start","end","Array","fill","undefined","map","_","i","isCached","spec","isArray","cache_status","some","cs","convertModelSize","size","toString","includes","parseInt","keyArr","key","push","length","handleLlmHistory","format","_toConsumableArray","Set","item","model_format","sizes","filter","model_size_in_billions","JSON","stringify","quants","flatMap","quantizations","current","scrollTo","top","scrollHeight","behavior","getNGPURange","concat","getNewNGPURange","getModelEngine","model_name","get","then","data","Object","keys","catch","error","console","response","status","message","launchModel","_String","_String2","modelDataWithID_LLM","model_uid","trim","model_type","model_engine","n_gpu","request_limits","String","Number","worker_ip","gpu_idx","handleGPUIdx","download_hub","model_path","modelDataWithID_other","n_gpu_layers","gguf_quantization","gguf_model_path","cpu_offload","modelDataWithID","peft_model_config","image_lora_load_kwargs","forEach","handleValueType","value","image_lora_fuse_kwargs","lora_list","id","post","sessionStorage","setItem","historyArr","parse","localStorage","getItem","historyModelNameArr","arr","split","handeCustomDelete","e","stopPropagation","subType","delete","judgeArr","keysArr","str","toLowerCase","StyledTableRow","_ref2","theme","backgroundColor","palette","action","emptyRows","Math","max","handleChangePage","newPage","handleOpenCachedList","getCachedList","document","body","style","overflow","handleCloseCachedList","list","handleOpenDeleteCachedDialog","real_path","model_version","handleDeleteCached","cachedArr","handleJsonDataPresentation","handleGetHistory","_peft_model_config$lo","_arr$","join","loraData","lora_name","local_path","customData","handleOtherHistory","_arr$0$gpu_idx","_arr$0$peft_model_con","_arr$0$peft_model_con2","ImageLoraLoadData","_arr$0$peft_model_con3","_arr$0$peft_model_con4","ImageLoraFuseData","_arr$0$peft_model_con5","_arr$0$peft_model_con6","handleCollection","bool","collectionArr","handleDeleteChip","newArr","normalizeLanguage","language","lang","children","className","onMouseEnter","onMouseLeave","onClick","elevation","title","placement","color","spacing","direction","useFlexGap","flexWrap","sx","marginLeft","model_lang","v","label","variant","model_specs","deleteIcon","onDelete","model_description","floor","context_length","model_ability","disabled","model_family","dimensions","max_tokens","text","isDelete","onHandleIsDelete","onHandleDelete","open","onClose","anchor","display","alignItems","ref","flexDirection","width","mx","rowSpacing","columnSpacing","xs","margin","fullWidth","labelId","onChange","target","engine","subArr","specs","cached","displayedEngine","displayedFormat","displayedSize","quant","find","s","indexOf","displayedQuant","type","InputProps","inputProps","min","primary","marginRight","in","timeout","unmountOnExit","parseFloat","severity","regular","test","onGetArr","onJudgeArr","pairData","marginTop","gguf_quantizations","marginBlock","labelPlacement","control","checked","is_builtin","zIndex","drawer","tip","readOnly","anchorOrigin","vertical","horizontal","cursor","component","minWidth","height","stickyHeader","align","whiteSpace","position","slice","row","maxHeight","scope","path","actor_ip_address","float","rowsPerPageOptions","count","rowsPerPage","onPageChange"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/scenes/launch_model/modelCard.js"],"sourcesContent":["import './styles/modelCardStyle.css'\n\nimport {\n ChatOutlined,\n Close,\n Delete,\n EditNote,\n EditNoteOutlined,\n ExpandLess,\n ExpandMore,\n Grade,\n HelpCenterOutlined,\n HelpOutline,\n RocketLaunchOutlined,\n StarBorder,\n UndoOutlined,\n} from '@mui/icons-material'\nimport {\n Alert,\n Backdrop,\n Box,\n Button,\n Chip,\n CircularProgress,\n Collapse,\n Drawer,\n FormControl,\n FormControlLabel,\n Grid,\n IconButton,\n InputLabel,\n ListItemButton,\n ListItemText,\n MenuItem,\n Paper,\n Select,\n Snackbar,\n Stack,\n Switch,\n Table,\n TableBody,\n TableCell,\n TableContainer,\n TableHead,\n TablePagination,\n TableRow,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport { styled } from '@mui/material/styles'\nimport React, { useContext, useEffect, useRef, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport { useNavigate } from 'react-router-dom'\n\nimport { ApiContext } from '../../components/apiContext'\nimport CopyComponent from '../../components/copyComponent/copyComponent'\nimport DeleteDialog from '../../components/deleteDialog'\nimport fetchWrapper from '../../components/fetchWrapper'\nimport TitleTypography from '../../components/titleTypography'\nimport AddPair from './components/addPair'\n\nconst llmAllDataKey = [\n 'model_uid',\n 'model_name',\n 'model_type',\n 'model_engine',\n 'model_format',\n 'model_size_in_billions',\n 'quantization',\n 'n_gpu',\n 'n_gpu_layers',\n 'replica',\n 'request_limits',\n 'worker_ip',\n 'gpu_idx',\n 'download_hub',\n 'model_path',\n 'gguf_quantization',\n 'gguf_model_path',\n 'cpu_offload',\n 'peft_model_config',\n]\n\nconst csghubArr = ['qwen2-instruct']\n\nconst ModelCard = ({\n url,\n modelData,\n gpuAvailable,\n modelType,\n is_custom = false,\n onHandleCompleteDelete,\n onHandlecustomDelete,\n onGetCollectionArr,\n}) => {\n const [hover, setHover] = useState(false)\n const [selected, setSelected] = useState(false)\n const [requestLimitsAlert, setRequestLimitsAlert] = useState(false)\n const [GPUIdxAlert, setGPUIdxAlert] = useState(false)\n const [isOther, setIsOther] = useState(false)\n const [isPeftModelConfig, setIsPeftModelConfig] = useState(false)\n const [openSnackbar, setOpenSnackbar] = useState(false)\n const [openErrorSnackbar, setOpenErrorSnackbar] = useState(false)\n const [errorSnackbarValue, setErrorSnackbarValue] = useState('')\n const { isCallingApi, setIsCallingApi } = useContext(ApiContext)\n const { isUpdatingModel } = useContext(ApiContext)\n const { setErrorMsg } = useContext(ApiContext)\n const navigate = useNavigate()\n\n // Model parameter selections\n const [modelUID, setModelUID] = useState('')\n const [modelEngine, setModelEngine] = useState('')\n const [modelFormat, setModelFormat] = useState('')\n const [modelSize, setModelSize] = useState('')\n const [quantization, setQuantization] = useState('')\n const [nGPU, setNGPU] = useState('auto')\n const [nGpu, setNGpu] = useState(gpuAvailable === 0 ? 'CPU' : 'GPU')\n const [nGPULayers, setNGPULayers] = useState(-1)\n const [replica, setReplica] = useState(1)\n const [requestLimits, setRequestLimits] = useState('')\n const [workerIp, setWorkerIp] = useState('')\n const [GPUIdx, setGPUIdx] = useState('')\n const [downloadHub, setDownloadHub] = useState('')\n const [modelPath, setModelPath] = useState('')\n const [ggufQuantizations, setGgufQuantizations] = useState('')\n const [ggufModelPath, setGgufModelPath] = useState('')\n const [cpuOffload, setCpuOffload] = useState(false)\n\n const [enginesObj, setEnginesObj] = useState({})\n const [engineOptions, setEngineOptions] = useState([])\n const [formatOptions, setFormatOptions] = useState([])\n const [sizeOptions, setSizeOptions] = useState([])\n const [quantizationOptions, setQuantizationOptions] = useState([])\n const [customDeleted, setCustomDeleted] = useState(false)\n const [customParametersArr, setCustomParametersArr] = useState([])\n const [loraListArr, setLoraListArr] = useState([])\n const [imageLoraLoadKwargsArr, setImageLoraLoadKwargsArr] = useState([])\n const [imageLoraFuseKwargsArr, setImageLoraFuseKwargsArr] = useState([])\n const [isOpenCachedList, setIsOpenCachedList] = useState(false)\n const [isDeleteCached, setIsDeleteCached] = useState(false)\n const [cachedListArr, setCachedListArr] = useState([])\n const [cachedModelVersion, setCachedModelVersion] = useState('')\n const [cachedRealPath, setCachedRealPath] = useState('')\n const [page, setPage] = useState(0)\n const [isDeleteCustomModel, setIsDeleteCustomModel] = useState(false)\n const [isJsonShow, setIsJsonShow] = useState(false)\n const [isHistory, setIsHistory] = useState(false)\n const [customArr, setCustomArr] = useState([])\n const [loraArr, setLoraArr] = useState([])\n const [imageLoraLoadArr, setImageLoraLoadArr] = useState([])\n const [imageLoraFuseArr, setImageLoraFuseArr] = useState([])\n const [customParametersArrLength, setCustomParametersArrLength] = useState(0)\n\n const parentRef = useRef(null)\n const { t } = useTranslation()\n\n const range = (start, end) => {\n return new Array(end - start + 1).fill(undefined).map((_, i) => i + start)\n }\n\n const isCached = (spec) => {\n if (Array.isArray(spec.cache_status)) {\n return spec.cache_status.some((cs) => cs)\n } else {\n return spec.cache_status === true\n }\n }\n\n // model size can be int or string. For string style, \"1_8\" means 1.8 as an example.\n const convertModelSize = (size) => {\n return size.toString().includes('_') ? size : parseInt(size, 10)\n }\n\n useEffect(() => {\n let keyArr = []\n for (let key in enginesObj) {\n keyArr.push(key)\n }\n if (keyArr.length) {\n handleLlmHistory()\n }\n }, [enginesObj])\n\n useEffect(() => {\n if (modelEngine) {\n const format = [\n ...new Set(enginesObj[modelEngine].map((item) => item.model_format)),\n ]\n setFormatOptions(format)\n if (!isHistory || !format.includes(modelFormat)) {\n setModelFormat('')\n }\n if (format.length === 1) {\n setModelFormat(format[0])\n }\n }\n }, [modelEngine])\n\n useEffect(() => {\n if (modelEngine && modelFormat) {\n const sizes = [\n ...new Set(\n enginesObj[modelEngine]\n .filter((item) => item.model_format === modelFormat)\n .map((item) => item.model_size_in_billions)\n ),\n ]\n setSizeOptions(sizes)\n if (\n !isHistory ||\n (sizeOptions.length &&\n JSON.stringify(sizes) !== JSON.stringify(sizeOptions))\n ) {\n setModelSize('')\n }\n if (sizes.length === 1) {\n setModelSize(sizes[0])\n }\n }\n }, [modelEngine, modelFormat])\n\n useEffect(() => {\n if (modelEngine && modelFormat && modelSize) {\n const quants = [\n ...new Set(\n enginesObj[modelEngine]\n .filter(\n (item) =>\n item.model_format === modelFormat &&\n item.model_size_in_billions === convertModelSize(modelSize)\n )\n .flatMap((item) => item.quantizations)\n ),\n ]\n setQuantizationOptions(quants)\n if (!isHistory || !quants.includes(quantization)) {\n setQuantization('')\n }\n if (quants.length === 1) {\n setQuantization(quants[0])\n }\n }\n }, [modelEngine, modelFormat, modelSize])\n\n useEffect(() => {\n setCustomParametersArrLength(customParametersArr.length)\n if (\n parentRef.current &&\n customParametersArr.length > customParametersArrLength\n ) {\n parentRef.current.scrollTo({\n top: parentRef.current.scrollHeight,\n behavior: 'smooth',\n })\n }\n }, [customParametersArr])\n\n const getNGPURange = () => {\n if (gpuAvailable === 0) {\n // remain 'auto' for distributed situation\n return ['auto', 'CPU']\n }\n return ['auto', 'CPU'].concat(range(1, gpuAvailable))\n }\n\n const getNewNGPURange = () => {\n if (gpuAvailable === 0) {\n return ['CPU']\n } else {\n return ['GPU', 'CPU']\n }\n }\n\n const getModelEngine = (model_name) => {\n fetchWrapper\n .get(`/v1/engines/${model_name}`)\n .then((data) => {\n setEnginesObj(data)\n setEngineOptions(Object.keys(data))\n setIsCallingApi(false)\n })\n .catch((error) => {\n console.error('Error:', error)\n if (error.response.status !== 403) {\n setErrorMsg(error.message)\n }\n setIsCallingApi(false)\n })\n }\n\n const launchModel = () => {\n if (isCallingApi || isUpdatingModel) {\n return\n }\n\n setIsCallingApi(true)\n\n try {\n const modelDataWithID_LLM = {\n // If user does not fill model_uid, pass null (None) to server and server generates it.\n model_uid: modelUID?.trim() === '' ? null : modelUID?.trim(),\n model_name: modelData.model_name,\n model_type: modelType,\n model_engine: modelEngine,\n model_format: modelFormat,\n model_size_in_billions: convertModelSize(modelSize),\n quantization: quantization,\n n_gpu:\n parseInt(nGPU, 10) === 0 || nGPU === 'CPU'\n ? null\n : nGPU === 'auto'\n ? 'auto'\n : parseInt(nGPU, 10),\n replica: replica,\n request_limits:\n String(requestLimits)?.trim() === ''\n ? null\n : Number(String(requestLimits)?.trim()),\n worker_ip: workerIp?.trim() === '' ? null : workerIp?.trim(),\n gpu_idx: GPUIdx?.trim() === '' ? null : handleGPUIdx(GPUIdx?.trim()),\n download_hub: downloadHub === '' ? null : downloadHub,\n model_path: modelPath?.trim() === '' ? null : modelPath?.trim(),\n }\n\n const modelDataWithID_other = {\n model_uid: modelUID?.trim() === '' ? null : modelUID?.trim(),\n model_name: modelData.model_name,\n model_type: modelType,\n replica: replica,\n n_gpu: nGpu === 'GPU' ? 'auto' : null,\n worker_ip: workerIp?.trim() === '' ? null : workerIp.trim(),\n gpu_idx: GPUIdx?.trim() === '' ? null : handleGPUIdx(GPUIdx?.trim()),\n download_hub: downloadHub === '' ? null : downloadHub,\n model_path: modelPath?.trim() === '' ? null : modelPath?.trim(),\n }\n\n if (nGPULayers >= 0) modelDataWithID_LLM.n_gpu_layers = nGPULayers\n if (ggufQuantizations)\n modelDataWithID_other.gguf_quantization = ggufQuantizations\n if (ggufModelPath) modelDataWithID_other.gguf_model_path = ggufModelPath\n if (modelType === 'image') modelDataWithID_other.cpu_offload = cpuOffload\n\n const modelDataWithID =\n modelType === 'LLM' ? modelDataWithID_LLM : modelDataWithID_other\n\n if (\n loraListArr.length ||\n imageLoraLoadKwargsArr.length ||\n imageLoraFuseKwargsArr.length\n ) {\n const peft_model_config = {}\n if (imageLoraLoadKwargsArr.length) {\n const image_lora_load_kwargs = {}\n imageLoraLoadKwargsArr.forEach((item) => {\n image_lora_load_kwargs[item.key] = handleValueType(item.value)\n })\n peft_model_config['image_lora_load_kwargs'] = image_lora_load_kwargs\n }\n if (imageLoraFuseKwargsArr.length) {\n const image_lora_fuse_kwargs = {}\n imageLoraFuseKwargsArr.forEach((item) => {\n image_lora_fuse_kwargs[item.key] = handleValueType(item.value)\n })\n peft_model_config['image_lora_fuse_kwargs'] = image_lora_fuse_kwargs\n }\n if (loraListArr.length) {\n const lora_list = loraListArr\n lora_list.map((item) => {\n delete item.id\n })\n peft_model_config['lora_list'] = lora_list\n }\n modelDataWithID['peft_model_config'] = peft_model_config\n }\n\n if (customParametersArr.length) {\n customParametersArr.forEach((item) => {\n modelDataWithID[item.key] = handleValueType(item.value)\n })\n }\n\n // First fetcher request to initiate the model\n fetchWrapper\n .post('/v1/models', modelDataWithID)\n .then(() => {\n navigate(`/running_models/${modelType}`)\n sessionStorage.setItem(\n 'runningModelType',\n `/running_models/${modelType}`\n )\n let historyArr = JSON.parse(localStorage.getItem('historyArr')) || []\n const historyModelNameArr = historyArr.map((item) => item.model_name)\n if (historyModelNameArr.includes(modelDataWithID.model_name)) {\n historyArr = historyArr.map((item) => {\n if (item.model_name === modelDataWithID.model_name) {\n return modelDataWithID\n }\n return item\n })\n } else {\n historyArr.push(modelDataWithID)\n }\n localStorage.setItem('historyArr', JSON.stringify(historyArr))\n\n setIsCallingApi(false)\n })\n .catch((error) => {\n console.error('Error:', error)\n if (error.response.status !== 403) {\n setErrorMsg(error.message)\n }\n setIsCallingApi(false)\n })\n } catch (error) {\n setOpenErrorSnackbar(true)\n setErrorSnackbarValue(`${error}`)\n setIsCallingApi(false)\n }\n }\n\n const handleGPUIdx = (data) => {\n const arr = []\n data.split(',').forEach((item) => {\n arr.push(Number(item))\n })\n return arr\n }\n\n const handeCustomDelete = (e) => {\n e.stopPropagation()\n const subType = sessionStorage.getItem('subType').split('/')\n if (subType) {\n subType[3]\n fetchWrapper\n .delete(\n `/v1/model_registrations/${\n subType[3] === 'llm' ? 'LLM' : subType[3]\n }/${modelData.model_name}`\n )\n .then(() => {\n setCustomDeleted(true)\n onHandlecustomDelete(modelData.model_name)\n setIsDeleteCustomModel(false)\n })\n .catch((error) => {\n console.error(error)\n if (error.response.status !== 403) {\n setErrorMsg(error.message)\n }\n })\n }\n }\n\n const judgeArr = (arr, keysArr) => {\n if (\n arr.length &&\n arr[arr.length - 1][keysArr[0]] !== '' &&\n arr[arr.length - 1][keysArr[1]] !== ''\n ) {\n return true\n } else if (arr.length === 0) {\n return true\n } else {\n return false\n }\n }\n\n const handleValueType = (str) => {\n str = String(str)\n if (str.toLowerCase() === 'none') {\n return null\n } else if (str.toLowerCase() === 'true') {\n return true\n } else if (str.toLowerCase() === 'false') {\n return false\n } else if (Number(str) || (str !== '' && Number(str) === 0)) {\n return Number(str)\n } else {\n return str\n }\n }\n\n const StyledTableRow = styled(TableRow)(({ theme }) => ({\n '&:nth-of-type(odd)': {\n backgroundColor: theme.palette.action.hover,\n },\n }))\n\n const emptyRows =\n page >= 0 ? Math.max(0, (1 + page) * 5 - cachedListArr.length) : 0\n\n const handleChangePage = (_, newPage) => {\n setPage(newPage)\n }\n\n const handleOpenCachedList = () => {\n setIsOpenCachedList(true)\n getCachedList()\n document.body.style.overflow = 'hidden'\n }\n\n const handleCloseCachedList = () => {\n document.body.style.overflow = 'auto'\n setHover(false)\n setIsOpenCachedList(false)\n if (cachedListArr.length === 0) {\n onHandleCompleteDelete(modelData.model_name)\n }\n }\n\n const getCachedList = () => {\n fetchWrapper\n .get(`/v1/cache/models?model_name=${modelData.model_name}`)\n .then((data) => setCachedListArr(data.list))\n .catch((error) => {\n console.error(error)\n if (error.response.status !== 403) {\n setErrorMsg(error.message)\n }\n })\n }\n\n const handleOpenDeleteCachedDialog = (real_path, model_version) => {\n setCachedRealPath(real_path)\n setCachedModelVersion(model_version)\n setIsDeleteCached(true)\n }\n\n const handleDeleteCached = () => {\n fetchWrapper\n .delete(`/v1/cache/models?model_version=${cachedModelVersion}`)\n .then(() => {\n const cachedArr = cachedListArr.filter(\n (item) => item.real_path !== cachedRealPath\n )\n setCachedListArr(cachedArr)\n setIsDeleteCached(false)\n if (cachedArr.length) {\n if (\n (page + 1) * 5 >= cachedListArr.length &&\n cachedArr.length % 5 === 0\n ) {\n setPage(cachedArr.length / 5 - 1)\n }\n }\n })\n .catch((error) => {\n console.error(error)\n if (error.response.status !== 403) {\n setErrorMsg(error.message)\n }\n })\n }\n\n const handleJsonDataPresentation = () => {\n const arr = sessionStorage.getItem('subType').split('/')\n sessionStorage.setItem(\n 'registerModelType',\n `/register_model/${arr[arr.length - 1]}`\n )\n sessionStorage.setItem('customJsonData', JSON.stringify(modelData))\n navigate(`/register_model/${arr[arr.length - 1]}/${modelData.model_name}`)\n }\n\n const handleGetHistory = () => {\n const historyArr = JSON.parse(localStorage.getItem('historyArr')) || []\n return historyArr.filter((item) => item.model_name === modelData.model_name)\n }\n\n const handleLlmHistory = () => {\n const arr = handleGetHistory()\n if (arr.length) {\n const {\n model_engine,\n model_format,\n model_size_in_billions,\n quantization,\n n_gpu,\n n_gpu_layers,\n replica,\n model_uid,\n request_limits,\n worker_ip,\n gpu_idx,\n download_hub,\n model_path,\n peft_model_config,\n } = arr[0]\n\n if (!engineOptions.includes(model_engine)) {\n setModelEngine('')\n } else {\n setModelEngine(model_engine || '')\n }\n setModelFormat(model_format || '')\n setModelSize(String(model_size_in_billions) || '')\n setQuantization(quantization || '')\n setNGPU(n_gpu || 'auto')\n if (n_gpu_layers >= 0) {\n setNGPULayers(n_gpu_layers)\n } else {\n setNGPULayers(-1)\n }\n setReplica(replica || 1)\n setModelUID(model_uid || '')\n setRequestLimits(request_limits || '')\n setWorkerIp(worker_ip || '')\n setGPUIdx(gpu_idx?.join(',') || '')\n setDownloadHub(download_hub || '')\n setModelPath(model_path || '')\n\n let loraData = []\n peft_model_config?.lora_list?.forEach((item) => {\n loraData.push({\n lora_name: item.lora_name,\n local_path: item.local_path,\n })\n })\n setLoraArr(loraData)\n\n let customData = []\n for (let key in arr[0]) {\n !llmAllDataKey.includes(key) &&\n customData.push({ key: key, value: arr[0][key] || 'none' })\n }\n setCustomArr(customData)\n\n if (\n model_uid ||\n request_limits ||\n worker_ip ||\n gpu_idx?.join(',') ||\n download_hub ||\n model_path\n )\n setIsOther(true)\n\n if (loraData.length) {\n setIsOther(true)\n setIsPeftModelConfig(true)\n }\n }\n }\n\n const handleOtherHistory = () => {\n const arr = handleGetHistory()\n if (arr.length) {\n setModelUID(arr[0].model_uid || '')\n setReplica(arr[0].replica || 1)\n setNGpu(arr[0].n_gpu === 'auto' ? 'GPU' : 'CPU')\n setGPUIdx(arr[0].gpu_idx?.join(',') || '')\n setWorkerIp(arr[0].worker_ip || '')\n setDownloadHub(arr[0].download_hub || '')\n setModelPath(arr[0].model_path || '')\n setGgufQuantizations(arr[0].gguf_quantization || '')\n setGgufModelPath(arr[0].gguf_model_path || '')\n setCpuOffload(arr[0].cpu_offload || false)\n\n if (arr[0].model_type === 'image') {\n let loraData = []\n arr[0].peft_model_config?.lora_list?.forEach((item) => {\n loraData.push({\n lora_name: item.lora_name,\n local_path: item.local_path,\n })\n })\n setLoraArr(loraData)\n\n let ImageLoraLoadData = []\n for (let key in arr[0].peft_model_config?.image_lora_load_kwargs) {\n ImageLoraLoadData.push({\n key: key,\n value:\n arr[0].peft_model_config?.image_lora_load_kwargs[key] || 'none',\n })\n }\n setImageLoraLoadArr(ImageLoraLoadData)\n\n let ImageLoraFuseData = []\n for (let key in arr[0].peft_model_config?.image_lora_fuse_kwargs) {\n ImageLoraFuseData.push({\n key: key,\n value:\n arr[0].peft_model_config?.image_lora_fuse_kwargs[key] || 'none',\n })\n }\n setImageLoraFuseArr(ImageLoraFuseData)\n\n if (\n loraData.length ||\n ImageLoraLoadData.length ||\n ImageLoraFuseData.length\n ) {\n setIsPeftModelConfig(true)\n }\n }\n\n let customData = []\n for (let key in arr[0]) {\n !llmAllDataKey.includes(key) &&\n customData.push({ key: key, value: arr[0][key] || 'none' })\n }\n setCustomArr(customData)\n }\n }\n\n const handleCollection = (bool) => {\n setHover(false)\n\n let collectionArr = JSON.parse(localStorage.getItem('collectionArr')) || []\n if (bool) {\n collectionArr.push(modelData.model_name)\n } else {\n collectionArr = collectionArr.filter(\n (item) => item !== modelData.model_name\n )\n }\n localStorage.setItem('collectionArr', JSON.stringify(collectionArr))\n\n onGetCollectionArr(collectionArr)\n }\n\n const handleDeleteChip = () => {\n const arr = JSON.parse(localStorage.getItem('historyArr'))\n const newArr = arr.filter(\n (item) => item.model_name !== modelData.model_name\n )\n localStorage.setItem('historyArr', JSON.stringify(newArr))\n setIsHistory(false)\n if (modelType === 'LLM') {\n setModelEngine('')\n setModelFormat('')\n setModelSize('')\n setQuantization('')\n setNGPU('auto')\n setReplica(1)\n setModelUID('')\n setRequestLimits('')\n setWorkerIp('')\n setGPUIdx('')\n setDownloadHub('')\n setModelPath('')\n setLoraArr([])\n setCustomArr([])\n setIsOther(false)\n setIsPeftModelConfig(false)\n } else {\n setModelUID('')\n setReplica(1)\n setNGpu(gpuAvailable === 0 ? 'CPU' : 'GPU')\n setGPUIdx('')\n setWorkerIp('')\n setDownloadHub('')\n setModelPath('')\n setGgufQuantizations('')\n setGgufModelPath('')\n setCpuOffload(false)\n setLoraArr([])\n setImageLoraLoadArr([])\n setImageLoraFuseArr([])\n setCustomArr([])\n setIsPeftModelConfig(false)\n }\n }\n\n const normalizeLanguage = (language) => {\n if (Array.isArray(language)) {\n return language.map((lang) => lang.toLowerCase())\n } else if (typeof language === 'string') {\n return [language.toLowerCase()]\n } else {\n return []\n }\n }\n\n // Set two different states based on mouse hover\n return (\n <>\n <Paper\n id={modelData.model_name}\n className=\"container\"\n onMouseEnter={() => setHover(true)}\n onMouseLeave={() => setHover(false)}\n onClick={() => {\n if (!selected && !customDeleted) {\n const arr = handleGetHistory()\n if (arr.length) setIsHistory(true)\n setSelected(true)\n if (modelType === 'LLM') {\n getModelEngine(modelData.model_name)\n } else {\n handleOtherHistory()\n }\n }\n }}\n elevation={hover ? 24 : 4}\n >\n {modelType === 'LLM' ? (\n <Box className=\"descriptionCard\">\n {is_custom && (\n <div className=\"cardTitle\">\n <TitleTypography value={modelData.model_name} />\n <div className=\"iconButtonBox\">\n <Tooltip title={t('launchModel.edit')} placement=\"top\">\n <IconButton\n aria-label=\"show\"\n onClick={(e) => {\n e.stopPropagation()\n setIsJsonShow(true)\n }}\n >\n <EditNote />\n </IconButton>\n </Tooltip>\n <Tooltip title={t('launchModel.delete')} placement=\"top\">\n <IconButton\n aria-label=\"delete\"\n onClick={(e) => {\n e.stopPropagation()\n setIsDeleteCustomModel(true)\n }}\n >\n <Delete />\n </IconButton>\n </Tooltip>\n </div>\n </div>\n )}\n {!is_custom && (\n <div className=\"cardTitle\">\n <TitleTypography value={modelData.model_name} />\n <div className=\"iconButtonBox\">\n {JSON.parse(localStorage.getItem('collectionArr'))?.includes(\n modelData.model_name\n ) ? (\n <Tooltip\n title={t('launchModel.unfavorite')}\n placement=\"top\"\n >\n <IconButton\n aria-label=\"collection\"\n onClick={(e) => {\n e.stopPropagation()\n handleCollection(false)\n }}\n >\n <Grade style={{ color: 'rgb(255, 206, 0)' }} />\n </IconButton>\n </Tooltip>\n ) : (\n <Tooltip title={t('launchModel.favorite')} placement=\"top\">\n <IconButton\n aria-label=\"cancellation-of-collections\"\n onClick={(e) => {\n e.stopPropagation()\n handleCollection(true)\n }}\n >\n <StarBorder />\n </IconButton>\n </Tooltip>\n )}\n </div>\n </div>\n )}\n\n <Stack\n spacing={1}\n direction=\"row\"\n useFlexGap\n flexWrap=\"wrap\"\n sx={{ marginLeft: 1 }}\n >\n {modelData.model_lang &&\n (() => {\n return modelData.model_lang.map((v) => {\n return (\n <Chip\n key={v}\n label={v}\n variant=\"outlined\"\n size=\"small\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n )\n })\n })()}\n {(() => {\n if (\n modelData.model_specs &&\n modelData.model_specs.some((spec) => isCached(spec))\n ) {\n return (\n <Chip\n label={t('launchModel.manageCachedModels')}\n variant=\"outlined\"\n color=\"primary\"\n size=\"small\"\n deleteIcon={<EditNote />}\n onDelete={handleOpenCachedList}\n onClick={(e) => {\n e.stopPropagation()\n handleOpenCachedList()\n }}\n />\n )\n }\n })()}\n {(() => {\n if (is_custom && customDeleted) {\n return (\n <Chip label=\"Deleted\" variant=\"outlined\" size=\"small\" />\n )\n }\n })()}\n </Stack>\n {modelData.model_description && (\n <p className=\"p\" title={modelData.model_description}>\n {modelData.model_description}\n </p>\n )}\n\n <div className=\"iconRow\">\n <div className=\"iconItem\">\n <span className=\"boldIconText\">\n {Math.floor(modelData.context_length / 1000)}K\n </span>\n <small className=\"smallText\">\n {t('launchModel.contextLength')}\n </small>\n </div>\n {(() => {\n if (\n modelData.model_ability &&\n modelData.model_ability.includes('chat')\n ) {\n return (\n <div className=\"iconItem\">\n <ChatOutlined className=\"muiIcon\" />\n <small className=\"smallText\">\n {t('launchModel.chatModel')}\n </small>\n </div>\n )\n } else if (\n modelData.model_ability &&\n modelData.model_ability.includes('generate')\n ) {\n return (\n <div className=\"iconItem\">\n <EditNoteOutlined className=\"muiIcon\" />\n <small className=\"smallText\">\n {t('launchModel.generateModel')}\n </small>\n </div>\n )\n } else {\n return (\n <div className=\"iconItem\">\n <HelpCenterOutlined className=\"muiIcon\" />\n <small className=\"smallText\">\n {t('launchModel.otherModel')}\n </small>\n </div>\n )\n }\n })()}\n </div>\n </Box>\n ) : (\n <Box className=\"descriptionCard\">\n <div className=\"titleContainer\">\n {is_custom && (\n <div className=\"cardTitle\">\n <TitleTypography value={modelData.model_name} />\n <div className=\"iconButtonBox\">\n <Tooltip title={t('launchModel.edit')} placement=\"top\">\n <IconButton\n aria-label=\"show\"\n onClick={(e) => {\n e.stopPropagation()\n setIsJsonShow(true)\n }}\n >\n <EditNote />\n </IconButton>\n </Tooltip>\n <Tooltip title={t('launchModel.delete')} placement=\"top\">\n <IconButton\n aria-label=\"delete\"\n onClick={(e) => {\n e.stopPropagation()\n setIsDeleteCustomModel(true)\n }}\n disabled={customDeleted}\n >\n <Delete />\n </IconButton>\n </Tooltip>\n </div>\n </div>\n )}\n {!is_custom && (\n <div className=\"cardTitle\">\n <TitleTypography value={modelData.model_name} />\n <div className=\"iconButtonBox\">\n {JSON.parse(\n localStorage.getItem('collectionArr')\n )?.includes(modelData.model_name) ? (\n <Tooltip\n title={t('launchModel.unfavorite')}\n placement=\"top\"\n >\n <IconButton\n aria-label=\"collection\"\n onClick={(e) => {\n e.stopPropagation()\n handleCollection(false)\n }}\n >\n <Grade style={{ color: 'rgb(255, 206, 0)' }} />\n </IconButton>\n </Tooltip>\n ) : (\n <Tooltip\n title={t('launchModel.favorite')}\n placement=\"top\"\n >\n <IconButton\n aria-label=\"cancellation-of-collections\"\n onClick={(e) => {\n e.stopPropagation()\n handleCollection(true)\n }}\n >\n <StarBorder />\n </IconButton>\n </Tooltip>\n )}\n </div>\n </div>\n )}\n\n <Stack\n spacing={1}\n direction=\"row\"\n useFlexGap\n flexWrap=\"wrap\"\n sx={{ marginLeft: 1 }}\n >\n {(() => {\n if (modelData.language) {\n return normalizeLanguage(modelData.language).map((v) => {\n return (\n <Chip\n key={v}\n label={v}\n variant=\"outlined\"\n size=\"small\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n )\n })\n } else if (modelData.model_family) {\n return (\n <Chip\n label={modelData.model_family}\n variant=\"outlined\"\n size=\"small\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n )\n }\n })()}\n {(() => {\n if (modelData.cache_status) {\n return (\n <Chip\n label={t('launchModel.manageCachedModels')}\n variant=\"outlined\"\n color=\"primary\"\n size=\"small\"\n deleteIcon={<EditNote />}\n onDelete={handleOpenCachedList}\n onClick={(e) => {\n e.stopPropagation()\n handleOpenCachedList()\n }}\n />\n )\n }\n })()}\n {(() => {\n if (is_custom && customDeleted) {\n return (\n <Chip label=\"Deleted\" variant=\"outlined\" size=\"small\" />\n )\n }\n })()}\n </Stack>\n {modelData.model_description && (\n <p className=\"p\" title={modelData.model_description}>\n {modelData.model_description}\n </p>\n )}\n </div>\n {modelData.dimensions && (\n <div className=\"iconRow\">\n <div className=\"iconItem\">\n <span className=\"boldIconText\">{modelData.dimensions}</span>\n <small className=\"smallText\">\n {t('launchModel.dimensions')}\n </small>\n </div>\n <div className=\"iconItem\">\n <span className=\"boldIconText\">{modelData.max_tokens}</span>\n <small className=\"smallText\">\n {t('launchModel.maxTokens')}\n </small>\n </div>\n </div>\n )}\n {!selected && hover && (\n <p className=\"instructionText\">\n {t('launchModel.clickToLaunchModel')}\n </p>\n )}\n </Box>\n )}\n </Paper>\n\n <DeleteDialog\n text={t('launchModel.confirmDeleteCustomModel')}\n isDelete={isDeleteCustomModel}\n onHandleIsDelete={() => setIsDeleteCustomModel(false)}\n onHandleDelete={handeCustomDelete}\n />\n <Drawer\n open={selected}\n onClose={() => {\n setSelected(false)\n setHover(false)\n }}\n anchor={'right'}\n >\n <div className=\"drawerCard\">\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <TitleTypography value={modelData.model_name} />\n {isHistory && (\n <Chip\n label={t('launchModel.lastConfig')}\n variant=\"outlined\"\n size=\"small\"\n color=\"primary\"\n onDelete={handleDeleteChip}\n />\n )}\n </div>\n\n {modelType === 'LLM' ? (\n <Box\n ref={parentRef}\n className=\"formContainer\"\n display=\"flex\"\n flexDirection=\"column\"\n width=\"100%\"\n mx=\"auto\"\n >\n <Grid rowSpacing={0} columnSpacing={1}>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <InputLabel id=\"modelEngine-label\">\n {t('launchModel.modelEngine')}\n </InputLabel>\n <Select\n labelId=\"modelEngine-label\"\n value={modelEngine}\n onChange={(e) => setModelEngine(e.target.value)}\n label={t('launchModel.modelEngine')}\n >\n {engineOptions.map((engine) => {\n const subArr = []\n enginesObj[engine].forEach((item) => {\n subArr.push(item.model_format)\n })\n const arr = [...new Set(subArr)]\n const specs = modelData.model_specs.filter((spec) =>\n arr.includes(spec.model_format)\n )\n\n const cached = specs.some((spec) => isCached(spec))\n\n const displayedEngine = cached\n ? engine + ' ' + t('launchModel.cached')\n : engine\n\n return (\n <MenuItem key={engine} value={engine}>\n {displayedEngine}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl\n variant=\"outlined\"\n margin=\"normal\"\n fullWidth\n disabled={!modelEngine}\n >\n <InputLabel id=\"modelFormat-label\">\n {t('launchModel.modelFormat')}\n </InputLabel>\n <Select\n labelId=\"modelFormat-label\"\n value={modelFormat}\n onChange={(e) => setModelFormat(e.target.value)}\n label={t('launchModel.modelFormat')}\n >\n {formatOptions.map((format) => {\n const specs = modelData.model_specs.filter(\n (spec) => spec.model_format === format\n )\n\n const cached = specs.some((spec) => isCached(spec))\n\n const displayedFormat = cached\n ? format + ' ' + t('launchModel.cached')\n : format\n\n return (\n <MenuItem key={format} value={format}>\n {displayedFormat}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl\n variant=\"outlined\"\n margin=\"normal\"\n fullWidth\n disabled={!modelFormat}\n >\n <InputLabel id=\"modelSize-label\">\n {t('launchModel.modelSize')}\n </InputLabel>\n <Select\n labelId=\"modelSize-label\"\n value={modelSize}\n onChange={(e) => setModelSize(e.target.value)}\n label={t('launchModel.modelSize')}\n >\n {sizeOptions.map((size) => {\n const specs = modelData.model_specs\n .filter((spec) => spec.model_format === modelFormat)\n .filter(\n (spec) => spec.model_size_in_billions === size\n )\n const cached = specs.some((spec) => isCached(spec))\n\n const displayedSize = cached\n ? size + ' ' + t('launchModel.cached')\n : size\n\n return (\n <MenuItem key={size} value={size}>\n {displayedSize}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl\n variant=\"outlined\"\n margin=\"normal\"\n fullWidth\n disabled={!modelFormat || !modelSize}\n >\n <InputLabel id=\"quantization-label\">\n {t('launchModel.quantization')}\n </InputLabel>\n <Select\n labelId=\"quantization-label\"\n value={quantization}\n onChange={(e) => setQuantization(e.target.value)}\n label={t('launchModel.quantization')}\n >\n {quantizationOptions.map((quant) => {\n const specs = modelData.model_specs\n .filter((spec) => spec.model_format === modelFormat)\n .filter(\n (spec) =>\n spec.model_size_in_billions ===\n convertModelSize(modelSize)\n )\n\n const spec = specs.find((s) => {\n return s.quantizations.includes(quant)\n })\n const cached = Array.isArray(spec?.cache_status)\n ? spec?.cache_status[\n spec?.quantizations.indexOf(quant)\n ]\n : spec?.cache_status\n\n const displayedQuant = cached\n ? quant + ' ' + t('launchModel.cached')\n : quant\n\n return (\n <MenuItem key={quant} value={quant}>\n {displayedQuant}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n {modelFormat !== 'ggufv2' && modelFormat !== 'ggmlv3' ? (\n <FormControl\n variant=\"outlined\"\n margin=\"normal\"\n fullWidth\n disabled={!modelFormat || !modelSize || !quantization}\n >\n <InputLabel id=\"n-gpu-label\">\n {t('launchModel.nGPU')}\n </InputLabel>\n <Select\n labelId=\"n-gpu-label\"\n value={nGPU}\n onChange={(e) => setNGPU(e.target.value)}\n label={t('launchModel.nGPU')}\n >\n {getNGPURange().map((v) => {\n return (\n <MenuItem key={v} value={v}>\n {v}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n ) : (\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n disabled={!modelFormat || !modelSize || !quantization}\n type=\"number\"\n label={t('launchModel.nGpuLayers')}\n InputProps={{\n inputProps: {\n min: -1,\n },\n }}\n value={nGPULayers}\n onChange={(e) =>\n setNGPULayers(parseInt(e.target.value, 10))\n }\n />\n </FormControl>\n )}\n </Grid>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n disabled={!modelFormat || !modelSize || !quantization}\n type=\"number\"\n InputProps={{\n inputProps: {\n min: 1,\n },\n }}\n label={t('launchModel.replica')}\n value={replica}\n onChange={(e) => setReplica(parseInt(e.target.value, 10))}\n />\n </FormControl>\n </Grid>\n <ListItemButton onClick={() => setIsOther(!isOther)}>\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <ListItemText\n primary={t('launchModel.optionalConfigurations')}\n style={{ marginRight: 10 }}\n />\n {isOther ? <ExpandLess /> : <ExpandMore />}\n </div>\n </ListItemButton>\n <Collapse in={isOther} timeout=\"auto\" unmountOnExit>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={modelUID}\n label={t('launchModel.modelUID.optional')}\n onChange={(e) => setModelUID(e.target.value)}\n />\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n value={requestLimits}\n label={t('launchModel.requestLimits.optional')}\n onChange={(e) => {\n setRequestLimitsAlert(false)\n setRequestLimits(e.target.value)\n if (\n e.target.value !== '' &&\n (!Number(e.target.value) ||\n Number(e.target.value) < 1 ||\n parseInt(e.target.value) !==\n parseFloat(e.target.value))\n ) {\n setRequestLimitsAlert(true)\n }\n }}\n />\n {requestLimitsAlert && (\n <Alert severity=\"error\">\n {t('launchModel.enterIntegerGreaterThanZero')}\n </Alert>\n )}\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={workerIp}\n label={t('launchModel.workerIp.optional')}\n onChange={(e) => setWorkerIp(e.target.value)}\n />\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n value={GPUIdx}\n label={t('launchModel.GPUIdx.optional')}\n onChange={(e) => {\n setGPUIdxAlert(false)\n setGPUIdx(e.target.value)\n const regular = /^\\d+(?:,\\d+)*$/\n if (\n e.target.value !== '' &&\n !regular.test(e.target.value)\n ) {\n setGPUIdxAlert(true)\n }\n }}\n />\n {GPUIdxAlert && (\n <Alert severity=\"error\">\n {t('launchModel.enterCommaSeparatedNumbers')}\n </Alert>\n )}\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <InputLabel id=\"quantization-label\">\n {t('launchModel.downloadHub.optional')}\n </InputLabel>\n <Select\n labelId=\"download_hub-label\"\n value={downloadHub}\n onChange={(e) => {\n e.target.value === 'none'\n ? setDownloadHub('')\n : setDownloadHub(e.target.value)\n }}\n label={t('launchModel.downloadHub.optional')}\n >\n {(csghubArr.includes(modelData.model_name)\n ? [\n 'none',\n 'huggingface',\n 'modelscope',\n 'openmind_hub',\n 'csghub',\n ]\n : [\n 'none',\n 'huggingface',\n 'modelscope',\n 'openmind_hub',\n ]\n ).map((item) => {\n return (\n <MenuItem key={item} value={item}>\n {item}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n </Grid>\n <Grid item xs={12}>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={modelPath}\n label={t('launchModel.modelPath.optional')}\n onChange={(e) => setModelPath(e.target.value)}\n />\n </FormControl>\n </Grid>\n <ListItemButton\n onClick={() => setIsPeftModelConfig(!isPeftModelConfig)}\n >\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <ListItemText\n primary={t('launchModel.loraConfig')}\n style={{ marginRight: 10 }}\n />\n {isPeftModelConfig ? <ExpandLess /> : <ExpandMore />}\n </div>\n </ListItemButton>\n <Collapse\n in={isPeftModelConfig}\n timeout=\"auto\"\n unmountOnExit\n style={{ marginLeft: '30px' }}\n >\n <AddPair\n customData={{\n title: t('launchModel.loraModelConfig'),\n key: 'lora_name',\n value: 'local_path',\n }}\n onGetArr={(arr) => {\n setLoraListArr(arr)\n }}\n onJudgeArr={judgeArr}\n pairData={loraArr}\n />\n </Collapse>\n </Collapse>\n <AddPair\n customData={{\n title: `${t(\n 'launchModel.additionalParametersForInferenceEngine'\n )}${modelEngine ? ': ' + modelEngine : ''}`,\n key: 'key',\n value: 'value',\n }}\n onGetArr={(arr) => {\n setCustomParametersArr(arr)\n }}\n onJudgeArr={judgeArr}\n pairData={customArr}\n />\n </Grid>\n </Box>\n ) : (\n <Box\n ref={parentRef}\n className=\"formContainer\"\n display=\"flex\"\n flexDirection=\"column\"\n width=\"100%\"\n mx=\"auto\"\n >\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={modelUID}\n label={t('launchModel.modelUID.optional')}\n onChange={(e) => setModelUID(e.target.value)}\n />\n <TextField\n style={{ marginTop: '25px' }}\n type=\"number\"\n InputProps={{\n inputProps: {\n min: 1,\n },\n }}\n label={t('launchModel.replica')}\n value={replica}\n onChange={(e) => setReplica(parseInt(e.target.value, 10))}\n />\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <InputLabel id=\"n-gpu-label\">\n {t('launchModel.device')}\n </InputLabel>\n <Select\n labelId=\"n-gpu-label\"\n value={nGpu}\n onChange={(e) => setNGpu(e.target.value)}\n label={t('launchModel.nGPU')}\n >\n {getNewNGPURange().map((v) => {\n return (\n <MenuItem key={v} value={v}>\n {v}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n {nGpu === 'GPU' && (\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n value={GPUIdx}\n label={t('launchModel.GPUIdx')}\n onChange={(e) => {\n setGPUIdxAlert(false)\n setGPUIdx(e.target.value)\n const regular = /^\\d+(?:,\\d+)*$/\n if (\n e.target.value !== '' &&\n !regular.test(e.target.value)\n ) {\n setGPUIdxAlert(true)\n }\n }}\n />\n {GPUIdxAlert && (\n <Alert severity=\"error\">\n {t('launchModel.enterCommaSeparatedNumbers')}\n </Alert>\n )}\n </FormControl>\n )}\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={workerIp}\n label={t('launchModel.workerIp')}\n onChange={(e) => setWorkerIp(e.target.value)}\n />\n </FormControl>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <InputLabel id=\"quantization-label\">\n {t('launchModel.downloadHub.optional')}\n </InputLabel>\n <Select\n labelId=\"download_hub-label\"\n value={downloadHub}\n onChange={(e) => {\n e.target.value === 'none'\n ? setDownloadHub('')\n : setDownloadHub(e.target.value)\n }}\n label={t('launchModel.downloadHub.optional')}\n >\n {['none', 'huggingface', 'modelscope', 'openmind_hub'].map(\n (item) => {\n return (\n <MenuItem key={item} value={item}>\n {item}\n </MenuItem>\n )\n }\n )}\n </Select>\n </FormControl>\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={modelPath}\n label={t('launchModel.modelPath.optional')}\n onChange={(e) => setModelPath(e.target.value)}\n />\n </FormControl>\n {modelData.gguf_quantizations && (\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <InputLabel id=\"quantization-label\">\n {t('launchModel.GGUFQuantization.optional')}\n </InputLabel>\n <Select\n labelId=\"gguf_quantizations-label\"\n value={ggufQuantizations}\n onChange={(e) => {\n e.target.value === 'none'\n ? setGgufQuantizations('')\n : setGgufQuantizations(e.target.value)\n }}\n label={t('launchModel.GGUFQuantization.optional')}\n >\n {['none', ...modelData.gguf_quantizations].map((item) => {\n return (\n <MenuItem key={item} value={item}>\n {item}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n )}\n {modelData.gguf_quantizations && (\n <FormControl variant=\"outlined\" margin=\"normal\" fullWidth>\n <TextField\n variant=\"outlined\"\n value={ggufModelPath}\n label={t('launchModel.GGUFModelPath.optional')}\n onChange={(e) => setGgufModelPath(e.target.value)}\n />\n </FormControl>\n )}\n {modelType === 'image' && (\n <>\n <div\n style={{\n marginBlock: '10px',\n }}\n >\n <FormControlLabel\n label={\n <div>\n <span>{t('launchModel.CPUOffload')}</span>\n <Tooltip\n title={t('launchModel.CPUOffload.tip')}\n placement=\"top\"\n >\n <IconButton>\n <HelpOutline />\n </IconButton>\n </Tooltip>\n </div>\n }\n labelPlacement=\"start\"\n control={<Switch checked={cpuOffload} />}\n onChange={(e) => {\n setCpuOffload(e.target.checked)\n }}\n />\n </div>\n <ListItemButton\n onClick={() => setIsPeftModelConfig(!isPeftModelConfig)}\n >\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <ListItemText\n primary={t('launchModel.loraConfig')}\n style={{ marginRight: 10 }}\n />\n {isPeftModelConfig ? <ExpandLess /> : <ExpandMore />}\n </div>\n </ListItemButton>\n <Collapse\n in={isPeftModelConfig}\n timeout=\"auto\"\n unmountOnExit\n style={{ marginLeft: '30px' }}\n >\n <AddPair\n customData={{\n title: t('launchModel.loraModelConfig'),\n key: 'lora_name',\n value: 'local_path',\n }}\n onGetArr={(arr) => {\n setLoraListArr(arr)\n }}\n onJudgeArr={judgeArr}\n pairData={loraArr}\n />\n <AddPair\n customData={{\n title: t('launchModel.loraLoadKwargsForImageModel'),\n key: 'key',\n value: 'value',\n }}\n onGetArr={(arr) => {\n setImageLoraLoadKwargsArr(arr)\n }}\n onJudgeArr={judgeArr}\n pairData={imageLoraLoadArr}\n />\n <AddPair\n customData={{\n title: t('launchModel.loraFuseKwargsForImageModel'),\n key: 'key',\n value: 'value',\n }}\n onGetArr={(arr) => {\n setImageLoraFuseKwargsArr(arr)\n }}\n onJudgeArr={judgeArr}\n pairData={imageLoraFuseArr}\n />\n </Collapse>\n </>\n )}\n <AddPair\n customData={{\n title: t(\n 'launchModel.additionalParametersForInferenceEngine'\n ),\n key: 'key',\n value: 'value',\n }}\n onGetArr={(arr) => {\n setCustomParametersArr(arr)\n }}\n onJudgeArr={judgeArr}\n pairData={customArr}\n />\n </FormControl>\n </Box>\n )}\n <Box className=\"buttonsContainer\">\n <button\n title={t('launchModel.launch')}\n className=\"buttonContainer\"\n onClick={() => launchModel(url, modelData)}\n disabled={\n (modelType === 'LLM' &&\n (isCallingApi ||\n isUpdatingModel ||\n !(\n modelFormat &&\n modelSize &&\n modelData &&\n (quantization ||\n (!modelData.is_builtin && modelFormat !== 'pytorch'))\n ) ||\n !judgeArr(loraListArr, ['lora_name', 'local_path']) ||\n !judgeArr(imageLoraLoadKwargsArr, ['key', 'value']) ||\n !judgeArr(imageLoraFuseKwargsArr, ['key', 'value']) ||\n requestLimitsAlert ||\n GPUIdxAlert)) ||\n ((modelType === 'embedding' || modelType === 'rerank') &&\n GPUIdxAlert) ||\n !judgeArr(customParametersArr, ['key', 'value'])\n }\n >\n {(() => {\n if (isCallingApi || isUpdatingModel) {\n return (\n <Box\n className=\"buttonItem\"\n style={{\n backgroundColor: '#f2f2f2',\n }}\n >\n <CircularProgress\n size=\"20px\"\n sx={{\n color: '#000000',\n }}\n />\n </Box>\n )\n } else if (\n !(\n modelFormat &&\n modelSize &&\n modelData &&\n (quantization ||\n (!modelData.is_builtin && modelFormat !== 'pytorch'))\n )\n ) {\n return (\n <Box\n className=\"buttonItem\"\n style={{\n backgroundColor: '#f2f2f2',\n }}\n >\n <RocketLaunchOutlined size=\"20px\" />\n </Box>\n )\n } else {\n return (\n <Box className=\"buttonItem\">\n <RocketLaunchOutlined color=\"#000000\" size=\"20px\" />\n </Box>\n )\n }\n })()}\n </button>\n <button\n title={t('launchModel.goBack')}\n className=\"buttonContainer\"\n onClick={() => {\n setSelected(false)\n setHover(false)\n }}\n >\n <Box className=\"buttonItem\">\n <UndoOutlined color=\"#000000\" size=\"20px\" />\n </Box>\n </button>\n </Box>\n </div>\n </Drawer>\n <Backdrop\n sx={{ color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }}\n open={isJsonShow}\n >\n <div className=\"jsonDialog\">\n <div className=\"jsonDialog-title\">\n <div className=\"title-name\">{modelData.model_name}</div>\n <CopyComponent\n tip={t('launchModel.copyJson')}\n text={JSON.stringify(modelData, null, 4)}\n />\n </div>\n <div className=\"main-box\">\n <textarea\n readOnly\n className=\"textarea-box\"\n value={JSON.stringify(modelData, null, 4)}\n />\n </div>\n <div className=\"but-box\">\n <Button\n onClick={() => {\n setIsJsonShow(false)\n }}\n style={{ marginRight: 30 }}\n >\n {t('launchModel.cancel')}\n </Button>\n <Button onClick={handleJsonDataPresentation}>\n {t('launchModel.edit')}\n </Button>\n </div>\n </div>\n </Backdrop>\n <Snackbar\n anchorOrigin={{ vertical: 'top', horizontal: 'center' }}\n open={openSnackbar}\n onClose={() => setOpenSnackbar(false)}\n message={t('launchModel.fillCompleteParametersBeforeAdding')}\n />\n <Snackbar\n anchorOrigin={{ vertical: 'top', horizontal: 'center' }}\n open={openErrorSnackbar}\n onClose={() => setOpenErrorSnackbar(false)}\n >\n <Alert severity=\"error\" variant=\"filled\" sx={{ width: '100%' }}>\n {errorSnackbarValue}\n </Alert>\n </Snackbar>\n\n <Backdrop\n sx={{ color: '#fff', zIndex: (theme) => theme.zIndex.drawer + 1 }}\n open={isOpenCachedList}\n >\n <div className=\"dialogBox\">\n <div className=\"dialogTitle\">\n <div className=\"dialogTitle-model_name\">{modelData.model_name}</div>\n <Close\n style={{ cursor: 'pointer' }}\n onClick={handleCloseCachedList}\n />\n </div>\n <TableContainer component={Paper}>\n <Table\n sx={{ minWidth: 500 }}\n style={{ height: '500px', width: '100%' }}\n stickyHeader\n aria-label=\"simple pagination table\"\n >\n <TableHead>\n <TableRow>\n {modelType === 'LLM' && (\n <>\n <TableCell align=\"left\">\n {t('launchModel.model_format')}\n </TableCell>\n <TableCell align=\"left\">\n {t('launchModel.model_size_in_billions')}\n </TableCell>\n <TableCell align=\"left\">\n {t('launchModel.quantizations')}\n </TableCell>\n </>\n )}\n <TableCell align=\"left\" style={{ width: 192 }}>\n {t('launchModel.real_path')}\n </TableCell>\n <TableCell align=\"left\" style={{ width: 46 }}></TableCell>\n <TableCell align=\"left\" style={{ width: 192 }}>\n {t('launchModel.path')}\n </TableCell>\n <TableCell align=\"left\" style={{ width: 46 }}></TableCell>\n <TableCell\n align=\"left\"\n style={{ whiteSpace: 'nowrap', minWidth: 116 }}\n >\n {t('launchModel.ipAddress')}\n </TableCell>\n <TableCell align=\"left\">\n {t('launchModel.operation')}\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody style={{ position: 'relative' }}>\n {cachedListArr.slice(page * 5, page * 5 + 5).map((row) => (\n <StyledTableRow\n style={{ maxHeight: 90 }}\n key={row.model_name}\n >\n {modelType === 'LLM' && (\n <>\n <TableCell component=\"th\" scope=\"row\">\n {row.model_format === null ? '—' : row.model_format}\n </TableCell>\n <TableCell>\n {row.model_size_in_billions === null\n ? '—'\n : row.model_size_in_billions}\n </TableCell>\n <TableCell>\n {row.quantization === null ? '—' : row.quantization}\n </TableCell>\n </>\n )}\n <TableCell>\n <Tooltip title={row.real_path}>\n <div\n className={\n modelType === 'LLM' ? 'pathBox' : 'pathBox pathBox2'\n }\n >\n {row.real_path}\n </div>\n </Tooltip>\n </TableCell>\n <TableCell>\n <CopyComponent\n tip={t('launchModel.copyRealPath')}\n text={row.real_path}\n />\n </TableCell>\n <TableCell>\n <Tooltip title={row.path}>\n <div\n className={\n modelType === 'LLM' ? 'pathBox' : 'pathBox pathBox2'\n }\n >\n {row.path}\n </div>\n </Tooltip>\n </TableCell>\n <TableCell>\n <CopyComponent\n tip={t('launchModel.copyPath')}\n text={row.path}\n />\n </TableCell>\n <TableCell>{row.actor_ip_address}</TableCell>\n <TableCell align={modelType === 'LLM' ? 'center' : 'left'}>\n <IconButton\n aria-label=\"delete\"\n size=\"large\"\n onClick={() =>\n handleOpenDeleteCachedDialog(\n row.real_path,\n row.model_version\n )\n }\n >\n <Delete />\n </IconButton>\n </TableCell>\n </StyledTableRow>\n ))}\n {emptyRows > 0 && (\n <TableRow style={{ height: 89.4 * emptyRows }}>\n <TableCell />\n </TableRow>\n )}\n {cachedListArr.length === 0 && (\n <div className=\"empty\">{t('launchModel.noCacheForNow')}</div>\n )}\n </TableBody>\n </Table>\n </TableContainer>\n <TablePagination\n style={{ float: 'right' }}\n rowsPerPageOptions={[5]}\n count={cachedListArr.length}\n rowsPerPage={5}\n page={page}\n onPageChange={handleChangePage}\n />\n </div>\n </Backdrop>\n <DeleteDialog\n text={t('launchModel.confirmDeleteCacheFiles')}\n isDelete={isDeleteCached}\n onHandleIsDelete={() => setIsDeleteCached(false)}\n onHandleDelete={handleDeleteCached}\n />\n </>\n )\n}\n\nexport default ModelCard\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"ast":null,"code":"import{createTheme}from'@mui/material/styles';// mui theme settings\nexport var themeSettings=function themeSettings(mode){return{ERROR_COLOR:'#d8342c',typography:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:12,h1:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:40},h2:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:32},h3:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:24},h4:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:20},h5:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:16},h6:{fontFamily:['Source Sans Pro','sans-serif'].join(','),fontSize:14}},palette:{mode:mode}};};export var useMode=function useMode(){var mode=arguments.length>0&&arguments[0]!==undefined?arguments[0]:'light';var theme=createTheme(themeSettings(mode));return[theme];};","map":{"version":3,"names":["createTheme","themeSettings","mode","ERROR_COLOR","typography","fontFamily","join","fontSize","h1","h2","h3","h4","h5","h6","palette","useMode","arguments","length","undefined","theme"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/theme.js"],"sourcesContent":["import { createTheme } from '@mui/material/styles'\n\n// mui theme settings\nexport const themeSettings = (mode) => {\n return {\n ERROR_COLOR: '#d8342c',\n typography: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 12,\n h1: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 40,\n },\n h2: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 32,\n },\n h3: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 24,\n },\n h4: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 20,\n },\n h5: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 16,\n },\n h6: {\n fontFamily: ['Source Sans Pro', 'sans-serif'].join(','),\n fontSize: 14,\n },\n },\n palette: {\n mode: mode,\n },\n }\n}\n\nexport const useMode = (mode = 'light') => {\n const theme = createTheme(themeSettings(mode))\n return [theme]\n}\n"],"mappings":"AAAA,OAASA,WAAW,KAAQ,sBAAsB,CAElD;AACA,MAAO,IAAM,CAAAC,aAAa,CAAG,QAAhB,CAAAA,aAAaA,CAAIC,IAAI,CAAK,CACrC,MAAO,CACLC,WAAW,CAAE,SAAS,CACtBC,UAAU,CAAE,CACVC,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EAAE,CACZC,EAAE,CAAE,CACFH,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EACZ,CAAC,CACDE,EAAE,CAAE,CACFJ,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EACZ,CAAC,CACDG,EAAE,CAAE,CACFL,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EACZ,CAAC,CACDI,EAAE,CAAE,CACFN,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EACZ,CAAC,CACDK,EAAE,CAAE,CACFP,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EACZ,CAAC,CACDM,EAAE,CAAE,CACFR,UAAU,CAAE,CAAC,iBAAiB,CAAE,YAAY,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CACvDC,QAAQ,CAAE,EACZ,CACF,CAAC,CACDO,OAAO,CAAE,CACPZ,IAAI,CAAEA,IACR,CACF,CAAC,CACH,CAAC,CAED,MAAO,IAAM,CAAAa,OAAO,CAAG,QAAV,CAAAA,OAAOA,CAAA,CAAuB,IAAnB,CAAAb,IAAI,CAAAc,SAAA,CAAAC,MAAA,IAAAD,SAAA,MAAAE,SAAA,CAAAF,SAAA,IAAG,OAAO,CACpC,GAAM,CAAAG,KAAK,CAAGnB,WAAW,CAACC,aAAa,CAACC,IAAI,CAAC,CAAC,CAC9C,MAAO,CAACiB,KAAK,CAAC,CAChB,CAAC","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"ast":null,"code":"import _slicedToArray from\"/home/runner/work/inference/inference/xinference/web/ui/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";import{ThemeProvider as MuiThemeProvider}from'@mui/material';import{createContext,useContext,useState}from'react';import{useMode}from'../theme';import{jsx as _jsx}from\"react/jsx-runtime\";var ThemeContext=/*#__PURE__*/createContext();export function useThemeContext(){return useContext(ThemeContext);}export var ThemeProvider=function ThemeProvider(_ref){var children=_ref.children;var themeKey='theme';var systemPreference=window.matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light';var initialMode=localStorage.getItem(themeKey)||systemPreference;var _useState=useState(initialMode),_useState2=_slicedToArray(_useState,2),themeMode=_useState2[0],setThemeMode=_useState2[1];var theme=useMode(themeMode)[0];var switchTheme=function switchTheme(){var nextTheme=themeMode==='light'?'dark':'light';setThemeMode(nextTheme);localStorage.setItem(themeKey,nextTheme);};return/*#__PURE__*/_jsx(MuiThemeProvider,{theme:theme,children:/*#__PURE__*/_jsx(ThemeContext.Provider,{value:{themeMode:themeMode,toggleTheme:switchTheme},children:children})});};","map":{"version":3,"names":["ThemeProvider","MuiThemeProvider","createContext","useContext","useState","useMode","jsx","_jsx","ThemeContext","useThemeContext","_ref","children","themeKey","systemPreference","window","matchMedia","matches","initialMode","localStorage","getItem","_useState","_useState2","_slicedToArray","themeMode","setThemeMode","theme","switchTheme","nextTheme","setItem","Provider","value","toggleTheme"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/components/themeContext.js"],"sourcesContent":["import { ThemeProvider as MuiThemeProvider } from '@mui/material'\nimport { createContext, useContext, useState } from 'react'\n\nimport { useMode } from '../theme'\n\nconst ThemeContext = createContext()\n\nexport function useThemeContext() {\n return useContext(ThemeContext)\n}\n\nexport const ThemeProvider = ({ children }) => {\n const themeKey = 'theme'\n const systemPreference = window.matchMedia('(prefers-color-scheme: dark)')\n .matches\n ? 'dark'\n : 'light'\n const initialMode = localStorage.getItem(themeKey) || systemPreference\n\n const [themeMode, setThemeMode] = useState(initialMode)\n const theme = useMode(themeMode)[0]\n\n const switchTheme = () => {\n const nextTheme = themeMode === 'light' ? 'dark' : 'light'\n setThemeMode(nextTheme)\n localStorage.setItem(themeKey, nextTheme)\n }\n\n return (\n <MuiThemeProvider theme={theme}>\n <ThemeContext.Provider value={{ themeMode, toggleTheme: switchTheme }}>\n {children}\n </ThemeContext.Provider>\n </MuiThemeProvider>\n )\n}\n"],"mappings":"6IAAA,OAASA,aAAa,GAAI,CAAAC,gBAAgB,KAAQ,eAAe,CACjE,OAASC,aAAa,CAAEC,UAAU,CAAEC,QAAQ,KAAQ,OAAO,CAE3D,OAASC,OAAO,KAAQ,UAAU,QAAAC,GAAA,IAAAC,IAAA,yBAElC,GAAM,CAAAC,YAAY,cAAGN,aAAa,CAAC,CAAC,CAEpC,MAAO,SAAS,CAAAO,eAAeA,CAAA,CAAG,CAChC,MAAO,CAAAN,UAAU,CAACK,YAAY,CAAC,CACjC,CAEA,MAAO,IAAM,CAAAR,aAAa,CAAG,QAAhB,CAAAA,aAAaA,CAAAU,IAAA,CAAqB,IAAf,CAAAC,QAAQ,CAAAD,IAAA,CAARC,QAAQ,CACtC,GAAM,CAAAC,QAAQ,CAAG,OAAO,CACxB,GAAM,CAAAC,gBAAgB,CAAGC,MAAM,CAACC,UAAU,CAAC,8BAA8B,CAAC,CACvEC,OAAO,CACN,MAAM,CACN,OAAO,CACX,GAAM,CAAAC,WAAW,CAAGC,YAAY,CAACC,OAAO,CAACP,QAAQ,CAAC,EAAIC,gBAAgB,CAEtE,IAAAO,SAAA,CAAkChB,QAAQ,CAACa,WAAW,CAAC,CAAAI,UAAA,CAAAC,cAAA,CAAAF,SAAA,IAAhDG,SAAS,CAAAF,UAAA,IAAEG,YAAY,CAAAH,UAAA,IAC9B,GAAM,CAAAI,KAAK,CAAGpB,OAAO,CAACkB,SAAS,CAAC,CAAC,CAAC,CAAC,CAEnC,GAAM,CAAAG,WAAW,CAAG,QAAd,CAAAA,WAAWA,CAAA,CAAS,CACxB,GAAM,CAAAC,SAAS,CAAGJ,SAAS,GAAK,OAAO,CAAG,MAAM,CAAG,OAAO,CAC1DC,YAAY,CAACG,SAAS,CAAC,CACvBT,YAAY,CAACU,OAAO,CAAChB,QAAQ,CAAEe,SAAS,CAAC,CAC3C,CAAC,CAED,mBACEpB,IAAA,CAACN,gBAAgB,EAACwB,KAAK,CAAEA,KAAM,CAAAd,QAAA,cAC7BJ,IAAA,CAACC,YAAY,CAACqB,QAAQ,EAACC,KAAK,CAAE,CAAEP,SAAS,CAATA,SAAS,CAAEQ,WAAW,CAAEL,WAAY,CAAE,CAAAf,QAAA,CACnEA,QAAQ,CACY,CAAC,CACR,CAAC,CAEvB,CAAC","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"ast":null,"code":"import'./i18n';import React from'react';import{CookiesProvider}from'react-cookie';import ReactDOM from'react-dom/client';import App from'./App';import{jsx as _jsx}from\"react/jsx-runtime\";var root=ReactDOM.createRoot(document.getElementById('root'));root.render(/*#__PURE__*/_jsx(React.StrictMode,{children:/*#__PURE__*/_jsx(CookiesProvider,{children:/*#__PURE__*/_jsx(App,{})})}));","map":{"version":3,"names":["React","CookiesProvider","ReactDOM","App","jsx","_jsx","root","createRoot","document","getElementById","render","StrictMode","children"],"sources":["/home/runner/work/inference/inference/xinference/web/ui/src/index.js"],"sourcesContent":["import './i18n'\n\nimport React from 'react'\nimport { CookiesProvider } from 'react-cookie'\nimport ReactDOM from 'react-dom/client'\n\nimport App from './App'\n\nconst root = ReactDOM.createRoot(document.getElementById('root'))\nroot.render(\n <React.StrictMode>\n <CookiesProvider>\n <App />\n </CookiesProvider>\n </React.StrictMode>\n)\n"],"mappings":"AAAA,MAAO,QAAQ,CAEf,MAAO,CAAAA,KAAK,KAAM,OAAO,CACzB,OAASC,eAAe,KAAQ,cAAc,CAC9C,MAAO,CAAAC,QAAQ,KAAM,kBAAkB,CAEvC,MAAO,CAAAC,GAAG,KAAM,OAAO,QAAAC,GAAA,IAAAC,IAAA,yBAEvB,GAAM,CAAAC,IAAI,CAAGJ,QAAQ,CAACK,UAAU,CAACC,QAAQ,CAACC,cAAc,CAAC,MAAM,CAAC,CAAC,CACjEH,IAAI,CAACI,MAAM,cACTL,IAAA,CAACL,KAAK,CAACW,UAAU,EAAAC,QAAA,cACfP,IAAA,CAACJ,eAAe,EAAAW,QAAA,cACdP,IAAA,CAACF,GAAG,GAAE,CAAC,CACQ,CAAC,CACF,CACpB,CAAC","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|