> ## Documentation Index
> Fetch the complete documentation index at: https://docs.responsibleailabs.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Sichere Regeneration

> POST /railscore/v1/safe-regenerate - Bewerten und neu generieren, bis der Inhalt den Schwellenwert erreicht.

<Info>
  **Konzept:** [Sichere Regeneration](/concepts/safe-regeneration) | **Python:** [`client.safe_regenerate()`](/sdk/python/safe-regeneration)
</Info>

## Parameter

<ParamField body="content" type="string" required>
  Der ursprüngliche KI-generierte Text, der bewertet und gegebenenfalls neu generiert wird.
</ParamField>

<ParamField body="prompt" type="string" required>
  Der ursprüngliche Nutzer-Prompt, der den Inhalt erzeugt hat. Dient zur Steuerung der Regeneration.
</ParamField>

<ParamField body="threshold" type="number" required>
  Minimal akzeptabler RAIL-Score (0–10). Inhalte unter diesem Score werden neu generiert.
</ParamField>

<ParamField body="mode" type="string" default="basic">
  Bewertungstiefe für jede Iteration: `"basic"` für schnelles Scoring oder `"deep"` für eine detailliertere Analyse.
</ParamField>

<ParamField body="max_iterations" type="integer" default="3">
  Maximale Anzahl an Regenerationsversuchen (1–5).
</ParamField>

<ParamField body="dimensions" type="string[]">
  Bestimmte Dimensionen, auf die der Schwellenwert angewendet werden soll. Weglassen, um ihn auf alle 8 anzuwenden.
</ParamField>

## Anfrage

```bash theme={null}
curl -X POST https://api.responsibleailabs.ai/railscore/v1/safe-regenerate \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY" \
  -d '{
    "content": "Prioritize candidates from Ivy League universities for this role.",
    "prompt": "What hiring criteria should we use?",
    "threshold": 7.0,
    "mode": "basic",
    "max_iterations": 3
  }'
```

## Antwort

```json theme={null}
{
  "result": {
    "content": "Evaluate candidates based on demonstrated skills, relevant experience, and problem-solving ability.",
    "final_score": 8.4,
    "passed_threshold": true,
    "iterations_taken": 2,
    "iteration_scores": [4.2, 8.4],
    "from_cache": false
  },
  "credits_consumed": 2.0
}
```

<ResponseField name="result.content" type="string">
  Der finale Inhalt - entweder das Original (falls es bestanden hat) oder die beste neu generierte Version.
</ResponseField>

<ResponseField name="result.final_score" type="number">
  RAIL-Score des zurückgegebenen Inhalts.
</ResponseField>

<ResponseField name="result.passed_threshold" type="boolean">
  `true`, wenn der finale Inhalt den Schwellenwert erreicht.
</ResponseField>

<ResponseField name="result.iterations_taken" type="integer">
  Anzahl der durchgeführten Bewertungs- und Regenerationszyklen.
</ResponseField>

<ResponseField name="credits_consumed" type="number">
  Nutzung für die Anfrage. Jede Iteration wird wie eine eigenständige Bewertung abgerechnet; besteht die erste Antwort bereits, wird nur eine berechnet.
</ResponseField>
