Google TTS Chirp 3 HD vs Google TTS Neural2
いつ、どちらを使うべきか — ベンチマーク表ではなく、厳選された評価
google-tts-neural2 は 1.9 分の 1(100万文字あたり $16 対 $30)で SSML を正式にサポートします。google-tts-chirp3-hd は SSML をプレビュー扱いです。ただし neural2 はストリーミングできず、公開ロケールもはるかに短く、名前付き音声 id を持つのは 17 ロケールです。どちらも 1 リクエスト 5000 バイトを受け付け、数値パラメータによる音声制御を備えます。対応ロケール内で SSML 主導のバッチ処理なら google-tts-neural2、ストリーミングとロケールの広さなら google-tts-chirp3-hd を選んでください。
料金
| Google TTS Chirp 3 HD | Google TTS Neural2 | Δ | |
|---|---|---|---|
| 1M文字あたり | $30 | $16 | 1.9× |
ビルド時のライブカタログの料金です。各モデルのページには現在の料金カードが記載されています。
位置付け — この課金単位におけるすべての7個のテキスト音声変換モデル全体の1M文字あたりの料金 (対数スケール)
機能
| Google TTS Chirp 3 HD | Google TTS Neural2 | |
|---|---|---|
| ストリーミング | あり | なし |
| SSML | preview | supported |
| 課金単位 | character | character |
仕様
| Google TTS Chirp 3 HD | Google TTS Neural2 | |
|---|---|---|
| 入力モダリティ | テキスト | テキスト |
| 出力モダリティ | 音声 | 音声 |
| リクエスト制限 | 5000 bytes | 5000 bytes |
| ボイス | Voices are named after stars and published with a gender: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Pulcherrima, Puck, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr and Zubenelgenubi. A locale prefix forms the id, e.g. en-US-Chirp3-HD-Charon. Google describes the set as 30 distinct styles across many languages. | Voice ids follow the locale-plus-letter pattern (en-US-Neural2-F, ja-JP-Neural2-B). Google's comparison table lists Neural2 as general purpose, generally available, controllable via SSML and not streaming-capable, and the docs state the voices are based on the same technology used to create a Custom Voice, letting anyone use Custom Voice technology without training their own. |
| 言語 | ar-XA, bn-IN, bg-BG, yue-HK, hr-HR, cs-CZ, da-DK, nl-BE, nl-NL, en-AU, en-IN, en-GB, en-US, et-EE, fi-FI, fr-CA, fr-FR, de-DE, el-GR, gu-IN, he-IL, hi-IN, hu-HU, id-ID, it-IT, ja-JP, kn-IN, ko-KR, lv-LV, lt-LT, ml-IN, cmn-CN, mr-IN, nb-NO, pl-PL, pt-BR, pa-IN, ro-RO, ru-RU, sr-RS, sk-SK, sl-SI, es-ES, es-US, sw-KE, sv-SE, ta-IN, te-IN, th-TH, tr-TR, uk-UA, ur-IN and vi-VN. | A much shorter locale list than Standard. Neural2 voice ids are published for da-DK, de-DE, en-AU, en-GB, en-IN, en-US, es-ES, es-US, fr-CA, fr-FR, hi-IN, it-IT, ja-JP, ko-KR, pt-BR, th-TH and vi-VN. Google notes Neural2 voices are available on global and single-region endpoints. |
| 音声コントロール |
|
|
| 制限 | Content limit of 5,000 total bytes per synthesize request. Default response format LINEAR16 streaming supports ALAW, MULAW, OGG_OPUS and PCM, batch adds MP3, so MP3 is not available on the streaming path. The only voice type Google's comparison table marks as streaming-capable. Generally available in the global, us and eu endpoints plus asia-southeast1, europe-west2 and asia-northeast1, but out of scope for regionalization and data residency. Billed per character including spaces and newlines, with all SSML tags except <mark> counted. | Content limit of 5,000 total bytes per synthesize request. Output LINEAR16 (with a WAV header), MP3 at 32 kbps, OGG_OPUS, or G.711 MULAW and ALAW optional sampleRateHertz resamples and fails the request if the rate is unsupported for the encoding. Not offered over streaming synthesis. Billed per character including spaces and newlines, with all SSML tags except <mark> counted the multi-byte-counts-once note applies to Standard and WaveNet only. |
仕様は各ベンダーのドキュメントから転記されています。ベンダーが公開していない行は推測せず、省略しています。 すべての出典: Google TTS Chirp 3 HD · Google TTS Neural2
1行で切り替え
以下のすべてのタブには両方のIDが含まれています — 変更箇所はハイライトされた2行のみです。エンドポイント、キー、リクエスト形式はすべて同じです。
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.audio.transcriptions.create(
model="google-tts-chirp3-hd",
# model="google-tts-neural2", # この行をアンコメントし、上の行をコメントアウトします
file=open("meeting.mp3", "rb"),
language="en",
)
print(resp.text)import OpenAI from "openai";
import fs from "node:fs";
const client = new OpenAI({
baseURL: "https://synthorai.io/v1",
apiKey: "sk-syn-...",
});
const resp = await client.audio.transcriptions.create({
model: "google-tts-chirp3-hd",
// model: "google-tts-neural2", // この行をアンコメントし、上の行をコメントアウトします
file: fs.createReadStream("meeting.mp3"),
});
console.log(resp.text);curl https://synthorai.io/v1/audio/transcriptions \
-H "Authorization: Bearer sk-syn-..." \
-F model="google-tts-chirp3-hd" \
# -F model="google-tts-neural2" \ # この行をアンコメントし、上の行をコメントアウトします
-F file=@meeting.mp3package main
import (
"context"
"fmt"
"os"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://synthorai.io/v1"),
option.WithAPIKey("sk-syn-..."),
)
f, _ := os.Open("meeting.mp3")
resp, _ := client.Audio.Transcriptions.New(context.TODO(), openai.AudioTranscriptionNewParams{
Model: "google-tts-chirp3-hd",
// Model: "google-tts-neural2", // この行をアンコメントし、上の行をコメントアウトします
File: f,
})
fmt.Println(resp.Text)
}import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.audio.transcriptions.*;
import java.nio.file.Paths;
OpenAIClient client = OpenAIOkHttpClient.builder()
.baseUrl("https://synthorai.io/v1")
.apiKey("sk-syn-...")
.build();
Transcription resp = client.audio().transcriptions().create(
TranscriptionCreateParams.builder()
.model("google-tts-chirp3-hd")
// .model("google-tts-neural2") // この行をアンコメントし、上の行をコメントアウトします
.file(Paths.get("meeting.mp3"))
.build()).asTranscription();
System.out.println(resp.text());FAQ
Google TTS Chirp 3 HD と Google TTS Neural2 ではどちらが安いですか?
1m文字あたり においては Google TTS Neural2 の方が安価です($16 対 $30、1.9× の差)。他の行では逆になる可能性があります — 上の表には完全な情報が記載されており、実際のコストは組み合わせに依存します。
2つの統合を行わずに Google TTS Chirp 3 HD と Google TTS Neural2 のA/Bテストを実施できますか?
はい。両方とも1つのAPIキーで同じOpenAI互換エンドポイントを通じて提供されます — モデル文字列を1行変更するだけで切り替えられるため、トラフィックの一部をそれぞれにルーティングし、請求額を直接比較できます。
Text-to-Speechはどのように課金されますか?
入力テキストの1文字あたりの課金となり、リクエストごとの文字数上限はスペック表に記載されています。どちらのモデルでも、長いスクリプトは複数のリクエストに分割する必要があります。