diff --git a/client/src/components/Models/ModelItem.jsx b/client/src/components/Models/ModelItem.jsx index fc6390c73a..567fb28ca3 100644 --- a/client/src/components/Models/ModelItem.jsx +++ b/client/src/components/Models/ModelItem.jsx @@ -30,8 +30,6 @@ export default function ModelItem({ modelName, value, model, onSelect, id, chatG const icon = getIconOfModel({ size: 16, sender: modelName, isCreatedByUser: false, model, chatGptLabel, promptPrefix, error: false, className: "mr-2" }); - if (!initial[model]) return null - if (value === 'chatgptCustom') { return ( diff --git a/client/src/components/Models/ModelMenu.jsx b/client/src/components/Models/ModelMenu.jsx index 52d273c50a..6aab873321 100644 --- a/client/src/components/Models/ModelMenu.jsx +++ b/client/src/components/Models/ModelMenu.jsx @@ -72,6 +72,24 @@ export default function ModelMenu() { const initial = {chatgpt: data?.hasOpenAI, chatgptCustom: data?.hasOpenAI, bingai: data?.hasBing, sydney: data?.hasBing, chatgptBrowser: data?.hasChatGpt} dispatch(setInitial(initial)) // TODO, auto reset default model + if (data?.hasOpenAI) { + dispatch(setModel('chatgpt')); + dispatch(setDisabled(false)); + dispatch(setCustomModel(null)); + dispatch(setCustomGpt({ chatGptLabel: null, promptPrefix: null })); + } else if (data?.hasBing) { + dispatch(setModel('bingai')); + dispatch(setDisabled(false)); + dispatch(setCustomModel(null)); + dispatch(setCustomGpt({ chatGptLabel: null, promptPrefix: null })); + } else if (data?.hasChatGpt) { + dispatch(setModel('chatgptBrowser')); + dispatch(setDisabled(false)); + dispatch(setCustomModel(null)); + dispatch(setCustomGpt({ chatGptLabel: null, promptPrefix: null })); + } else { + dispatch(setDisabled(true)); + } }).catch((error) => { console.error(error) console.log('Not login!') @@ -83,6 +101,8 @@ export default function ModelMenu() { localStorage.setItem('model', JSON.stringify(model)); }, [model]); + const filteredModels = models.filter(({model}) => initial[model]) + const onChange = (value) => { if (!value) { return; @@ -183,10 +203,12 @@ export default function ModelMenu() { onValueChange={onChange} className="overflow-y-auto" > - + {filteredModels.length? + :No model available. + } diff --git a/client/src/store/submitSlice.js b/client/src/store/submitSlice.js index a965c29335..ed6f5771ad 100644 --- a/client/src/store/submitSlice.js +++ b/client/src/store/submitSlice.js @@ -4,7 +4,7 @@ const initialState = { isSubmitting: false, submission: {}, stopStream: false, - disabled: false, + disabled: true, model: 'chatgpt', promptPrefix: null, chatGptLabel: null,