From 7b999e6692c13118da51a101343ab278522a3f74 Mon Sep 17 00:00:00 2001 From: jialin Date: Fri, 6 Sep 2024 19:27:10 +0800 Subject: [PATCH] feat: model file chunk --- src/pages/llmodels/components/deploy-modal.tsx | 2 +- src/pages/llmodels/components/hf-model-file.tsx | 17 ++++++++++++----- src/pages/llmodels/components/search-model.tsx | 3 +++ src/pages/llmodels/components/update-modal.tsx | 5 +---- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/pages/llmodels/components/deploy-modal.tsx b/src/pages/llmodels/components/deploy-modal.tsx index 7dcb8ec6..6c54f67a 100644 --- a/src/pages/llmodels/components/deploy-modal.tsx +++ b/src/pages/llmodels/components/deploy-modal.tsx @@ -43,7 +43,7 @@ const AddModal: React.FC = (props) => { const [loadingModel, setLoadingModel] = useState(false); const handleSelectModelFile = useCallback((item: any) => { - form.current?.setFieldValue?.('huggingface_filename', item.path); + form.current?.setFieldValue?.('huggingface_filename', item.fakeName); }, []); const handleOnSelectModel = (item: any) => { diff --git a/src/pages/llmodels/components/hf-model-file.tsx b/src/pages/llmodels/components/hf-model-file.tsx index 651f733c..42e39369 100644 --- a/src/pages/llmodels/components/hf-model-file.tsx +++ b/src/pages/llmodels/components/hf-model-file.tsx @@ -44,6 +44,7 @@ const HFModelFile: React.FC = (props) => { const axiosTokenRef = useRef(null); const handleSelectModelFile = (item: any) => { + console.log('handleSelectModelFile', item); props.onSelectFile?.(item); setCurrent(item.path); }; @@ -70,9 +71,14 @@ const HFModelFile: React.FC = (props) => { // general file if (!data) { - return list; + return _.map(list, (item: any) => { + item.fakeName = item.path; + return item; + }); } + // shard file + const newList = _.map(list, (item: any) => { const parsed = parseFilename(item.path); return { @@ -83,9 +89,10 @@ const HFModelFile: React.FC = (props) => { const group = _.groupBy(newList, 'filename'); - return _.map(group, (value: any[], key: string) => { + return _.map(group, (value: any[], filename: string) => { return { - path: key, + path: filename, + fakeName: `${filename}*.gguf`, size: _.sumBy(value, 'size'), parts: value }; @@ -117,9 +124,9 @@ const HFModelFile: React.FC = (props) => { return _.endsWith(file.path, '.gguf') || _.includes(file.path, '.gguf'); }); - // const newList = generateGroupByFilename(list); + const newList = generateGroupByFilename(list); - const sortList = _.sortBy(list, (item: any) => { + const sortList = _.sortBy(newList, (item: any) => { return sortType === 'size' ? item.size : item.path; }); handleSelectModelFile(sortList[0]); diff --git a/src/pages/llmodels/components/search-model.tsx b/src/pages/llmodels/components/search-model.tsx index 76c3a03e..33a7986c 100644 --- a/src/pages/llmodels/components/search-model.tsx +++ b/src/pages/llmodels/components/search-model.tsx @@ -62,6 +62,9 @@ const SearchModel: React.FC = (props) => { const handleOnSearchRepo = useCallback( async (sortType?: string) => { + if (modelSource === modelSourceMap.ollama_library_value) { + return; + } axiosTokenRef.current?.abort?.(); axiosTokenRef.current = new AbortController(); if (dataSource.loading) return; diff --git a/src/pages/llmodels/components/update-modal.tsx b/src/pages/llmodels/components/update-modal.tsx index 4f2fba0a..39a1a0c7 100644 --- a/src/pages/llmodels/components/update-modal.tsx +++ b/src/pages/llmodels/components/update-modal.tsx @@ -64,11 +64,8 @@ const UpdateModal: React.FC = (props) => { }); } if (action === PageAction.EDIT && open) { - const list = _.split(props.data?.ollama_library_model_name, ':'); form.setFieldsValue({ - ...props.data, - ollama_library_model_name: _.get(list, '0'), - tag: _.get(list, '1') + ...props.data }); } };