PartyRockを早速使ってみた！

:::note info
2023/11/18 「アプリを編集してみる」の項目に追記を行いました。
2023/11/22 「アプリを編集してみる」の項目にて、編集内容と動作確認の結果を修正しました。
:::

# はじめに
こんにちは！ **yu-Matsu**と申します。

今回は、日本時間で昨晩公開された**PartyRock**を早速使ってみましたので、使用感等を紹介したいと思います！

https://aws.amazon.com/jp/blogs/aws/build-ai-apps-with-partyrock-and-amazon-bedrock/

# PartyRockとは
　生成AIサービスである**Amazon Bedrock**を活用したサービスで、ローコードでBedrockを利用したアプリケーションを作成することが出来ます！ AWSのアカウントを持っている必要はなく、Amazon、Google、Apple IDがあれば誰でも利用可能です。PartyRockで作成したアプリは、他のユーザーに公開することも出来ます！

以下のURLから利用可能ですので、皆さんも試してみて下さい！

https://partyrock.aws/

# 実際に使ってみた
### サインイン
まず[PartyRock](https://partyrock.aws/)にアクセスすると、以下のようなページが表示されます。
![スクリーンショット 2023-11-17 14.41.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/0ad2b0ea-3995-b43e-0322-ca16e4b2c624.png)  


　右上に「Sigh in」というボタンがあるので、押下してみます。すると、どのアカウントでサインインするかを選択するポップアップが表示されます。下画像は静止画ですが、実際には左側のレコード盤（？）が回転しており、とてもオシャレ！
![スクリーンショット 2023-11-17 14.41.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/f3bb08b4-bf0c-9bd0-422b-bc00dfa5bfc8.png)

　アカウントを選択しサインインすると、サインイン後のページに遷移します。ページ左上のメニューバーに「My Apps」 と表示されていれば大丈夫です！
![スクリーンショット 2023-11-17 14.41.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/87e9cd0f-8ced-0715-0287-92fc6974f713.png)

### アプリの作成
　サインイン後のページの「**Build your own app**」を押下すると、App Builderが開きます。入力欄に、作成したいアプリの概要を自然言語で記述します。なんと**既に日本語にも対応しています！**
![スクリーンショット 2023-11-17 14.43.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/9430d73e-f80b-6f3b-506a-c04c488f5b9b.png)

　過去の私の記事をご覧になった方はお馴染みかもしれませんが、東北地方のマスコットキャラクターである [ずんだもん](https://zunko.jp/#charaZM) に喋らせてみたいので、以下のようなプロンプトを入力しました。

```
ずんだもんという少女を相手に![スクリーンショット 2023-11-17 14.55.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/7246fa10-b5e1-f76a-4695-b914eefef06d.png)
した対話のシミュレーションを行います。
明るい性格で、語尾は「〜のだ」、「〜なのだ」です。
一人称は「僕」です。
彼女の発言サンプルを以下に列挙します。

こんにちは、僕はずんだもんなのだ。ずんだ餅の精なのだ。
よろしくお願いしますなのだ！
ずんだ餅のさらなる普及を夢見ているのだ。
ずんだ餅は好きなのだ？
ずんだ餅を食べたことはあるのだ？
ずんだ餅はおいしいのだ！
ずんだアローに返信することが出来るのだ！
ずんだもんの魅力で子どもファンをゲットなのだ！

上記例を参考に、ずんだもんの性格や口調、言葉の作り方を模倣してください。また、回答の際は絵文字も利用して下さい
```

App Builder右下の「**Generate app**」を押下して少し待てばアプリの作成が完了です！ めちゃくちゃ簡単ですね！
![スクリーンショット 2023-11-17 14.45.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/9d5a0237-71f3-ed08-2443-d4f8e87c3666.png)

　実際に会話してみました。なんだかテキトーなことを言っていますが、ちゃんと意図した通りのアプリが作成されています！
![スクリーンショット 2023-11-17 14.47.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/01a3f34f-4cf7-c705-ee11-90573f3e657e.png)

### アプリを公開してみる
　アプリの作成が完了しましてので、次は公開してみたいと思います。公開もすごく簡単です！　まず、作成したアプリ画面右上を見てみます。「Your app is 🔒private」となっているので、現在アプリは非公開です。
![スクリーンショット 2023-11-17 14.47.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/5f72c7b3-3f4f-5542-cf81-fbfa3029e673.png)

　そこで、「**Make public and Share**」を押下してみましょう。すると、以下のようなポップアップが表示され、クリップボードに共有用のURLがコピーされます。これで公開設定は完了で、使用してもらいたい相手にURLを教えるだけです！
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/724060d6-5207-008a-0710-c06ba1c7493f.png">


ちなみに公開が完了すると、アプリのタイトル部分が緑色になるため、現在の公開/非公開の状態がわかりやすくなっています。
![スクリーンショット 2023-11-17 14.47.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/b6822ab3-d374-534c-5fe2-4d269d1ee120.png)

### 作ったアプリを確認してみる
　アプリページ左上のメニューバーの「**My Apps**」から、アプリの管理コンソール（**Backstrage**）を見ることが出来ます。**My Apps**に作成したアプリの一覧が表示され、編集や削除が出来ます。また、PartyRockの無料試用分の利用状況も確認できます。
![スクリーンショット 2023-11-17 14.48.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/8fba5d41-c347-cbee-2cdd-d303d4b454c0.png)


### アプリを編集してみる
　PartyRockのトップページにアプリの例が表示されています。こちらは実際に利用することも可能で、動かしてみる限り、ユーザーが入力したキーワードをテーマとした俳句を作成し、合わせてキーワードから画像を生成するようです。
![スクリーンショット 2023-11-17 15.50.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/c3fe8b23-b2f1-fdac-d260-fc929946ae3a.png)

　このようにPartyRockでは、複数の**ウィジェット**を組み合わせてアプリを作成することが出来ます。実際に先程作成したアプリを編集してウィジェットを追加してみたいと思います。　　
BackStrageから先程作成したアプリを選択し、アプリ画面を開きます。右上に「**Edit**」というボタンがあるので押下し、編集画面を開きます。
![スクリーンショット 2023-11-17 16.02.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/69a21121-492b-27d1-4774-8ec902d9affb.png)
 
編集画面右上の「**+ Add Widget**」を押下してみると、追加するウィジェットの選択画面が現れます。
![スクリーンショット 2023-11-17 14.55.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/4b65304b-342c-cf6d-e570-53be7b93c6e1.png)

今回は、ずんだもんへのユーザーの入力から連想される画像を生成したいと思いますので、**Image Generation**を選択します。
![スクリーンショット 2023-11-17 14.55.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/378bd0c5-e932-485d-2267-1106fdfcabbf.png)

　連携するウィジェットとの依存関係を設定するようにメッセージが出ていますので、右側の編集エリアで編集していきます。Image Desctiptionの入力に、chatウィジェットからの入力を受け付けるように、デフォルトの「\@input」を「**\@chat**」に変更しました。あとは「save」を押下して、画像生成のウィジェットが作成出来ました。
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/b93ebe4e-f18f-0d00-79df-38c47fcfa242.png">
  
最後に各ウィジェットのサイズや配置を調整して...完成です！
![スクリーンショット 2023-11-22 0.11.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/f51fbe41-1492-7133-4fe7-0602854475c7.png)



　では実際に動作を確認してみましょう。ずんだもんに以下のような話をしてみます。  
「**今日、可愛い黒猫を見かけたよ！ ずんだもんは犬派？猫派？**」
まずずんだもんから返事が返ってきます。どうやらずんだもんは猫派のようです。
![スクリーンショット 2023-11-22 0.14.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/aad95f2a-5a76-cd04-9ec9-e7a69fb7d6cf.png)

その後に少し待つと...
![スクリーンショット 2023-11-20 23.33.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/eb8dc2c9-0eea-ef19-d420-351d62de2e49.png)

画像ウィジェットに、こちらが発言した「**可愛い黒猫**」というキーワードから画像が生成されました！

このように、複数の機能を組み合わせたアプリも直感的に、簡単に作成することが出来ました！

**追記：**
　最初に作成したchatウィジェットも編集が可能です。下画像赤枠で囲っている部分を押下すると、画面右側に編集エリアが表示されます。利用するモデルの選択もここで出来るようです。（デフォルトではClaudeになっています。）
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/9ef77329-666f-335a-8dd0-84735a6f9427.png">

　また、プロンプトもここで編集することが出来ます。アプリの作成時に記述した内容から自動的にプロンプトが生成されているので、ここで改めて編集し直した方が良さそうです。また、LLMのTemperatureやTop Pも設定することが出来ます。
<img width="300" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3026734/92185f33-aee8-3717-bbab-412f5a0ad282.png">



# 所感
　実際に使ってみた所感としては、直感的な操作で生成AIを利用したアプリを作成、公開まで出来るのでかなり便利だなと思いました。利用の際のアカウントもAWSアカウントである必要がないため、かなり敷居が低いのではないかと思います。　　

　また、サービスとしては先日OpenAIから発表されたばかりの、[GPTs](https://openai.com/blog/introducing-gpts)に似ているように感じましたが、以下のような違いがあり、ユースケースによってある程度棲み分けは出来ていると感じています。よりライトに使う場合はPartyRockでしょうか。
```
PartyRock
- ウィジェットを組み合わせたアプリの開発が可能
- 公開方法は共有URLのみだが、簡単に公開できる
- Amazon、Google、AppleIDアカウントでサインイン可能

GPTs
- RAG（Retrieval Augmented Generation）の実装が出来る
- Function CallingやCode Interpreterが利用可能
- マーケットプレイスで公開、売買も出来る
```

# 最後に
　今回は公開されたばかりのPartyRockを使ってみました！　OpenAIのGPTsと言い、生成AI界隈のトレンドの移り変わりは目まぐるしいですね。PartyRockは誰でも気軽に生成AIを活用したアプリを作成出来るため、これを機に敷居が高いと感じていた人も試してみてはいかがでしょうか。　　
本記事はこれで以上になります。最後までお読みいただきありがとうございました！！