Source: https://ailoot.ai/models/ja/hexgrad-kokoro-82m/
Canonical: https://ailoot.ai/models/ja/hexgrad-kokoro-82m/
Language: ja

# hexgrad: Kokoro 82M

[Markdown](https://ailoot.ai/models/ja/hexgrad-kokoro-82m/index.md) · [JSON](https://ailoot.ai/models/ja/hexgrad-kokoro-82m/facts.json)

## [hexgrad: Kokoro 82M](https://ailoot.ai/models/ja/hexgrad-kokoro-82m/)

hexgrad の Kokoro 82M は、8,200 万パラメータのコンパクトなモデルと言語別のプリセット音声で音声を生成します。文書化された v1.0 の仕様は、8 言語、54 種類の声、24 kHz の音声出力を含みます。

- [**Ailoot Ultra · 音声合成** `POST /v1/audio/speech` `hexgrad/kokoro-82m`](https://ailoot.ai/models/ja/hexgrad-kokoro-82m/#method-0)

モデルについて

この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。

Kokoro 82M は、8,200 万パラメータを持つ hexgrad のオープンウェイトのテキスト読み上げモデルです。モデルカードは、StyleTTS 2 と iSTFTNet に基づくコンパクトなデコーダーのみのアーキテクチャを説明しています。書かれた文字を発音情報に変換し、その後、選択した声で音声にします。文書化された v1.0 リリースは 8 言語にわたる 54 種類の声を提供します。この仕様は、英語専用だった以前の v0.19 リリースとは異なります。

#### 言語に合う声を選ぶ

音声カタログは、米国英語、英国英語、日本語、標準中国語、スペイン語、フランス語、ヒンディー語、イタリア語、ブラジルポルトガル語を扱います。英語の 2 つのアクセントは同じ言語の変種です。音声名と言語設定は組み合わせて使います。公式ワークフローでは af\_heart が米国英語の例で、ほかの言語やアクセントには別のグループがあります。

実際に読む素材に合わせて話者を選んでください。短い講座のナレーションなら、各区間で同じプリセット音声を使えます。多言語の素材集なら、必要な言語グループごとに声を選べます。カタログの選択肢はグループによって異なります。例えばフランス語は掲載音声が 1 つで、英語のような多数の選択肢はありません。

#### 発音と段落を準備する

Kokoro の参照パイプラインは、表記を音素に変換します。例では用語の音声学的な読みを明示でき、難しい名前も曖昧な綴りに任せず準備できます。前後の文を自然に保ち、リスナーが聞くべき言葉を維持してください。

例えば、「このガイドは 3 つの部分からなります。まず、素材を選びます。次に、例を比較します。最後に、使いたい版を保存します」という段落です。完結した句を書き、句読点が示す間を保ってください。長い作品では、文書全体を途切れない 1 発話と見なさず、まとまりのある段落に入力を整理します。

音声ガイドによると、多くの話者は約 500 トークンの範囲内で、100～200 トークン程度の段落に最もよく対応します。ごく短い発話、特に 10～20 トークン未満では弱点があり、長い段落、特に 400 トークンを超えると急いで話す傾向があると記されています。これはトークン数に基づく準備上の観察で、単語数や録音時間の制限ではありません。短い断片をまとめたり長い段落を分割したりすると、より適した発話単位にできます。

#### 音声出力と速さ

公式ワークフローは、生成区間ごとに処理済み文字、音素、音声結果を返します。区間を 24,000 Hz の WAV として保存し、参照パイプラインで速度設定を提供します。組み立てたナレーションが意図した原稿に沿うよう、区間の文字と順番を音声に関連付けて保管してください。

編集時には、2 つの段落の境界をまたいで試聴し、その後、繰り返し登場する名前や一覧を読む速度を確認すると役立ちます。音声出力と音素表示は異なる目的を持ちます。前者はリスナーが聞く録音で、後者は書かれた文字がどう発音されるかを確認するためのものです。

#### 言語の対応範囲と実用上の限界

メーカーは、発音処理や音声学習データが限られるため、英語以外の対応が手薄な場合があると明記しています。そのため、プリセット音声の各グループを、すべての段落で同等の話し方を保証するものとして扱わないでください。適切な話者を選び、作業で必要な実際の名前や言い回しを確認します。

実用的な成果物は、文書化されたプリセット音声を使った発話段落や組み立て済みナレーションで、発音と段落長の要件に合わせて文字を準備したものです。このモデル情報はメーカーの v1.0 Kokoro 82M 資料に従います。別のチェックポイント、量子化した実装、外部で変更した声には、それぞれ独自の技術的範囲があります。

**Ailoot Ultra · 音声合成** `POST /v1/audio/speech` `hexgrad/kokoro-82m`

[`hexgrad/kokoro-82m`](https://ailoot.ai/models/ja/#m=hexgrad%2Fkokoro-82m&route=Ultra&caller=hexgrad%2Fkokoro-82m&fmt=speech)

hexgrad /`hexgrad/kokoro-82m`

### はじめに

hexgrad の Kokoro 82M は、8,200 万パラメータのコンパクトなモデルと言語別のプリセット音声で音声を生成します。文書化された v1.0 の仕様は、8 言語、54 種類の声、24 kHz の音声出力を含みます。

対応する入力

テキスト

結果

音声

### Ailootで利用可能 · 入力とメソッド

**Ailoot Ultra · 音声合成** `POST /v1/audio/speech`

入力の種類

`text`

出力の種類

`audio`

出力形式

mp3

| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
| --- | --- | --- | --- | --- |
| フィールド`model` | 種類`string` | 要件必須 | 値と制限 hexgrad/kokoro-82m | デフォルト— |
| フィールド`input` | 種類`string` | 要件必須 | 値と制限 最小の長さ: 1 単位: Unicode 文字 | デフォルト— |
| フィールド`voice` | 種類`string` | 要件必須 | 値と制限 af\_alloy, af\_aoede, af\_bella, af\_heart, af\_jessica, af\_kore, af\_nicole, af\_nova, af\_river, af\_sarah, af\_sky, am\_adam, am\_echo, am\_eric, am\_fenrir, am\_liam, am\_michael, am\_onyx, am\_puck, am\_santa, bf\_alice, bf\_emma, bf\_isabella, bf\_lily, bm\_daniel, bm\_fable, bm\_george, bm\_lewis, ef\_dora, em\_alex, em\_santa, ff\_siwis, hf\_alpha, hf\_beta, hm\_omega, hm\_psi, if\_sara, im\_nicola, jf\_alpha, jf\_gongitsune, jf\_nezumi, jf\_tebukuro, jm\_kumo, pf\_dora, pm\_alex, pm\_santa, zf\_xiaobei, zf\_xiaoni, zf\_xiaoxiao, zf\_xiaoyi, zm\_yunjian, zm\_yunxi, zm\_yunxia, zm\_yunyang | デフォルト— |
| フィールド`response_format` | 種類`string` | 要件必須 | 値と制限 mp3 | デフォルト— |

入力素材の組み合わせ

**text\_to\_speech** · 必須: input

メソッドのパラメータとライフサイクル

| パラメータ | 仕様 |
| --- | --- |
| パラメータ`content_type` | 仕様application/json |
| パラメータ`required` | 仕様model, input, voice, response\_format |
| パラメータ`voice_ids` | 仕様af\_alloy, af\_aoede, af\_bella, af\_heart, af\_jessica, af\_kore, af\_nicole, af\_nova, af\_river, af\_sarah, af\_sky, am\_adam, am\_echo, am\_eric, am\_fenrir, am\_liam, am\_michael, am\_onyx, am\_puck, am\_santa, bf\_alice, bf\_emma, bf\_isabella, bf\_lily, bm\_daniel, bm\_fable, bm\_george, bm\_lewis, ef\_dora, em\_alex, em\_santa, ff\_siwis, hf\_alpha, hf\_beta, hm\_omega, hm\_psi, if\_sara, im\_nicola, jf\_alpha, jf\_gongitsune, jf\_nezumi, jf\_tebukuro, jm\_kumo, pf\_dora, pm\_alex, pm\_santa, zf\_xiaobei, zf\_xiaoni, zf\_xiaoxiao, zf\_xiaoyi, zm\_yunjian, zm\_yunxi, zm\_yunxia, zm\_yunyang |
| パラメータ`response_format` | 仕様mp3 |
| パラメータ`max_input_characters` | 仕様null |
| パラメータ`other_options` | 仕様false |
| パラメータ`input` | 仕様正確なUTF-8テキスト。正規化せずにUnicode文字数を数えます |
| パラメータ`material_types` | 仕様text |

ライフサイクル: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · 実際に返された task\_id またはメディアライブラリのレコード

`GET /v1/media/assets/{asset_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

このモデルのプロファイルから、使用する音声を正確に選択してください。

入力文字数と音声の秒数は、別の計測単位です。

### 料金

料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。

高速モード

未指定 高速モードが選択されている場合

Flex モード

未指定 flex モードが選択されている場合

最大推論量

未指定 推論量が最大で、調整に既定値（default）を使用する場合

#### Ailootの料金

#### 設定別の価格

各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。

| 設定 | 料金表 | 課金対象の数量 | 課金単位 | 料金 |
| --- | --- | --- | --- | --- |
| 設定基本トークン料金 | 料金表基本料金 | 課金対象の数量— | 課金単位— | 料金 入力 · 入力トークン **—** / 1K トークン 出力 · 出力トークン **—** / 1K トークン 入力 · キャッシュ読み取り **—** / 1K トークン 入力 · キャッシュ書き込み **—** / 1K トークン 入力 · キャッシュ書き込み、1時間 **—** / 1K トークン |
| 設定Ultra | 料金表— | 課金対象の数量漢字を含め、Unicodeコードポイント1つを1文字として数えます。 | 課金単位1K入力文字あたり | 料金 入力 · 入力文字 **$0.008** 1K入力文字あたり |

#### 参考料金の詳細

モデル単位の参照料金表は、メソッド選択、見積もり、課金を変更しません。実際の課金には、選択したAilootメソッドの料金を適用します。

hexgrad: Kokoro 82M

#### 設定別の価格

| 設定 | 課金条件 | 料金 |
| --- | --- | --- |
| 設定hexgrad: Kokoro 82M · 標準設定 | 課金条件デフォルト設定 | 料金 入力 · 入力文字数 **$0.00000124** 入力文字あたり |

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。[金額の確保と精算の仕組み →](https://ailoot.ai/docs/ja/billing/reserve/)

### リクエスト例

#### Ailoot Ultra · 音声合成

curl

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "hexgrad/kokoro-82m", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["af_alloy", "af_aoede", "af_bella", "af_heart", "af_jessica", "af_kore", "af_nicole", "af_nova", "af_river", "af_sarah", "af_sky", "am_adam", "am_echo", "am_eric", "am_fenrir", "am_liam", "am_michael", "am_onyx", "am_puck", "am_santa", "bf_alice", "bf_emma", "bf_isabella", "bf_lily", "bm_daniel", "bm_fable", "bm_george", "bm_lewis", "ef_dora", "em_alex", "em_santa", "ff_siwis", "hf_alpha", "hf_beta", "hm_omega", "hm_psi", "if_sara", "im_nicola", "jf_alpha", "jf_gongitsune", "jf_nezumi", "jf_tebukuro", "jm_kumo", "pf_dora", "pm_alex", "pm_santa", "zf_xiaobei", "zf_xiaoni", "zf_xiaoxiao", "zf_xiaoyi", "zm_yunjian", "zm_yunxi", "zm_yunxia", "zm_yunyang"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o speech.mp3
```

### 結果を受け取って保存

#### Ailoot Ultra · 音声合成

mp3

- `GET /v1/media/tasks/{task_id}`
- `GET /v1/media/assets/{asset_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

その他のコンテンツ取得

メディアライブラリタスクのステータスアセットの詳細

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
```

##### 完了した結果をすべて保存

返された完全なレスポンス、ファイル、コンテンツ部分をすべて保存してください。

バイナリ結果の全体とヘッダーを保存してください。JSON または複数の出力が返された場合は、すべてのデータ項目を保存し、実際に返された署名付きアセット URL から各アセットを取得してください。

##### 元のレスポンスを確認する場合

再送せずに照合できるよう、元の operation\_id/X-Client-Request-ID を保存してください。音声専用のポーリングルートはありません。

レスポンスのフィールド

| フィールド | 種類 |
| --- | --- |
| フィールド`binary audio` | 種類bytes |
| フィールド`response headers` | 種類headers |

エラーと次の手順

| レスポンス | 条件 | 次の手順 |
| --- | --- | --- |
| レスポンス400 · `invalid_request_error` | 条件必須フィールド、素材の表現形式、またはパラメーター値が不正です | 次の手順新しい生成リクエストを送る前に、指定されたフィールドを修正してください。 |
| レスポンス`server_error` | 条件返されたレスポンスは、操作または結果の確認が必要であることを示しています | 次の手順最初に返された操作／タスク ID、リクエストヘッダー、レスポンスを保存し、その元の操作に対してサポートされている読み取りを継続してください。作成リクエストを再送しないでください。 |

### エイリアス

#### モデルのエイリアス

**Ailoot Ultra** [`hexgrad/kokoro-82m`](https://ailoot.ai/models/ja/#m=hexgrad%2Fkokoro-82m&route=Ultra&caller=hexgrad%2Fkokoro-82m&fmt=speech)

#### メソッドパスのエイリアス

上記に表示されたメソッドパスを使用してください。

#### 関連する呼び出し用ID

[`hexgrad/kokoro-82m`](https://ailoot.ai/models/ja/#m=hexgrad%2Fkokoro-82m&route=Ultra&caller=hexgrad%2Fkokoro-82m&fmt=speech)

FAQ · hexgrad: Kokoro 82M

利用できる入力と結果は何ですか？

`POST /v1/audio/speech` · `hexgrad/kokoro-82m`: `text` → `audio`

リクエストはどの項目を使用しますか？

`POST /v1/audio/speech` · `hexgrad/kokoro-82m`: `model`, `input`, `voice`, `response_format`

AilootをClaude Code、OpenCode、Hermes、自分のアプリに接続しましょう。

## 企業とそのプロジェクト群

企業とそのプロジェクト群：数百万の顧客、毎月数十億規模の売上。

## トークンを割引価格で購入。

継続利用にサブスクリプション割引。プロモコードでトークン購入が最大50%割引。

サブスクリプション

定期的なリクエストに合う割引プランを選びましょう。

最大50%のプロモコード

購入時にコードを入力すると、実施中のキャンペーンに沿って価格を再計算します。

支出を履歴で確認

各リクエストのモデル、トークン、金額が保存されます。

[サブスクリプションを選ぶ](https://ailoot.ai/docs/ja/billing/subscriptions/) · [モデルの価格を見る](https://ailoot.ai/models/ja/)

## 販売する製品に、 APIを組み込みましょう。

SaaS、アプリ、ボットをAilootの公式サービス提供条件とライセンス契約に基づいて接続できます。再販にはリセラーライセンスを申請できます。

商用アプリ

サービスの有料機能に、文章、画像、動画、音声の生成を組み込めます。

リセラーライセンス

プロジェクトの説明とアクセスの仕組みをお送りください。利用・再販条件の書面を申請できます。

サイトで契約文書を確認

接続前にサービス提供条件、ライセンス契約、データ処理ポリシーを読めます。

[リセラーライセンスを申請](mailto:support@ailoot.ai) · [サービス提供条件とライセンス契約](https://ailoot.ai/legal/offer?lang=ja)

## Ailoot · 企業とそのプロジェクト群





Ailootは、蓄積した運営経験、幅広い顧客基盤、安定したサービス、継続的なKPI管理を基盤としています。





企業とそのプロジェクト群：数百万の顧客、毎月数十億規模の売上。





Ailootはこの運営経験を、お客様の製品、エージェント、アプリケーション、自動化でAI機能を利用するためのAPIアクセスに活かしています。
