---
title: "Configuration field reference"
manual: "TYPO3 LLM Extension"
version: "0.35"
permalink: "https://docs.typo3.org/permalink/netresearch/nr-llm:configuration-llm@0.35"
source: "Configuration/ConfigFields.rst"
modified: "2026-09-16T22:09:16+00:00"
---

# Configuration field reference

Configurations define use-case presets with model
selection and parameters.

![Configuration list with model assignments](../Images/backend-configurations.png)

## Required

-   **identifier (config)**

    -   *Type:* string
    -   *Required:* true

    Unique slug (e.g., `blog-summarizer`).

-   **name (config)**

    -   *Type:* string
    -   *Required:* true

    Display name (e.g., `Blog Post Summarizer`).

-   **model**

    -   *Type:* reference
    -   *Required:* true

    Reference to the model to use.

-   **system_prompt**

    -   *Type:* text
    -   *Required:* true

    System message that sets the AI's behavior.

## Optional

-   **temperature**

    -   *Type:* float
    -   *Default:* 0.7

    Creativity (0.0 = deterministic, 2.0 = creative).

-   **max_tokens (config)**

    -   *Type:* integer
    -   *Default:* 1000

    Maximum response length in tokens. Set `0`
    to inherit the model's
    max_output_tokens.
    Precedence: per-call option > configuration
    value (> 0) > model `max_output_tokens`
    (> 0) > provider default.

-   **top_p**

    -   *Type:* float
    -   *Default:* 1.0

    Nucleus sampling (0.0-1.0).

-   **frequency_penalty**

    -   *Type:* float
    -   *Default:* 0.0

    Reduces word repetition (-2.0 to 2.0).

-   **presence_penalty**

    -   *Type:* float
    -   *Default:* 0.0

    Encourages topic diversity (-2.0 to 2.0).

-   **use_case_type**

    -   *Type:* string
    -   *Default:* chat

    Task type: `chat`, `completion`,
    `embedding`, `translation`.

-   **fallback_chain**

    -   *Type:* JSON (text column)
    -   *Default:* (empty)

    JSON object with a single key,
    `configurationIdentifiers`, whose value is the
    ordered list of other configuration identifiers
    to retry against when the primary fails with a
    retryable error (connection error, HTTP 5xx, or
    HTTP 429 rate-limit). Non-retryable errors bubble
    up unchanged. Streaming requests do not trigger
    fallback — chunks cannot be replayed against a
    different provider.

    Example payload:

    ```
    {"configurationIdentifiers": ["claude-sonnet", "ollama-local"]}

    ```

    Identifiers are matched case-insensitively;
    leave empty to disable fallback. See
    [Fallback chain](https://docs.typo3.org/permalink/netresearch/nr-llm:developer-fallback-chain@0.35).

-   **system_prompt_data_class**

    -   *Type:* select
    -   *Default:* (empty — undeclared)

    The sensitivity ceiling for confval-config-system-prompt. Declaring one refuses any send whose serving
    model sits in a weaker trust zone than the class allows, the same axis
    snippets and skills carry ([ADR-144](https://docs.typo3.org/permalink/netresearch/nr-llm:adr-144@0.35), [ADR-155](https://docs.typo3.org/permalink/netresearch/nr-llm:adr-155@0.35)).

    Empty means no statement was made and constrains nothing, so existing
    configurations behave exactly as before. The class describes the *text*: a
    configuration whose system prompt is blank declares nothing whatever this
    field says.

    Enforcement follows the instance-wide `tools.dataClassEnforcement` switch —
    see [The four keys](https://docs.typo3.org/permalink/netresearch/nr-llm:administration-governance-keys@0.35).
