TTS APIクイックスタートガイド
このクイックスタートガイドでは、TTSパイプラインに無検閲チャット補完APIを統合する方法を示します。コンテンツ拒否なしでスクリプト、キャプション、ダイアログを生成するために、OpenAI互換エンドポイントを使用します。
https://api.ttsapihub.com/v1
Base URLと認証
まず、クライアントをBase URLのhttps://api.ttsapihub.com/v1に設定することから始めます。当APIはOpenAIと完全に互換性があるため、base_urlを更新し、APIキーを提供するだけで標準SDKを使用できます。認証はBearerトークンによるAuthorizationヘッダーで処理されます。APIキー取得ページでサインアップ時に一意のキーを生成します。各アカウントはアクティブなキーが1つまでで、いつでも再生成できます。プロンプトは学習に使用されず、トライアルクレジットの開始に電話番号やクレジットカードは不要です。
チャット補完によるテキスト生成
テキストを生成するには標準のPOST /v1/chat/completionsリクエストを送信します。使用するモデルIDはuncensoredです。このモデルは、法的な大人向け用途でコンテンツ拒否なしで回答するように調整されたオープンウェイトLLMであり、企業フィルターがコンテンツをブロックする可能性があるクリエイティブなスクリプトやダイアログに最適です。音声、画像、動画は生成せず、TTSパイプラインで処理するための純粋なテキストを出力します。必要に応じてtemperatureやmax_tokensなどのパラメータを調整できます。APIは構造化データ抽出のための関数呼び出しをサポートしており、アプリケーション向けのレスポンスをフォーマットできます。
curl https://api.ttsapihub.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
Python SDK統合
Python開発者向けに、公式のopenaiSDKは最小限の設定でそのまま動作します。Base URLとAPIキーでクライアントを初期化し、chat.completions.create()を呼び出します。この方法により、既存のOpenAI互換クライアントを活用しつつ、無検閲モデルの恩恵を受けることができます。レスポンスには生成されたテキストが含まれており、これを直接音声合成エンジンにフィードできます。これはテキストのみのAPIなので、音声生成はパイプライン内で別途処理してください。
from openai import OpenAI
client = OpenAI(base_url="https://api.ttsapihub.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
Node SDK統合
Node.js開発者は、Pythonと同じ設定でopenainpmパッケージを使用できます。baseURLをエンドポイントに設定し、APIキーを提供します。モデルIDuncensoredで補完エンドポイントを呼び出します。この統合は簡単で、テキスト生成を既存のNode.js TTSサービスに直接統合できます。APIは標準JSONで応答するため、生成されたテキストをアプリケーションのニーズに合わせて解析・処理するのは容易です。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ttsapihub.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
SSEによるストリーミングレスポンス
低レイテンシを実現するには、リクエストにstream: trueを設定してストリーミングを有効にします。APIは増分テキストチャンクを含むServer-Sent Events (SSE)を返します。これは、ユーザーがリアルタイムでテキストの表示を確認できるため、長文コンテンツの生成に特に役立ちます。ストリーミングレスポンスは標準的なOpenAI SSE形式に従うため、既存のストリーミングパーサーを使用できます。このアプローチは知覚される待機時間を短縮し、生成されたテキストをアプリケーションに表示することで、TTSパイプラインのユーザーエクスペリエンスを向上させます。
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
制限、エラー、コンテキストウィンドウ
API キーは1分あたり300リクエスト、リクエストボディ8 MBに制限されます。モデルは100,000トークンのコンテキストウィンドウをサポートし、長いスクリプトやドキュメントに対応できます。一般的なエラーには、401(無効なキー)、402(クレジット不足)、429(レート制限)があります。レート制限に達した場合は、指数バックオフを実装してください。料金は明確で、入力トークン1Mあたり$0.25、出力トークン1Mあたり$1.00です。クレジットは前払いクレジットであり、期限切れせず、チャージは$10から開始します。新規アカウントにはカード不要で7日間有効な無料トライアルクレジット$0.50が付与されます。コンテンツ制限は未成年者の性的コンテンツのみをブロックし、それ以外の法的な大人向け、フィクション、または論争の的となるトピックは許可されます。
技術仕様
購入前に確認できるよう、API の実際の制限と機能をすべてまとめました。
| 項目 | 内容 |
|---|---|
| 形式 | OpenAI 互換:どの OpenAI SDK でも base URL とキーを変えるだけで動作 |
| エンドポイント | POST /v1/chat/completions · GET /v1/models |
| モデル ID | uncensored |
| 認証 | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.ttsapihub.com/v1 |
| コンテキスト長 | 100,000 トークン(入力+出力) |
| ストリーミング | 対応 — SSE、最後のチャンクにトークン使用量 |
| JSON モード | response_format: {"type": "json_object"} |
| パラメータ | temperature、top_p、stop、seed、presence_penalty、frequency_penalty |
| 関数呼び出し | 対応 — tools、tool_choice。応答に tool_calls(ストリーミングでも)、結果は role: tool で返送 |
| 最大出力 | 100,000 トークンのウィンドウの残りまで。max_tokens は任意(個別の上限なし) |
| レスポンスヘッダー | X-Request-Id、X-Balance-USD、X-RateLimit-Limit-Requests、X-RateLimit-Limit-Concurrency |
| 同時実行 | キーごとに同時 8 リクエストまで |
| リクエストサイズ | 最大 8 MB |
| レート制限 | キーごとに毎分 300 リクエスト |
| 課金 | 前払いクレジットから実使用量で課金。エラーと拒否は無料 |
| ボーナス | $50 以上で +5%、$100 以上で +10% |
| 料金 | 入力 100 万トークン $0.25 · 出力 100 万トークン $1.00 |
| チャージ | USDT(TRC20)または USDC(Base)、$10〜$500 の任意の整数額 |
| 有効期限 | 購入クレジットは失効なし、サブスクなし |
| 無料トライアル | $0.50、7 日間、カード不要 · トライアルキー: 同時2件、毎分60件。初回チャージ後に上限が8件・300件へ拡大 |
| コンテンツ | 成人向けコンテンツ可。未成年者を含む性的コンテンツは拒否 |
| キー | アカウントごとに有効なキーは 1 つ。新しいキーで旧キーは無効 |
| ログイン | Google またはメール+パスワード |
エラーコード
エラーは固定の type を持つ JSON で返ります。失敗・拒否されたリクエストは課金されません。
| コード | タイプ | 意味 |
|---|---|---|
400 | bad_request | JSON 不正、メッセージ空、パラメータ誤り、またはコンテキスト超過 |
401 | missing_key · invalid_key · key_revoked | キーなし・誤り・新しいキーに置換済み |
402 | no_credit | 残高ゼロ — チャージすれば即再開 |
403 | content_blocked | 未成年者を含む性的コンテンツ — 拒否、課金なし |
404 | not_found | 不明なエンドポイント |
413 | request_too_large | 本文が 8 MB 超 |
429 | rate_limited · concurrency | 毎分 300 回または同時 8 件を超過 — 待って再試行 |
503 | upstream_busy | モデル混雑 — 数秒後に再試行 |
質問と回答
このAPIは音声を生成しますか?
いいえ、これはテキストのみのAPIです。テキストスクリプトやダイアログを生成し、それを別のTTSエンジンに送信して音声生成を行います。音声、画像、動画ファイルは生成しません。
APIの使い始め方は?
APIキー取得ページでメールアドレスとパスワードでサインアップします。APIキーと7日間有効な$0.50の無料トライアルクレジットが即座に付与されます。クレジットカードや電話番号は不要です。
コンテキストウィンドウのサイズは?
モデルは100,000トークンのコンテキストウィンドウをサポートしており、入力プロンプトと出力補完の両方を含みます。これにより、長いドキュメントの処理やパイプラインでの広範な会話履歴の維持が可能です。