[Gemma x Gemini CLI] Add an Experimental Gemma Router that uses a LiteRT-LM shim into the Composite Model Classifier Strategy (#17231)

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Allen Hutchison <adh@google.com>
This commit is contained in:
Siddharth Diwan
2026-02-26 15:43:43 -08:00
committed by GitHub
parent 6dc9d5ff11
commit 9b7852f11c
29 changed files with 1456 additions and 58 deletions
@@ -7,6 +7,7 @@
import type { Content, PartListUnion } from '@google/genai';
import type { BaseLlmClient } from '../core/baseLlmClient.js';
import type { Config } from '../config/config.js';
import type { LocalLiteRtLmClient } from '../core/localLiteRtLmClient.js';
/**
* The output of a routing decision. It specifies which model to use and why.
@@ -58,6 +59,7 @@ export interface RoutingStrategy {
context: RoutingContext,
config: Config,
baseLlmClient: BaseLlmClient,
localLiteRtLmClient: LocalLiteRtLmClient,
): Promise<RoutingDecision | null>;
}
@@ -74,5 +76,6 @@ export interface TerminalStrategy extends RoutingStrategy {
context: RoutingContext,
config: Config,
baseLlmClient: BaseLlmClient,
localLiteRtLmClient: LocalLiteRtLmClient,
): Promise<RoutingDecision>;
}