diff --git a/src/renderer/src/config/models.ts b/src/renderer/src/config/models.ts index ca86a6ff..69935d1d 100644 --- a/src/renderer/src/config/models.ts +++ b/src/renderer/src/config/models.ts @@ -603,6 +603,12 @@ export const SYSTEM_MODELS: Record = { 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 { +export function getOpenAIWebSearchParams(model: Model): Record { if (isWebSearchModel(model)) { if (model.provider === 'hunyuan') { return { enable_enhancement: true } @@ -1087,6 +1099,14 @@ export function getWebSearchParams(model: Model): Record { tools: webSearchTools } } + + return { + type: 'function', + function: { + name: 'googleSearch' + } + } } + return {} } diff --git a/src/renderer/src/providers/OpenAIProvider.ts b/src/renderer/src/providers/OpenAIProvider.ts index 9112e155..48763df0 100644 --- a/src/renderer/src/providers/OpenAIProvider.ts +++ b/src/renderer/src/providers/OpenAIProvider.ts @@ -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) })