Fix/condition OpenAI settings (#11509)
* fix(provider): update service tier support logic for OpenAI and Azure providers * fix(settings): enhance OpenAI settings visibility logic with verbosity support
This commit is contained in:
@@ -9,7 +9,7 @@ import {
|
||||
DEFAULT_TEMPERATURE,
|
||||
MAX_CONTEXT_COUNT
|
||||
} from '@renderer/config/constant'
|
||||
import { isOpenAIModel } from '@renderer/config/models'
|
||||
import { isOpenAIModel, isSupportVerbosityModel } from '@renderer/config/models'
|
||||
import { UNKNOWN } from '@renderer/config/translate'
|
||||
import { useCodeStyle } from '@renderer/context/CodeStyleProvider'
|
||||
import { useTheme } from '@renderer/context/ThemeProvider'
|
||||
@@ -56,7 +56,7 @@ import type { Assistant, AssistantSettings, CodeStyleVarious, MathEngine } from
|
||||
import { isGroqSystemProvider, ThemeMode } from '@renderer/types'
|
||||
import { modalConfirm } from '@renderer/utils'
|
||||
import { getSendMessageShortcutLabel } from '@renderer/utils/input'
|
||||
import { isSupportServiceTierProvider } from '@renderer/utils/provider'
|
||||
import { isSupportServiceTierProvider, isSupportVerbosityProvider } from '@renderer/utils/provider'
|
||||
import { Button, Col, InputNumber, Row, Slider, Switch } from 'antd'
|
||||
import { Settings2 } from 'lucide-react'
|
||||
import type { FC } from 'react'
|
||||
@@ -183,7 +183,10 @@ const SettingsTab: FC<Props> = (props) => {
|
||||
|
||||
const model = assistant.model || getDefaultModel()
|
||||
|
||||
const showOpenAiSettings = isOpenAIModel(model) || isSupportServiceTierProvider(provider)
|
||||
const showOpenAiSettings =
|
||||
isOpenAIModel(model) ||
|
||||
isSupportServiceTierProvider(provider) ||
|
||||
(isSupportVerbosityModel(model) && isSupportVerbosityProvider(provider))
|
||||
|
||||
return (
|
||||
<Container className="settings-tab">
|
||||
|
||||
@@ -71,15 +71,21 @@ export const isSupportEnableThinkingProvider = (provider: Provider) => {
|
||||
)
|
||||
}
|
||||
|
||||
const NOT_SUPPORT_SERVICE_TIER_PROVIDERS = ['github', 'copilot', 'cerebras'] as const satisfies SystemProviderId[]
|
||||
const SUPPORT_SERVICE_TIER_PROVIDERS = [
|
||||
SystemProviderIds.openai,
|
||||
SystemProviderIds['azure-openai'],
|
||||
SystemProviderIds.groq
|
||||
// TODO: 等待上游支持aws-bedrock
|
||||
]
|
||||
|
||||
/**
|
||||
* 判断提供商是否支持 service_tier 设置。 Only for OpenAI API.
|
||||
* 判断提供商是否支持 service_tier 设置
|
||||
*/
|
||||
export const isSupportServiceTierProvider = (provider: Provider) => {
|
||||
return (
|
||||
provider.apiOptions?.isSupportServiceTier === true ||
|
||||
(isSystemProvider(provider) && !NOT_SUPPORT_SERVICE_TIER_PROVIDERS.some((pid) => pid === provider.id))
|
||||
provider.type === 'azure-openai' ||
|
||||
(isSystemProvider(provider) && SUPPORT_SERVICE_TIER_PROVIDERS.some((pid) => pid === provider.id))
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user