Skip to content

dodola/M5Unified_StackChan_ChatGPT

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

M5Unified_StackChan_ChatGPT

「ChatGPT API搭載AIスタックチャン」です。

画像1

これは @mongonta555 さんのスタックチャン M5GoBottom版組み立てキットに対応したスタックチャンファームです。

HOYA社が提供するVoiceText Web APIサービスを使った音声合成(TTS)を使用しています。
VoiceText TTSは、kghrlaboさんのesp32_text_to_speechを参考にさせていただきました。
オリジナルはこちら。
esp32_text_to_speech https://github.com/kghrlabo/esp32_text_to_speech


M5GoBottom版スタックチャン本体を作るのに必要な物、及び作り方

こちらを参照してください。

プログラムをビルドするのに必要な物

使用しているライブラリ等は"platformio.ini"を参照してください。


サーボモーターを使用するGPIO番号の設定

  • M5Unified_StackChan_ChatGPT.inoの42行目付近、サーボモーターを使用するGPIO番号を設定してください。

ChatGPTのAPIキーの取得

ChatGPTのAPIキー取得方法は以下の通りです。(詳細はこのページ一番下のリンクを参照してください。)

  • OpenAIのウェブサイトにアクセスして、アカウントを作成します。メールアドレスと携帯電話番号が必要です。
  • アカウント作成後、APIキーを発行します。APIキーは有料ですが、無料期間やクレジットがあります。

VoiceText Wev API api キーの取得

APIキーは、ここの「無料利用登録」から申請すれば、メールで送られて来ます。

  • TTSのパラメータの詳細はこちらを参照してください。
    [VoiceText Web API API マニュアル]


使い方

  • SDカードのルートに以下の2つのファイルを作成しておくと、使用できるようになります。
  1. wifi.txtファイル:ファイル名は"wifi.txt"で、中身は次の通りです。
    YOUR_WIFI_SSID
    YOUR_WIFI_PASS

  2. apikey.txtファイル:ファイル名は"apikey.txt"で、中身は次の通りです。
    YOUR_OPENAI_APIKEY
    YOUR_VOICETEXT_APIKEY



  • ブラウザで"http://xxxx.xxxx.xxxx.xxxx/role_get"にアクセスすると、現在設定しているロールを取得できます。

  • AIスタックチャンの表情を会話内容に合わせて変更できます。
    ロール設定で以下の2行をそのまま入力してください。

    (Happy)のように、必ず括弧で囲んで感情の種類を表し、返答の先頭に付けてください。
    感情の種類には、Neutral、Happy、Sleepy、Doubt、Sad、Angryがあります。

    他にもロールを設定する際は、これらの2行を最後にしてください。
    出来ればこの2行のみでやってみてください。
    ロールを増やすと失敗しやすくなります。


  • 独り言モードを追加しました。ランダムな時間間隔で、ランダムに喋ります。
    感情表現機能と組み合わせると楽しいです。
    ボタンAで独り言モードをON/OFFできます。
    独り言モードでも従来通りスマホから会話できます。

  • 直近5回分の会話の履歴を保存する機能があります。

  • 音声認識プログラムは別途ユーザーが用意する必要があります。
    音声認識プログラムからこのようにhttpコマンドでテキスト(UTF-8)を渡します。
    (テキストはURLエンコードして渡してください。)

    http://XXX.XXX.XXX.XXX/chat?text=こんにちは

    XXX.XXX.XXX.XXXの部分は起動時に表示されるM5StackのIPアドレスに置き換えてください。

  • 上記と同様にしてブラウザを使ってアクセスすることも出来ます。

    画像2

  • 私は音声認識にiPhoneのショートカット機能を使っています。
    このように簡単に音声認識が使えます。

    画像3

  • M5Stack Core2の画面中央付近にタッチするとスタックチャンの首振りを止められます。

  • M5Stack Core2のボタンCを押すと、音声合成のテストが出来ます。


ChatGPTのAPIキー取得の参考リンク

VoiceText Wev API api キーのキー取得のリンク

  • APIキーは、ここの「無料利用登録」から申請すれば、メールで送られて来ます。

ChatGPTのキャラクター設定の参考リンク

About

「ChatGPT API搭載AIスタックチャン」です。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 97.0%
  • C 3.0%