add cua adapter support for gemini

This commit is contained in:
Sarina Li
2025-12-19 12:34:16 -05:00
parent eb89fd937f
commit 05b1e5a984

View File

@@ -24,6 +24,10 @@ class CUAAdapter(CustomLLM):
if "anthropic/" in model:
model = f"anthropic/{self._normalize_model(model)}"
api_base = api_base.removesuffix("/v1")
elif "gemini/" in model or "google/" in model:
# Route to Gemini pass-through endpoint
model = f"gemini/{self._normalize_model(model)}"
api_base = api_base.removesuffix("/v1") + "/gemini"
else:
model = f"openai/{self._normalize_model(model)}"
@@ -35,6 +39,10 @@ class CUAAdapter(CustomLLM):
"stream": False,
}
# Forward tools if provided
if "tools" in kwargs:
params["tools"] = kwargs["tools"]
if "optional_params" in kwargs:
params.update(kwargs["optional_params"])
del kwargs["optional_params"]
@@ -71,6 +79,10 @@ class CUAAdapter(CustomLLM):
if "anthropic/" in model:
model = f"anthropic/{self._normalize_model(model)}"
api_base = api_base.removesuffix("/v1")
elif "gemini/" in model or "google/" in model:
# Route to Gemini pass-through endpoint
model = f"gemini/{self._normalize_model(model)}"
api_base = api_base.removesuffix("/v1") + "/gemini"
else:
model = f"openai/{self._normalize_model(model)}"
@@ -82,6 +94,10 @@ class CUAAdapter(CustomLLM):
"stream": False,
}
# Forward tools if provided
if "tools" in kwargs:
params["tools"] = kwargs["tools"]
if "optional_params" in kwargs:
params.update(kwargs["optional_params"])
del kwargs["optional_params"]