feat: update assistantmodelsettings to persist custom parameters
This commit is contained in:
parent
15fb605eb4
commit
dba1f76db7
@ -4,9 +4,9 @@ import { HStack } from '@renderer/components/Layout'
|
|||||||
import SelectModelPopup from '@renderer/components/Popups/SelectModelPopup'
|
import SelectModelPopup from '@renderer/components/Popups/SelectModelPopup'
|
||||||
import { DEFAULT_CONTEXTCOUNT, DEFAULT_TEMPERATURE } from '@renderer/config/constant'
|
import { DEFAULT_CONTEXTCOUNT, DEFAULT_TEMPERATURE } from '@renderer/config/constant'
|
||||||
import { SettingRow } from '@renderer/pages/settings'
|
import { SettingRow } from '@renderer/pages/settings'
|
||||||
import { Assistant, AssistantSettings } from '@renderer/types'
|
import { Assistant, AssistantSettingCustomParameters, AssistantSettings } from '@renderer/types'
|
||||||
import { Button, Col, Divider, Input, InputNumber, Row, Select, Slider, Switch, Tooltip } from 'antd'
|
import { Button, Col, Divider, Input, InputNumber, Row, Select, Slider, Switch, Tooltip } from 'antd'
|
||||||
import { FC, useState } from 'react'
|
import { FC, useEffect, useRef, useState } from 'react'
|
||||||
import { useTranslation } from 'react-i18next'
|
import { useTranslation } from 'react-i18next'
|
||||||
import styled from 'styled-components'
|
import styled from 'styled-components'
|
||||||
|
|
||||||
@ -25,13 +25,14 @@ const AssistantModelSettings: FC<Props> = ({ assistant, updateAssistant, updateA
|
|||||||
const [streamOutput, setStreamOutput] = useState(assistant?.settings?.streamOutput ?? true)
|
const [streamOutput, setStreamOutput] = useState(assistant?.settings?.streamOutput ?? true)
|
||||||
const [defaultModel, setDefaultModel] = useState(assistant?.defaultModel)
|
const [defaultModel, setDefaultModel] = useState(assistant?.defaultModel)
|
||||||
const [topP, setTopP] = useState(assistant?.settings?.topP ?? 1)
|
const [topP, setTopP] = useState(assistant?.settings?.topP ?? 1)
|
||||||
const [customParameters, setCustomParameters] = useState<
|
const [customParameters, setCustomParameters] = useState<AssistantSettingCustomParameters[]>(
|
||||||
Array<{
|
assistant?.settings?.customParameters ?? []
|
||||||
name: string
|
)
|
||||||
value: string | number | boolean | object
|
|
||||||
type: 'string' | 'number' | 'boolean' | 'json'
|
const customParametersRef = useRef(customParameters)
|
||||||
}>
|
|
||||||
>(assistant?.settings?.customParameters ?? [])
|
customParametersRef.current = customParameters
|
||||||
|
|
||||||
const { t } = useTranslation()
|
const { t } = useTranslation()
|
||||||
|
|
||||||
const onTemperatureChange = (value) => {
|
const onTemperatureChange = (value) => {
|
||||||
@ -95,7 +96,6 @@ const AssistantModelSettings: FC<Props> = ({ assistant, updateAssistant, updateA
|
|||||||
newParams[index] = { ...newParams[index], [field]: value }
|
newParams[index] = { ...newParams[index], [field]: value }
|
||||||
}
|
}
|
||||||
setCustomParameters(newParams)
|
setCustomParameters(newParams)
|
||||||
updateAssistantSettings({ customParameters: newParams })
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const renderParameterValueInput = (param: (typeof customParameters)[0], index: number) => {
|
const renderParameterValueInput = (param: (typeof customParameters)[0], index: number) => {
|
||||||
@ -176,6 +176,10 @@ const AssistantModelSettings: FC<Props> = ({ assistant, updateAssistant, updateA
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
return () => updateAssistantSettings({ customParameters: customParametersRef.current })
|
||||||
|
}, [])
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Container>
|
<Container>
|
||||||
<Row align="middle" style={{ marginBottom: 10 }}>
|
<Row align="middle" style={{ marginBottom: 10 }}>
|
||||||
|
|||||||
@ -21,6 +21,12 @@ export type AssistantMessage = {
|
|||||||
content: string
|
content: string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export type AssistantSettingCustomParameters = {
|
||||||
|
name: string
|
||||||
|
value: string | number | boolean | object
|
||||||
|
type: 'string' | 'number' | 'boolean' | 'json'
|
||||||
|
}
|
||||||
|
|
||||||
export type AssistantSettings = {
|
export type AssistantSettings = {
|
||||||
contextCount: number
|
contextCount: number
|
||||||
temperature: number
|
temperature: number
|
||||||
@ -30,11 +36,7 @@ export type AssistantSettings = {
|
|||||||
streamOutput: boolean
|
streamOutput: boolean
|
||||||
hideMessages: boolean
|
hideMessages: boolean
|
||||||
autoResetModel: boolean
|
autoResetModel: boolean
|
||||||
customParameters?: {
|
customParameters?: AssistantSettingCustomParameters[]
|
||||||
name: string
|
|
||||||
value: string | number | boolean | object
|
|
||||||
type: 'string' | 'number' | 'boolean' | 'json'
|
|
||||||
}[]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export type Agent = Omit<Assistant, 'model'>
|
export type Agent = Omit<Assistant, 'model'>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user