Skip to content

Commit 57a271a

Browse files
committed
feat(providers): add Gemini Deep Research via Interactions API
1 parent 3d5bd00 commit 57a271a

File tree

4 files changed

+489
-3
lines changed

4 files changed

+489
-3
lines changed

apps/sim/blocks/blocks/agent.ts

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import {
1010
getReasoningEffortValuesForModel,
1111
getThinkingLevelsForModel,
1212
getVerbosityValuesForModel,
13+
MODELS_WITH_DEEP_RESEARCH,
1314
MODELS_WITH_REASONING_EFFORT,
1415
MODELS_WITH_THINKING,
1516
MODELS_WITH_VERBOSITY,
@@ -412,12 +413,22 @@ Return ONLY the JSON array.`,
412413
title: 'Tools',
413414
type: 'tool-input',
414415
defaultValue: [],
416+
condition: {
417+
field: 'model',
418+
value: MODELS_WITH_DEEP_RESEARCH,
419+
not: true,
420+
},
415421
},
416422
{
417423
id: 'skills',
418424
title: 'Skills',
419425
type: 'skill-input',
420426
defaultValue: [],
427+
condition: {
428+
field: 'model',
429+
value: MODELS_WITH_DEEP_RESEARCH,
430+
not: true,
431+
},
421432
},
422433
{
423434
id: 'memoryType',
@@ -477,9 +488,13 @@ Return ONLY the JSON array.`,
477488
condition: () => ({
478489
field: 'model',
479490
value: (() => {
491+
const deepResearch = new Set(MODELS_WITH_DEEP_RESEARCH.map((m) => m.toLowerCase()))
480492
const allModels = Object.keys(getBaseModelProviders())
481493
return allModels.filter(
482-
(model) => supportsTemperature(model) && getMaxTemperature(model) === 1
494+
(model) =>
495+
supportsTemperature(model) &&
496+
getMaxTemperature(model) === 1 &&
497+
!deepResearch.has(model.toLowerCase())
483498
)
484499
})(),
485500
}),
@@ -495,9 +510,13 @@ Return ONLY the JSON array.`,
495510
condition: () => ({
496511
field: 'model',
497512
value: (() => {
513+
const deepResearch = new Set(MODELS_WITH_DEEP_RESEARCH.map((m) => m.toLowerCase()))
498514
const allModels = Object.keys(getBaseModelProviders())
499515
return allModels.filter(
500-
(model) => supportsTemperature(model) && getMaxTemperature(model) === 2
516+
(model) =>
517+
supportsTemperature(model) &&
518+
getMaxTemperature(model) === 2 &&
519+
!deepResearch.has(model.toLowerCase())
501520
)
502521
})(),
503522
}),
@@ -508,13 +527,23 @@ Return ONLY the JSON array.`,
508527
type: 'short-input',
509528
placeholder: 'Enter max tokens (e.g., 4096)...',
510529
mode: 'advanced',
530+
condition: {
531+
field: 'model',
532+
value: MODELS_WITH_DEEP_RESEARCH,
533+
not: true,
534+
},
511535
},
512536
{
513537
id: 'responseFormat',
514538
title: 'Response Format',
515539
type: 'code',
516540
placeholder: 'Enter JSON schema...',
517541
language: 'json',
542+
condition: {
543+
field: 'model',
544+
value: MODELS_WITH_DEEP_RESEARCH,
545+
not: true,
546+
},
518547
wandConfig: {
519548
enabled: true,
520549
maintainHistory: true,

0 commit comments

Comments
 (0)