AI搭載ロボットの妖精さんをChatGPTと考えてみた。
以前、ハイファンタジーRPGをChatGPTに作らせていて、旅のお供の妖精さんを作るのに中々技術が大変であることがわかりました。
実際に妖精ロボットを作った方が簡単なんじゃないの?と思ってChatGPTに相談しました。
ヒントはこの蝶形ロボット
下記のYoutube動画は8年前のもので開発会社のサイトももう無いのですが、なかなか本物のように飛び回ります。
このような薄い羽を持つ小さなスピーカーとセンサーのみを搭載した妖精ロボットなら可能なのではないかと思いました。まずChatGPTに以下のようなアイデアを振ってみました。
筆者問:この妖精ロボットは普段はワイヤレス充電機の椅子の上に座っています。そして、ToDoリストみたいなものも組み込んでおいて、時間になったら本機であるPCまで飛んできます。そしてそこで作業している人間のそばでミーティングなどをしていたら邪魔にならないように、人間の肩に乗るとか、ちょっとしたアクションをします。それが終わったら、充電器である椅子に戻ります。また、名前を呼ぶと、椅子から飛び上がってそばにきて会話してくれます。
物理的な仕様を作り上げるためのロードマップを作ってください。羽は透明なセルが蛾や蝶の様にはためくような仕様にしたいのですが、本体を小さなスピーカーのみ内蔵でできるだけ軽量化したら実現できますかね?
妖精さんロボット:開発ロードマップ
GPT-4回答:
妖精のように飛ぶロボットを開発するための一般的なプロダクトロードマップは以下のようになります:
コンセプトデザインと要件定義
ハードウェア開発
ソフトウェア開発
コミュニケーション機能の開発
安全性とプライバシーの確保
ユーザビリティテストと改善
マーケットへの展開
コンセプトデザインと用件定義
GPT-4のトークンが切れたのでここはGPT-3.5に書いてもらった。
コンセプトデザイン:
外観デザインは、妖精のイメージを基にした可愛らしいデザインを採用します。
小型で飛行可能なロボットとして、軽やかで繊細なイメージを持つ外観とすることを目指します。
羽は透明なセルで構成し、蛾や蝶のように羽ばたく動きを再現します。
要件定義:
動作と機能:
自由自在に飛行し、人間のそばに舞うことができます。
呼ばれた際に素早く対応し、ユーザーのもとに飛んできます。
内部にはLanguage Model(LLM)が搭載されており、初音ミクのようなかわいらしいボーカロイド音声で会話します。
声は耳元で鳴るように設計され、周囲に迷惑をかけることなくコミュニケーションを行います。
オーダーメイド注文:
ユーザーはオーダーメイドの注文を行うことができます。
サイト上でキャラメイキングを行い、肌の色、顔のパーツ、羽の色などの外観設定を選択します。
会話のボイスは初音ミクのお湯なボーカロイドの中から選択可能です。
ユーザーの呼び名や性格(ツンデレタイプ、天然タイプ、お姉様タイプ、勇者タイプ、妹タイプなど)も指定できます。
セキュリティとプライバシー:
ユーザーのデータや会話は厳重に保護され、プライバシーが尊重されます。
セキュリティ対策が施された通信プロトコルを使用し、外部からの不正アクセスを防ぎます。
ハードウェア開発仕様書叩き台を作ってもらった
ここからはGPT-4が担当します。
GPT-4提案:
あなたが目指している妖精さんロボットの要件を考慮に入れると、以下のような技術が役立つかもしれません。
赤外線マーカーとカメラシステム: eMotionButterfliesの例から学んだように、赤外線マーカーとカメラシステムはロボットの位置と動きを追跡し、その情報を使用してロボットの飛行を調整するのに非常に有用です。これは空中衝突を防ぎ、ロボットが所定のエリア内で適切に移動することを確保します。
軽量素材: 妖精の体は軽量なプラスチックまたは他の軽量素材で作ることが理想的です。これにより、ロボットは飛行するためのエネルギーを最小限に抑え、効率を高めることができます。
小型バッテリー: 妖精のように飛ぶロボットを実現するためには、軽量で長持ちするバッテリーが必要です。最近の技術進歩により、小型でありながら長時間の動作を可能にするバッテリーが利用可能になってきています。
高度なセンサー技術: ロボットが自律的に飛行し、周囲の環境を認識できるようにするためには、高度なセンサー技術が必要です。これには、障害物検出、位置追跡、速度計測などが含まれます。
AIと機械学習: AIと機械学習は、ロボットが自律的に飛行し、状況に応じて行動を調整する能力を持つために必要です。これにより、ロボットはより複雑なタスクを遂行し、人間との自然な対話を可能にすることができます。
音声認識と音声合成: ロボットが人間の音声コマンドを理解し、自然な音声で応答できるようにするには、音声認識と音声合成技術が必要です。これらの技術は、スピーカーとマイクロフォン、そして音声を解析および生成する。
ソフトウェア開発仕様書叩き台を作ってもらった
GPT-4提案:
お伺いした内容を踏まえて、妖精さんロボットのソフトウェア開発ロードマップを以下のように提案します。
要件定義と設計: まずは妖精さんロボットの機能と要件を明確に定義します。特に、ユーザーが設定した音声や名前で反応し、ユーザーが設定した初回応答を出力するといったキーポイントを把握します。
API統合: ここでは、GPT-3 APIや音声合成API、Whisper APIなど必要なAPIの統合を行います。これにより、ユーザーの音声入力をテキスト化し、それに対するテキスト応答を生成し、さらにそれを音声に変換する一連の流れを実現します。
ユーザー設定の実装: ユーザーが妖精さんロボットにつけた名前や初回応答、音声などの設定を保存し、それをもとに妖精さんロボットが動作するようなシステムを作ります。これは、データベースやローカルストレージなどを活用します。
音声認識と反応機能の開発: Whisper APIを活用してユーザーの音声を認識し、それに対する反応を生成するシステムを開発します。また、ユーザーが設定した名前で反応する機能もこの段階で開発します。
テストとデバッグ: 開発したシステムが正しく動作するかテストを行い、問題があればデバッグを行います。
ユーザーフィードバックと改善: 実際のユーザーに試用してもらい、フィードバックを収集します。そのフィードバックをもとに、システムの改善を行います。
デプロイ: システムを実際の妖精さんロボットに組み込み、運用を開始します。
補足として下記の情報も教えてくれた
GPT-4談:
OpenAIのWhisperはiPhoneアプリとの互換性があります。GitHubの情報によると、WhisperはObj-Cアプリケーションでオフラインの音声認識をローカルで行うことができます。
妖精さんロボットがユーザーに届けられたときに、Whisperが組み込まれているようにすることは技術的に可能です。これには、ロボットの制御システムがiOSアプリケーションとして設計され、その一部としてWhisperが組み込まれていることが前提となります。
iPhoneの妖精さんロボットアプリ
iphoneアプリとロボット本体の連携の仕様も考えてもらった。
GPT-4談:
妖精さんロボットとiPhoneアプリの連携については以下のようなステップや要素が考えられます:
アプリとロボットのペアリング: 初めてロボットを使うとき、ユーザーはiPhoneアプリを使ってロボットとペアリング(つまり、接続)する必要があります。これは、一般的にBluetoothやWi-Fiを介して行われます。
スリープとウェイクアップ: iPhoneアプリはロボットのスリープとウェイクアップを制御することができます。例えば、一定時間ロボットが使用されていない場合、アプリはロボットにスリープモードに入るよう指示することができます。同様に、アプリを開いてロボットを「起こす」ことも可能です。
視覚的フィードバック: ロボットが起動したときや特定のコマンドを受け取ったときに、妖精さんロボット本体がキラキラ光るなどの視覚的フィードバックを提供することができます。これにより、ユーザーはロボットがアクションを認識したことを瞬時に理解することができます。
音声コマンドとフィードバック: ユーザーがiPhoneアプリを通じて音声コマンドを送信できるようにすることも可能です。これにより、ユーザーはアプリを介してロボットに指示を出すことができます。さらに、ロボットはこれらのコマンドに対するフィードバックをアプリに送信し、アプリはこれをユーザーに表示することができます。
設定とカスタマイズ: iPhoneアプリは、ロボットの設定やカスタマイズを容易にすることができます。これには、ロボットの音声、反応、名前、そして第一声の返事などが含まれます。
妖精さんロボット、入眠サポートと目覚まし機能
筆者問:よく入眠アプリとかあるじゃないですか。 あんな感じで、ベッドサイドストーリーを妖精さんがユーザーが眠りにつくまで語ってくれたらいいですよね。一つ語ってユーザーが「もっとお話し」と要求したらまた新しいお話を聞かせるという仕組みです。そして貴方のお話が終わって10分経ってもユーザーからの反応がなかったら妖精さんは充電器の椅子の上に戻り自分も休みます。
GPT-4回答:
妖精さんロボットの「眠り検知と自動休止」機能についての仕様書を考えてみましょう。
1. 眠り検知機能
目的: ユーザーが眠ったことを自動的に検知し、不必要なエネルギー消費を抑制します。
仕様:
妖精さんロボットは、ユーザーが眠りについたかどうかを音声認識やモーションセンサーを使用して検知します。
音声認識により、ユーザーから「もっとお話し」との要求が一定時間(例えば10分)無かった場合、ユーザーが眠ったと判断します。
モーションセンサーは、ユーザーの動きが一定時間無かった場合に眠ったと判断します。しかし、誤検知を防ぐため、一定の閾値(例えば15分以上の無動作)を設けます。
2. 自動休止機能
目的: 妖精さんロボットのバッテリー消費を抑え、安全性を確保します。
仕様:
眠り検知機能がユーザーの睡眠を検知した場合、妖精さんロボットは自動的に休止モードに移行します。
休止モードでは、妖精さんロボットの主要な機能はオフになり、エネルギー消費は最小限になります。ただし、眠り検知機能と自動休止機能の解除機能は稼働したままとします。
ユーザーが目覚めて妖精さんロボットに話しかける、またはユーザーの動きをモーションセンサーが検知した場合、自動休止機能は解除され、妖精さんロボットは通常モードに戻ります。
3. 充電モード
目的: 妖精さんロボットのバッテリー寿命を延ばします。
仕様:
自動休止機能が作動した場合、妖精さんロボットは充電器に戻ります。
充電器は、妖精さんロボットが座ることができる「椅子」形状で、ロボットが座ることで自動的に休眠状態に入る。
自動的な休止モードの機能を実装するにあたり、エネルギー効率や安全性を考慮した仕様書は以下のようになるかもしれません:
機能の概要:ユーザーが眠りについてから一定時間後に、妖精さんロボットは自動的に休止モードに入る。休止モード中は、ロボットの動作や音声出力は停止し、エネルギー消費を最小限に抑える。
休止モードのトリガー:ロボットは、音声認識や動作分析を用いてユーザーが眠りについたと判断する。また、ユーザーから明示的に「眠る」という指示を受けた場合も、その時点から一定時間後に休止モードに入る。
休止モードへの移行時間:ユーザーが眠りについてから、デフォルトでは30分後に休止モードに入る。ただし、ユーザーはこの時間を自由に設定できる。
エネルギー効率:休止モードは、ロボットのエネルギー消費を最小限に抑える。ロボットは必要最低限のシステムしか稼働させず、バッテリーの充電を長持ちさせる。
安全性:休止モードでは、ロボットは飛行を停止し、安全な場所に着陸する。また、休止モードに入る前には、ロボットはユーザーに通知する。
休止モードの解除:休止モードは、ユーザーの音声コマンドや特定の時間が来たときに解除される。また、緊急事態が検知された場合(例えば、火災警報が鳴るなど)、ロボットは自動的に休止モードを解除し、適切な行動をとる。
目覚まし機能:ユーザーは妖精さんロボットに目覚ましの時間を設定できる。設定された時間になると、ロボットはユーザーの名前を呼びながら優しく起こす。例えば、「けんと、おきてー。おきてーー。もう7時だよ」などと言う。この機能は、ユーザーが日常生活のリズムを整えるのを助ける。
時間設定:ユーザーは、具体的な時間や「2時間後に起こして」のような相対時間で目覚ましを設定できる。また、毎日同じ時間に設定するリピート機能も提供する。
スヌーズ機能:目覚ましの通知が始まった後、ユーザーは「もう少し寝る」などのコマンドでスヌーズ機能を利用できる。デフォルトのスヌーズ時間は5分だが、ユーザーはこれを自由に設定できる。
親しみやすいボイス:親しみやすいボイスと感情表現: ユーザーが設定画面で選択した声優の声色で、妖精さんロボットが声を出します。通常のChatGPTによる会話だけでなく、特定のシーン(例えば目覚まし時計機能など)での抑揚や感情を含んだ音声も予めサンプリングし、状況に応じて再生します。具体的には、「おきてーーー!もう、朝だよおお!遅刻するぞぉ!」などのリアルな声優の声を利用します。また、感情表現の音声サンプル(例えば、「んー。」、「えへへ」、「ワォ」など)も予め収録しておき、会話の節目節目に挿入することで、より自然なコミュニケーションを実現します。
目覚めの確認:ユーザーが起きたことを確認するために、ロボットは目覚まし後にユーザーに声をかける。ユーザーが反応しない場合、ロボットは一定時間後に再度目覚ましを行う。
iPhoneアプリとロボット本体の連携の仕様
妖精さんロボットとiPhoneアプリの連携については以下のようなステップや要素が考えられます:
アプリとロボットのペアリング: 初めてロボットを使うとき、ユーザーはiPhoneアプリを使ってロボットとペアリング(つまり、接続)する必要があります。これは、一般的にBluetoothやWi-Fiを介して行われます。
スリープとウェイクアップ: iPhoneアプリはロボットのスリープとウェイクアップを制御することができます。例えば、一定時間ロボットが使用されていない場合、アプリはロボットにスリープモードに入るよう指示することができます。同様に、アプリを開いてロボットを「起こす」ことも可能です。
視覚的フィードバック: ロボットが起動したときや特定のコマンドを受け取ったときに、妖精さんロボット本体がキラキラ光るなどの視覚的フィードバックを提供することができます。これにより、ユーザーはロボットがアクションを認識したことを瞬時に理解することができます。
音声コマンドとフィードバック: ユーザーがiPhoneアプリを通じて音声コマンドを送信できるようにすることも可能です。これにより、ユーザーはアプリを介してロボットに指示を出すことができます。さらに、ロボットはこれらのコマンドに対するフィードバックをアプリに送信し、アプリはこれをユーザーに表示することができます。
設定とカスタマイズ: iPhoneアプリは、ロボットの設定やカスタマイズを容易にすることができます。これには、ロボットの音声、反応、名前、そして第一声の返事などが含まれます。
妖精さんロボット目覚まし機能
目覚まし機能:ユーザーは妖精さんロボットに目覚ましの時間を設定できる。設定された時間になると、ロボットはユーザーの名前を呼びながら優しく起こす。例えば、「けんと、おきてー。おきてーー。もう7時だよ」などと言う。この機能は、ユーザーが日常生活のリズムを整えるのを助ける。
時間設定:ユーザーは、具体的な時間や「2時間後に起こして」のような相対時間で目覚ましを設定できる。また、毎日同じ時間に設定するリピート機能も提供する。
スヌーズ機能:目覚ましの通知が始まった後、ユーザーは「もう少し寝る」などのコマンドでスヌーズ機能を利用できる。デフォルトのスヌーズ時間は5分だが、ユーザーはこれを自由に設定できる。
親しみやすいボイス:目覚ましの通知は、ユーザーが感じる親しみやすさを高めるために、アニメーションやゲームのキャラクターのようなボイスで行われる。
目覚めの確認:ユーザーが起きたことを確認するために、ロボットは目覚まし後にユーザーに声をかける。ユーザーが反応しない場合、ロボットは一定時間後に再度目覚ましを行う。
ロボット妖精肩乗せ型充電器
妖精さんを肩に乗せて歩ける充電器をCADで描くプロンプトをGPT-4に作ってもらいました。
なんだかよくわからないマシンができたのですが、かっこいいので掲載しておきます。
妖精さんカスタマイズwebページの概念設計
続いて妖精さんロボットオーダーサイトの設計もGPT-4にしてもらった。
妖精さんカスタマイズページの概念設計を提案します。ここでは各ステップと重要な機能を説明します。
1. トップページ
タイトル: "妖精メーカー:あなただけの飛行コンパニオンを作り出す"
紹介文: "「妖精メーカー」へようこそ、ここでファンタジーが現実となります。あなた自身の妖精のコンパニオンをデザインし、その最小の詳細までカスタマイズすることができます。妖精の羽の色と形、皮膚の色、顔のパーツ、髪の色、コスチューム、音声、そして応答する名前まで選ぶことができます。それぞれの妖精はユニークな創造物で、あなたの想像力と個人的なスタイルを反映しています。これらの軽量でスピーカーが装備された妖精のロボットはあなたのPCに接続し、最先端の音声ソフトウェアを使ってコミュニケーションをとります。これにより、魔法のような、新しいコミュニケーション体験が可能となります。あなたの妖精の旅はここから始まります。空に舞う喜びを手に入れましょう。"
ユーザーは「あなたの妖精さんを作成する」ボタンをクリックしてカスタマイズプロセスを開始します。
2. 妖精さんカスタマイズページ
羽の色: パレットから色を選択できます。
羽の形: 選択肢から形状を選びます。
皮膚の色: パレットから色を選択できます。
顔のパーツ: 目、鼻、口などの選択肢から選び、配置や大きさを調整できます。
髪の色: パレットから色を選択できます。
コスチューム: リストから選択できます。
音声: サンプルを聞きながら音声を選択します。
名前: ユーザーが入力します。
これらの設定は、妖精さんのプレビューがリアルタイムで表示されるので、ユーザーは自分が作成した妖精さんを確認できます。
3. 確認と注文ページ
ここでユーザーはカスタマイズした妖精さんを最終確認します。
「注文する」ボタンをクリックすると、情報入力ページに進みます。
4. 情報入力ページ
住所、氏名、電話番号、メールアドレス、クレジットカード情報を入力します。
5. 注文確定ページ
「送信」ボタンをクリックすると、予約番号と発送日などの情報が表示されます。
同時に、これらの情報がユーザーのメールアドレスに送信されます。
とまあ、技術的には実現できそうな開発ロードマップになりました。筆者は非常に作って見たい気持ちになっています。
この記事が気に入ったらサポートをしてみませんか?