Xttsパイプラインのクイックスタート
このクイックスタートガイドで、音声クローンパイプラインに無検閲テキストAPIを統合しましょう。標準的なOpenAI互換エンドポイントを使用して、スクリプト、字幕、生テキスト応答の生成方法を学びます。
認証とベースURL
まず、APIキーの取得ページにアクセスし、Googleまたはメールアドレスとパスワードでログインしてください。一意のAPIキーが即座に発行されます。すべてのリクエストにはベースURL https://api.xtts.cc/v1 を使用してください。このURLは公式のOpenAI SDKや、OpenAIのチャット補完形式をサポートするすべてのクライアントと互換性があります。
APIキーをBearerトークンとしてAuthorizationヘッダーに含めてください。送信する必要があるモデル識別子は uncensored です。このオープンウェイトモデルは当社のサーバーでホストされており、法的な成人向け利用においてコンテンツ拒否なしで回答するようにチューニングされており、音声パイプラインが必要な生テキストを受け取れるようになっています。
無検閲テキストの生成
システムプロンプトとユーザープロンプトを付けてPOSTリクエストを/v1/chat/completionsに送信してください。APIは生成されたテキストを含む構造化JSONを返します。このエンドポイントは、音声クローンワークフローにおけるプロンプト作成、スクリプト生成、後処理タスク用に設計されています。
リクエストボディにはモデル名、メッセージ履歴、温度やtop_pなどのオプションパラメータが含まれます。max_tokensパラメータで出力長を制御できます。max_tokensを設定しない場合、レスポンスはコンテキストウィンドウの最後まで達する可能性があります。
curl https://api.xtts.cc/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統合
公式のOpenAI Python SDKを使用してAPIと連携します。base_urlをエンドポイントに設定し、API キーを入力してください。この方法により、既存のコード構造を活用しつつ、無検閲モデルの動作の恩恵を受けることができます。
ベースURLでクライアントインスタンスを作成し、chat.completions.createを呼び出します。uncensoredモデルIDとメッセージを渡してください。応答オブジェクトにはcontentに生成されたテキストが含まれます。この方法はバッチ処理スクリプトやテキスト生成をより大きなPythonアプリケーションに統合する場合に最適です。
from openai import OpenAI
client = OpenAI(base_url="https://api.xtts.cc/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統合
JavaScript環境では、OpenAI Node SDKを使用してください。ベースURLとAPIキーでクライアントを設定します。この設定により、Webまたはサーバー側のアプリケーションで直接テキストを生成できます。
チャット補完エンドポイントを uncensored モデルで呼び出します。レスポンスには生成されたテキストが含まれており、これを音声合成エンジンに渡すことができます。この統合は、音声クローン用のスクリプトを準備するWebアプリやバックエンドサービスにおけるリアルタイムのテキスト生成に適しています。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.xtts.cc/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);
ストリーミング応答
リクエストで stream をtrueに設定してストリーミングを有効にします。APIは生成されたトークンごとにServer-Sent Events (SSE) を返します。この機能は、リアルタイムのテキスト表示や音声合成の段階的な準備に役立ちます。
各イベントチャンクには部分的なテキストが含まれます。最終チャンクにはトークン数などの使用統計が含まれます。ストリーミングにより、アプリケーションは生成されるテキストを処理できるため、ユーザーにとっての知覚されるレイテンシが軽減されます。ストリームイベントを処理して完全な応答を累積してください。
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つの同時リクエストに制限されます。リクエストボディは8 MBを超えてはなりません。無効なキーを送信すると、401エラーが発生します。前払いクレジットが枯渇すると、402エラーが発生します。レート制限を超えると、429エラーが発生します。
コンテキストウィンドウは、プロンプトと補完の両方を含めて合計100,000トークンをサポートします。出力に個別の上限はなく、より短い応答が必要な場合はmax_tokensを指定できます。エラーと拒否は前払いクレジットを消費しません。構造化データ抽出のための関数呼び出しとJSONモードのサポートも利用可能です。
API 仕様
購入前に確認できるよう、API の実際の制限と機能をすべてまとめました。
| 項目 | 内容 |
|---|---|
| 形式 | OpenAI 互換:どの OpenAI SDK でも base URL とキーを変えるだけで動作 |
| エンドポイント | POST /v1/chat/completions · GET /v1/models |
| 認証 | Authorization: Bearer YOUR_KEY |
| モデル ID | uncensored |
| Base URL | https://api.xtts.cc/v1 |
| 関数呼び出し | 対応 — tools、tool_choice。応答に tool_calls(ストリーミングでも)、結果は role: tool で返送 |
| 最大出力 | 100,000 トークンのウィンドウの残りまで。max_tokens は任意(個別の上限なし) |
| パラメータ | temperature、top_p、stop、seed、presence_penalty、frequency_penalty |
| JSON モード | response_format: {"type": "json_object"} |
| コンテキスト長 | 100,000 トークン(入力+出力) |
| ストリーミング | 対応 — SSE、最後のチャンクにトークン使用量 |
| リクエストサイズ | 最大 8 MB |
| 同時実行 | キーごとに同時 8 リクエストまで |
| レスポンスヘッダー | X-Request-Id、X-Balance-USD、X-RateLimit-Limit-Requests、X-RateLimit-Limit-Concurrency |
| レート制限 | キーごとに毎分 300 リクエスト |
| 無料トライアル | $0.50、7 日間、カード不要 · トライアルキー: 同時2件、毎分60件。初回チャージ後に上限が8件・300件へ拡大 |
| 料金 | 入力 100 万トークン $0.15 · 出力 100 万トークン $0.50 |
| 課金 | 前払いクレジットから実使用量で課金。エラーと拒否は無料 |
| チャージ | USDT(TRC20)または USDC(Base)、$20〜$500 の任意の整数額 |
| ボーナス | $50 以上で +5%、$100 以上で +10%、$200 以上で +15% |
| 有効期限 | 購入クレジットは失効なし、サブスクなし |
| ログイン | Google またはメール+パスワード |
| キー | アカウントごとに有効なキーは 1 つ。新しいキーで旧キーは無効 |
| コンテンツ | 成人向けコンテンツ可。未成年者を含む性的コンテンツは拒否 |
エラーコード
エラーは固定の type を持つ JSON で返ります。失敗・拒否されたリクエストは課金されません。
| HTTP | タイプ | 意味 |
|---|---|---|
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 | モデル混雑 — 数秒後に再試行 |
質問と回答
前払いクレジットをチャージするにはどうすればよいですか?
暗号通貨(TRC20上のUSDT、Base上のUSDC)を使用してチャージできます。受け付ける金額は$20〜$500です。$50以上のチャージで5%ボーナス、$100以上で10%ボーナスが付与されます。クレジットは期限切れになりません。
APIは音声やビデオを生成しますか?
いいえ、このAPIはテキスト生成専用です。音声合成やビデオパイプラインに供給するための無検閲テキスト応答を提供します。音声、画像、ビデオファイルを直接生成することはありません。
トライアルオファーとは何ですか?
新規ユーザーは$0.50のトライアルクレジットを受け取ります(1人1回限り)。7日間有効です。APIキーページでワンクリックでこのクレジットを請求できます。登録にクレジットカードは必要ありません。これにより、前払いクレジットを購入する前にAPIをテストできます。
キーはフォーム 1 つで手に入ります
アカウントを作成し、キーをコピーし、ベースURLを変更します。これがセットアップ全体です。