mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2025-12-24 18:50:56 +08:00
fix(GeminiProvider): enhance image generation logic and response configuration (#5447)
* feat(GeminiProvider): enhance image generation logic and response configuration * refactor(GeminiProvider): improve image generation logic readability
This commit is contained in:
parent
35aeee7662
commit
736953f03e
@ -275,12 +275,21 @@ export default class GeminiProvider extends BaseProvider {
|
||||
})
|
||||
}
|
||||
|
||||
let canGenerateImage = false
|
||||
if (isGenerateImageModel(model)) {
|
||||
if (model.id === 'gemini-2.0-flash-exp') {
|
||||
canGenerateImage = assistant.enableGenerateImage!
|
||||
} else {
|
||||
canGenerateImage = true
|
||||
}
|
||||
}
|
||||
|
||||
const generateContentConfig: GenerateContentConfig = {
|
||||
responseModalities: isGenerateImageModel(model) ? [Modality.TEXT, Modality.IMAGE] : undefined,
|
||||
responseMimeType: isGenerateImageModel(model) ? 'text/plain' : undefined,
|
||||
responseModalities: canGenerateImage ? [Modality.TEXT, Modality.IMAGE] : undefined,
|
||||
responseMimeType: canGenerateImage ? 'text/plain' : undefined,
|
||||
safetySettings: this.getSafetySettings(model.id),
|
||||
// generate image don't need system instruction
|
||||
systemInstruction: isGemmaModel(model) || isGenerateImageModel(model) ? undefined : systemInstruction,
|
||||
systemInstruction: isGemmaModel(model) || canGenerateImage ? undefined : systemInstruction,
|
||||
temperature: assistant?.settings?.temperature,
|
||||
topP: assistant?.settings?.topP,
|
||||
maxOutputTokens: maxTokens,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user