【Python】テキスト文章を音声ファイルに変換|OpenAI GPT APIの利用

当ページには広告が含まれています。

こんにちは、DXCEL WAVEの運営者(@dxcelwave)です!

こんな方におすすめ!
  • ChatGPTのAPIを用いて、テキスト文章を音声ファイルに変換する方法が知りたい。
目次

【Python】OpenAI GPTでテキスト文章を音声ファイルに変換

本記事では、OpenAI社が提供するAPIを用いてPtyhonでプログラムを作成し、「テキスト文章を音声ファイルに変換する方法」について解説します。

【参考】OpenAI社のAPI利用方法

本記事ではChatGPTを用いたPythonプログラミングについて解説します。その際、Open AIが提供するAPI情報が必要になります。「ChatGPTの概要」および「API情報の取得手順」については、こちらの記事で詳しく解説しています。

あわせて読みたい
【Python×ChatGPT】チャットボット作成入門|OpenAI APIの利用申請手順も解説 「ChatGPT APIの利用手順」と「PythonでChatGPT APIを呼び出し、チャットボットを作成する方法」についてそれぞれ解説します。

【参考】ChatGPTを詳しく学びたい方向けの学習講座

ChatGPTを詳しく学びたい方向けに安価で学べるオンライン講座も併せてご紹介します。

【Python実践】GPTによる音声変換Text-to-Speech関数の作成

それでは実際にPythonプログラムを作成しながらテキスト文章を音声ファイルに変換する関数を作成します。

PythonライブラリとChatGPT API情報の読込

はじめに、Pythonプログラムの先頭にライブラリとAPI認証情報を記述します。

前述で取得したOrganization IDシークレットキーをそれぞれ入力しましょう。

import openai
import os

openai.organization = "<Organization IDをここに入力>"
openai.api_key      = "<APIシークレットキーをここに入力>"

Text-to-Speech関数作成

続いて、テキスト文章を音声ファイルに変換するText-to-Speech関数GPT_TTSを作成します。

第一引数にテキスト文章text、第二引数に音声ファイルの出力パスoutput_filepathをした次のような関数を記述しましょう。

def GPT_TTS(text:str, output_filepath:str):
    # テキスト文章を音声に変換
    result = openai.audio.speech.create(
                      model = "tts-1",    # Text-to-Speechモデル
                      voice = "nova",     # 音声変換時の声['alloy','echo','fable','onyx','nova','shimmer']
                      speed = 1.0,        # 音声の再生スピード[0.25〜4.0]
                      input = text,       # 音声変換したいテキスト文         
                    )
    
    # 音声変換後のデータを保存mp3形式で保存
    result.stream_to_file(f'{output_filepath}.mp3')
    return "complete"

引数情報

openai.audio.speech.create()にテキストを渡し、音声ファイルを生成しているのが特徴です。このメソッドでは、次のような引数を指定できます。

スクロールできます
引数名概要
modelText-to-Speechモデル
voice音声変換時の声。’alloy’, ‘echo’, ‘fable’ ,’onyx’, ‘nova’, ‘shimmer’ が選択可能
spped音声の再生スピード
input音声変換の元となるテキスト文章

関数実行

前述で作成したGPT_TTS関数を実行し、動作確認を実施してみましょう!

# 引数情報
text            = "こんにちは, DXCEL WAVEをご覧いただきありがとうございます。"
output_filepath = "text_speech_to_text.mp3"

# 関数実行
GPT_TTS(text, output_filepath)

【参考】PythonによるLLM実装|ChatGPT・LangChain

本記事では、PythonでLLMを構築し、様々なタスクをこなす機能の実装方法を多数解説しています。

Python × ChatGPT関連記事

【あわせて読みたい】

Python × LangChain関連記事

【あわせて読みたい】

自然言語処理の学習におすすめの書籍

あわせて読みたい
自然言語処理(NLP)学習におすすめ入門本・動画教材8選|Pythonによる機械学習・ディープラーニング向け... 「自然言語処理の概要とそれを実装するPythonプログラミング手法を学びたい」「機械学習・AIを組み合わせたモデル開発手法を知りたい」このような要望にお答えします。

自然言語処理の概要について詳しく学びたい方向けに、厳選したおすすめの学習教材を紹介しています。

最後に

この記事が気に入ったら
フォローしてね!

目次