From 52a980f75125382cc76f74828943880476d287e3 Mon Sep 17 00:00:00 2001 From: MyPrototypeWhat Date: Fri, 26 Sep 2025 12:10:28 +0800 Subject: [PATCH] fix(websearch): handle blocked domains conditionally in web search (#10374) fix(websearch): handle blocked domains conditionally in web search configurations - Updated the handling of blocked domains in both Google Vertex and Anthropic web search configurations to only include them if they are present, improving robustness and preventing unnecessary parameters from being passed. --- src/renderer/src/aiCore/prepareParams/parameterBuilder.ts | 3 ++- src/renderer/src/aiCore/utils/websearch.ts | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/aiCore/prepareParams/parameterBuilder.ts b/src/renderer/src/aiCore/prepareParams/parameterBuilder.ts index 0a89e73c62..1ad04230b5 100644 --- a/src/renderer/src/aiCore/prepareParams/parameterBuilder.ts +++ b/src/renderer/src/aiCore/prepareParams/parameterBuilder.ts @@ -134,9 +134,10 @@ export async function buildStreamTextParams( if (aiSdkProviderId === 'google-vertex') { tools.google_search = vertex.tools.googleSearch({}) as ProviderDefinedTool } else if (aiSdkProviderId === 'google-vertex-anthropic') { + const blockedDomains = mapRegexToPatterns(webSearchConfig.excludeDomains) tools.web_search = vertexAnthropic.tools.webSearch_20250305({ maxUses: webSearchConfig.maxResults, - blockedDomains: mapRegexToPatterns(webSearchConfig.excludeDomains) + blockedDomains: blockedDomains.length > 0 ? blockedDomains : undefined }) as ProviderDefinedTool } } diff --git a/src/renderer/src/aiCore/utils/websearch.ts b/src/renderer/src/aiCore/utils/websearch.ts index 2fda7c1b19..9e29454b79 100644 --- a/src/renderer/src/aiCore/utils/websearch.ts +++ b/src/renderer/src/aiCore/utils/websearch.ts @@ -61,9 +61,10 @@ export function buildProviderBuiltinWebSearchConfig( } } case 'anthropic': { + const blockedDomains = mapRegexToPatterns(webSearchConfig.excludeDomains) const anthropicSearchOptions: AnthropicSearchConfig = { maxUses: webSearchConfig.maxResults, - blockedDomains: mapRegexToPatterns(webSearchConfig.excludeDomains) + blockedDomains: blockedDomains.length > 0 ? blockedDomains : undefined } return { anthropic: anthropicSearchOptions