OpenAI Dev Dayで発表されたText-to-Speech APIまとめ
OpenAIが提供するサービスは、徐々に進化を遂げており、非常に利便性が高いものとなっています。例えば、OpenAIといえばChatGPTが有名ですが、従来バージョンのGPT-3.5からGPT-4にバージョンアップされました。これにより、精度が優れているだけでなく、マルチモーダルな点や長文でもやり取りができるなど数多くのメリットをユーザーは獲得できます。
また、OpenAIと聞くとChatGPTを真っ先に思い浮かべる方が多いですが、実はさまざまなサービスを提供しています。その中のひとつとして挙げられるのが、Text-to-Speech APIです。
Text-to-Speech APIはOpenAI Dev Dayで発表された新しいAPIになります。具体的に、Text-to-Speech APIが何を意味するのか、どのようなことができるのか把握しておきたいという方もいるのではないでしょうか?
そこで、今回はOpenAI Dev Dayで発表されたText-to-Speech APIの概要について詳しく解説します。
目次
OpenAI Dev Dayとは?
OpenAI Dev Dayとは、2023年11月6日にOpenAIによって初めて開催された大規模な会議のことです。このカンファレンスでは、新しい大規模言語モデルの公開やサービスの登場が発表されました。例えば、OpenAI Dev Dayで発表された内容の中で注目を集めたのがGPT-4 Turboです。GPT-4 TurboはOpenAIが提供しているGPT-4の改良バージョンです。従来のGPT-4に比べてコンテキストウィンドウが大幅に拡大されるなど、利便性が向上しています。また、価格も入力トークンが3分の1、出力トークンは半額になっているため、幅広い業態でChatGPTを積極的に活用する動きになる可能性が高まりました。
そのほかにもOpenAI Dev Dayでは、さまざまな発表がされましたが、Text-to-Speech APIもそのひとつです。
Text-to-Speech APIとは?
Text-to-Speech APIとは、OpenAIによって提供されている音声生成AIです。TTSと略されることもあります。
Text-to-Speech APIはOpenAI Dev Dayで新しく発表されたAPIです。一般的に、AIと会話をするときはテキストベースで行うが一般的でした。しかし、Text-to-Speech APIを使えば、テキストを音声に変換して伝えることができるようになります。
Text-to-Speech APIを使うことで、ブログ記事の朗読や音声のリアルタイム出力、多言語の音声出力を行うことができます。また、出力した音声を動画制作の中で活用することもできるでしょう。このように、Text-to-Speech APIはさまざまな用途に使うことができるため、あらゆるビジネスシーンで活用されることが予測されます。
OpenAIのText-to-Speech APIは、tts-1とtts-1-hdの2種類のモデルを提供しています。モデルの指定はPythonでリクエストを行う際にmodelで指定することが可能です。一般的に、OpenAIのText-to-Speech APIのモデルはtts-1-hdのほうが優れているといわれています。
Text-to-Speech APIの3つの機能
OpenAIが提供するText-to-Speech APIには大まかにわけて3つの機能があります。それぞれの機能について詳しく解説しますので、ぜひ参考にしてください。
6つの異なる音声を提供
1つ目は、6つの異なる音声が提供されている点です。
OpenAIのText-to-Speech APIは下記の音声が提供されています。
- alloy
- echo
- fable
- onyx
- nova
- shimmer
基本的な使い方に関しては後述しますが、Pythonでリクエストを出すときにvoiceを指定できます。その際に、上記の6つの音声オプションから好きなものを選択して音声を出力させることが可能です。もちろん、それぞれの音声で声の高さなどが異なるため、利用される方のニーズに合わせて最適なものを選択するようにしましょう。
mp3以外にもさまざまな出力形式に対応
2つ目は、さまざまな出力形式に対応することができるという点です。
OpenAIのText-to-Speech APIでは、レスポンス形式がデフォルトでmp3となっています。しかし、OpusやAAC、FLACなどの形式にも対応可能です。
Opusはインターネットのストリーミング通信において遅延が少ない形で音声を提供することができる形式です。また、AACはデジタルオーディオの圧縮に使用されており、主にYouTubeやAndroid、iOSの音声として活用されるケースが多くなります。FLACは高音質なのが特徴です。そのため、音質重視の方に好まれる傾向にあります。
OpenAIのText-to-Speech APIは、このようにさまざまな出力形式に対応することで、数多くのユーザーのニーズに対応しています。
リアルタイムオーディオストリーミングをサポート
3つ目は、リアルタイムオーディオストリーミングへのサポートです。
OpenAIのText-to-Speech APIは、リアルタイムオーディオストリーミングをサポートしています。具体的には、チャンク転送エンコーディングを使用して行われています。
チャンク転送エンコーディングとは、HTTP1.1で定義されているデータ転送メカニズムの一種のことです。Webサーバーがそれぞれのコンテンツをチャンクにわけて送信するため、チャンク転送といわれます。
一般的に、動的に音声を生成する場合、ファイルのサイズがわかるまでレスポンスを返すことができません。すべての音声が完成したら転送するという流れになるため、サーバーの応答性能が低下します。一方、チャンク転送エンコーディングは、チャンクという単位で転送するため、最終的なサイズがわからない音声ファイルでもボディを少しずつ転送することができます。これにより、全体のファイルが生成されて利用可能になる前に音声を再生することができるので、一般的な転送方法に比べてリアルタイムの音声出力がしやすいです。
OpenAI が提供するText-to-Speech APIのメリット
OpenAIのText-to-Speech APIには、大まかにわけて4つのメリットがあります。OpenAIのText-to-Speech APIに限らず、文字を音声に変換できるシステムは数多く提供されていますが、OpenAIのText-to-Speech APIのメリットを知ることでなぜOpenAIのText-to-Speech APIが選ばれているのかがわかるので、ぜひ参考にしてください。
音声のクオリティが高い
1つ目のメリットは、音声のクオリティが高いという点です。
システム等を利用して文字を音声に変換したことがある方もいるかもしれませんが、その際に聞き取れる日本語に変換されなかったり、会話が不自然と感じたりするケースは多いでしょう。
一方、OpenAIのText-to-Speech APIは最新の音声合成技術を採用しています。これにより、人間に近い声で音声を出力することができるので、その点が大きなメリットであるといえるでしょう。
さまざまな言語に対応可能
2つ目のメリットは、OpenAIのText-to-Speech APIはさまざまな言語に対応しているという点です。
OpenAIのText-to-Speech APIは、英語はもちろんのこと、フランス語やドイツ語、中国語、韓国語、日本語など世界で使われている大部分の言語をカバーしています。これにより、日本はもちろんのこと、そのほかの国々も母国語でテキストを音声変換してもらうことが可能です。
ちなみに、OpenAIのText-to-Speech APIは、言語サポートにおいてWhisperモデルに従います。また、OpenAIのText-to-Speech APIは単に数多くの言語をサポートしているのではなく、良好なパフォーマンスを提供できる言語となっているので、言語に関係なく高品質の音声変換を実現することができるでしょう。
カスタマイズ性に優れている
3つ目のメリットは、カスタマイズ性に優れているという点です。
OpenAIのText-to-Speech APIは、ユーザーの音声速度や音量、トーン、強調などさまざまな要素のカスタマイズができます。これにより、利用者は自分の好みに合わせて音声を調整することができるので、その点も大きなメリットです。
テキストから音声に変換する速度が速い
4つ目のメリットは、高速でテキストから音声に変換することができるという点です。
OpenAIのText-to-Speech APIは、ほかの読み上げソフトに比べて効率的に音声を生成することができる仕組みを採用しています。そのため、利用者は短時間で大量の音声を出力することができるので、その点もOpenAIのText-to-Speech APIのメリットのひとつであるといえるでしょう。
Text-to-Speech APIの使い方
OpenAIのText-to-Speech APIを使用するためには、下記の手順が必要です。
- OpenAIのパッケージのインストール
- OpenAIのサイトでAPIの取得
- OpenAIキーの指定
- Pythonを使ってリクエスト
具合的な手順をそれぞれ小見出しにわけて解説します。
OpenAIのパッケージのインストール
OpenAIのText-to-Speech APIを使用するためには、OpenAIのパッケージをインストールする必要があります。具体的には、Pythonのパッケージ管理ツール『pip』を使用します。ちなみに、pipを使用する場合は、事前にPythonのインストールが必須となりますので、注意してください。
OpenAIのパッケージをインストールするためには、Windowsの場合、コマンドプロンプトを起動し下記のコマンドを実行します。
【コマンド例】
pip install openai
OpenAIのサイトでAPIの取得
OpenAIのText-to-Speech APIを使用するためには、パッケージのインストールだけでなく、APIキーを取得する必要があります。詳しい料金については後述しますが、OpenAIのAPIの取得には料金がかかります。OpenAIのAPIキーは下記のOpenAI公式サイトからダウンロードすることが可能です。
OpenAIのAPIキーの指定
次に、OpenAIのAPIキーを指定します。
【OpenAPIのAPIキー指定の例】
import os
os.environ[“OPENAI_API_KEY”] = “取得したAPIキー”
Pythonを使ってリクエスト
最後に、Pythonを使用してリクエストします。
具体的なソースコードは下記の通りです。
【リクエスト例】
from pathlib import Path
from openai import OpenAI
client = OpenAI()
speech_file_path = Path(__file__).parent / sample.mp3″
response = client.audio.speech.create(
model=”tts-1-hd”,
voice=”fable”,
input=”みなさん、こんにちは。”
)
response.stream_to_file(speech_file_path)
はじめに、OpenAIのライブラリをインポートして、クライアントの準備を行います。その後に、clientオブジェクトのaudio属性のspeech属性のcreateメソッドを呼び出してモデルや音声オプション、変換したいテキストを入力します。
Text-to-Speech APIの概要でもご説明した通り、createのメソッドの引数『model』は、Text-to-Speech APIが提供するモデルを指定します。モデルはtts-1とtts-1-hdがあり、今回の例では、品質が良いtts-1-hdを指定しました。引数『voice』には、音声オプションを指定します。また、inputにはテキストから音声に変換したい文字列を入力します。
今回の例の場合、テキストを変換した音声ファイルはsample.mp3という名前で指定のディレクトリへ保存されます。
Text-to-Speech APIの料金について
Text-to-Speech APIは、有料でOpenAIから提供されているサービスです。そのため、利用するためには料金を支払う必要があります。
Text-to-Speech APIは、1000文字0.015ドルです。そのため、非常に安い価格で利用することができます。
Text-to-Speech APIは使用した分だけ料金を支払うことになるため、使い過ぎを心配される方もいます。しかし、OpenAIは、使用量を確認することができるダッシュボードを提供しているため、定期的にチェックをすれば使用量をチェックすることが可能です。それぞれの利用者で消費できる予算は限られているので、予算オーバーにならないためにもぜひ活用するのがおすすめです。
Text-to-Speech APIを利用する際の注意点について
OpenAIのText-to-Speech APIの利用を検討している人は、事前にText-to-Speech APIの注意点について確認しておくと便利です。具体的にどのような点に注意すればいいのか解説しますので、ぜひ参考にしてください。
顧客にAIの音声であることを知らせる必要がある
1つ目の注意点は、顧客にAIの音声であることを知らせる必要があるという点です。
Text-to-Speech APIから出力された音声の所有者は生成した人です。しかし、その音声を自社製品やサービスの中で利用する場合、人間ではなくAIの声であることを顧客に通知する必要があります。
OpenAIの利用規約に従う
2つ目の注意点は、OpenAIの利用規約に従うことです。
Text-to-Speech APIは、OpenAIが提供するサービスになるため、当然OpenAIの利用規約に従う必要があります。例えば、OpenAIの利用規約には、違法行為や性的虐待などが含まれるコンテンツに使用することを禁止しています。また、専門家がチェックしていない法的なアドバイスなど、無許可の法律行為や医療情報の提供は許可されていません。
もし、OpenAIの利用規約を守らずにText-to-Speech APIを使用していた場合、必要な修正を行うように警告されたり、違反が繰り返される場合にはアカウント停止処分になったりします。そのため、Text-to-Speech APIを利用する方は、必ずOpenAIの利用規約を守り、サービスを提供するようにしてください。
料金がかかる
3つ目の注意点は、使用量に応じて料金を支払う必要があるという点です。
Text-to-Speech APIは月額制や年額制ではなく、従量課金制となります。使用した量に応じて料金が請求される仕組みとなるため、使い過ぎてしまう可能性はゼロではありません。そのため、Text-to-Speech APIを使用する方は、全体でどのぐらいのテキストを音声に変換する必要があるのかをチェックします。その上で予算を算出し、計画を立てながらText-to-Speech APIを使用するのがおすすめです。
まとめ
今回は、OpenAIが提供するText-to-Speech APIの概要について詳しく解説しました。Text-to-Speech APIを使用するためには、Pythonなどの知識が必要不可欠になります。また、従量課金制となっているため、計画を立てて使用するのがおすすめです。
OpenAIの利用規約に違反するとアカウント停止処分などもあるため、必ず確認してから使用するようにしましょう。
ホームページ制作・システム開発を依頼したい企業様がいたら
株式会社クラウドシードでは、各種ホームページ制作やシステム開発のご相談を承っています。
ご検討の方は、以下よりお気軽にご相談ください。