import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY
});
const speech = await client.audio.speech.create({
model: "gpt-4o-mini-tts",
voice: "OPENAI_VOICE",
input: "Hello from my application",
response_format: "mp3"
});OpenAI VoiceからElevenLabsへの移行方法
OpenAI SDKはそのまま。接続先をAllModelsに向けて、モデルとボイスを置き換えるだけです。音声生成の呼び出しは変わりません。
- 1AllModelsのキーを使い、SDKのベースURLを
https://api.allmodels.io/oaiに設定します。 - 2
elevenlabs/eleven-v3を設定し、ElevenLabsのボイスIDを選択します。
AllModelsは独立したサービスであり、OpenAI、ElevenLabs、Fish Audio、Cartesiaとは提携関係になく、その承認や後援も受けていません。
ベースURL、モデル、ボイスを変更する
以下の例は通常のMP3レスポンスを生成します。ハイライトされた行が、プロバイダー移行に必要な変更のすべてです。
JavaScript
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.ALLMODELS_API_KEY,
baseURL: "https://api.allmodels.io/oai"
});
const speech = await client.audio.speech.create({
model: "elevenlabs/eleven-v3",
voice: "ELEVENLABS_VOICE_ID",
input: "Hello from my application",
response_format: "mp3"
});Python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["OPENAI_API_KEY"],
)
with client.audio.speech.with_streaming_response.create(
model="gpt-4o-mini-tts",
voice="OPENAI_VOICE",
input="Hello from my application",
response_format="mp3",
) as response:
response.stream_to_file("speech.mp3")import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["ALLMODELS_API_KEY"],
base_url="https://api.allmodels.io/oai",
)
with client.audio.speech.with_streaming_response.create(
model="elevenlabs/eleven-v3",
voice="ELEVENLABS_VOICE_ID",
input="Hello from my application",
response_format="mp3",
) as response:
response.stream_to_file("speech.mp3")OpenAI SDKをそのまま使い続ける
AllModelsでのプロバイダー切り替えは、あえてシンプルにしています。今使っているSDKとリクエストの流れはそのままに、クライアントの接続先をAllModelsに向け、別のモデルとボイスを選ぶだけです。
AllModels互換のOpenAI SDKインターフェースは音声合成とストリーミング音声レスポンス、ファイルの文字起こし、リアルタイム文字起こしに対応しています。セットアップの詳細、対応メソッド、現在の制限事項についてはOpenAI SDK互換性ガイドの完全版をご覧ください。
Eleven v3について
Eleven v3は、一般提供されているElevenLabsの最先端の音声合成モデルです。ElevenLabsによると、本番リリースは以前のアルファ版より安定性と精度が向上しており、特に多言語での数字、記号、専門的な表記の読み上げが改善されています。
27カテゴリ・8言語にわたる社内ベンチマークで、ElevenLabsはエラーが68%減少したと報告しています。そのためv3は、電話番号、通貨、数式、スコア、URLなど、文脈に依存するテキストを含む原稿に特に適しています。
要点まとめ
移行に関するよくある質問
OpenAI SDKを置き換える必要はありますか?
いいえ。インストール済みのSDKとその音声生成メソッドをそのまま使えます。AllModelsが互換性のあるベースURLを提供します。
OpenAIのボイスを再利用できますか?
いいえ。Eleven v3のボイス一覧からボイスを選び、ELEVENLABS_VOICE_IDをそのIDに置き換えてください。
後から再びプロバイダーを切り替えられますか?
はい。AllModelsのベースURLとAPIキーはそのままに、モデルとボイスを別の対応プロバイダーのものに変更するだけです。
