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

# 대화 흐름

## 개요

대화 흐름 설정은 사용자 침묵 시간, 발화 중 끼어들기, 턴 전환 방식을 어시스턴트가 처리하는 방식을 결정합니다. 이러한 설정은 더 자연스러운 대화를 만들며 사용 사례에 맞게 맞춤 설정할 수 있습니다.

이 설정은 [Realtime 모델](/docs/ko/eleven-agents/customization/realtime-models)을 사용하는 에이전트에도 적용됩니다.

#### [최대 대화 시간](#maximum-conversation-duration)

각 대화의 총 지속 시간을 제한합니다

#### [침묵 후 턴 전환](#turn-timeout)

침묵이 이어질 때 어시스턴트가 대기하는 시간을 설정합니다

#### [소프트 타임아웃](#soft-timeout)

에이전트가 생각할 시간이 필요할 때 자연스러운 오디오 피드백을 제공합니다

#### [끼어들기](#interruptions)

어시스턴트가 말하는 중 사용자가 끼어들 수 있는지 제어합니다

#### [턴 적극성](#turn-eagerness)

어시스턴트가 사용자 입력에 응답하는 속도를 조정합니다

## 최대 대화 시간

**최대 대화 시간** 설정은 대화를 활성 상태로 유지할 수 있는 총 시간을 제한합니다.
이 전역 제한은 대화가 시작될 때 적용되며 턴 수준의
타임아웃과 별개로 적용됩니다. 기본값은 600초(10분)입니다. 60\~7,200초 사이의 값을 설정할 수 있습니다.

### 설정

CLI 및 API에서는
`conversation_config.conversation.max_duration_seconds` 필드로 이 설정을 구성합니다.

#### 대시보드에서 업데이트

대시보드에서 에이전트를 열고 **고급** 탭으로 이동한 다음 **통화 제한** 아래의 **최대 대화
시간**을 조정하세요. 변경 사항을 저장하세요.

#### CLI에서 업데이트

#### 에이전트 구성 가져오기

```bash
elevenlabs agents pull --agent agent_7101k5zvyjhmfg983brhmhkd98n6
```

#### 에이전트 구성 편집

`conversation_config.conversation.max_duration_seconds`를 설정합니다.

```json
{
  "conversation_config": {
    "conversation": {
      "max_duration_seconds": 1200
    }
  }
}
```

#### 에이전트 구성 푸시

```bash
elevenlabs agents push --agent agent_7101k5zvyjhmfg983brhmhkd98n6
```

#### API에서 업데이트

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "conversation": {"max_duration_seconds": 1200},
    },
)
```

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

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    conversation: { maxDurationSeconds: 1200 },
  },
});
```

> **Warning**
>
> WhatsApp 메시지 대화에는 에이전트의 가장 최근 응답을 기준으로 측정되는 기본 15분 비활성 타임아웃이
> 적용됩니다. 이 타임아웃으로 인해 구성된 최대 지속 시간보다 먼저 메시지 대화가 종료될 수 있습니다.
> 다른 타임아웃이 필요한 사용 사례를 보유한 엔터프라이즈 고객은
> [support@elevenlabs.io](mailto:support@elevenlabs.io)로 지원팀에 문의하세요.

## 침묵 후 턴 전환

**침묵 후 턴 전환** 설정은 사용자 침묵이 이어질 때 어시스턴트가 다음 턴을 진행하고 응답을 요청하기 전에 대기하는 시간을 결정합니다.

### 설정

값은 초 단위로 지정하며 1\~30초 사이여야 합니다. CLI 및 API에서는 `conversation_config.turn.turn_timeout` 필드로 이 설정을 구성합니다.

#### 대시보드에서 업데이트

대시보드에서 에이전트를 열고 **고급** 탭으로 이동한 다음 **침묵 후 턴 전환** 값을 조정하세요. 변경 사항을 저장하세요.

![침묵 후 턴 전환 설정](/docs/_fern-files/_img/9de7653a0940ae3441b3470c2af53f4a72294ad3680946d4c3fa3b91df69c566.webp)

#### CLI에서 업데이트

#### 에이전트 구성 가져오기

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

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

`conversation_config.turn.turn_timeout`을 설정합니다.

```json
{
  "conversation_config": {
    "turn": {
      "turn_timeout": 7
    }
  }
}
```

#### 변경 사항 푸시

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

#### API에서 업데이트

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "turn": {"turn_timeout": 7},
    },
)
```

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

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    turn: { turnTimeout: 7 },
  },
});
```

> **Note**
>
> 사용 사례에 따라 적절한 타임아웃 시간을 선택하세요. 짧은 타임아웃은 대화 반응성을 높이지만, 응답에 더 많은 시간이 필요한 사용자를 방해해
> 대화가 덜 자연스러워질 수 있습니다.

### 모범 사례

* 빠른 대화가 예상되는 일상적인 대화에는 짧은 타임아웃(5\~10초)을 설정하세요
* 사용자가 복잡한 응답을 생각하거나 구성하는 데 더 많은 시간이 필요할 수 있다면 긴 타임아웃(10\~30초)을 사용하세요
* 사용자 맥락을 고려하세요. 고객 서비스에는 짧은 타임아웃이 유용할 수 있지만 기술 지원에는 더 긴 타임아웃이 필요할 수 있습니다

## 소프트 타임아웃

소프트 타임아웃은 LLM이 예상보다 오래 걸려 응답을 생성할 때 즉각적인 오디오 피드백을 제공합니다. 기다리는 동안 어색한 침묵 대신 에이전트가 "음..." 또는 "생각해 볼게요..."와 같은 짧은 필러 문구를 말해 자연스러운 대화 흐름을 유지합니다.

이 기능은 다음과 같은 경우에 유용합니다.

* 더 긴 LLM 처리가 필요한 복잡한 쿼리
* LLM 제공업체의 가변적인 지연 시간 처리
* 자연스러운 생각의 쉼을 통해 더 사람 같은 대화 만들기

### 작동 방식

1. 사용자가 말을 마치면 시스템이 LLM 응답 생성을 시작합니다
2. 구성된 타임아웃 시간을 기준으로 타이머가 시작됩니다
3. LLM 응답이 타임아웃 **전**에 도착하면 필러를 말하지 않습니다
4. LLM이 응답하기 **전**에 타임아웃에 도달하면 다음이 수행됩니다.
   * 구성된 필러 메시지를 즉시 말합니다
   * 에이전트는 실제 응답을 계속 기다립니다
   * 준비가 완료되면 에이전트가 전체 LLM 응답을 말합니다

소프트 타임아웃은 필러가 연속으로 여러 번 나오는 것을 방지하기 위해 턴당 한 번만 실행됩니다.

### 설정

#### 대시보드에서 업데이트

대시보드에서 에이전트를 열고 **고급** 탭으로 이동한 다음 **소프트 타임아웃** 설정을 조정하세요. 변경 사항을 저장하세요.

![소프트 타임아웃 설정](/docs/_fern-files/_img/7fdaca49ad50e6bc1f09f5eac46e36f0f4b071c5477e061a62791df9e100be75.webp)

#### CLI에서 업데이트

#### 에이전트 구성 가져오기

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

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

`conversation_config.turn.soft_timeout_config`를 설정합니다.

```json
{
  "conversation_config": {
    "turn": {
      "soft_timeout_config": {
        "timeout_seconds": 3.0,
        "message": "Hhmmmm...yeah.",
        "use_llm_generated_message": false
      }
    }
  }
}
```

#### 변경 사항 푸시

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

#### API에서 업데이트

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "turn": {
            "soft_timeout_config": {
                "timeout_seconds": 3.0,
                "message": "Hhmmmm...yeah.",
                "use_llm_generated_message": False,
            },
        },
    },
)
```

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

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    turn: {
      softTimeoutConfig: {
        timeoutSeconds: 3.0,
        message: "Hhmmmm...yeah.",
        useLlmGeneratedMessage: false,
      },
    },
  },
});
```

#### 타임아웃 시간

LLM 응답을 기다리는 동안 필러 메시지를 말하기 전까지의 시간(초)입니다.

| 설정      | 설명            |
| ------- | ------------- |
| **기본값** | `-1`(비활성화)    |
| **범위**  | `0.5`\~`8.0`초 |
| **권장값** | `3.0`초        |

> **Tip**
>
> 3.0초부터 시작하세요. 빠른 응답에서 불필요한 필러를 피할 만큼 길고, 어색한 침묵을 방지할 만큼 짧습니다.

#### 정적 메시지

소프트 타임아웃이 실행될 때 말하는 미리 정의된 필러 문구입니다.

| 설정      | 설명                 |
| ------- | ------------------ |
| **기본값** | `"Hhmmmm...yeah."` |
| **길이**  | 1\~200자            |

이 메시지는 다음을 지원합니다.

* **언어 재정의**: 에이전트에 구성된 추가 언어로 자동 번역
* **클라이언트 재정의**: SDK를 통해 통화별로 맞춤 설정 가능

#### LLM 생성 메시지

활성화하면 정적 메시지 대신 경량 LLM을 사용해 맥락에 맞는 필러 문구를 동적으로 생성합니다.

| 설정        | 설명                 |
| --------- | ------------------ |
| **기본값**   | `false`            |
| **대체 항목** | 생성에 실패하면 정적 메시지 사용 |

시스템은 최근 대화 맥락(최대 4개 메시지, 1000자)을 사용하여 "음...", "알겠습니다...", "이해했어요...", "확인했습니다..." 또는 "좋아요..."와 같은 관련 필러를 생성합니다.

> **Note**
>
> LLM 생성 메시지를 사용할 때도 정적 대체 메시지가 필요합니다.

### 모범 사례

* 실제 응답 시간은 예측할 수 없으므로 필러 메시지에 시간 표현(예: "잠시만요...")을 사용하지 마세요
* 응답이 항상 빠른 간단한 FAQ 봇에는 소프트 타임아웃을 비활성화하세요

## 끼어들기

끼어들기 처리는 어시스턴트가 말하는 중 사용자가 끼어들 수 있는지 결정합니다.

### 설정

끼어들기 설정은 에이전트의 **고급** 탭 아래 **클라이언트 이벤트**에서 구성할 수 있습니다.

끼어들기를 활성화하려면 끼어들기가 선택된 클라이언트 이벤트인지 확인하세요.

#### 끼어들기 활성화

![끼어들기 허용됨](/docs/_fern-files/_img/1da794be8ea3bfed45d06241ce5db390480cd45d27c0f886943518bd52d76157.webp)

#### 끼어들기 비활성화

![끼어들기 무시됨](/docs/_fern-files/_img/847a2ebcdfff9498501502ab4b568fc498b6995f860a5552177a7883942197ff.webp)

> **Note**
>
> 법적 고지나 안전 지침처럼 정보를 끝까지 전달하는 것이 중요한 경우에는 끼어들기를 비활성화하세요.

### 끼어들기 모범 사례

* 자연스러운 대화 흐름에서 주고받는 대화가 예상된다면 끼어들기를 활성화하세요
* 메시지 완료가 중요한 경우(예: 이용 약관, 안전 정보)에는 끼어들기를 비활성화하세요
* 사용 사례 맥락을 고려하세요. 고객 서비스에는 끼어들기가 유용할 수 있지만 정보 전달에는 그렇지 않을 수 있습니다

## 턴 적극성

턴 적극성은 대화 중 어시스턴트가 사용자 입력에 응답하는 속도를 제어합니다. 이 설정은 감지된 음성 패턴을 바탕으로 어시스턴트가 턴을 가져와 말을 시작하려는 적극성을 결정합니다.

### 작동 방식

어시스턴트에는 더 자연스러운 턴 전환을 위한 두 가지 주요 개선 사항이 포함되어 있습니다.

1. **더 빠른 응답 생성** - 어시스턴트는 완전한 문장을 기다리지 않고 언어 모델에서 충분한 단어와 쉼표를 받으면 말하기 시작합니다. 이를 통해 지연 시간이 줄어들고, 특히 어시스턴트의 응답이 긴 경우 더 반응성 높은 대화를 만들 수 있습니다.

2. **구성 가능한 턴 적극성** - 어시스턴트가 멈춤이나 음성 패턴을 응답 기회로 해석하는 속도를 제어합니다.

### 설정

세 가지 모드를 사용할 수 있습니다.

* **적극적** - 어시스턴트가 가장 이른 기회에 빠르게 사용자 입력에 응답합니다. 즉각적인 응답이 중요한 빠른 템포의 대화에 적합합니다.
* **보통** - 대부분의 대화 상황에 잘 맞는 균형 잡힌 턴 전환입니다. 어시스턴트는 자연스러운 대화의 틈이 생긴 후 응답합니다.
* **여유 있음** - 어시스턴트가 턴을 가져오기 전에 더 오래 기다려 사용자가 생각을 마칠 시간을 더 줍니다. 상세 정보를 수집하거나 사용자가 응답을 구성할 시간이 필요한 경우에 적합합니다.

#### 대시보드에서 업데이트

대시보드에서 에이전트를 열고 **에이전트** 설정으로 이동한 다음 원하는 턴 적극성 모드를 선택하세요. 변경 사항을 저장하세요.

#### CLI에서 업데이트

#### 에이전트 구성 가져오기

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

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

`conversation_config.turn.turn_eagerness`를 `"patient"`, `"normal"`, `"eager"` 중 하나로 설정합니다.

```json
{
  "conversation_config": {
    "turn": {
      "turn_eagerness": "normal"
    }
  }
}
```

#### 변경 사항 푸시

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

#### API에서 업데이트

```python
from elevenlabs import ElevenLabs

elevenlabs = ElevenLabs()

elevenlabs.conversational_ai.agents.update(
    agent_id="agent_7101k5zvyjhmfg983brhmhkd98n6",
    conversation_config={
        "turn": {"turn_eagerness": "normal"},
    },
)
```

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

const elevenlabs = new ElevenLabsClient();

await elevenlabs.conversationalAi.agents.update("agent_7101k5zvyjhmfg983brhmhkd98n6", {
  conversationConfig: {
    turn: { turnEagerness: "normal" },
  },
});
```

> **Note**
>
> 턴 적극성은 워크플로와 함께 사용할 때 특히 강력합니다. 맥락에 따라 어시스턴트의 반응성을 동적으로 조정하여 일상적인 대화에서는 더 빠르게 끼어들게 하거나,
> 전화번호나 이메일 주소 같은 민감한 정보를 수집할 때는 더 오래 기다리게 할 수 있습니다.

### 턴 적극성 모범 사례

* 빠른 응답이 사용자 경험을 향상하는 고객 서비스 상황에는 **적극적** 모드를 사용하세요
* 전화번호, 주소 또는 이메일 주소와 같은 구조화된 정보를 수집할 때는 **여유 있음** 모드를 사용하세요
* 일반적인 대화 흐름의 기본값으로는 **보통** 모드를 사용하세요
* 워크플로와 결합하여 대화 맥락에 따라 턴 적극성을 동적으로 조정하세요
* 특정 사용 사례에 맞는 최적의 균형을 찾기 위해 다양한 설정을 테스트하세요

## 권장 구성

#### 고객 서비스

* 반응성 높은 상호작용을 위한 짧은 타임아웃(5\~10초) - 고객이 질문으로 끼어들 수 있도록 끼어들기 활성화 - 빠르고 반응성 높은
  대화를 위한 **적극적** 턴 적극성

#### 정보 수집

* 사용자가 정보를 수집할 시간을 주는 중간 길이 타임아웃(10\~15초) - 자연스러운 대화 흐름을 위한 끼어들기
  활성화 - 전화번호, 주소 또는 이메일 주소 수집 시 **여유 있음** 턴 적극성

#### 법적 고지

* 복잡한 응답을 허용하는 긴 타임아웃(15\~30초) - 법적 정보를 완전하게 전달하기 위한 끼어들기
  비활성화 - 일정한 속도를 유지하는 **보통** 턴 적극성

#### 대화형 에듀테크

* 생각하고 응답을 구성할 시간을 주는 긴 타임아웃(10\~30초) - 학생이 질문으로 끼어들 수 있도록 끼어들기
  활성화 - 학생에게 충분한 응답 시간을 제공하는 **여유 있음** 턴 적극성