---
title: "Architecture"
manual: "AI Universe"
version: "1.0"
permalink: "https://docs.typo3.org/permalink/nitsan/ns-aiuniverse:architecture@1.0"
source: "Architecture/Index.rst"
rendered: "2026-10-19T14:06:07+00:00"
---

# Architecture {#architecture}

-   [Overview](https://docs.typo3.org/permalink/nitsan/ns-aiuniverse:overview@1.0)
-   [Main components](https://docs.typo3.org/permalink/nitsan/ns-aiuniverse:main-components@1.0)
-   [Configuration model](https://docs.typo3.org/permalink/nitsan/ns-aiuniverse:configuration-model@1.0)
-   [Caching](https://docs.typo3.org/permalink/nitsan/ns-aiuniverse:caching@1.0)
-   [Constraints](https://docs.typo3.org/permalink/nitsan/ns-aiuniverse:constraints@1.0)

## Overview {#architecture-overview}

AI Universe is a shared foundation layer:

```
Consuming Extension Code
        |
        v
  AiRequestService
        |
        v
     BaseClient
        |
        v
   Provider APIs

```

Parallel support:

```
AiStatisticsService -> OpenAI Usage API -> Processed chart data cache
HttpAuthUtility    -> Protected URL fetching with optional Basic Auth

```

## Main components {#architecture-components}

-   **Request orchestration**: `AiRequestService`
-   **Provider adapters and payload composition**: `BaseClient`
-   **Statistics processing**: `AiStatisticsService`
-   **Engine configuration filtering**: `AiEngineConfiguration`
-   **Utility and environment helpers**: `AiUniverseUtilityHelper`
-   **HTTP auth helper**: `HttpAuthUtility`

## Configuration model {#architecture-config}

Runtime behavior is mostly driven by extension configuration keys from
[`ext_conf_template.txt`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/ExtConfTemplate.html#file-extension-ext-conf-template-txt).

This includes:

-   provider keys and models
-   default engine selection
-   token/temperature values
-   basic auth settings

## Caching {#architecture-cache}

The extension registers cache `nsaiuniverse_statistics` in
[`ext_localconf.php`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/ExtLocalconf.html#file-extension-ext-localconf-php).

Statistics service stores processed data in this cache to reduce repeated
usage API calls.

## Constraints {#architecture-constraints}

-   No native frontend plugin and no Fluid frontend output in this package.
-   Primary role is reusable service infrastructure.
