このドキュメントは英語の原文から自動翻訳されています。表現に不自然な箇所がある場合があります。正確な内容は英語の原文もあわせてご確認ください。
supertoneとして公開されています。ソース:supertone-inc/supertone-python。
早わかり
インストール
- pip
- uv
- poetry
API Keyを設定する
SDKは環境変数を自動的に読み込みません。api_keyを明示的に渡してください。慣例としてSUPERTONE_API_KEYから読み込みます。
音声を生成する(同期)
推奨パターンでは、コンテキストマネージャを使用して内部のHTTP接続をクリーンにクローズします。音声を生成する(非同期)
_asyncサフィックスとasync withを使用します。
create_speech / create_speech_async、stream_speech / stream_speech_async、list_voices / list_voices_asyncなどです。
音声をストリーミングする
ストリーミングはオーディオチャンクのイテレータ(または非同期イテレータ)を返します。async for chunk in response.result.aiter_bytes()を使用します。ストリーミングは現在sona_speech_1のみ対応しています。
長文の自動チャンク分割
create_speech、create_speech_async、stream_speech、stream_speech_asyncは、300文字を超えるテキストを自動的に分割します。create_speechは最大3セグメントを並列実行してオーディオを結合し、stream_speechはセグメントを逐次実行してチャンクをイテレータに転送します。
predict_durationは自動チャンク分割を行いません。入力を300文字以内に収め、長いスクリプトでは手動で時間を合計してください。
詳細とチューニングについては長文を参照してください。
一般的な操作
型安全なenum(任意)
型安全性を求める場合、SDKはsupertone.modelsにenum定数を公開しています。
"en"、"sona_speech_1")も動作します。お好みのスタイルをお使いください。
エラー処理
エラーはsupertone.errorsに定義されており、すべてSupertoneErrorを継承しています。
ネットワークエラー(DNS失敗、パイプの破損など)は
httpxから発生し、SupertoneErrorを継承していません。
設定
関連項目
TypeScript SDK
NodeおよびBun向けの同等のSDK。
サンプル
一般的なワークフローのレシピ。