> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Unterstützung für mehrere Stimmen

## Überblick

Mit der Unterstützung für mehrere Stimmen kann Ihr ElevenLabs-Agent während eines einzelnen Gesprächs dynamisch zwischen verschiedenen ElevenLabs-Stimmen wechseln. Diese Funktion ermöglicht:

* **Storytelling mit mehreren Charakteren**: Verschiedene Stimmen für verschiedene Charaktere in Erzählungen
* **Sprachunterricht**: Muttersprachliche Stimmen für verschiedene Sprachen
* **Emotionale Agenten**: Stimmwechsel je nach emotionalem Kontext
* **Rollenspielszenarien**: Unterschiedliche Stimmen für verschiedene Personas

![Konfigurationsoberfläche für mehrere Stimmen](/docs/_fern-img/a421eaed65575340ef34c1209a30d97ca2594a5fb48ee57b02c8349930191727.webp)

## Funktionsweise

Wenn die Unterstützung für mehrere Stimmen aktiviert ist, kann Ihr Agent während der Textgenerierung XML-ähnliches Markup verwenden, um zwischen konfigurierten Stimmen zu wechseln. Der Agent kehrt automatisch zur Standardstimme zurück, wenn keine bestimmte Stimme angegeben ist.

**`Example voice switching`**

```xml title="Example voice switching"
The teacher said, <spanish>¡Hola estudiantes!</spanish> 
Then the student replied, <student>Hello! How are you today?</student>
```

**`Multi-character dialogue`**

```xml title="Multi-character dialogue"
<narrator>Once upon a time, in a distant kingdom...</narrator>
<princess>I need to find the magic crystal!</princess>
<wizard>The crystal lies beyond the enchanted forest.</wizard>
```

## Konfiguration

### Unterstützte Stimmen hinzufügen

Jede unterstützte Stimme hat die folgenden Eigenschaften:

* **Stimmbezeichnung**: Eindeutige Kennung (z. B. „Joe“, „Spanisch“, „Fröhlich“)
* **Stimme**: Wählen Sie aus Ihren verfügbaren ElevenLabs-Stimmen
* **Modellfamilie**: Wählen Sie Turbo, Flash oder Multilingual (optional)
* **Sprache**: Überschreiben Sie die Standardsprache für diese Stimme (optional)
* **Beschreibung**: Wann der Agent diese Stimme verwenden soll

#### Über das Dashboard aktualisieren

Öffnen Sie Ihren Agenten im Dashboard, wechseln Sie zum Tab **Voice** und suchen Sie den Bereich **Unterstützung für mehrere Stimmen**. Klicken Sie auf **Stimme hinzufügen**, um eine neue unterstützte Stimme zu konfigurieren.

![Konfigurationsoberfläche für mehrere Stimmen](/docs/_fern-img/e7a6e86ed58abb54f75e884214e6bc056c85e85fc60176924fb2683e16250aa1.webp)

#### Über die CLI aktualisieren

#### Agentenkonfiguration abrufen

```bash
elevenlabs agents pull --agent "<agent-name>"
```

#### \`agent_configs/\<agent-name>.json\` bearbeiten

Setzen Sie `conversation_config.tts.supported_voices`:

```json
{
  "conversation_config": {
    "tts": {
      "supported_voices": [
        {
          "label": "Spanish",
          "voice_id": "<voice-id>",
          "language": "es",
          "description": "For any Spanish words or phrases"
        }
      ]
    }
  }
}
```

#### Änderungen übertragen

```bash
elevenlabs agents push --agent "<agent-name>"
```

#### Über die API aktualisieren

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "tts": {
            "supported_voices": [
                {
                    "label": "Spanish",
                    "voice_id": "<voice-id>",
                    "language": "es",
                    "description": "For any Spanish words or phrases",
                }
            ]
        },
    },
)
```

```typescript
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    tts: {
      supportedVoices: [
        {
          label: "Spanish",
          voiceId: "<voice-id>",
          language: "es",
          description: "For any Spanish words or phrases",
        },
      ],
    },
  },
});
```

### Stimmeigenschaften

#### Stimmbezeichnung

Eine eindeutige Kennung, die das LLM verwendet, um auf diese Stimme zu verweisen. Wählen Sie aussagekräftige Bezeichnungen wie: -
Charakternamen: „Alice“, „Bob“, „Erzähler“ - Sprachen: „Spanisch“, „Französisch“, „Deutsch“ -
Emotionen: „Fröhlich“, „Traurig“, „Aufgeregt“ - Rollen: „Lehrer“, „Schüler“, „Guide"

#### Modellfamilie

Überschreiben Sie die Standard-Modellfamilie des Agenten für diese spezifische Stimme: - **Flash**: Schnellste Generierung,
optimiert für die Echtzeitnutzung - **Turbo**: Ausgewogene Geschwindigkeit und Qualität - **Multilingual**: Höchste
Qualität, optimal für nicht englische Sprachen - **Wie Agent**: Standardeinstellung des Agenten verwenden

#### Sprachüberschreibung

Geben Sie eine andere Sprache für diese Stimme an. Dies ist nützlich für: - Mehrsprachige Gespräche - Sprach-
lernanwendungen - Regionsspezifische Aussprachen

#### Beschreibung

Geben Sie Kontext dazu, wann der Agent diese Stimme verwenden soll.
Beispiele:

* „Für alle spanischen Wörter oder Ausdrücke“
* „Wenn der Nachrichteninhalt fröhlich oder aufgeregt ist“
* „Immer wenn der Charakter Joe spricht“

## Implementierung

### XML-Markup-Syntax

Ihr Agent verwendet XML-ähnliche Tags, um zwischen Stimmen zu wechseln:

```xml
<VOICE_LABEL>text to be spoken</VOICE_LABEL>
```

**Wichtige Hinweise:**

* Ersetzen Sie `VOICE_LABEL` durch die exakt konfigurierte Bezeichnung
* Text außerhalb von Tags verwendet die Standardstimme
* Bei Tags wird Groß- und Kleinschreibung berücksichtigt
* Verschachtelte Tags werden nicht unterstützt

### Integration in den System-Prompt

Wenn Sie unterstützte Stimmen konfigurieren, fügt das System automatisch Anweisungen zum Prompt Ihres Agenten hinzu:

```
When a message should be spoken by a particular person, use markup: "<CHARACTER>message</CHARACTER>" where CHARACTER is the character label.

Available voices are as follows:
- default: any text outside of the CHARACTER tags
- Joe: Whenever Joe is speaking
- Spanish: For any Spanish words or phrases
- Narrator: For narrative descriptions
```

### Anwendungsbeispiel

#### Sprachunterricht

```
Teacher: Let's practice greetings. In Spanish, we say <Spanish>¡Hola! ¿Cómo estás?</Spanish>
Student: How do I respond?
Teacher: You can say <Spanish>¡Hola! Estoy bien, gracias.</Spanish> which means Hello! I'm fine, thank you.
```

#### Storytelling

```
Once upon a time, a brave princess ventured into a dark cave.
<Princess>I'm not afraid of you, dragon!</Princess> she declared boldly. The dragon rumbled from
the shadows, <Dragon>You should be, little one.</Dragon>
But the princess stood her ground, ready for whatever came next.
```

## Best Practices

#### Stimmenauswahl

* Wählen Sie Stimmen, die Charaktere oder Kontexte klar voneinander abgrenzen
* Testen Sie Stimmkombinationen, um sicherzustellen, dass sie gut zusammen funktionieren
* Berücksichtigen Sie für jede Stimme den emotionalen Ton und die Persönlichkeit
* Stellen Sie sicher, dass Stimmen beim Sprachwechsel zu Sprache und Akzent passen

#### Bezeichnungsnamen

* Verwenden Sie aussagekräftige, intuitive Bezeichnungen, die das LLM verstehen kann
* Halten Sie Bezeichnungen kurz und einprägsam
* Vermeiden Sie Sonderzeichen oder Leerzeichen in Bezeichnungen

#### Leistungsoptimierung

* Beschränken Sie die Anzahl unterstützter Stimmen auf das tatsächlich Benötigte
* Verwenden Sie nach Möglichkeit dieselbe Modellfamilie, um den Wechselaufwand zu reduzieren
* Testen Sie mit Ihren erwarteten Gesprächsmustern
* Überwachen Sie Antwortzeiten bei mehreren Stimmwechseln

#### Inhaltsrichtlinien

* Geben Sie klare Beschreibungen dafür an, wann jede Stimme verwendet werden soll
* Testen Sie Grenzfälle, bei denen der Stimmwechsel unklar sein könnte
* Berücksichtigen Sie das Fallback-Verhalten bei mehrdeutigen Stimmbezeichnungen
* Stellen Sie sicher, dass Stimmwechsel das Gespräch verbessern, statt davon abzulenken

## Einschränkungen

> **Note**
>
> * Maximal 10 unterstützte Stimmen pro Agent (einschließlich Standardstimme)
> * Stimmwechsel fügen während der Generierung minimale Latenz hinzu
> * XML-Tags müssen korrekt formatiert und geschlossen sein
> * Bei Stimmbezeichnungen im Markup wird Groß- und Kleinschreibung berücksichtigt
> * Verschachtelte Stimm-Tags werden nicht unterstützt

## FAQ

#### Was passiert, wenn ich eine nicht definierte Stimmbezeichnung verwende?

Wenn der Agent eine Stimmbezeichnung verwendet, die nicht konfiguriert wurde, wird der Text mit der
Standardstimme gesprochen. Die XML-Tags werden ignoriert.

#### Kann ich mitten im Satz die Stimme wechseln?

Ja, Sie können innerhalb einer einzelnen Antwort die Stimme wechseln. Jeder mit Tags versehene Abschnitt verwendet die angegebene
Stimme, während Text ohne Tags die Standardstimme verwendet.

#### Beeinflussen Stimmwechsel die Gesprächslatenz?

Stimmwechsel verursachen minimalen Mehraufwand. Bei der ersten Verwendung jeder Stimme in einem Gespräch kann die
Latenz leicht höher sein, da die Stimme initialisiert wird.

#### Kann ich dieselbe Stimme mit verschiedenen Bezeichnungen verwenden?

Ja, Sie können mehrere Bezeichnungen konfigurieren, die dieselbe ElevenLabs-Stimme verwenden, aber unterschiedliche Modell-
familien, Sprachen oder Kontexte haben.

#### Wie bringe ich meinem Agenten bei, Stimmwechsel effektiv zu nutzen?

Geben Sie in Ihrem System-Prompt klare Beispiele und testen Sie gründlich. Sie können konkrete
Szenarien angeben, in denen Stimmwechsel stattfinden sollen, sowie Beispiele für das XML-Markup-Format.