Configure Generative AI (Default) Connection

Prev Next

Configure Generative AI (Default) Connection

This article focuses on setting up your Quality Modeller instance to utilize the Generative AI feature within the Curiosity Platform. We will delve into the specifics of Generative AI and the Language Learning Models (LLMs) that we collaborate with for our cloud and on-premise deployments.

Default Model

Cloud Deployment

In the cloud version of Quality Modeller, Generative AI is pre-installed and automatically activated in your workspace. Should you wish to disable this feature, please contact your Curiosity account representative.

The cloud-based Quality Modeller utilizes OpenAI's gpt-5.2 (subject to change). We advise you to review the OpenAI privacy policy prior to leveraging any of the Generative AI capabilities with Quality Modeller.

On-Premise Deployment

For on-premise deployments the Generative AI capability is disabled by default. To use this functionality it will need to be enabled in the docker-compose / environment variables for the installation.

Quality Modeller out-the-box supports Large Language Models from OpenAI, Azure OpenAI, and Anthropic (Claude). Its flexible architecture means it can also integrate with homegrown LLMs or any provider-specific LLM your organization is using within its infrastructure, depending on the organisation's security policy.

Requirements for Configuring Generative AI

  • An account with one of: OpenAI, Azure OpenAI, or Anthropic.
  • An API key for the relevant model.
  • A chat-completions model (e.g. gpt-5, claude-sonnet-4-6).

To configure the service, the following environment variables need to be set. This can be done by creating the docker-compose-custom.yml file to have the custom configuration. If you already have a docker-compose-custom.yml file with some custom configuration elements, we will simply be editing that file instead.

cp docker-compose-basic.yml docker-compose-custom.yml

Inside the docker-compose-custom.yml file, the api service's environment section needs to contain the environment variables listed below. If the api service does not exist in the YAML file, it needs to be added first — the docker-compose-ad.yml file can be used as an example for that.

Environment Variables — Core

The following variable names are the canonical, provider-agnostic ones (GEN_AI_*). The older provider-specific names (OPEN_AI_*, ANTHROPIC_*) are still honoured as fallbacks for backward compatibility, but new deployments should prefer GEN_AI_*.

Variable Default Description
GEN_AI_ENABLED false Generative AI enabled (true / false) for the instance.
GEN_AI_SOURCE OpenAI Provider to use. One of: OpenAI, Azure, AzureAPIM, Anthropic.
GEN_AI_API_KEY API key for the chosen provider.
GEN_AI_MODEL gpt-5 Chat model / deployment name. E.g. gpt-5, gpt-4o, claude-sonnet-4-6.
GEN_AI_BASE_URL (provider default) Override the provider endpoint URL. Leave blank to use the SDK default (https://api.openai.com/v1 for OpenAI, https://api.anthropic.com for Anthropic).
GEN_AI_PROXY_URL Forward-proxy URL if required to reach the provider endpoint.
GEN_AI_ENABLED_EMAILS Comma-separated list of email addresses that should have access to the Generative AI features. If empty, all users have access.

Environment Variables — Anthropic-specific

Only relevant when GEN_AI_SOURCE=Anthropic. Defaults are tuned for typical Claude Sonnet workloads; raise the timeout for very long completions, raise the max-tokens ceiling when generating large structured outputs (flowcharts, test suites).

Variable Default Description
GEN_AI_ANTHROPIC_MAX_TOKENS 16000 Default max_tokens applied when a prompt doesn't specify one. Anthropic's API requires this field; setting it too low truncates large flowchart / test-suite responses.
GEN_AI_ANTHROPIC_TIMEOUT_SECONDS 300 HTTP timeout for the Anthropic SDK (applies to connect, read, write, and overall call). Raise for very long completions.

Example — OpenAI

api:
  environment:
    GEN_AI_ENABLED: "true"
    GEN_AI_SOURCE: "OpenAI"
    GEN_AI_API_KEY: "${OPENAI_KEY}"
    GEN_AI_MODEL: "gpt-5"

Example — Anthropic

api:
  environment:
    GEN_AI_ENABLED: "true"
    GEN_AI_SOURCE: "Anthropic"
    GEN_AI_API_KEY: "${ANTHROPIC_KEY}"
    GEN_AI_MODEL: "claude-sonnet-4-6"
    # Optional -- raise for very large flowchart generation
    GEN_AI_ANTHROPIC_MAX_TOKENS: "32000"
    GEN_AI_ANTHROPIC_TIMEOUT_SECONDS: "600"

Example — Azure OpenAI

api:
  environment:
    GEN_AI_ENABLED: "true"
    GEN_AI_SOURCE: "Azure"
    GEN_AI_API_KEY: "${AZURE_OPENAI_KEY}"
    GEN_AI_BASE_URL: "https://my-resource.openai.azure.com/openai/deployments/my-deployment"
    GEN_AI_MODEL: "my-deployment"

Backward Compatibility

The previous variable names continue to work without change. The cascade is:

  1. GEN_AI_* — canonical, provider-agnostic (preferred).
  2. ANTHROPIC_* — convenience names when running Anthropic.
  3. OPEN_AI_* — legacy names, kept working indefinitely.

For example, GEN_AI_API_KEY takes precedence; if unset, the system reads ANTHROPIC_API_KEY; if also unset, it falls back to OPEN_AI_KEY. Existing docker-compose-custom.yml files do not need to be updated.