バケチャンロボを実現したい我々6 – バケチャンオシャベリ ① Node-RED + OpenAI 音声認識

Home > 電子工作 > バケチャンロボを実現したい我々6 – バケチャンオシャベリ ① Node-RED + OpenAI 音声認識
すき 0
うんこ 0

バケチャンロボがとうとう完成!

(多くのバケチャン実験体が犠牲に…👻)

そしてバケチャンは歩くのみならずオシャベリもするのです。

バケチャン側の実装方法はまだ未定ですが、
とりあえず「バケチャンからWavをPostする」想定で、
Node-RED で音声認識を試していきます。

OpenAI の Speech to Text API

先日 Node-REDで ChatGPT API を試したのですが、
せっかくなので音声認識も OpenAI を使用する事にしました。

Node-RED で ChatGPT API を試してみる

上記で取得したAPI Keyで、音声認識の「Speech to Text API」を使用します。

Speech to text – OpenAI API

Node-RED + OpenAI で音声認識

フロー

参考にさせて頂きました 🙏

パンダコノート: アップロードされたファイルを Node-RED で受け取る方法

Node-REDを使ってWhisperで音声認識してChatGPTで回答させてみた – Qiita

ノードについて

ファイルアップロード > POST

バケチャンからPOSTする想定なので、
今回はローカルからファイルをアップロードしてPOSTする形で試したいと思います。

template ノード

このような表示になります。

WavをAPIにPOSTする

http in ノード

POSTを受け取るノードです。

function ノード

上記で受け取ったファイルをAPIに送るためのデータを生成します。

http request 

APIのURLを設定します。

template

APIから受け取った結果をHTML側にも表示します。

動作確認

オーディオデータ

ラジオの冒頭5秒位を切り出したものを使用しました。

※ラジオ↓

ファイルを選択

http://localhost:1880/upload にアクセス

ファイルを選択し、「アップロード」を押す

数秒後、表示が切り替わる!

すごい!ちゃんと認識されてる!!🙌

途中躓いた箇所(エラー)

動作するまでいくつかエラーで躓いたので記録しておきます。

① APIキーが正しくない

‘Authorization’: ‘Bearer [APIキー]’ の設定で「Bearer 」を入れてなかったためにエラーが出てしまいました。正しく入れたら上記エラーは解消されました。

② validation error

これはデータ形式が正しくない為のエラーでした。最初、Postデータを作成する際に下記の形式でデータを作成してしまった為でした。

 

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください