feat: added openai model configuration and search parameter logic
This commit is contained in:
parent
2ad6a1f24c
commit
a0a13a4015
@ -603,6 +603,12 @@ export const SYSTEM_MODELS: Record<string, Model[]> = {
|
||||
name: 'GLM-4-Flash',
|
||||
group: 'GLM-4'
|
||||
},
|
||||
{
|
||||
id: 'glm-4-flashx',
|
||||
provider: 'zhipu',
|
||||
name: 'GLM-4-FlashX',
|
||||
group: 'GLM-4'
|
||||
},
|
||||
{
|
||||
id: 'glm-4v',
|
||||
provider: 'zhipu',
|
||||
@ -1050,6 +1056,12 @@ export function isWebSearchModel(model: Model): boolean {
|
||||
|
||||
const provider = getProviderByModel(model)
|
||||
|
||||
if (provider.type === 'openai') {
|
||||
if (model?.id?.includes('gemini-2.0-flash-exp')) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
if (!provider) {
|
||||
return false
|
||||
}
|
||||
@ -1073,7 +1085,7 @@ export function isWebSearchModel(model: Model): boolean {
|
||||
return false
|
||||
}
|
||||
|
||||
export function getWebSearchParams(model: Model): Record<string, any> {
|
||||
export function getOpenAIWebSearchParams(model: Model): Record<string, any> {
|
||||
if (isWebSearchModel(model)) {
|
||||
if (model.provider === 'hunyuan') {
|
||||
return { enable_enhancement: true }
|
||||
@ -1087,6 +1099,14 @@ export function getWebSearchParams(model: Model): Record<string, any> {
|
||||
tools: webSearchTools
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
type: 'function',
|
||||
function: {
|
||||
name: 'googleSearch'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return {}
|
||||
}
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { getWebSearchParams, isSupportedModel, isVisionModel } from '@renderer/config/models'
|
||||
import { getOpenAIWebSearchParams, isSupportedModel, isVisionModel } from '@renderer/config/models'
|
||||
import { getStoreSetting } from '@renderer/hooks/useSettings'
|
||||
import i18n from '@renderer/i18n'
|
||||
import { getAssistantSettings, getDefaultModel, getTopNamingModel } from '@renderer/services/AssistantService'
|
||||
@ -155,7 +155,7 @@ export default class OpenAIProvider extends BaseProvider {
|
||||
max_tokens: maxTokens,
|
||||
keep_alive: this.keepAliveTime,
|
||||
stream: isSupportStreamOutput(),
|
||||
...(assistant.enableWebSearch ? getWebSearchParams(model) : {}),
|
||||
...(assistant.enableWebSearch ? getOpenAIWebSearchParams(model) : {}),
|
||||
...this.getCustomParameters(assistant)
|
||||
})
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user