feat: Enable 2.x Model Generation in Linear UI

This commit is contained in:
blessedcoolant
2023-06-18 08:27:13 +12:00
parent bf0577c882
commit 61c426f502
4 changed files with 33 additions and 4 deletions

View File

@ -1,6 +1,6 @@
import { createSelector } from '@reduxjs/toolkit';
import { isEqual } from 'lodash-es';
import { memo, useCallback } from 'react';
import { memo, useCallback, useEffect } from 'react';
import { useTranslation } from 'react-i18next';
import { RootState } from 'app/store/store';
@ -9,7 +9,11 @@ import IAIMantineSelect, {
IAISelectDataType,
} from 'common/components/IAIMantineSelect';
import { generationSelector } from 'features/parameters/store/generationSelectors';
import { modelSelected } from 'features/parameters/store/generationSlice';
import {
modelSelected,
setCurrentModelType,
} from 'features/parameters/store/generationSlice';
import {
selectAllSD1Models,
selectByIdSD1Models,
@ -55,12 +59,28 @@ export const modelSelector = createSelector(
}
);
export type ModelLoaderTypes = 'sd1_model_loader' | 'sd2_model_loader';
const MODEL_LOADER_MAP = {
'sd-1': 'sd1_model_loader',
'sd-2': 'sd2_model_loader',
};
const ModelSelect = () => {
const dispatch = useAppDispatch();
const { t } = useTranslation();
const { selectedModel, sd1ModelData, sd2ModelData } =
useAppSelector(modelSelector);
useEffect(() => {
if (selectedModel)
dispatch(
setCurrentModelType(
MODEL_LOADER_MAP[selectedModel?.base_model] as ModelLoaderTypes
)
);
}, [dispatch, selectedModel]);
const handleChangeModel = useCallback(
(v: string | null) => {
if (!v) {