テキスト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>
""")
この記事が気に入ったらサポートをしてみませんか?