diff --git a/src/renderer/src/pages/settings/ModelSettings/DefaultAssistantSettings.tsx b/src/renderer/src/pages/settings/ModelSettings/DefaultAssistantSettings.tsx index 2b1bed5ebe..65be642adc 100644 --- a/src/renderer/src/pages/settings/ModelSettings/DefaultAssistantSettings.tsx +++ b/src/renderer/src/pages/settings/ModelSettings/DefaultAssistantSettings.tsx @@ -2,13 +2,14 @@ import { CloseCircleFilled, QuestionCircleOutlined } from '@ant-design/icons' import EmojiPicker from '@renderer/components/EmojiPicker' import { ResetIcon } from '@renderer/components/Icons' import { HStack } from '@renderer/components/Layout' +import Selector from '@renderer/components/Selector' import { TopView } from '@renderer/components/TopView' import { DEFAULT_CONTEXTCOUNT, DEFAULT_MAX_TOKENS, DEFAULT_TEMPERATURE } from '@renderer/config/constant' import { useTheme } from '@renderer/context/ThemeProvider' import { useDefaultAssistant } from '@renderer/hooks/useAssistant' import type { AssistantSettings as AssistantSettingsType } from '@renderer/types' import { getLeadingEmoji, modalConfirm } from '@renderer/utils' -import { Button, Col, Flex, Input, InputNumber, Modal, Popover, Row, Slider, Switch, Tooltip } from 'antd' +import { Button, Col, Divider, Flex, Input, InputNumber, Modal, Popover, Row, Slider, Switch, Tooltip } from 'antd' import TextArea from 'antd/es/input/TextArea' import type { Dispatch, FC, SetStateAction } from 'react' import { useState } from 'react' @@ -26,6 +27,9 @@ const AssistantSettings: FC = () => { const [maxTokens, setMaxTokens] = useState(defaultAssistant?.settings?.maxTokens ?? 0) const [topP, setTopP] = useState(defaultAssistant.settings?.topP ?? 1) const [enableTopP, setEnableTopP] = useState(defaultAssistant.settings?.enableTopP ?? false) + const [toolUseMode, setToolUseMode] = useState( + defaultAssistant.settings?.toolUseMode ?? 'function' + ) const [emoji, setEmoji] = useState(defaultAssistant.emoji || getLeadingEmoji(defaultAssistant.name) || '') const [name, setName] = useState( defaultAssistant.name.replace(getLeadingEmoji(defaultAssistant.name) || '', '').trim() @@ -46,7 +50,8 @@ const AssistantSettings: FC = () => { maxTokens: settings.maxTokens ?? maxTokens, streamOutput: settings.streamOutput ?? true, topP: settings.topP ?? topP, - enableTopP: settings.enableTopP ?? enableTopP + enableTopP: settings.enableTopP ?? enableTopP, + toolUseMode: settings.toolUseMode ?? toolUseMode } }) } @@ -73,6 +78,7 @@ const AssistantSettings: FC = () => { setMaxTokens(0) setTopP(1) setEnableTopP(false) + setToolUseMode('function') updateDefaultAssistant({ ...defaultAssistant, settings: { @@ -84,7 +90,8 @@ const AssistantSettings: FC = () => { maxTokens: DEFAULT_MAX_TOKENS, streamOutput: true, topP: 1, - enableTopP: false + enableTopP: false, + toolUseMode: 'function' } }) } @@ -107,10 +114,9 @@ const AssistantSettings: FC = () => { return ( - {t('common.name')} - + } arrow trigger="click"> @@ -161,6 +167,7 @@ const AssistantSettings: FC = () => {