テキストtoスピーチ

Chat GPTへのお願いの仕方(プロンプトエンジニアリング)がうまくなるため、投げ込んだお願い事をメモしていっています。

目的

テキスト文を音声にして読み上げてくれるWebページをChatGPTに作成依頼。

ポイント

最初投げかけたとき、どうしてもFlaskを使いたがるので(レンタルサーバはFlask非対応)、Flaskを使わないようにお願いしています。

Chat GPTに投げかけた言葉

最初のお願い

以下のプログラムを作ってください。

プログラム: """
* CGIでプログラムを作る。Flaskは使わない
* ユーザーがアクセスするページはgpt.cgi
* ボタンが1つある。そのボタンを押したら、テキスト文「今日はいい天気です」を音声に変換して音を出す
"""

JavaScriptで書き上げてくれたが、Pythonのほうが使いやすいのでちょっと修正。

音声への変換と出力は、Pythonで書いてください。

Audioファイルが作られてないようなので、修正依頼。

audioファイルが作られません。gTTSの部分を見直してください。

気を遣って「音声ファイル名を動的に変える」としてくれたが、それがうまくいかなかったみたいで、固定ファイル名にAudioファイルを出力するように修正してくれた。

作ってくれたプログラム

ちょっとだけ自分で修正しています。

<修正箇所>
- Audioファイル名を「gpt_audio.mp3」に固定
- HTML文にオーディオファイル名が出るようにした

<index.cgi>

#!/usr/bin/env python3
import cgi
import os
import tempfile
from gtts import gTTS

print("Content-Type: text/html\n")

audio_file_name = f"gpt_audio.mp3"

# 音声ファイルの作成
tts = gTTS(text='今日はいい天気です', lang='ja')
tts.save(audio_file_name)


print(f"""
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>音声変換</title>
    <script>
        function playAudio() {{
            const audio = new Audio('./{audio_file_name}');
            audio.play();
        }}
    </script>
</head>
<body>
    <h1>音声変換</h1>
    <button onclick="playAudio()">音声に変換して再生</button>
    <p>{audio_file_name}</p>
</body>
</html>
""")



この記事が気に入ったらサポートをしてみませんか?