|
@@ -69,6 +69,8 @@ const stopParameerRule: ModelParameterRule = {
|
|
|
zh_Hans: '输入序列并按 Tab 键',
|
|
|
},
|
|
|
}
|
|
|
+
|
|
|
+const PROVIDER_WITH_PRESET_TONE = ['openai', 'azure_openai']
|
|
|
const ModelParameterModal: FC<ModelParameterModalProps> = ({
|
|
|
isAdvancedMode,
|
|
|
modelId,
|
|
@@ -105,10 +107,11 @@ const ModelParameterModal: FC<ModelParameterModalProps> = ({
|
|
|
const remvoedCustomeTone = TONE_LIST.slice(0, -1)
|
|
|
const CUSTOM_TONE_ID = 4
|
|
|
const tone = remvoedCustomeTone.find((tone) => {
|
|
|
- return tone.config?.temperature === completionParams.temperature
|
|
|
- && tone.config?.top_p === completionParams.top_p
|
|
|
- && tone.config?.presence_penalty === completionParams.presence_penalty
|
|
|
- && tone.config?.frequency_penalty === completionParams.frequency_penalty
|
|
|
+ const config: Record<string, any> = tone.config || {}
|
|
|
+
|
|
|
+ return Object.keys(config).every((key) => {
|
|
|
+ return config[key] === completionParams[key]
|
|
|
+ })
|
|
|
})
|
|
|
return tone ? tone.id : CUSTOM_TONE_ID
|
|
|
}
|
|
@@ -122,14 +125,11 @@ const ModelParameterModal: FC<ModelParameterModalProps> = ({
|
|
|
})[toneId] || ''
|
|
|
// set completionParams by toneId
|
|
|
const handleToneChange = (id: number) => {
|
|
|
- if (id === 4)
|
|
|
- return // custom tone
|
|
|
const tone = TONE_LIST.find(tone => tone.id === id)
|
|
|
if (tone) {
|
|
|
setToneId(id)
|
|
|
onCompletionParamsChange({
|
|
|
...tone.config,
|
|
|
- max_tokens: completionParams.max_tokens,
|
|
|
})
|
|
|
}
|
|
|
}
|
|
@@ -173,6 +173,7 @@ const ModelParameterModal: FC<ModelParameterModalProps> = ({
|
|
|
|
|
|
const handleInitialParams = () => {
|
|
|
const newCompletionParams = { ...completionParams }
|
|
|
+ const defaultParams: Record<string, any> = {}
|
|
|
if (parameterRules.length) {
|
|
|
parameterRules.forEach((parameterRule) => {
|
|
|
if (!newCompletionParams[parameterRule.name]) {
|
|
@@ -181,8 +182,13 @@ const ModelParameterModal: FC<ModelParameterModalProps> = ({
|
|
|
else
|
|
|
delete newCompletionParams[parameterRule.name]
|
|
|
}
|
|
|
+ if (!isNullOrUndefined(parameterRule.default))
|
|
|
+ defaultParams[parameterRule.name] = parameterRule.default
|
|
|
})
|
|
|
|
|
|
+ if (PROVIDER_WITH_PRESET_TONE.includes(provider))
|
|
|
+ TONE_LIST[3].config = defaultParams as any
|
|
|
+
|
|
|
onCompletionParamsChange(newCompletionParams)
|
|
|
}
|
|
|
}
|
|
@@ -305,7 +311,7 @@ const ModelParameterModal: FC<ModelParameterModalProps> = ({
|
|
|
<div className='mt-5'><Loading /></div>
|
|
|
)
|
|
|
}
|
|
|
- {['openai', 'azure_openai'].includes(provider) && !isLoading && !!parameterRules.length && (
|
|
|
+ {PROVIDER_WITH_PRESET_TONE.includes(provider) && !isLoading && !!parameterRules.length && (
|
|
|
<div className='mt-5 mb-4'>
|
|
|
<div className="mb-3 text-sm text-gray-900">{t('appDebug.modelConfig.setTone')}</div>
|
|
|
<Radio.Group className={cn('!rounded-lg', toneTabBgClassName)} value={toneId} onChange={handleToneChange}>
|