diff --git a/src/renderer/src/pages/home/Tabs/Settings.tsx b/src/renderer/src/pages/home/Tabs/Settings.tsx index b8a03805..1954d7c7 100644 --- a/src/renderer/src/pages/home/Tabs/Settings.tsx +++ b/src/renderer/src/pages/home/Tabs/Settings.tsx @@ -1,9 +1,6 @@ -import { CheckOutlined, QuestionCircleOutlined, ReloadOutlined } from '@ant-design/icons' -import { HStack } from '@renderer/components/Layout' +import { CheckOutlined } from '@ant-design/icons' import Scrollbar from '@renderer/components/Scrollbar' -import { DEFAULT_CONTEXTCOUNT, DEFAULT_MAX_TOKENS, DEFAULT_TEMPERATURE } from '@renderer/config/constant' import { codeThemes } from '@renderer/context/SyntaxHighlighterProvider' -import { useAssistant } from '@renderer/hooks/useAssistant' import { useSettings } from '@renderer/hooks/useSettings' import { SettingDivider, SettingRow, SettingRowTitle, SettingSubtitle } from '@renderer/pages/settings' import { useAppDispatch } from '@renderer/store' @@ -21,26 +18,14 @@ import { setShowMessageDivider, setShowTopicTime } from '@renderer/store/settings' -import { Assistant, AssistantSettings } from '@renderer/types' -import { Col, Row, Select, Slider, Switch, Tooltip } from 'antd' +import { Col, Row, Select, Slider, Switch } from 'antd' import { FC, useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' -interface Props { - assistant: Assistant -} - -const SettingsTab: FC = (props) => { - const { assistant, updateAssistantSettings, updateAssistant } = useAssistant(props.assistant.id) +const SettingsTab: FC = () => { const { messageStyle, codeStyle, fontSize } = useSettings() - - const [temperature, setTemperature] = useState(assistant?.settings?.temperature ?? DEFAULT_TEMPERATURE) - const [contextCount, setContextCount] = useState(assistant?.settings?.contextCount ?? DEFAULT_CONTEXTCOUNT) - const [enableMaxTokens, setEnableMaxTokens] = useState(assistant?.settings?.enableMaxTokens ?? false) - const [maxTokens, setMaxTokens] = useState(assistant?.settings?.maxTokens ?? 0) const [fontSizeValue, setFontSizeValue] = useState(fontSize) - const [streamOutput, setStreamOutput] = useState(assistant?.settings?.streamOutput ?? true) const { t } = useTranslation() const dispatch = useAppDispatch() @@ -61,140 +46,12 @@ const SettingsTab: FC = (props) => { setTopicPosition } = useSettings() - const onUpdateAssistantSettings = (settings: Partial) => { - updateAssistantSettings(settings) - } - - const onTemperatureChange = (value) => { - if (!isNaN(value as number)) { - onUpdateAssistantSettings({ temperature: value }) - } - } - - const onContextCountChange = (value) => { - if (!isNaN(value as number)) { - onUpdateAssistantSettings({ contextCount: value }) - } - } - - const onMaxTokensChange = (value) => { - if (!isNaN(value as number)) { - onUpdateAssistantSettings({ maxTokens: value }) - } - } - - const onReset = () => { - setTemperature(DEFAULT_TEMPERATURE) - setContextCount(DEFAULT_CONTEXTCOUNT) - updateAssistant({ - ...assistant, - settings: { - ...assistant.settings, - temperature: DEFAULT_TEMPERATURE, - contextCount: DEFAULT_CONTEXTCOUNT, - enableMaxTokens: false, - maxTokens: DEFAULT_MAX_TOKENS, - streamOutput: true, - hideMessages: false, - autoResetModel: false - } - }) - } - useEffect(() => { - setTemperature(assistant?.settings?.temperature ?? DEFAULT_TEMPERATURE) - setContextCount(assistant?.settings?.contextCount ?? DEFAULT_CONTEXTCOUNT) - setEnableMaxTokens(assistant?.settings?.enableMaxTokens ?? false) - setMaxTokens(assistant?.settings?.maxTokens ?? DEFAULT_MAX_TOKENS) - setStreamOutput(assistant?.settings?.streamOutput ?? true) - }, [assistant]) + setFontSizeValue(fontSize) + }, [fontSize]) return ( - - {t('settings.messages.model.title')}{' '} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {t('model.stream_output')} - { - setStreamOutput(checked) - onUpdateAssistantSettings({ streamOutput: checked }) - }} - /> - - - - - - - - - - { - setEnableMaxTokens(enabled) - onUpdateAssistantSettings({ enableMaxTokens: enabled }) - }} - /> - - - - - - {t('settings.messages.title')} @@ -229,7 +86,7 @@ const SettingsTab: FC = (props) => { dispatch(setMessageStyle(value))} - style={{ width: 100 }} + style={{ width: 135 }} size="small"> {t('message.message.style.plain')} {t('message.message.style.bubble')} @@ -256,7 +113,7 @@ const SettingsTab: FC = (props) => { = ({ activeAssistant, activeTopic, setActiveAssistant, {tab === 'topic' && ( )} - {tab === 'settings' && } + {tab === 'settings' && } )