Claudeを呼び出せるAppSheetスマホアプリを作成します.
- Lmabdaのコンソールを開き、左メニューから「関数」をクリックする.
- 関数の作成をクリックする.
- 関数名に「jawsug-nagoya-handson-claude」と入力し、ランタイムに「Python 3.11」を選択し、「関数の作成」をクリックする.
- 以下のコードをコピペして、「ctrl」+「s」キーで保存し、Deployをクリックする.
https://github.com/tsukumonasu/jawsug-nagoya-bedrock/blob/master/claude2/index.py - 設定タブを開き、実行ロールの「編集」をクリックする.
- タイムアウトを5分に設定する.
- 「IAM コンソールで jawsug-nagoya-handson-claude-role-xxxxxxx ロールを表示」をクリックする.
- ポリシー名をクリックし、「編集」をクリックする.
- 以下のJsonを貼り付けて、「次へ」をクリックする.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "logs:CreateLogGroup",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"kendra:Query"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"bedrock:*"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": [
"*"
]
}
]
}
- 「変更を保存」をクリックする.
- IAMのコンソールを開いている2つのタブを閉じる.
- Lambdaのコンソールに戻って「保存」をクリックする.
- 関数URLを左のメニューから選択し、「関数 URL を作成」をクリックする.
- 認証タイプで「None」を選択し、「保存」をクリックする.
- 関数URL が表示されるようになるので、コピーしておく(あとで使う).
- 環境変数を左のメニューから選択し、「編集」をクリックする.
- 環境変数の追加をクリックし、「BUCKET_NAME」に作成しているバケット名を入力し、保存をクリックする.
- 左のメニューからコードを選択し、下までスクロールし、「レイヤーの追加」をクリックする.
- 作成したレイヤーを設定し、「追加」をクリックする.
Lambdaのコードを以下に書き換えることで、llama2で生成されるようになります.
https://github.com/tsukumonasu/jawsug-nagoya-bedrock/blob/master/llama2/index.py
- Googleのアカウントにログインし、SpreadSheetを開く.
https://docs.google.com/spreadsheets/u/0/?tgif=d - 右下の「+」をクリックする.
- 左上の「無題のスプレッドシート」をクリックし、名前を「AIチャットボット」に変更する.
- SpreadSheetに以下をコピペする.
timestamp ID 質問 回答
2023/11/19 17:32:13 41131ab5 武田信玄について教えて 武田信玄は、戦国時代の甲斐国の戦国大名です。
2023/11/19 17:36:26 19a046fd 武田信玄について教えて 武田信玄は、戦国時代の日本の著名な武将の一人で、甲斐国の国主であり、今日の山梨県の地域で活躍した人物です。
- メニューから「拡張機能」→「AppSheet」→「アプリを作成」をクリックする.
- しばらくしてアプリができるので、「ready!」の右の「X」をクリックする.
- 左のメニューから「Data」(データベースのロゴ)をクリックする.
- IDのSHOW?のチェックボックスを外し、回答のTypeをLongTextに設定する.
- 左のメニューから「Views」(スマホのロゴ)をクリックする.
- 以下のように設定する.
- 「Create my first automation」をクリックする.
- Create a new botをクリックする.
- Event nameを「質問」、Add Onlyに設定し、Add a Stepをクリックする.
- Step nameに「WebhookTask」を設定し、「Create custom step」をクリックする.
- Presetを「Custom」、URLをLambdaのURL、HTTP Verbを「Post」に設定する.
- Bodyに「
{"user_prompt": "<<[質問]>>"}
」を設定する.
- Return Valueを「オン」にして、Specific typeのNameを「Key」から「completion」に修正する.
- Timeoutを「300」、「Max number of retries on failure」を「1」に設定する.
- 「Add a step」をクリックする.
- Step nameに「回答を入力」を設定し、「Run a data action」をドロップダウンから選択し、「Create custom step」をクリックする.
- 「Set row values」を選択し、 「Set these column(s)」に「回答」を設定し、すぐ右の「=」をクリックする.
- 「[WebhookTask].[completion]」を入力し、「Save」をクリックする.
- 右上の「Save」をクリックする.
- 右上のスマホのアイコンをクリックする.
- 右下の「+」をクリックする.
- 質問を入力し、「Save」をクリックする.
- 回答が出力される.