File tree Expand file tree Collapse file tree 2 files changed +18
-1
lines changed Expand file tree Collapse file tree 2 files changed +18
-1
lines changed Original file line number Diff line number Diff line change @@ -4,7 +4,12 @@ import {existsSync, mkdirSync} from 'fs';
44import { writeFile } from 'fs/promises' ;
55import { BaseCliAgentRunner } from './base-cli-agent-runner.js' ;
66
7- const SUPPORTED_MODELS = [ 'gemini-2.5-pro' , 'gemini-2.5-flash' , 'gemini-2.5-flash-lite' ] ;
7+ const SUPPORTED_MODELS = [
8+ 'gemini-3-pro-preview' ,
9+ 'gemini-2.5-pro' ,
10+ 'gemini-2.5-flash' ,
11+ 'gemini-2.5-flash-lite' ,
12+ ] ;
813
914/** Runner that generates code using the Gemini CLI. */
1015export class GeminiCliRunner extends BaseCliAgentRunner implements LlmRunner {
Original file line number Diff line number Diff line change @@ -12,12 +12,24 @@ export class GeminiModelProvider extends GenkitModelProvider {
1212 private geminiAPI = lazy ( ( ) => new GoogleGenAI ( { apiKey : this . getApiKey ( ) || undefined } ) ) ;
1313
1414 protected models = {
15+ 'gemini-3-pro-preview' : ( ) => googleAI . model ( 'gemini-3-pro-preview' ) ,
1516 'gemini-2.5-pro' : ( ) => googleAI . model ( 'gemini-2.5-pro' ) ,
1617 'gemini-2.5-flash' : ( ) => googleAI . model ( 'gemini-2.5-flash' ) ,
1718 'gemini-2.5-flash-lite' : ( ) => googleAI . model ( 'gemini-2.5-flash-lite' ) ,
1819 } ;
1920
2021 protected rateLimitConfig : Record < string , RateLimitConfig > = {
22+ 'googleai/gemini-3-pro-preview' : {
23+ requestPerMinute : new RateLimiter ( {
24+ tokensPerInterval : 150 ,
25+ interval : 1000 * 60 * 1.5 , // Refresh tokens after 1.5 minutes to be on the safe side.
26+ } ) ,
27+ tokensPerMinute : new RateLimiter ( {
28+ tokensPerInterval : 2_000_000 * 0.75 , // *0.75 to be more resilient to token count deviations
29+ interval : 1000 * 60 * 1.5 , // Refresh tokens after 1.5 minutes to be on the safe side.
30+ } ) ,
31+ countTokens : prompt => this . countGeminiTokens ( prompt , 'gemini-3-pro-preview' ) ,
32+ } ,
2133 // See: https://ai.google.dev/gemini-api/docs/rate-limits#tier-1
2234 // 150 per minute requests is Gemini Pro's limit right now.
2335 'googleai/gemini-2.5-pro' : {
You can’t perform that action at this time.
0 commit comments