Customizing Chat Agent model secrets Innovation Release

Required for deployments with the chatbot installation scenario enabled. This secret tells Chat Agent which existing model endpoints to use. Available starting in Hybrid Manager (HM) 2026.11 (Innovation Release).

HM doesn't host the models for Chat Agent. You supply the connection details for one or more large language models (LLMs) that already run elsewhere, such as a third-party API or a self-hosted server. You can supply more than one model. For each model, you provide:

  • A unique ID
  • The model name that the endpoint expects
  • The base URL of the endpoint
  • Optionally, an API key
  • Optionally, the API type and capability settings

edbctl stores these settings in the chatbot-model-creds secret.

Creating the Chat Agent model secret

Note

Required for deployments with the chatbot installation scenario enabled. Add chatbot to spec.scenarios in the HybridControlPlane resource. The chatbot scenario doesn't need the ai scenario.

Important

The --version you pass to edbctl must be 2026.11 or later. Earlier versions don't create the chatbot-model-creds secret.

  1. Gather the connection details for each model. The examples on this page use Google Gemini. For the model strength and context window Chat Agent needs, see Configuring the Chat Agent.

  2. Run edbctl with the chatbot scenario:

    • For manual installations, run this command and answer the prompts. edbctl asks for each model in turn and asks whether to add another model.

      edbctl hybrid-manager create-install-secrets --version <version> --scenario chatbot
    • If you're running the installation through a CI/CD pipeline, turn off the prompts and pass the model settings as environment variables:

      edbctl config set interactive_mode off
      edbctl config set confirm_mode off
      
      export EDB_CHATBOT_MODEL_ID1=gemini-flash
      export EDB_CHATBOT_MODEL_NAME1=gemini-3.5-flash
      export EDB_CHATBOT_MODEL_URL1=https://generativelanguage.googleapis.com
      export EDB_CHATBOT_MODEL_API1=gemini
      export EDB_CHATBOT_MODEL_API_KEY1=<your-gemini-api-key>
      
      edbctl hybrid-manager create-install-secrets --version <version> --scenario chatbot

    This creates the chatbot-model-creds secret and makes it available to Chat Agent.

Adding more than one model

Chat Agent supports several models at the same time. Users pick a model from the model picker in the HM console, and the first model you add is the default. For example, add a stronger model for cluster management and a lighter model for documentation questions.

  • In interactive mode, answer yes when edbctl asks whether to add another model. Enter the settings for each model in turn. Leave the ID empty to stop.

  • With environment variables, number each setting with the model's position. Use EDB_CHATBOT_MODEL_ID1 for the first model, EDB_CHATBOT_MODEL_ID2 for the second, and so on:

    # Model 1
    export EDB_CHATBOT_MODEL_ID1=gemini-flash
    export EDB_CHATBOT_MODEL_NAME1=gemini-3.5-flash
    export EDB_CHATBOT_MODEL_URL1=https://generativelanguage.googleapis.com
    export EDB_CHATBOT_MODEL_API1=gemini
    export EDB_CHATBOT_MODEL_API_KEY1=<your-gemini-api-key>
    
    # Model 2
    export EDB_CHATBOT_MODEL_ID2=gemini-flash-lite
    export EDB_CHATBOT_MODEL_NAME2=gemini-3.5-flash-lite
    export EDB_CHATBOT_MODEL_URL2=https://generativelanguage.googleapis.com
    export EDB_CHATBOT_MODEL_API2=gemini
    export EDB_CHATBOT_MODEL_API_KEY2=<your-gemini-api-key>
    
    edbctl hybrid-manager create-install-secrets --version <version> --scenario chatbot

Follow these rules when you add several models:

  • Every model needs its own unique ID.
  • Numbers must be consecutive and start at 1. edbctl stops at the first missing ID and warns you if it finds settings for later models.
  • If you set any setting for a model, you must also set its ID.
  • Models can use different API types. For example, model 1 can use gemini and model 2 can use openai.
  • Capability settings apply to one model only. Set them with the same number as the model.

Model settings

VariableRequiredDescription
EDB_CHATBOT_MODEL_ID<N>YesUnique identifier for the model.
EDB_CHATBOT_MODEL_NAME<N>YesModel name that the endpoint expects, for example gemini-3.5-flash.
EDB_CHATBOT_MODEL_URL<N>YesBase URL of the endpoint. Must be an http or https URL, for example https://generativelanguage.googleapis.com.
EDB_CHATBOT_MODEL_API_KEY<N>NoAPI key for the endpoint. Leave it empty for endpoints that don't need a key.
EDB_CHATBOT_MODEL_API<N>NoAPI type that the endpoint speaks: openai (the default), anthropic, or gemini.
EDB_CHATBOT_MODEL_TIER<N>NoModel strength tier: S, M, L, or XL.
EDB_CHATBOT_MODEL_CONTEXT_WINDOW<N>NoContext window size as a positive number followed by k or m, for example 128k.
EDB_CHATBOT_MODEL_THINKING_LEVELS<N>NoComma-separated thinking levels the model supports: low, medium, high, xhigh, and max.
EDB_CHATBOT_MODEL_DEFAULT_THINKING_LEVEL<N>NoDefault thinking level. Required when you set thinking levels, and must be one of those levels.

The openai API type covers any OpenAI-compatible endpoint, such as OpenAI, NVIDIA NIM, and vLLM. For these endpoints, include the version path in the URL, for example https://llm.example/v1. For how the tier, context window, and thinking levels affect Chat Agent, see Setting model capabilities.

edbctl checks every value before it writes the secret. If a value is invalid, edbctl names the variable and stops. In interactive mode, it explains the problem and asks again.

Changing the models later

edbctl keeps an existing chatbot-model-creds secret unless you add --force. To add, replace, or remove models, run the command again with the complete list of models and --force:

edbctl hybrid-manager create-install-secrets --version <version> --scenario chatbot --force

With --force, the new settings replace all existing model settings. Models and capabilities you leave out are removed. If you supply no models, edbctl doesn't write the secret.

Chat Agent reads the secret when it starts. When the model settings in the secret change, HM restarts Chat Agent automatically so that it picks up the new models. You don't need to restart it yourself. The restart interrupts any response in progress, so users might need to resend their last message.

HM restarts Chat Agent only when the settings in an existing secret change. If you run the command again with identical settings, nothing restarts.

Note

HM doesn't restart Chat Agent when the secret is first created. Create the secret before you install HM. If you create it after HM is running, restart Chat Agent yourself:

kubectl rollout restart deployment/upm-agent-proxy -n upm-agent-proxy