はじめに
Gemini Live便利ですよね!調べものするときに使用してます.
ここではMIT App Inventorを用いたAIとのおしゃべりアプリ(Gemini Liveの真似)を作成します.MIT App Inventorに搭載されている音声認識とGemini APIを使用した対話型のAIとのコミュニケーションアプリです.
aiaファイルのAPIKeyはご自身のに書き換えて実行してください.
オリジナル対話アプリ
MIT App Inventorでsystem instructionを指示します.この指示の文章でAIの回答を調整でき,ユーザーに適した回答を行えるように指示することでオリジナリティあふれる色々なアプリに応用できます!
system instruction:システム命令を使用してモデルの動作を制御する
システム指示を使用すると、特定のニーズやユースケースに基づいてモデルの動作を制御できます。
システム指示を設定すると、モデルにタスクを理解するための追加のコンテキストが提供され、よりカスタマイズされたレスポンスが可能になります。また、モデルとユーザーのインタラクション全体を特定のガイドラインに準拠して行うことができます。また、エンドユーザーが提供するプロンプトとは別にシステム指示を設定することで、プロダクト レベルの動作を指定することもできます。
アプリの概要
ボタンをクリックするとAIとの会話がスタートします.初めはユーザーがAIに話しかけます.話しが終わると,アプリが音声をテキストに変換し,Gemini APIに渡します.レスポンスが来ると,回答をスマホがしゃべります.しゃべり終わると,音声認識をスタートし,会話を続けることができます.
ただ,Geminiの解答中に割り込んでユーザーの音声を認識させることができないため,この点に関してはGemini Liveに劣っているところです.
MIT App InventorでのGemini APIを用いたアプリ開発について
MIT App InventorからGenimiを使用する方法 (interactive chat)
API keyの取得
Google AI Studioにアクセスをし,APIKeyを作成する.
MIT App Inventorの作業
Designer画面
以下のように作成します.
機能 | 内容 |
---|---|
Button_音声認識 | ボタン,AIとの対話スタート. |
Button_tinyDB_リセット | ボタン,tinyDB(履歴)のリセットを行う. |
Button_履歴 | ボタン,対話履歴の閲覧. |
Button_音声STOP | ボタン,AIのレスポンスの回答の音声を止める. |
Label_response | ラベル,回答の表示する. |
SpeechRecognizer1 | 音声をテキストに変換する. |
Web1 | Gemini APIにリクエストを送る. |
TextToSpeech1 | Gemini APIの解答をしゃべる. |
Blocks画面
変数
https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash-latest:generateContent?key=
-
system_instruction
AIの回答を指示する,要求に対応できる文章を入力して下さい.
貴方は何でも知っている神です.
回答はtextToSpeechをしようして,音声にして利用者に伝えます.
以下に示す注意点を厳守して回答してください.
音声で回答するため,回答には音声で回答できないテキスト,絵文字を含めないでください.
回答は100文字以内で回答できるとよいです.内容によっては超えても構いません.
漢字の読みが間違いそうな場合にはひらがなで回答してください.
ボタンクリック
ほかのブロック
終わりに
プログラミングを行うことなく,AIとの対話型のコミュニケーションを行うことができるようになりました.生成AIは莫大な情報を学習しているのでsystem_instructionの設定次第でいろいろな使い道があると思います!