mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-21 11:43:56 +00:00
46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
import { TrainingModeEnum, DatasetCollectionTypeEnum } from './constants';
|
|
import { getFileIcon } from '../../common/file/icon';
|
|
import { strIsLink } from '../../common/string/tools';
|
|
|
|
export function getCollectionIcon(
|
|
type: DatasetCollectionTypeEnum = DatasetCollectionTypeEnum.file,
|
|
name = ''
|
|
) {
|
|
if (type === DatasetCollectionTypeEnum.folder) {
|
|
return 'common/folderFill';
|
|
}
|
|
if (type === DatasetCollectionTypeEnum.link) {
|
|
return 'common/linkBlue';
|
|
}
|
|
if (type === DatasetCollectionTypeEnum.virtual) {
|
|
return 'file/fill/manual';
|
|
}
|
|
return getFileIcon(name);
|
|
}
|
|
export function getSourceNameIcon({
|
|
sourceName,
|
|
sourceId
|
|
}: {
|
|
sourceName: string;
|
|
sourceId?: string;
|
|
}) {
|
|
try {
|
|
const fileIcon = getFileIcon(decodeURIComponent(sourceName.replace(/%/g, '%25')), '');
|
|
if (fileIcon) {
|
|
return fileIcon;
|
|
}
|
|
if (strIsLink(sourceId)) {
|
|
return 'common/linkBlue';
|
|
}
|
|
} catch (error) {}
|
|
|
|
return 'file/fill/file';
|
|
}
|
|
|
|
export const predictDataLimitLength = (mode: TrainingModeEnum, data: any[]) => {
|
|
if (mode === TrainingModeEnum.qa) return data.length * 20;
|
|
if (mode === TrainingModeEnum.auto) return data.length * 5;
|
|
if (mode === TrainingModeEnum.image) return data.length * 2;
|
|
return data.length;
|
|
};
|