diff --git a/src/renderer/src/aiCore/utils/websearch.ts b/src/renderer/src/aiCore/utils/websearch.ts index 14a99139be..feb7520064 100644 --- a/src/renderer/src/aiCore/utils/websearch.ts +++ b/src/renderer/src/aiCore/utils/websearch.ts @@ -25,6 +25,47 @@ export function getWebSearchParams(model: Model): Record { } } + if (model.provider === 'baidu-cloud') { + // 根据模型ID判断支持的搜索参数 + const modelId = model.id.toLowerCase() + + // ernie-x1-turbo-32k 只支持 enable 参数 + if (modelId.includes('ernie-x1-turbo')) { + return { + web_search: { + enable: true + } + } + } + + // ERNIE系列不支持 search_mode 参数(强制搜索) + if (modelId.includes('ernie')) { + return { + web_search: { + enable: true, + enable_trace: true, + enable_status: true, + enable_citation: true, + search_number: 10, + reference_number: 5 + } + } + } + + // 其他模型支持完整参数 + return { + web_search: { + enable: true, + enable_trace: true, + enable_status: true, + enable_citation: true, + search_mode: 'auto', + search_number: 10, + reference_number: 5 + } + } + } + if (isOpenAIWebSearchChatCompletionOnlyModel(model)) { return { web_search_options: {} diff --git a/src/renderer/src/config/models/websearch.ts b/src/renderer/src/config/models/websearch.ts index 5d6706937b..6b2232dd66 100644 --- a/src/renderer/src/config/models/websearch.ts +++ b/src/renderer/src/config/models/websearch.ts @@ -120,6 +120,16 @@ export function isWebSearchModel(model: Model): boolean { return true } + if (provider.id === 'baidu-cloud') { + // 排除嵌入模型 + const embeddingModels = ['bge-large-zh', 'bge-large-en'] + if (embeddingModels.includes(modelId)) { + return false + } + // 其他模型都支持web search + return true + } + return false }