- Replicated: configure the gateway in the Admin Console.
- Helm: configure the gateway through your installation values.
Choose the Provider Route
Choose the route that matches your Google credentials:
These are separate APIs, even when both serve a model named
gemini-2.5-flash. In Replicated, the Admin Console selects one Google API
type. A Helm installation can expose both as different gateway aliases.
Configure the Gateway
- Replicated
- Helm
-
Open the Admin Console LLM configuration
and select
Googleas the provider. -
Under
Google API Type, choose one route:Google AI Studio (Gemini API): enter theGoogle Gemini API Keyfrom Google AI Studio. InGemini Models, enter one model ID per line.Google Cloud Platform (Vertex AI): enter theGoogle Cloud Project IDandGoogle Cloud Location, then upload theGoogle Cloud Service Account JSON file. InVertex AI Models, enter one model ID per line. Enable the Vertex AI API in the project and grant the service account the Vertex AI User role or equivalent model-inference permissions.
-
Enter the raw model IDs, without a
gemini/orvertex_ai/prefix. For example, the Vertex field can contain:The Admin Console creates one bundled-gateway route per line, and the first line becomes the installation default. Confirm that each model is available to your account and, for Vertex, in your selected location. - Save the configuration and deploy the updated version.
VERTEXAI_CREDENTIALS, together with the configured project and location. Scope
that service account for this deployment behavior; do not assume its credential
is available only to the gateway. Keep the file out of source control. The Allow users to configure their own LLM providers (BYOK) checkbox is separate from these administrator-managed models.Select the Model in OpenHands
For Replicated, select the Google models in the Admin Console and deploy the configuration. Users do not need to open LiteLLM or enter the Google credential. For Helm, set the desired gateway alias as the installation default in your complete values file before upgrading. For the Vertex example:litellm_proxy/google-ai-studio-flash instead.
Keep the provider credential in LiteLLM; users do not need a personal Google key
to use an administrator-managed route.
On the tested chart 0.74.0 / OpenHands 1.67.0, a fresh user’s Default
profile resolved to openhands/google-vertex-flash with the internal gateway
base URL http://openhands-litellm.openhands.svc.cluster.local:4000. No user
profile override or provider key entry was required. Existing users may retain
previously selected profiles; confirm the model selected for the new conversation.
To offer both Helm aliases as administrator-managed profiles, open the
organization’s Language Model (LLM) defaults at /settings/org-defaults.
Choose Add LLM Profile → Advanced and use the internal gateway URL:
OpenHands supplies the managed gateway credential, so no key entry is required.
On OpenHands
1.67.0, saving on this page also makes the profile the
organization’s active default. Re-activate the intended default after testing.
Use your actual gateway Service name and namespace. The selected model points to
the bundled gateway alias; configure its provider route through Helm values
or the Replicated Admin Console.
The Helm gateway calls Vertex AI. The sandbox calls the gateway, so this path does
not require mounting Google credentials into the sandbox or rebuilding the
agent-server image with ENABLE_VERTEX=1. That build flag applies when the
agent-server calls vertex_ai/* directly; see
Vertex AI dependencies.
Start Using the Model
- Sign in and confirm the conversation UI loads without an additional backend URL or API-key prompt. If it prompts, check the Canvas configuration in the Helm installation guide.
- Start a new conversation using the installation’s
Defaultprofile. - Ask the agent to run
pwd, create a small workspace file and read it back. - Confirm the sandbox reaches
READY, tool results contain the expected path and file contents, and the agent completes its response. A successful direct gateway request alone does not validate the OpenHands conversation path.
The Vertex route passed end-to-end tests on GKE with Helm chart
0.74.0,
OpenHands 1.67.0, agent-server 1.49.6-python, and gemini-2.5-flash in
us-central1. The unmodified agent-server image ran terminal and file tools
and completed the conversation. A fresh conversation using a named organization
profile also passed terminal file operations through the OpenHands API on this
release. The organization defaults UI also saved the named Vertex profile with the
expected URL. Fresh startup for that UI-created profile remains unvalidated. On Replicated release 0.74.0, the Admin
Console Vertex configuration also passed GitHub login, terminal file operations
and a read-only repository conversation. The Gemini API examples were checked
against the provider and chart configuration; they have not yet been validated
with an end-to-end conversation in this evaluation.Troubleshooting
Google AI Studio authentication error
Google AI Studio authentication error
Check the Gemini API key in the Kubernetes Secret and confirm that it can use
the selected model. The model route must use
gemini/, not vertex_ai/.Vertex AI permission or credential error
Vertex AI permission or credential error
Check that Vertex AI is enabled, the service account can call the model, the
Secret contains a valid JSON file, and the LiteLLM pod mounts it at the path
in
GOOGLE_APPLICATION_CREDENTIALS.The profile cannot reach the gateway
The profile cannot reach the gateway
Check the internal LiteLLM Service DNS name, namespace, and selected model alias.
Confirm the LiteLLM Deployment is ready.
Google 429 or repeated retries
Google 429 or repeated retries
Check request and token quotas, billing, and model capacity for the chosen API.
A small direct completion can succeed while a larger agent prompt is rate limited.
Sandbox cannot start
Sandbox cannot start
Check runtime registration, pod readiness and Kubernetes events using the
Troubleshooting guide. For GKE, verify your Sysbox
installation. A runtime startup failure does not by itself establish a Google
credential problem.

