---
title: "Injection and prompt defaults"
manual: "LLM Foundation"
version: "main"
permalink: "https://docs.typo3.org/permalink/netresearch/nr-llm:injection-and-prompt-defaults@main"
source: "Developer/FeatureServices/Setup.rst"
rendered: "2026-11-12T15:41:35+00:00"
---

# Injection and prompt defaults {#injection-and-prompt-defaults}

## Installation {#feature-services-installation}

### Dependency injection {#feature-services-di}

Add to your extension's [`Configuration/Services.yaml`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/Configuration/ServicesYaml.html#file-extension-configuration-services-yaml):

**Configuration/Services.yaml**

```yaml
services:
  Your\Extension\Service\YourService:
    public: true
    arguments:
      $visionService: '@Netresearch\NrLlm\Service\Feature\VisionService'
      $translationService: '@Netresearch\NrLlm\Service\Feature\TranslationService'
      $completionService: '@Netresearch\NrLlm\Service\Feature\CompletionService'
      $embeddingService: '@Netresearch\NrLlm\Service\Feature\EmbeddingService'
```

### Usage in your extension {#feature-services-usage}

**Example: Using feature services in your extension**

```php
<?php

namespace Your\Extension\Service;

use Netresearch\NrLlm\Service\Feature\VisionServiceInterface;

class YourService
{
    public function __construct(
        private readonly VisionServiceInterface $visionService
    ) {}

    public function enhanceImage(string $imageUrl): array
    {
        return [
            'alt' => $this->visionService->generateAltText($imageUrl),
            'title' => $this->visionService->generateTitle($imageUrl),
            'description' => $this->visionService->generateDescription($imageUrl),
        ];
    }
}
```

## Default prompts {#feature-services-default-prompts}

`Resources/Private/Data/DefaultPrompts.php` contains a reference catalog
of ten prompt templates. The runtime does not load that catalog. Feature
services use their own built-in prompts; applications can use the catalog
as a starting point for their own prompt snippets or custom analysis.

### Vision {#feature-services-prompts-vision}

-   `vision.alt_text` \- Alt-text suggestions for accessibility review.
-   `vision.seo_title` \- SEO-optimized titles.
-   `vision.description` \- Detailed descriptions.

### Translation {#feature-services-prompts-translation}

-   `translation.general` \- General purpose translation.
-   `translation.technical` \- Technical documentation.
-   `translation.marketing` \- Marketing copy.

### Completion {#feature-services-prompts-completion}

-   `completion.rule_generation` \- TYPO3 contexts rules.
-   `completion.content_summary` \- Content summarization.
-   `completion.seo_meta` \- SEO meta descriptions.

### Embedding {#feature-services-prompts-embedding}

-   `embedding.semantic_search` \- Semantic search configuration.
