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

# テキストtoダイアログ クイックスタート

このガイドでは、テキストtoダイアログAPIを使用して、テキストから没入感があり自然に聞こえる対話を生成する方法を説明します。

> **Warning**
>
> 安定した生成のため、リクエストごとのすべての`inputs[].text`値の合計文字数は
> 2,000文字以下にしてください。長いスクリプトはチャンクに分割し、クライアント側でオーディオを結合してください。

## テキストtoダイアログAPIを使用する

#### APIキーを作成する

[ダッシュボードでAPIキーを作成](https://elevenlabs.io/app/settings/api-keys)し、安全に[APIへアクセス](/docs/ja/api-reference/authentication)するために使用します。

キーは管理されたシークレットとして保存し、好みに応じて`.env`ファイルによる環境変数として、またはアプリの設定で直接SDKに渡してください。

**`.env`**

```js title=".env"
ELEVENLABS_API_KEY=<your_api_key_here>
```

#### SDKをインストールする

#### SDK

`dotenv`ライブラリも使用して、環境変数からAPIキーを読み込みます。

```python
pip install elevenlabs
pip install python-dotenv
```

```typescript
npm install @elevenlabs/elevenlabs-js
npm install dotenv
```

#### CLI

ElevenLabs CLIをインストールします。Homebrew（macOS）とScoop（Windows）を推奨します。

**`Homebrew (macOS)`**

```bash title="Homebrew (macOS)"
brew install elevenlabs/tap/elevenlabs
```

**`Scoop (Windows)`**

```powershell title="Scoop (Windows)"
scoop bucket add elevenlabs https://github.com/elevenlabs/scoop-bucket
scoop install elevenlabs
```

**`npm`**

```bash title="npm"
npm install -g @elevenlabs/cli
```

**`curl`**

```bash title="curl"
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elevenlabs/cli/releases/latest/download/elevenlabs-cli-installer.sh | sh
```

> **Tip**
>
> AIコーディングアシスタントを使っていますか？プロジェクトで`elevenlabs generate-skills`を実行すると、各コマンドグループ用の
> `SKILL.md`が`skills/`に作成されます。これにより、ドキュメントを貼り付けなくても、アシスタントがCLIのすべての機能を把握できます。
> 別の場所に配置するには`--output-dir`を使ってください。CLIに組み込まれたAPI定義を読み取るため、APIキーは不要で、オフラインでも動作します。また、
> インストールしているCLIのバージョンに常に対応します。

次に認証します。ブラウザが開き、CLIを承認できます。

```bash
elevenlabs auth login
```

#### APIリクエストを送信する

#### SDK

使用する言語に応じて、`example.py`または`example.mts`という新しいファイルを作成し、次のコードを追加します。
各`text`値にオーディオタグを追加して、その話者の話し方を指定します。`voice_id`は、
同じ入力項目の話者の音声を選択します。

```python focus={12-21} maxLines=0
# example.py
import os

from dotenv import load_dotenv
from elevenlabs.client import ElevenLabs
from elevenlabs.play import play

load_dotenv()

elevenlabs = ElevenLabs(
  api_key=os.getenv("ELEVENLABS_API_KEY"),
)

audio = elevenlabs.text_to_dialogue.convert(
    inputs=[
        {
            "text": "[cheerfully] Hello, how are you?",
            "voice_id": "9BWtsMINqrJLrRacOk9x",
        },
        {
            "text": "[stuttering] I'm... I'm doing well, thank you.",
            "voice_id": "IKne3meq5aSn9XLyUdCD",
        }
    ]
)

play(audio)
```

```typescript focus={7-17} maxLines=0
// example.mts
import { ElevenLabsClient, play } from "@elevenlabs/elevenlabs-js";
import "dotenv/config";

const elevenlabs = new ElevenLabsClient();

const audio = await elevenlabs.textToDialogue.convert({
    inputs: [
        {
            text: "[cheerfully] Hello, how are you?",
            voiceId: "9BWtsMINqrJLrRacOk9x",
        },
        {
            text: "[stuttering] I'm... I'm doing well, thank you.",
            voiceId: "IKne3meq5aSn9XLyUdCD",
        },
    ],
});

play(audio);
```

次に実行します。

```python
python example.py
```

```typescript
npx tsx example.mts
```

対話のオーディオが再生されます。

#### CLI

対話の入力をJSON配列として渡し、オーディオをファイルに保存します。

```bash
elevenlabs text-to-dialogue convert \
  --output dialogue.mp3 \
  --inputs '[
    { "text": "[cheerfully] Hello, how are you?", "voice_id": "9BWtsMINqrJLrRacOk9x" },
    { "text": "[stuttering] I... I am doing well, thank you.", "voice_id": "IKne3meq5aSn9XLyUdCD" }
  ]'
```

`dialogue.mp3`を開いて結果を確認します。

## WebSocketストリーミング

**Eleven v3**モデルで長時間接続を介して対話を段階的に生成するには、[リアルタイム テキストtoダイアログ](/docs/ja/eleven-api/guides/how-to/websockets/realtime-tdd)を参照してください。このWebSocketと標準TTS WebSocketを比較するには、[テキスト読み上げとテキストtoダイアログのWebSocketの比較](/docs/ja/eleven-api/guides/how-to/websockets/tts-vs-ttd-websockets)を参照してください。

## 次のステップ

#### [音声を探す](https://elevenlabs.io/app/voice-library)

10,000以上の音声から、対話の各話者に割り当てる音声を探せます

#### [テキスト読み上げ](/docs/ja/eleven-api/guides/cookbooks/text-to-speech)

テキスト読み上げAPIを使用して、単一の音声でテキストから音声を生成します

#### [APIリファレンス](/docs/ja/api-reference/text-to-dialogue/convert)

すべてのテキストtoダイアログのパラメータとレスポンス形式を確認します