NTTドコモR&Dの技術ブログです。

AWS PartyRockであそんでみた

はじめに

はじめまして、NTTドコモ サービスイノベーション部の早川です。 ドコモ開発者ブログの運営を担当しており、今回アドベントカレンダーを盛り上げるために初記事投稿させていただきます!
本記事では、最近(2023/11/16に)AWSからリリースされた"PartyRock"という誰でも生成AIを使ってアプリケーションを作成、共有できるサービスであそんでみた内容を紹介します!

PartyRockとは

PartyRock は生成系 AI の様々なユースケースをアプリケーションとして実現し、共有を可能にする AWS の新しいサービスです。テキストによる指示と画面操作のみで生成系 AI を組み込んだアプリケーションを作り、共有することができます。 詳細はこちらのAWS公式ページをご参照ください。

この公式ページで実際にPartyRockで作成されたアプリの例が公開されており、このリンクから簡単に試すことができます。(Google/Apple/Amazonいずれかのアカウントでサインインが必要です。)

実際に試してみたところ、かわいいパグの画像が出力されました! ちなみに画像生成は裏でStable Difusionが動いています。

  • 左のBox(Request):生成したい画像のテキストを入力

  • 真ん中のBox(Prompt Convertor):日本語から英語に翻訳しながらプロンプト変換

  • 右のBox(CripArt):プロンプトを元に生成された画像が出力

    公開アプリの例

実際にアプリケーションをつくってみる

PartyRockでは、2023年11月時点で下記の機能が搭載されており、widgetとして組み合わせてカスタマイズすることができます。

  • User Input : ユーザーのテキスト入力を受け付ける。必ず 1 つは必要。
  • Static Text : 事前入力されたテキストを表示する。アプリケーションの説明文を書くときなどに使用。
  • Text Generation : テキストを生成する。
  • Image Generation : 画像を生成する。
  • Chatbot : チャットボットとの対話を行う。

今回は下記の構成で、プレゼントを一緒に選んでくれるアプリケーションを作成したいと思います。

  1. 相手やシチュエーションを入力 (User Input)
  2. チャットで会話しながら詳細をプレゼントを選ぶ (Chatbot)
  3. 選んだプレゼントを入力 (User Input)
  4. 送る時のメッセージ案を生成(Text Generation)
  5. シチュエーションの内容を英訳(Text Generation)
  6. シチュエーションに合ったギフトカードデザインを出力(Image Generation)

では、まずはベースから作成していきましょう! PartyRockでは、どのようなアプリケーションを作成したいかを入力すると自動で作成してくれる機能があります。 サインイン後のトップページの、"Build your own app"から作成できます。

今回は、1. 相手やシチュエーションを入力2. チャットで会話しながら詳細をプレゼントを選ぶあたりまでつくってもらうように下記のように入力しました。

App builder

そうすると数十秒で「プレゼント選びのお手伝い」というアプリケーションが立ち上がり、Recipient(贈る相手の名前), Occation(プレゼントするシチュエーション), Budjet(予算)を入力する3つの"User Input" Boxと、それらを入力した後に詳細を会話する"Chatbot" Boxが作成されました。

自動作成されたアプリケーション

もうすぐクリスマスということで、ドコモ太郎(男性友人)に5,000円のクリスマスプレゼントを贈る想定で入力してみました。 チャットで車好きなどの詳細を相談して、最終的に予算に収まるいい感じの車用加湿器を選ぶことができました。

chat入力1
chat入力2
chat入力3

続いて、3. 選んだプレゼントを入力4. 送る時のメッセージ案を生成のパーツをつくっていきたいと思います。
画面上部の"Edit" -> "+ Add Widget"から簡単に新しいWidgetを追加することができます。
今回は、最終的に選択したプレゼントを入力するため"User Input"を追加しタイトルをSelected Presentにしました。
次に "Text Generation"を選択し、最初の方に入力したRecipient(贈る相手の名前), Occation(プレゼントするシチュエーション)と、最終的に選んだSelected Presentの情報を元にして、メッセージを生成するMessageを作成しました。日本語で結果が出力されるようにプロンプトを調整しています。
このように、Widget同士の情報を手動で連携させることができるのが便利ですね!
結果、クリスマスっぽい良い感じのメッセージをつくってくれました!

Message Widgetの作成
生成されたメッセージ

最後に、5. シチュエーションの内容を英訳6. シチュエーションに合ったギフトカードデザインを出力をつくってゴールです。
"Text Generation"で、このOccationの内容を英訳してもらうTranslatorを作成します。 ここで、英訳を挟んでいるのは先に述べたように画像生成モデルがStable Diffusionで日本語のままだとうまく動作しなかったためです。
さらに"Image Generation"を追加し、Translatorで翻訳されたシチュエーションに合ったギフトカードのデザインを生成してもらいます。

実際に、今回の例(クリスマス)で画像生成してみた結果がこちらです。 クリスマスっぽくいい感じにツリーが描写されてますね!

生成された画像

これで今回つくりたかったアプリケーションは完成です!UIもわかりやすくて、簡単に作成することができました!!

つくったアプリケーションを公開する

PartyRockでは、自分で作成したアプリケーションを公開することもできます。 方法は画面上部の“Make public and Share” をクリックするだけで、とても簡単です。
私が作成したアプリケーションのリンクも貼っておくので、良かったら触ってみてください。
今回作成したアプリケーションのリンク

[:width:100]
作成したアプリケーションを公開

さいごに

今回は、2023/11/16にAWSからリリースされた"PartyRock"であそんでみました。誰でも簡単に生成AIを用いたアプリケーションを作成することができ、おもちゃ感覚で楽しむことができました。
今後さらに使えるWidgetの種類やモデルが増えていくらしいので、生成AIによるサービス検討や普段の業務改革を進めていくために期待大のサービスです。皆さんも是非使ってみてください!