Source: https://ailoot.ai/models/zh-hant-tw/openai-tts-1/
Canonical: https://ailoot.ai/models/zh-hant-tw/openai-tts-1/
Language: zh-hant-tw

# tts-1

[Markdown](https://ailoot.ai/models/zh-hant-tw/openai-tts-1/index.md) · [JSON](https://ailoot.ai/models/zh-hant-tw/openai-tts-1/facts.json)

## [tts-1](https://ailoot.ai/models/zh-hant-tw/openai-tts-1/)

TTS-1 透過可選聲音、播放速度及輸出格式，將準備好的文字轉成語音。OpenAI 將此版本最佳化於較低延遲的語音生成，適合快速朗讀、簡短旁白，以及將已寫好的文稿以串流方式交付。

- [**Ailoot Ultra · 語音合成** `POST /v1/audio/speech` `openai/tts-1`](https://ailoot.ai/models/zh-hant-tw/openai-tts-1/#method-0)

關於模型

此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項，依所選方法列於下方。

TTS-1 是 OpenAI 針對速度最佳化的文字轉語音模型。它接收要說出的詞句並產生音訊，而非轉錄稿或書面答案。製造商範例包括朗讀書面文章、以多種語言產生語音，以及音訊到達時即開始播放。TTS-1 相較於 TTS-1 HD 是較低延遲的選項；HD 模型則著重輸出品質。因此，實用的判斷是此任務更重視迅速播放，還是品質較高的旁白規格。

語音生成工作流程以模型、輸入文字及所選聲音為核心。OpenAI 參考文件將文字輸入限制為 4,096 個字元，這是字元限制，而非 token 上下文視窗。合成前請準備實際文稿：寫出聽眾應聽到的句子、釐清縮寫，並決定名稱、數量及標題的讀法。較長文章應整理為各自能理解的段落，而非將整份長文件視為單次語音請求。

OpenAI 目前針對 TTS-1 的聲音清單是 alloy、ash、coral、echo、fable、onyx、nova、sage 及 shimmer。這些是預製聲音，並非每個較新語音模型的完整聲音集合。聲音針對英語最佳化，但以要朗讀的語言提供輸入，即可支援多語言語音。請使用詞彙與節奏符合最終文稿的代表性段落來選擇聲音。若連貫性重要，請在相關片段維持相同選擇。

音訊可分塊串流，讓播放在整個檔案生成完成前開始。這是由文字產生語音的串流，並非雙向口語對話。文件列出的輸出格式為 MP3、Opus、AAC、FLAC、WAV 及 PCM，預設為 MP3。MP3 與 AAC 提供壓縮音訊；Opus 適合串流與通訊；FLAC 是無損格式。WAV 可避免壓縮音訊解碼，而原始 PCM 包含沒有檔案標頭的 24 kHz、16 位元有號小端序取樣。OpenAI 在優先考量回應時間時，建議使用 WAV 或 PCM。

語音參考文件提供 0.25 至 4.0 的速度設定，預設為 1.0。額外的自然語言 instructions 欄位對 TTS-1 不起作用，此模型也不支援事件式 SSE 輸出。文件列出的控制是文稿、聲音、速度及音訊格式；不應將較新模型的口音、情感或耳語控制加到此版本。準備片段時，應依清晰易懂的需求選速度，再檢查實際朗讀的詞句與停頓，而非假設文稿字元數能決定精確時長。

語言指南包含英語、俄語、烏克蘭語、法語、德語、西班牙語、葡萄牙語、義大利語、阿拉伯語、中文、日語、韓語、印地語、哈薩克語及其他許多語言。語音依循所提供文字的語言。因此，多語言旁白需求說明應從翻譯好的文稿與預定聽眾開始；文字轉語音是表達步驟，而非要求翻譯或改寫的指令。實用公告應準備確切訊息與名稱。教學旁白則要讓將被朗讀的詞句清楚呈現段落邊界及定義。

完成成果可以是簡短口語指示、旁白段落，或較大型編輯作品的音訊片段。請以實際輸出檢查發音、完整性、節奏及所選格式。將文稿與音訊一併保留，讓後續修正能限定於受影響的段落。OpenAI 指南要求清楚告知聽眾該聲音由 AI 生成。這項揭露屬於聆聽體驗；不會將 TTS-1 變成人聲錄音，也不會替模型新增聲音複製控制。

**Ailoot Ultra · 語音合成** `POST /v1/audio/speech` `openai/tts-1`

[`openai/tts-1`](https://ailoot.ai/models/zh-hant-tw/#m=openai%2Ftts-1&route=Ultra&caller=openai%2Ftts-1&fmt=speech)

其他 /`openai/tts-1`

### 入門

TTS-1 透過可選聲音、播放速度及輸出格式，將準備好的文字轉成語音。OpenAI 將此版本最佳化於較低延遲的語音生成，適合快速朗讀、簡短旁白，以及將已寫好的文稿以串流方式交付。

接受的輸入

文字

結果

音訊

### Ailoot 可用 · 輸入與方法

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

輸入

`text`

輸出

`audio`

輸出格式

mp3

| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
| --- | --- | --- | --- | --- |
| 欄位`model` | 類型`string` | 要求必填 | 值與限制 openai/tts-1 | 預設值— |
| 欄位`input` | 類型`string` | 要求必填 | 值與限制 長度下限: 1 長度上限: 4,096 單位: Unicode 字元 | 預設值— |
| 欄位`voice` | 類型`string` | 要求必填 | 值與限制 alloy | 預設值— |

輸入素材組合

**text\_to\_speech** · 必填： input

方法參數與生命週期

| 參數 | 規格 |
| --- | --- |
| 參數`content_type` | 規格application/json |
| 參數`required` | 規格model, input, voice |
| 參數`voice_ids` | 規格alloy |
| 參數`max_input_characters` | 規格4096 |
| 參數`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 費率

#### 各設定的價格

請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。

| 設定 | 費率表 | 應計費數量 | 計費數量 | 計費單位 | 費用 |
| --- | --- | --- | --- | --- | --- |
| 設定基礎 token 費率 | 費率表基本費率 | 應計費數量— | 計費數量— | 計費單位— | 費用 輸入 · 輸入 Token **—** / 1K Token 輸出 · 輸出 Token **—** / 1K Token 輸入 · 讀取快取 **—** / 1K Token 輸入 · 寫入快取 **—** / 1K Token 輸入 · 寫入快取，1 小時 **—** / 1K Token |
| 設定Ultra | 費率表— | 應計費數量每個 Unicode 碼位均計為一個字元，漢字亦同。 | 計費數量— | 計費單位每 1K 個輸入字元 | 費用 輸入 · 輸入字元 **$0.03** 每 1K 個輸入字元 |
| 設定每次請求 | 費率表— | 應計費數量— | 計費數量1 次請求 | 計費單位— | 費用 輸入 **$0** 每次請求 |

Ailoot 會在請求前預留估算金額。取得結果後，依實測用量結算最終費用。串流結算採用最終用量紀錄。[預留金額與結算的運作方式 →](https://ailoot.ai/docs/zh-hant-tw/billing/reserve/)

### 請求範例

#### Ailoot Ultra · 語音合成

curl

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/tts-1", "input": "Good afternoon! This is a short voice take.", "voice": "alloy"}')

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** [`openai/tts-1`](https://ailoot.ai/models/zh-hant-tw/#m=openai%2Ftts-1&route=Ultra&caller=openai%2Ftts-1&fmt=speech)

#### 方法路徑別名

請使用上方列出的 API 方法路徑。

#### 相關呼叫用 ID

[`openai/tts-1`](https://ailoot.ai/models/zh-hant-tw/#m=openai%2Ftts-1&route=Ultra&caller=openai%2Ftts-1&fmt=speech)

FAQ · tts-1

可以使用哪些輸入與結果？

`POST /v1/audio/speech` · `openai/tts-1`: `text` → `audio`

請求使用哪些欄位？

`POST /v1/audio/speech` · `openai/tts-1`: `model`, `input`, `voice`

適用哪些限制？

`POST /v1/audio/speech` · `openai/tts-1`: `input.maximum_length`: `4096`

將 Ailoot 串接 Claude Code、OpenCode、Hermes 或自己的應用程式。

## 公司及其專案組合

公司及其專案組合：數百萬客戶，每月銷售額達數十億。

## 優惠購買 token。

訂閱優惠適合持續工作，折扣碼購買 token 最高可折 50%。

訂閱

為定期請求選擇優惠方案。

最高 50% 折扣碼

購買時輸入代碼，價格依活動重算。

歷史中的費用

每次請求保存模型、token 與金額。

[選擇訂閱](https://ailoot.ai/docs/zh-hant-tw/billing/subscriptions/) · [查看模型價格](https://ailoot.ai/models/zh-hant-tw/)

## 將 API 加入 你銷售的產品。

依 Ailoot 正式服務條款與授權合約串接 SaaS、應用程式與機器人；轉售請申請經銷授權。

商用應用程式

在付費功能加入文字、圖片、影片與聲音生成。

經銷授權

提供專案說明與存取方式，要求書面使用和轉售條件。

網站文件

串接前可閱讀正式服務條款、授權合約與資料處理政策。

[申請經銷授權](mailto:support@ailoot.ai) · [正式服務條款與授權合約](https://ailoot.ai/legal/offer?lang=zh-hant-tw)

## Ailoot · 公司及其專案組合





Ailoot以累積的營運經驗、廣大的客戶群、穩定的服務及持續的KPI管理為基礎。





公司及其專案組合：數百萬客戶，每月銷售額達數十億。





Ailoot將這些營運經驗用於API存取，讓客戶的產品、代理、應用程式及自動化流程使用AI功能。
