はじめに
この記事はGitHub Codespacesを使ってAWS CLIをセットアップする内容となっています。
主な内容としては実践したときのメモを中心に書きます。(忘れやすいことなど)誤りなどがあれば書き直していく予定です。
セットアップしたら「Amazon Bedrock 生成AIアプリ開発入門」を参考にAWSのAIにハンズオンしていきたいと思います。
※発売前に献本いただきました。
なお、AWSの認証にはIAM Identity Centerを利用します。
GitHub Codespacesでcodespacesをセットする
codespacesを開きます。
BlankにあるUse this template
をクリックします。
AWS CLIをインストールする
画面が起動したら、ターミナルで以下のコマンドを実行します。
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
インストールされているかを確認するため、バージョン情報を表示します。
aws --version
実行結果
aws-cli/2.16.11 Python/3.11.8 Linux/6.5.0-1021-azure exe/x86_64.ubuntu.20
AWSの認証情報をセットする
IAM Identity CenterのAWS access portalを開き、Access keys
をクリックします。
下記のコマンドを実行してAWS CLIの設定を順番にセットしていきます。
aws configure sso
設定する項目
- SSO start URL
- SSO region
上記の2つを入力すると認証画面が開くので認証していきましょう。
認証画面の最後でAllow画面が表示されたら、Allow
をクリックします。
※Allow
クリック後の画面
上記の画面を閉じます。
ターミナルではどのアカウントを利用するか質問されるため、利用できるアカウントを選択します。
以降はデフォルトリージョンや出力フォーマット、プロファイル名を設定します。
※プロファイル名はdefault
と入力してEnterを実行します。
CLI default client Region [None]: ap-northeast-1
CLI default output format [None]: json
CLI profile name [XXXXX]:default
AWS CLIをテストする
以下のコマンドを実行してS3のバケットリストが表示されましたらAWS CLIの実行がうまくできています。※S3バケットを作成していない場合は何も表示されません。
aws s3 ls
Amazon Bedrockの基盤情報を取得してみる
1つ前の記事で「Amazon Bedrockに登録されている基盤モデルの情報を取得する」方法を書いていますので試してみます。
【AWS】AWS CLIでAmazon bedrockに登録されている基盤モデルの情報を取得する
記事によると以下のようにコマンドを実行すると良さそうです。
aws bedrock get-foundation-model --model-identifier amazon.titan-embed-text-v1
実行結果
{
"modelDetails": {
"modelArn": "arn:aws:bedrock:ap-northeast-1::foundation-model/amazon.titan-embed-text-v1",
"modelId": "amazon.titan-embed-text-v1",
"modelName": "Titan Embeddings G1 - Text",
"providerName": "Amazon",
"inputModalities": [
"TEXT"
],
"outputModalities": [
"EMBEDDING"
],
"responseStreamingSupported": false,
"customizationsSupported": [],
"inferenceTypesSupported": [
"ON_DEMAND"
],
"modelLifecycle": {
"status": "ACTIVE"
}
}
}
基板モデルの情報にアクセスできたのでこの環境を使って、AWS環境の生成AIにハンズオンできそうです。
もっとシンプルなコマンドとしてアカウントIDを取得する方法があります。以下のコマンドを実行するとアカウントIDが返ってくるはずです。
export AWS_ACCOUNT_ID=`aws sts get-caller-identity --query 'Account' --output text` && echo $AWS_ACCOUNT_ID
まとめ
GitHub CodespacesでAWS CLIをセットアップする方法を解説しました。
GitHub CodespacesはGitHubアカウントがあれば、すぐに起動できる使いやすさがあるので
AWS CLIと組み合わせことでAWS上の開発がしやすくなると思いました。
ちなみにGitHub CodespacesではCodespaces立ち上げ時にコンフィグを渡すことができるので
起動と同時にAWS CLIのインストールができているという状態にすることも可能です。
そういった話は別の機会にしたいと思います。