> 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.

# Åsidosättningar

> **Warning**
>
> Åsidosättningar stöds fortfarande för att helt ersätta systemprompter eller första meddelanden, men vi
> rekommenderar att du använder [dynamiska variabler](/docs/sv/eleven-agents/customization/personalization/dynamic-variables) som det bästa sättet
> att anpassa agentens svar och lägga in data i realtid. Dynamiska variabler är enklare att underhålla
> och ger en mer strukturerad metod för personalisering.

**Åsidosättningar** gör att din assistent kan anpassa sitt beteende för varje användarinteraktion. Du kan skicka anpassad data och inställningar i början av varje konversation, så att assistenten kan anpassa sina svar och sin kunskap med sammanhang i realtid. Åsidosättningar ersätter helt agentens standardvärden som definierats på agentens [instrumentpanel](https://elevenlabs.io/app/agents/agents).

## Översikt

Med åsidosättningar kan du ändra din AI-agents beteende i realtid utan att skapa flera agenter. Det gör att du kan anpassa svar med användarspecifik data.

Åsidosättningar kan aktiveras för följande fält i agentens säkerhetsinställningar:

* Systemprompt
* Första meddelande
* Språk
* Röst-ID
* LLM (Large Language Model)
* Verktyg
* Kunskapsbas
* Endast text-läge
* Stabilitet
* Hastighet
* Likhetsförstärkning
* ASR-nyckelord

När åsidosättningar är aktiverade för ett fält är det fortfarande valfritt att ange en åsidosättning. Om ingen anges använder agenten standardvärdena som definierats på agentens [instrumentpanel](https://elevenlabs.io/app/agents/agents). För de flesta fält utlöses ett fel om en åsidosättning anges när åsidosättningar inte är aktiverade för det fältet.

> **Warning**
>
> **ASR-nyckelord** använder mjuk blockering: om reglaget för Säkerhet är av och klienten ändå skickar
> `asr.keywords` fortsätter konversationen och nyckelorden ignoreras (inget fel). Aktivera
> åsidosättningen **ASR-nyckelord** i Säkerhetsinställningar när du vill använda nyckelordsförstärkning
> per konversation. Upp till 50 nyckelord stöds per konversation.

Här är några exempel där åsidosättningar kan vara användbara:

* **Hälsa användare** med deras namn
* **Inkludera kontospecifika uppgifter** i svar
* **Anpassa agentens språk** eller ton utifrån användarinställningar
* **Skicka data i realtid** som kontosaldon eller orderstatus
* **Förbättra transkribering** av namn eller termer per samtal (till exempel företagsnamn i CRM) via ASR-nyckelord

> **Info**
>
> Åsidosättningar är särskilt användbara för applikationer som kräver personliga interaktioner eller hanterar
> känsliga användardata som inte bör lagras i agentens grundkonfiguration.

## Guide

### Förutsättningar

* Ett [ElevenLabs-konto](https://elevenlabs.io)
* En konfigurerad konversationsagent från ElevenLabs ([skapa en här](/docs/sv/eleven-agents/quickstart))

Den här guiden visar hur du åsidosätter agentens standardinställningar för **Systemprompt**, **Första meddelande**, **LLM**, **Verktyg**, **Kunskapsbas**, **TTS-inställningar** och **ASR-nyckelord**.

#### Aktivera åsidosättningar

Av säkerhetsskäl är åsidosättningar inaktiverade som standard. Aktivera de fält som du vill tillåta åsidosättning för, till exempel `first_message`, `prompt.prompt`, `prompt.tool_ids`, `prompt.knowledge_base`, `language` eller `asr.keywords`.

#### Uppdatera via instrumentpanelen

Gå till agentens inställningar och välj fliken **Säkerhet**. Aktivera `First message`, `System prompt`, `Tools`, `Knowledge base`, `ASR keywords` och andra åsidosättningar du behöver, till exempel `LLM`.

![Aktivera åsidosättningar](/docs/_fern-img/496f20380ffe29fc46275bbfe5c6eaabdb5e211c780188243a018b38715ea779.webp)

#### Uppdatera via CLI

#### Hämta agentkonfigurationen

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

#### Redigera \`agent\_configs/\<agent-name>.json\`

Ange fält under `platform_settings.overrides.conversation_config_override` till `true` för att tillåta åsidosättningar vid körning för det fältet:

```json
{
  "platform_settings": {
    "overrides": {
      "conversation_config_override": {
        "agent": {
          "first_message": true,
          "language": true,
          "prompt": {
            "prompt": true,
            "tool_ids": true,
            "knowledge_base": true
          }
        },
        "tts": { "voice_id": true },
        "asr": { "keywords": true }
      }
    }
  }
}
```

#### Skicka dina ändringar

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

#### Uppdatera via API

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    platform_settings={
        "overrides": {
            "conversation_config_override": {
                "agent": {
                    "first_message": True,
                    "language": True,
                    "prompt": {
                        "prompt": True,
                        "tool_ids": True,
                        "knowledge_base": True,
                    },
                },
                "tts": {"voice_id": True},
                "asr": {"keywords": True},
            },
        },
    },
)
```

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

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  platformSettings: {
    overrides: {
      conversationConfigOverride: {
        agent: {
          firstMessage: true,
          language: true,
          prompt: {
            prompt: true,
            toolIds: true,
            knowledgeBase: true,
          },
        },
        tts: { voiceId: true },
        asr: { keywords: true },
      },
    },
  },
});
```

#### Åsidosätt konversationen

I din kod, där konversationen startas, skickar du åsidosättningarna som en parameter. Åsidosättningar för verktyg och kunskapsbas ersätter standardarrayerna för den konversationen. Åsidosättningar för ASR-nyckelord ersätter agentens standardlista med nyckelord för den konversationen (högst 50 nyckelord).

**`Payload för att starta konversation`**

```json title="Payload för att starta konversation" focus={4-15}
{
  "conversation_config_override": {
    "agent": {
      "prompt": {
        "tool_ids": ["tool_7101k5zvyjhmfg983brhmhkd98n6"],
        "knowledge_base": [
          {
            "type": "file",
            "name": "Unladen Swallow Facts",
            "id": "5xM3yVvZQKV0EfqQpLrJ",
            "usage_mode": "auto"
          }
        ]
      }
    },
    "asr": {
      "keywords": ["Acme Corp", "Contoso", "Globex"]
    }
  }
}
```

> **Tip**
>
> Se till att du har den senaste [SDK:n](/docs/sv/eleven-agents/libraries/python) installerad.

**`Python`**

```python title="Python" focus={3-28} maxLines=28
from elevenlabs.conversational_ai.conversation import Conversation, ConversationInitiationData
...
conversation_override = {
    "agent": {
        "prompt": {
            "prompt": f"The customer's bank account balance is {customer_balance}. They are based in {customer_location}.", # Optional: override the system prompt.
            "llm": "gpt-4o", # Optional: override the LLM model.
            "tool_ids": [
                "tool_7101k5zvyjhmfg983brhmhkd98n6"
            ], # Optional: replace the tools available to the agent.
            "knowledge_base": [
                {
                    "type": "file",
                    "name": "Unladen Swallow Facts",
                    "id": "5xM3yVvZQKV0EfqQpLrJ",
                    "usage_mode": "auto",
                }
            ], # Optional: replace the knowledge base available to the agent.
        },
        "first_message": f"Hi {customer_name}, how can I help you today?", # Optional: override the first_message.
        "language": "en" # Optional: override the language.
    },
    "tts": {
        "voice_id": "custom_voice_id", # Optional: override the voice.
        "stability": 0.7, # Optional: override stability (0.0 to 1.0).
        "speed": 1.1, # Optional: override speed (0.7 to 1.2).
        "similarity_boost": 0.9 # Optional: override similarity boost (0.0 to 1.0).
    },
    "conversation": {
        "text_only": True # Optional: enable text-only mode (no audio).
    },
    "asr": {
        "keywords": ["Acme Corp", "Contoso"] # Optional: boost ASR for per-call terms (max 50). Requires Security → ASR keywords.
    }
}

config = ConversationInitiationData(
    conversation_config_override=conversation_override
)
conversation = Conversation(
    ...
    config=config,
    ...
)
conversation.start_session()
```

**`JavaScript`**

```javascript title="JavaScript" focus={4-29} maxLines=29
...
const conversation = await Conversation.startSession({
  ...
  overrides: {
      agent: {
          prompt: {
              prompt: `The customer's bank account balance is ${customer_balance}. They are based in ${customer_location}.`, // Optional: override the system prompt.
              llm: "gpt-4o", // Optional: override the LLM model.
              toolIds: [
                  "tool_7101k5zvyjhmfg983brhmhkd98n6"
              ], // Optional: replace the tools available to the agent.
              knowledgeBase: [
                  {
                      type: "file",
                      name: "Unladen Swallow Facts",
                      id: "5xM3yVvZQKV0EfqQpLrJ",
                      usageMode: "auto",
                  }
              ], // Optional: replace the knowledge base available to the agent.
          },
          firstMessage: `Hi ${customer_name}, how can I help you today?`, // Optional: override the first message.
          language: "en" // Optional: override the language.
      },
      tts: {
          voiceId: "custom_voice_id", // Optional: override the voice.
          stability: 0.7, // Optional: override stability (0.0 to 1.0).
          speed: 1.1, // Optional: override speed (0.7 to 1.2).
          similarityBoost: 0.9 // Optional: override similarity boost (0.0 to 1.0).
      },
      conversation: {
          textOnly: true // Optional: enable text-only mode (no audio).
      },
      asr: {
          keywords: ["Acme Corp", "Contoso"] // Optional: boost ASR for per-call terms (max 50). Requires Security → ASR keywords.
      }
  },
  ...
})
```

**`Swift`**

```swift title="Swift" focus={3-16} maxLines=16
import ElevenLabsSDK

let promptOverride = ElevenLabsSDK.AgentPrompt(
    prompt: "The customer's bank account balance is \(customer_balance). They are based in \(customer_location).", // Optional: override the system prompt.
    llm: "gpt-4o" // Optional: override the LLM model.
)
let agentConfig = ElevenLabsSDK.AgentConfig(
    prompt: promptOverride, // Optional: override the system prompt.
    firstMessage: "Hi \(customer_name), how can I help you today?", // Optional: override the first message.
    language: .en // Optional: override the language.
)
let ttsConfig = ElevenLabsSDK.TTSConfig(
    voiceId: "custom_voice_id", // Optional: override the voice.
    stability: 0.7, // Optional: override stability (0.0 to 1.0).
    speed: 1.1, // Optional: override speed (0.7 to 1.2).
    similarityBoost: 0.9 // Optional: override similarity boost (0.0 to 1.0).
)
let conversationConfig = ElevenLabsSDK.ConversationConfig(
    textOnly: true // Optional: enable text-only mode (no audio).
)
let overrides = ElevenLabsSDK.ConversationConfigOverride(
    agent: agentConfig, // Optional: override agent settings.
    tts: ttsConfig, // Optional: override TTS settings.
    conversation: conversationConfig // Optional: override conversation settings.
)

let config = ElevenLabsSDK.SessionConfig(
    agentId: "",
    overrides: overrides
)

let conversation = try await ElevenLabsSDK.Conversation.startSession(
  config: config,
  callbacks: callbacks
)
```

**`Widget`**

```html title="Widget"
  <elevenlabs-convai
    agent-id="agent_7101k5zvyjhmfg983brhmhkd98n6"
    override-language="es"         <!-- Optional: override the language -->
    override-prompt="Custom system prompt for this user"  <!-- Optional: override the system prompt -->
    override-first-message="Hi! How can I help you today?"  <!-- Optional: override the first message -->
    override-voice-id="custom_voice_id"  <!-- Optional: override the voice -->
  ></elevenlabs-convai>
```

> **Note**
>
> När du använder åsidosättningar ska du utelämna fält som du inte vill åsidosätta i stället för att ange dem som tomma strängar eller null-värden. Inkludera endast de fält som du specifikt vill anpassa.

> **Tip**
>
> För att hitta rätt LLM-modellsträng, se [API-referensen för agenter](/docs/sv/api-reference/agents/create#request.body.conversation_config.agent.prompt.llm), som listar alla LLM-modeller som stöds och deras exakta strängidentifierare.