生成系AIの活用は進んでいますか?医療系の組込みソフトウェア開発をしている中川です。
生成系AIでアプリを作る際に、以下のような課題を感じていませんか。
・生成系AIのチャット以外のユースケースの検討・実装方法が思いつかない
・せっかくアプリを作っても活用されているのか分からない
・セキュリティ面の不安、対策が大変
そんな課題を払拭してくれるのが「Generative AI Use Cases JP(通称:GenU)」です。
GenUはAWS公式がOSSで提供しているWebアプリです。
デフォルトで様々な生成系AIのユースケースが用意されており、アプリの利用状況もウォッチすることが可能です。また、セキュリティ対策においても基本的な機能が提供されており、ユーザー認証やアクセスするIPアドレスの設定が容易にできます。
GenUを使用して、生成系AIでアプリを制作する方法を、環境構築編/活用編に分けて紹介します。今回は環境構築編です。
GenUの環境を構築するための準備
・対応OS
Windows OS
Mac OS
Linux
※今回はWindowsの環境で説明します。
・クレデンシャルが設定されているAWSアカウント
→AWS使用料の支払いをするため。
・Amazon Bedrockで使⽤したいモデルを unlock
・AWS コマンドラインインターフェース(CLI)をインストール
・AWSアカウントで、アクセスキー・シークレットアクセスキーを控える
・Node.jsをインストール
・ Visual Studio Code (以降VSCode)をインストール
→2025年時点で、「AWS Cloud9」を使用した環境構築の説明がたくさんありますが、「AWS Cloud9」が廃止された今、皆さんが使いやすいものの例として、VSCodeで説明します。
環境構築手順
①VSCodeの拡張機能として「AWS Toolkit」をインストールします。
②AWSアカウントでログインします。
ここで[IAM Credentials]を選択して、事前に控えておいたアクセスキー・シークレットアクセスキーを使用してログインします。
③環境変数を設定する。
VSCode上のターミナル、またはコマンドプロンプトにて「aws configure」を実行します。
以下の項目の入力を求められるので入力します。
aws_access_key_id:②で入力したアクセスキー
aws_secret_access_key:②で入力したシークレットアクセスキー
region:リクエストを送信するサーバーの AWS リージョンです。筆者は[us-east-1]を選択しました。
output:出力形式です。あまり悩まずに [json]で良いです。
④GenU環境のソースコードクローン
作業するディレクトリ(任意)に移動して、以下サイトからソースコードを入手しクローンします。
https://github.com/aws-samples/generative-ai-use-cases-jp
⑤GenU環境のデプロイ
以下の3行を打ち込んでデプロイしてください。
npm ci
npx –w packages/cdk cdk bootstrap
npm run cdk:deploy
⑥GenU環境へアクセス
GenU環境のデプロイが正常終了したら、GenU環境へアクセスします。
AWSコンソール画面から[CloudFormation]をクリックして[GenerativeAiUseCasesStack]を選択します。
[出力]タブの「WebUrl」のリンクをクリックしてGenU環境へアクセスします。
※記事用にダミーのURLを作成しています。
GenU環境へxxxxのアカウントでログインします。
これでGenU環境が使用できるようになりました。
※xxxxのアカウントは[アカウントを作る]タブから作成できます。
ログイン後の画面は下記の通りとなります。
以降、GenUで定義しているユースケースで生成系AIを利用することが出来ます。
オプション:セキュリティ対策
①セルフサインアップ機能の無効化
packages/cdk/cdk.jsonに"selfSignUpEnabled"という設定値があります。デフォルトは、"true"になっているため、"false"に変更します。
これにより、許可したアカウントしかアクセスできなくなります。
②AWS WAF による制限を有効化する
IPアドレスによる制限と地理的制限を指定できます。両方を指定した場合は論理積の条件になります。
IPアドレスによる制限:
packages/cdk/cdk.jsonに"allowedIpV4AddressRanges"という設定値があります。デフォルトはNULLになっているため、アクセスを許可するIPアドレスに変更します。
地理的制限:
packages/cdk/cdk.jsonに"allowedCountryCodes"という設定値があります。デフォルトはNULLになっているため、アクセスを許可する国に変更します。
まとめ
意外と簡単にGenUの環境設定ができ、生成AIを利用するハードルがぐっと下がったのではないでしょうか。GenUはOSS(MIT-0)として無償公開されており、自由にカスタマイズ可能です。次回は活用編として、GenUを使用したカスタマイズ方法を紹介します。
富士ソフトのAWS関連サービスについて、詳しくはこちら
アマゾンウェブサービス(AWS)