ADR 005 · Accepted

TYPO3 Caching Framework Integration

Status

Accepted (2024-03)

Context

LLM API calls are:

  • Expensive (cost per token).

  • Relatively slow (network latency).

  • Often deterministic (embeddings, some completions).

Decision

Integrate with TYPO3's caching framework:

  • Cache identifier: nrllm_responses.

  • No backend specified — TYPO3 uses the instance's default cache backend (respects Redis/Valkey/Memcached).

  • Cache keys based on: provider + model + input hash.

  • TTL: 3600s default (configurable).

  • Cache group: nrllm (flush via cache:flush --group=nrllm).

Caching strategy:

  • Always cache: Embeddings (deterministic).

  • Optional cache: Completions with temperature=0.

  • Never cache: Streaming, tool calls, high temperature.

Consequences

Positive:

  • ●● Reduced API costs.

  • ●● Faster responses for cached content.

  • ● Follows TYPO3 patterns.

  • ◐ Configurable per deployment.

Negative:

  • ✕ Cache invalidation complexity.

  • ◑ Storage requirements.

  • ✕ Stale responses if TTL too long.

Net Score: +4.5 (Positive impact - significant cost/performance gains with manageable cache complexity)

← All ADRs