fix: gemini web serach modal 400 request error

This commit is contained in:
kangfenmao 2024-12-24 18:00:25 +08:00
parent 65e19d187c
commit 960f50e4e4

View File

@ -8,7 +8,7 @@ import {
RequestOptions,
TextPart
} from '@google/generative-ai'
import { isEmbeddingModel } from '@renderer/config/models'
import { isEmbeddingModel, isWebSearchModel } from '@renderer/config/models'
import { SUMMARIZE_PROMPT } from '@renderer/config/prompts'
import { getAssistantSettings, getDefaultModel, getTopNamingModel } from '@renderer/services/AssistantService'
import { EVENT_NAMES } from '@renderer/services/EventService'
@ -87,7 +87,7 @@ export default class GeminiProvider extends BaseProvider {
model: model.id,
systemInstruction: assistant.prompt,
// @ts-ignore googleSearch is not a valid tool for Gemini
tools: assistant.enableWebSearch ? [{ googleSearch: {} }] : [],
tools: assistant.enableWebSearch && isWebSearchModel(model) ? [{ googleSearch: {} }] : [],
generationConfig: {
maxOutputTokens: maxTokens,
temperature: assistant?.settings?.temperature,