> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Fish Model Create API 接続説明

> Fish voice generation API guide - Ace Data Cloud

本インターフェースは [Fish Audio 公式 Model API](https://docs.fish.audio/resources/api-reference/model) に基づいており、**音声サンプルに基づいて長期間再利用可能なクローン音声モデルを作成する**ために使用されます。アドレスは `POST https://api.acedata.cloud/fish/model` です。

> 一時的に参照音声を使用する場合は、モデルを作成する必要はなく、直接 [Fish TTS API](https://platform.acedata.cloud/documents/fish-tts) の `references` を使用して即時クローンできます。既存の音色をページング検索するには [Fish Model Query API](https://platform.acedata.cloud/documents/fish-model-query) を参照してください； `_id` で単一の音色詳細を照会するには [Fish Model Get API](https://platform.acedata.cloud/documents/fish-model-get) を参照してください。

## 申請プロセス

Fish Model API を使用するには、まず [Ace Data Cloud コンソール](https://platform.acedata.cloud/console/applications) で API トークンを取得し、保管してください。

![](https://cdn.acedata.cloud/dvc3cg.jpg)

まだログインまたは登録していない場合は、自動的にログインページにリダイレクトされ、登録とログインを促されます。完了後、現在のページに自動的に戻ります。

**1つの API トークンでプラットフォームのすべてのサービスを呼び出すことができ、各サービスごとに個別に申請する必要はありません。** 初回申請時には無料枠が付与され、無料で体験できます；枠が不足した場合は [コンソール](https://platform.acedata.cloud/console/coin) で共通残高をチャージできます。

> 📘 完全なドキュメント：[Fish Model API →](https://platform.acedata.cloud/services/fish)

## リクエストボディフィールド

| フィールド | タイプ | 必須 | 説明 |
| - | - | - | - |
| `title` | string | はい | 音色名、コンソールリストで識別するために使用されます。 |
| `voices` | string | はい | 音声サンプルの HTTP(S) URL（**単一の文字列**、配列ではありません）。このインターフェースは multipart/バイナリアップロードをサポートしていないため、音声を任意の公開アクセス可能なオブジェクトストレージに置いてください。 |
| `description` | string | いいえ | 音色の説明。 |
| `cover_image` | string | いいえ | カバー画像の HTTP(S) URL。 |
| `tags` | string\[] | いいえ | 公共ライブラリ検索タグ、例えば `["male","narration","zh"]`。 |
| `texts` | string\[] | いいえ | サンプルに対応する参照テキスト（発音を修正するために使用）。 |
| `enhance_audio_quality` | boolean | いいえ | トレーニング前にサンプルの音質を向上させるかどうか。 |
| `generate_sample` | boolean | いいえ | トレーニング完了後に自動的にサンプル音声を生成するかどうか。 |

> フィールドは上流と完全に一致しており、[Fish 公式ドキュメント](https://docs.fish.audio/resources/api-reference/model) を参照してください。

## 例：プライベートクローン音色を作成する

```shell theme={null}
curl -X POST 'https://api.acedata.cloud/fish/model' \
  -H 'authorization: Bearer {token}' \
  -H 'content-type: application/json' \
  -d '{
    "title": "私のクローン音色",
    "description": "ポッドキャストの録音を使用してクローンした中国語音色",
    "voices": "https://example.com/sample-voice.mp3",
    "cover_image": "https://cdn.acedata.cloud/e724d7f13d.png"
  }'
```

> 注意：`voices` は**文字列**（単一の音声 URL）でなければならず、配列ではありません。`["..."]` として送信すると上流で拒否されます。

成功した応答は、Fish プラットフォームの ModelEntity オブジェクトを直接返します（以下は私たちがテストした最小限の使用可能な音色で、読みやすさのために一部の長いフィールドを削除しています）：

```json theme={null}
{
  "_id": "e5c6db52c3ed417f9cb2e5a33fb04667",
  "type": "tts",
  "title": "copilot-smoke-test",
  "description": "api.acedata.cloud からのスモークテスト",
  "cover_image": "coverimage/e5c6db52c3ed417f9cb2e5a33fb04667",
  "train_mode": "fast",
  "state": "trained",
  "tags": [],
  "samples": [
    {
      "title": "デフォルトサンプル",
      "text": "師父、[語気を強めて]私は本当にこの山の冷たい日々にうんざりしています！...",
      "task_id": "6a1bf398dfae49dca0e23159214342a0",
      "audio": "https://platform.r2.fish.audio/task/6a1bf398dfae49dca0e23159214342a0.mp3"
    }
  ],
  "created_at": "2026-05-10T03:52:55.601000Z",
  "updated_at": "2026-05-10T03:52:55.601000Z",
  "languages": ["zh"],
  "visibility": "public",
  "default_text": "師父、[語気を強めて]私は本当にこの山の冷たい日々にうんざりしています！...",
  "like_count": 0,
  "mark_count": 0,
  "shared_count": 0,
  "task_count": 0,
  "author": {
    "_id": "780f2b2f862d41a08c0507bbbda77eb6",
    "nickname": "ペニー・コンラッド",
    "avatar": "avatars/780f2b2f862d41a08c0507bbbda77eb6.jpg"
  }
}
```

`_id` は、後続の [Fish TTS API](https://platform.acedata.cloud/documents/fish-tts) の `reference_id` フィールドの値として使用でき、このクローン音色を使用して音声合成を行います：

```shell theme={null}
curl -X POST 'https://api.acedata.cloud/fish/tts' \
  -H 'authorization: Bearer {token}' \
  -H 'content-type: application/json' \
  -d '{
    "text": "こんにちは、これは私が作成したクローン音色で合成された音声です。",
    "reference_id": "e5c6db52c3ed417f9cb2e5a33fb04667",
    "format": "mp3"
  }'
```

## サンプル要件

経験則（上流と一致、[Fish 公式ドキュメント](https://docs.fish.audio/resources/api-reference/model) を参照）：

* 推奨の長さは30秒以上、5分以内が最適；10分を超えると限界利益はあまり大きくありません。
* サンプリングレートは16 kHz以上、モノラルまたはステレオのいずれでも可。
* 内容はできるだけクリーンに：バックグラウンドミュージック、エコー、明らかな環境ノイズはなし；同一の話者。
* フォーマットは `mp3` / `wav` を推奨。

サンプルの品質に自信がない場合は、同時に `enhance_audio_quality: true` を送信して上流に音質向上を行わせることができます。

## 課金説明

音色クローンモデルの作成（`POST /fish/model`）は無料で、料金は発生しません；音色の照会インターフェース（[Fish Model Query](https://platform.acedata.cloud/documents/fish-model-query)、[Fish Model Get](https://platform.acedata.cloud/documents/fish-model-get)）も同様に料金は発生しません。料金は、後続の [Fish TTS](https://platform.acedata.cloud/documents/fish-tts) で音声合成を行う際に使用量に応じて発生します。

## エラーハンドリング

* `400 token_mismatched`：リクエストパラメータが欠落しているか不正です（最も一般的なのは `voices` が URL でないか、配列として渡されていることです）。
* `401 invalid_token`：認証トークンが存在しないか無効です。
* `429 too_many_requests`：アカウントのレート制限が発動しました。
* `500 api_error`：サーバー内部エラーです。

エラー応答の例：

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "voices is required and must be an HTTP(S) URL pointing to an audio file"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## 結論

このインターフェースを呼び出すには、公開アクセス可能なサンプル音声の URL を準備し、それを `voices` フィールドに入れるだけで `_id` を取得できます。その後、`/fish/tts` の `reference_id` に渡せば、エンドツーエンドの「クローン → 合成」が完了します。一般的な落とし穴は、`voices` が文字列でなければならず、配列であってはならないことです。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.