Fix Gemini 3 Flash cache creation and false fallback detection (#4502)
This commit is contained in:
@@ -2661,8 +2661,23 @@ class ForgeAgent:
|
|||||||
llm_config = LLMConfigRegistry.get_config(resolved_llm_key)
|
llm_config = LLMConfigRegistry.get_config(resolved_llm_key)
|
||||||
extracted_name = None
|
extracted_name = None
|
||||||
|
|
||||||
|
# For router configs (LLMRouterConfig), extract from model_list primary model FIRST
|
||||||
|
# This must be checked before model_name since router model_name is just an identifier
|
||||||
|
# (e.g., "gemini-3.0-flash-gpt-5-mini-fallback-router"), not an actual Vertex model
|
||||||
|
if hasattr(llm_config, "model_list") and hasattr(llm_config, "main_model_group"):
|
||||||
|
# Find the primary model in model_list by matching main_model_group
|
||||||
|
for model_entry in llm_config.model_list:
|
||||||
|
if model_entry.model_name == llm_config.main_model_group:
|
||||||
|
# Extract actual model name from litellm_params
|
||||||
|
model_param = model_entry.litellm_params.get("model", "")
|
||||||
|
if "vertex_ai/" in model_param:
|
||||||
|
extracted_name = model_param.split("/")[-1]
|
||||||
|
elif model_param.startswith("gemini-"):
|
||||||
|
extracted_name = model_param
|
||||||
|
break
|
||||||
|
|
||||||
# Try to extract from model_name if it contains "vertex_ai/" or starts with "gemini-"
|
# Try to extract from model_name if it contains "vertex_ai/" or starts with "gemini-"
|
||||||
if hasattr(llm_config, "model_name") and isinstance(llm_config.model_name, str):
|
if not extracted_name and hasattr(llm_config, "model_name") and isinstance(llm_config.model_name, str):
|
||||||
if "vertex_ai/" in llm_config.model_name:
|
if "vertex_ai/" in llm_config.model_name:
|
||||||
# Direct Vertex config: "vertex_ai/gemini-2.5-flash" -> "gemini-2.5-flash"
|
# Direct Vertex config: "vertex_ai/gemini-2.5-flash" -> "gemini-2.5-flash"
|
||||||
extracted_name = llm_config.model_name.split("/")[-1]
|
extracted_name = llm_config.model_name.split("/")[-1]
|
||||||
|
|||||||
Reference in New Issue
Block a user