はじめに
近年では生成AIが注目を集め、実際に利用したい個人や企業が増えています。
ただ、実際に生成AIで何ができるのか?どれくらいの精度のものが得られるのか?は実際に使用して気が付くことも多いです。
AWSで生成AIを用いた機能を気軽に体験するために、「生成AI体験ワークショップ」というものがAWSから提供されています。
今回の記事ではこの生成AI体験ワークショップを使用するときの良いところと気を付けるところについて、個人の見解を投稿しています。
生成AI体験ワークショップとは
【提供サイト】
【構成図】
【特徴】
- CloudFormationテンプレートで提供されている
- 難しい設定が不要でテンプレートを実行するだけで生成AIに関するWebアプリケーションが利用できる
- 生成AIに関する機能として、「チャット」「RAGチャット」、「文章生成機能」、「要約機能」、「構成機能」、「翻訳機能」、「Webコンテンツ抽出機能」、「画像生成機能」が利用できる
- AIモデルが最新のものが選択できる(2024年5月時点 anthropic.claude-3-opus,anthropic.claude-3-sonnet,anthropic.claude-3-haiku)
生成AI体験ワークショップの良いところ
Cloudformationで構成のすべてが定義されているため、スタック作成と削除が一括で行えます。
そのため、必要な時だけ作成して不要になった時点で削除ができ不要なコストの発生が防止できます。
また、関連するAWSサービスの作成権限がユーザに付与されていれば他の準備不要でCloudFormationの実行から開始でき、WAF用のテンプレートとそれ以外のサービスのテンプレートを実行するだけなのでスタック作成中の待ち時間を含めて2時間未満で生成AIを試す環境が構築できます。
生成AI体験ワークショップを使用する際に気を付けること
①生成AIワークショップのURLがスタック作成のたびに変更される
生成AIワークショップはAWSのサイトからダウンロードできるCloudFormationテンプレートを実行して各種AWSサービスのリソースを作成しますが、そのリソースの名前が重複しないようにランダムな値が付与された形で作成されます。
URLについてもスタックを作成するたびにランダムな値で生成されるため、例えば社内で初回のスタック作成時にURLを展開していても、再度スタックを作成した際には別のURLを展開する必要が出てきます。
②CloudFormationで一括削除されるのでデータや登録したユーザも削除される
②-1:RAGファイル保存先のS3バケットが削除される
RAGチャット機能を使用するためにはS3バケットに検索対象のファイルをアップロードし、そのバケットをデータソースとしてkendraによるデータ同期を行う必要があります。
CloudFormationのスタック削除時にこのS3バケットの削除も行われるため、次回スタック作成時にファイルの再アップロードが必要になります。
②-2:Cognitoユーザプールが削除される
ワークショップの機能を使用するためにはスタック作成時に出力されるURLで指定された画面でユーザのサインインを行ってからチャットなどの機能を利用します。
このユーザ情報を管理しているCognitoのユーザプールもCloudFormationに定義されているため、スタック削除と同時に削除され、再度スタック作成後は再度ユーザ登録が必要になります。
生成AI体験ワークショップのデータ保持方法の案
CloudFormationを分割する or 一部リソースを手動管理する
生成AI体験ワークショップは一時的に利用できる環境を作成するものでカスタマイズや本稼働は目的にされていない印象です。気軽に使えて不要になったら気軽に削除されるのが最大にメリットだと思うのでこれはこれで仕方ないところかなと思います。
ですがある程度多くのユーザが使用する場合に再登録やURLの再定義を行いたくない場合は、テンプレートからCognitoとAmazonS3、CloudFrontを元のテンプレートから別のテンプレートに移して運用するか、テンプレート管理ではなく手動でAWS環境に反映させ運用することでCloudFormationの一括削除からURL変更やユーザ再登録の手間を減らすことができます。
新しいCloudFormationテンプレートをダウンロードして反映させるときにそのテンプレートからCognitoやCloudFrontを外すなどの編集する手間は発生するのでテンプレートの管理方法は検討の必要があります。
さいごに
生成AI体験ワークスペースは生成AIの機能のお試し環境として構築が非常に楽で様々なユースケースを試せるため非常に素晴らしいものだと思います。
一通りのユースケースが揃っているので、ここから不要な機能を絞ったり機能の改修をしたりするようなより発展的な活用の計画も立てやすいと思います。しかしその際に必ずリソース管理方法をしっかりと検討するようにしてください。
生成AI体験ワークスペースで提供されている内容はあくまで体験のためのもので、実際にそれを自分のものにして活用していくためにはワークスペースで提供されているリソース同士のつながりなどの構成や特徴をしっかりと理解し、どうすれば運用が楽になるか、意図しないことでリソースが消えてしまうことがないか、消えないようにするにはどうするかの対策を立てる必要があります。
生成AIのシステムを1から完璧なものを作るのは難しいことだと思います。そのため以下のような段階で徐々に作っていくのが良いのではないかと思います
- ①生成AI体験ワークショップで生成AIでできることや精度を確認する
- ②自分たちに必要な機能やユースケースを整理する(要件定義、設計)
- ③生成AI体験ワークショップのリソースや機能の一部を自分たちで管理する(提供されたテンプレートからの離脱)
- ④自分たちで管理している範囲を増やして生成AI体験ワークショップから完全離脱する
- ⑤自分たちで独自の機能改修などを続けて生成AIを活用する
生成AIは人の生活を拡張してくれるとても良いものですが、どの人にも必ず必要なものかと言われるとそうではないと思います。まずは何ができるのか生成AI体験ワークショップで確かめて、活用すべきかどうかを試してみてください。