🗣️

chatGPTの回答を読み上げてみよう

2024/03/09に公開

0.前回の記事!!

前回はopen_jtalkを使ってスピーカーから発声しました。
今回は固定された文章ではなく、自由な会話をしてもらいましょう!

1.構成

  1. 質問アプリからChatGPTのAPI経由で質問
  2. 回答内容をFkaskにPOSTする
  3. メッセージを取り出して読み上げる

2.実装

受信データ
{
    'message':'ここにChatGPTの回答'
}
書いたソース
from flask import Flask, jsonify, request
import json
from jvoice import sound_wav

app = Flask(__name__, static_folder='.', static_url_path='')
@app.route('/')
def index():
    return app.send_static_file('index.html')
#2で送信されたデータを受信するPOSTメソッド
@app.route('/gptvoice', methods=["POST"])
def requestvoice():
    recdata = request.data.decode('utf-8')
    recdata = json.loads(recdata)
    if 'message' in recdata: #受信データのkeyにmessageを含む場合
        sound_wav(recdata["message"])
    data= {"statuscode":200, "message": "rev"}
    return jsonify(data)
app.run(host='0.0.0.0',port=8000, debug=True) #localhostでなく、同じネットワーク内に公開する

3.やってみた

動作確認してみた

https://youtube.com/shorts/j3pHywIMP4w

4.まとめ

これで質問しても内容を読むだけでなく聞き取ることもできるようになりました
次は、発声だけでなくマイコンへの連携を追加したいと思います。

Discussion