fix: edit mask for undo
This commit is contained in:
@@ -340,6 +340,7 @@ const AdvanceConfig: React.FC<AdvanceConfigProps> = (props) => {
|
||||
id: 'models.form.backendVersion.tips'
|
||||
},
|
||||
{
|
||||
backend: backend,
|
||||
link: backendParamsTips?.releases && (
|
||||
<span
|
||||
style={{
|
||||
|
||||
@@ -21,6 +21,7 @@ import {
|
||||
HuggingFaceTaskMap,
|
||||
ModelscopeTaskMap,
|
||||
backendOptionsMap,
|
||||
backendTipsList,
|
||||
modelSourceMap,
|
||||
modelTaskMap,
|
||||
ollamaModelOptions,
|
||||
@@ -89,36 +90,6 @@ const DataForm: React.FC<DataFormProps> = forwardRef((props, ref) => {
|
||||
|
||||
const localPathCache = useRef<string>('');
|
||||
|
||||
const backendTipsList = [
|
||||
{
|
||||
title: 'llama-box',
|
||||
tips: intl.formatMessage({ id: 'models.form.backend.llamabox' })
|
||||
},
|
||||
{
|
||||
title: 'vLLM',
|
||||
tips: intl.formatMessage({ id: 'models.form.backend.vllm' })
|
||||
},
|
||||
{
|
||||
title: 'vox-box',
|
||||
tips: intl.formatMessage({ id: 'models.form.backend.voxbox' })
|
||||
}
|
||||
];
|
||||
|
||||
const localPathTipsList = [
|
||||
{
|
||||
title: intl.formatMessage({ id: 'models.localpath.gguf.tips.title' }),
|
||||
tips: intl.formatMessage({ id: 'models.localpath.gguf.tips' })
|
||||
},
|
||||
{
|
||||
title: intl.formatMessage({ id: 'models.localpath.shared.tips.title' }),
|
||||
tips: intl.formatMessage({ id: 'models.localpath.chunks.tips' })
|
||||
},
|
||||
{
|
||||
title: intl.formatMessage({ id: 'models.localpat.safe.tips.title' }),
|
||||
tips: intl.formatMessage({ id: 'models.localpath.safe.tips' })
|
||||
}
|
||||
];
|
||||
|
||||
const handleSumit = () => {
|
||||
form.submit();
|
||||
};
|
||||
|
||||
@@ -81,39 +81,34 @@ const AddModal: React.FC<AddModalProps> = (props) => {
|
||||
|
||||
const updateShowWarning = (backend: string) => {
|
||||
const localPath = form.current?.getFieldValue?.('local_path');
|
||||
const isBlobFile = localPath?.split('/').pop()?.includes('sha256');
|
||||
|
||||
if (isBlobFile) {
|
||||
setWarningStatus({
|
||||
show: false,
|
||||
message: ''
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
if (source !== modelSourceMap.local_path_value || !localPath) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (localPath.endsWith('.gguf') && backend !== backendOptionsMap.llamaBox) {
|
||||
setWarningStatus({
|
||||
show: true,
|
||||
message: 'models.form.backend.warning'
|
||||
});
|
||||
const isBlobFile = localPath?.split('/').pop()?.includes('sha256');
|
||||
const isOllamaModel = localPath?.includes('ollama');
|
||||
const isGGUFFile = localPath.endsWith('.gguf');
|
||||
|
||||
let warningMessage = '';
|
||||
if (isBlobFile && isOllamaModel && backend === backendOptionsMap.llamaBox) {
|
||||
warningMessage = '';
|
||||
} else if (
|
||||
!localPath.endsWith('.gguf') &&
|
||||
backend === backendOptionsMap.llamaBox
|
||||
isBlobFile &&
|
||||
isOllamaModel &&
|
||||
backend !== backendOptionsMap.llamaBox
|
||||
) {
|
||||
setWarningStatus({
|
||||
show: true,
|
||||
message: 'models.form.backend.warning.llamabox'
|
||||
});
|
||||
} else {
|
||||
setWarningStatus({
|
||||
show: false,
|
||||
message: ''
|
||||
});
|
||||
warningMessage = 'models.form.ollama.warning';
|
||||
} else if (isGGUFFile && backend !== backendOptionsMap.llamaBox) {
|
||||
warningMessage = 'models.form.backend.warning';
|
||||
} else if (!isGGUFFile && backend === backendOptionsMap.llamaBox) {
|
||||
warningMessage = 'models.form.backend.warning.llamabox';
|
||||
}
|
||||
|
||||
setWarningStatus({
|
||||
show: !!warningMessage,
|
||||
message: warningMessage
|
||||
});
|
||||
};
|
||||
|
||||
const handleBackendChange = (backend: string) => {
|
||||
|
||||
@@ -4,6 +4,7 @@ import ModalFooter from '@/components/modal-footer';
|
||||
import SealAutoComplete from '@/components/seal-form/auto-complete';
|
||||
import SealInput from '@/components/seal-form/seal-input';
|
||||
import SealSelect from '@/components/seal-form/seal-select';
|
||||
import TooltipList from '@/components/tooltip-list';
|
||||
import { PageAction } from '@/config';
|
||||
import { PageActionType } from '@/config/types';
|
||||
import { useIntl } from '@umijs/max';
|
||||
@@ -12,6 +13,8 @@ import _ from 'lodash';
|
||||
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
||||
import {
|
||||
backendOptionsMap,
|
||||
backendTipsList,
|
||||
localPathTipsList,
|
||||
modelSourceMap,
|
||||
ollamaModelOptions
|
||||
} from '../config';
|
||||
@@ -98,39 +101,34 @@ const UpdateModal: React.FC<AddModalProps> = (props) => {
|
||||
const updateShowWarning = (backend: string) => {
|
||||
const localPath = form.getFieldValue?.('local_path');
|
||||
|
||||
const isBlobFile = localPath?.split('/').pop()?.includes('sha256');
|
||||
|
||||
if (isBlobFile) {
|
||||
setWarningStatus({
|
||||
show: false,
|
||||
message: ''
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
if (formData?.source !== modelSourceMap.local_path_value || !localPath) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (localPath.endsWith('.gguf') && backend !== backendOptionsMap.llamaBox) {
|
||||
setWarningStatus({
|
||||
show: true,
|
||||
message: 'models.form.backend.warning'
|
||||
});
|
||||
const isBlobFile = localPath?.split('/').pop()?.includes('sha256');
|
||||
const isOllamaModel = localPath?.includes('ollama');
|
||||
const isGGUFFile = localPath.endsWith('.gguf');
|
||||
|
||||
let warningMessage = '';
|
||||
|
||||
if (isBlobFile && isOllamaModel && backend === backendOptionsMap.llamaBox) {
|
||||
warningMessage = '';
|
||||
} else if (
|
||||
!localPath.endsWith('.gguf') &&
|
||||
backend === backendOptionsMap.llamaBox
|
||||
isBlobFile &&
|
||||
isOllamaModel &&
|
||||
backend !== backendOptionsMap.llamaBox
|
||||
) {
|
||||
setWarningStatus({
|
||||
show: true,
|
||||
message: 'models.form.backend.warning.llamabox'
|
||||
});
|
||||
} else {
|
||||
setWarningStatus({
|
||||
show: false,
|
||||
message: ''
|
||||
});
|
||||
warningMessage = 'models.form.ollama.warning';
|
||||
} else if (isGGUFFile && backend !== backendOptionsMap.llamaBox) {
|
||||
warningMessage = 'models.form.backend.warning';
|
||||
} else if (!isGGUFFile && backend === backendOptionsMap.llamaBox) {
|
||||
warningMessage = 'models.form.backend.warning.llamabox';
|
||||
}
|
||||
|
||||
setWarningStatus({
|
||||
show: !!warningMessage,
|
||||
message: warningMessage
|
||||
});
|
||||
};
|
||||
|
||||
const handleBackendChange = (val: string) => {
|
||||
@@ -284,6 +282,7 @@ const UpdateModal: React.FC<AddModalProps> = (props) => {
|
||||
onFocus={handleOnFocus}
|
||||
disabled={false}
|
||||
label={intl.formatMessage({ id: 'models.form.filePath' })}
|
||||
description={<TooltipList list={localPathTipsList}></TooltipList>}
|
||||
required
|
||||
></SealInput.Input>
|
||||
</Form.Item>
|
||||
@@ -519,6 +518,7 @@ const UpdateModal: React.FC<AddModalProps> = (props) => {
|
||||
required
|
||||
onChange={handleBackendChange}
|
||||
label={intl.formatMessage({ id: 'models.form.backend' })}
|
||||
description={<TooltipList list={backendTipsList}></TooltipList>}
|
||||
options={[
|
||||
{
|
||||
label: `llama-box`,
|
||||
|
||||
@@ -88,6 +88,45 @@ export const ollamaModelOptions = [
|
||||
}
|
||||
];
|
||||
|
||||
export const backendTipsList = [
|
||||
{
|
||||
title: 'llama-box',
|
||||
tips: 'models.form.backend.llamabox'
|
||||
},
|
||||
{
|
||||
title: 'vLLM',
|
||||
tips: 'models.form.backend.vllm'
|
||||
},
|
||||
{
|
||||
title: 'vox-box',
|
||||
tips: 'models.form.backend.voxbox'
|
||||
}
|
||||
];
|
||||
|
||||
export const localPathTipsList = [
|
||||
{
|
||||
title: {
|
||||
text: 'models.localpath.gguf.tips.title',
|
||||
locale: true
|
||||
},
|
||||
tips: 'models.localpath.gguf.tips'
|
||||
},
|
||||
{
|
||||
title: {
|
||||
text: 'models.localpath.shared.tips.title',
|
||||
locale: true
|
||||
},
|
||||
tips: 'models.localpath.chunks.tips'
|
||||
},
|
||||
{
|
||||
title: {
|
||||
text: 'models.localpat.safe.tips.title',
|
||||
locale: true
|
||||
},
|
||||
tips: 'models.localpath.safe.tips'
|
||||
}
|
||||
];
|
||||
|
||||
export const backendOptionsMap = {
|
||||
llamaBox: 'llama-box',
|
||||
vllm: 'vllm',
|
||||
|
||||
Reference in New Issue
Block a user