拡張ブロック

▸ OpenAIブロック

31 views

プログラミングラボが提供するOpenAI拡張ブロックを使用すると、ロボットをOpenAIサーバーと簡単に連携させ、マルチターン会話や画像生成などの機能を実現できます。

OpenAIとは?

OpenAIは、高度な人工知能技術の研究開発を行い、自然言語処理、ロボティクス、コンピュータビジョン、強化学習などの多様な分野への応用を目指しています。

Open AI サイト ➜ https://openai.com/

注意事項

  • プログラミングラボのOpenAI拡張ブロックを使用しても、NUWA(NUWA)から追加料金が請求されることはありません。
  • OpenAI 拡張ブロックの接続には個人の API キーが必要です。プロジェクトを共有する際は、受領者に自身の API キーを使用させてもよいかご注意ください。キーを削除したい場合は、「プロジェクト設定」でセンシティブ情報の非表示を設定してください。
  • OpenAIは現在ベータテスト段階であるため、接続が不安定になり、メッセージの応答に時間がかかる場合があります。

事前準備

GPTブロックを使用するには、有効なOpenAI APIキーが必要です。APIキーを介してOpenAIサービスに接続し、言語モデルの入出力を行います。OpenAIアカウントの作成とAPIキー取得の手順は以下の通りです:

  1. へ移動 OpenAI 公式サイトで、“Sign up” をクリックして登録を行います。
  2. アカウントにログイン後、“View API keys” ページに移動し、”Create new secret key” をクリックして API キーを生成します。
  3. 発行されたAPIキーを保存しておくと、後でGPTブロックを使用する際に入力できて便利です。

盗用や不正利用を防ぐため、APIキーは厳重に保管してください。

ユーザーが API キーを入力すると、暗号化処理が行われます。複数のユーザーで同じプロジェクトを共有しても、API キーが複製・悪用されることはありません。それでも API キーを共有したくない場合は、「プロジェクト設定」に移動してセンシティブ情報の非表示をチェックしてください。プロジェクトのダウンロード時や共有時に、暗号化されたキーは自動的に削除されます。

OpenAI サービスへの接続

  • 説明
    接続および基本設定を行うため、プログラミングラボに OpenAI API キーを入力してください。

基本設定では、以下の内容を設定できます:

  • Token数:Tokenを短く設定しすぎると、AIの回答テキストが途中で途切れる可能性があります。
  • 画質:画像の画質設定を高くするほど、レンダリング時間やOpenAIの課金体系に影響を与える可能性があります。
  • マルチターン対話の最大回数:マルチターン対話が最大回数に達すると、自動的にその対話が終了します。対話回数が多くなるほど、読み込み時間が長くなります。

OpenAIと1回対話し、変数「 _ 」に代入する

  • 説明
    OpenAIの音声対話APIを使用してロボットに1回の対話を行わせ、OpenAIから返却されたメッセージを変数に保存して、ロボットからメッセージを出力させます。

  • ブロックの下に「 ” _ ” と言う 」または「 ” _ ” を出力 」ブロックを接続して、OpenAIから返却されたメッセージを表示します。

OpenAIとマルチターン会話を行い、各会話の結果を変数「 _ 」に代入します。ロボットが「 _ 」を聞き取るまで会話を継続します

  • 説明
    OpenAIの音声対話APIを使用してロボットに複数回の対話を行わせます。各対話でOpenAIから返信されたメッセージを同じ変数に保存し、ロボットがメッセージを出力します。事前に設定した終了コマンドを聞き取るか、対話回数の上限に達すると、対話は自動的に終了します。* 対話ブロックには「マルチターン対話」と「シングルターン対話」があり、マルチターン対話ではロボットが直前の数ターンの対話内容を記憶し、話題に合わせて会話を継続できます。
    * マルチターン対話の最大上限回数は「OpenAIへの接続ブロック」で基本設定を行ってください。

  • 「マルチターン会話」を利用してロボットに赤ずきんのお話をしてもらう際、物語が長くて1回の会話で完了しない場合は、「続けて」「それから?」など、話題を引き継ぐ任意のフレーズを使用してAIに物語を続けさせることができます。
    「1回会話」ブロックを使用している場合、「続けて」と言ってもAIは以前の会話履歴を保持していないため、何を続ければよいか判断できません。

ロボットが聞き取った内容をOpenAIに送信して画像生成を行い、その結果を変数「 _ 」に代入します

  • 説明
    OpenAIと1回の音声対話を行い、OpenAIが音声の記述に基づいて画像を生成し、OpenAIから返却された画像情報を変数に保存します。

OpenAIの画像生成結果「 _ 」を再生し、「 _ 」秒間表示を継続する

  • 説明
    変数に保存されたOpenAIの返却画像を再生します。前のブロックと組み合わせて使用します。

*このブロックのレンダリングはリアルタイムで行われ、生成された画像は保存されません。

AI画像生成素材「 _ 」を選択し、「 _ 」秒間連続再生する

  • 説明
    OpenAIに渡された説明テキストに基づいて3枚の画像を生成させます。返却された画像をプロジェクト素材に保存し、このブロックで再生表示できます。
    *初めてご使用になる前に、APIキーを入力する必要があります。
    他のOpenAIブロックと異なり、このブロックはプログラム実行前にまずウェブ側で画像生成処理を行います。「OpenAIサービスに接続」ブロックはロボットの実行時に接続を行います。

  • 動物を紹介するプログラムを作成する際、動物の画像が必要になりますが、インターネットから直接検索すると著作権の問題が発生する可能性があります。そのため、このブロックを使用して画像を生成することで、使用する画像がすべて法的権利を侵さないことを確認できます。

← 前の記事:AIトレーニングスクールブロック

詳しく読む:フェイスエディタ

Share this Doc

▸ OpenAIブロック

Or copy link

CONTENTS