こんにちは。アプリケーションサービス部の居石です。
AWSがaws-samplesに公開している『simple-lex-kendra-jp』をやってみたので紹介したいと思います。
長くなりましたのでPart①②③と分けています。
概要
AWSがGitHubにAmazon Lex V2 と Amazon Kendraを日本語で試すことができるサンプルを公開しています。
github.com
simple-lex-kendra-jpをデプロイすると、以下の機能が実装できます!
- Amazon Lex V2でChatbot 形式で問い合わせを行い、あらかじめ定義した「よくある問い合わせ」の対応を行う。
- 対応方法が不明な問い合わせ (フローとして定義されていない問い合わせ) の場合は、Amazon Kendra を実行して、ドキュメントを検索し返答する。
手順
README.mdに記載してある方法に沿ってやっていきたいと思います!
- 前提条件の確認(やってみた①)
- AWS CDK のセットアップ(やってみた①)
- Amazon Kendra プロジェクトのデプロイ(やってみた②)
- Amazon Lex V2 プロジェクトのデプロイ(やってみた③)
- 環境の削除(やってみた③)
前提条件の確認
Node.jsのインストール
AWS CDKを利用するため、Node.jsの実行環境が必要となります。
今回の実行環境は以下で行いました。
- Node.js v18.4.0
※手元に UNIX コマンド実行環境がない場合は、AWS Cloud9 を利用することも可能です。
AWS Cloud9 は、ブラウザのみでコードを記述、実行、デバッグできるクラウドベースの統合開発環境 (IDE) です。
cloud9-setup-for-prototypingを利用してAWS Cloud9の環境構築ができます。
リポジトリをクローンする
ターミナルで、以下のコマンドを実行します。
git clone https://github.com/aws-samples/simple-lex-kendra-jp cd simple-lex-kendra-jp npm install -ws
AWS CDK のセットアップ
※ルートディレクトリ /simple-lex-kendra-jp
で実行してください。
AWS CDK の Bootstrap
Bootstrapは初回デプロイ前に アカウント & リージョン ごとに実行する必要があります。
Bootstrapコマンドを実行すると、CFn(CloudFormation)スタックが作成され、cdk appのデプロイに必要な周辺リソース(S3やIAM等)が作成されます。
Bootstrap には Docker あるいは esbuild が手元に必要です。
今回はDocker を使用します。
EC2(Amazon Linux 2023)の実行環境でDockerを利用するには、ターミナルで以下のコマンドを実行します。 その他の環境でのDockerインストールはこちら
sudo dnf -y install docker sudo systemctl enable --now docker sudo usermod -a -G docker ec2-user sudo reboot
Dockerインストールができたら、Bootstrapを実行します。
npm exec -w cdk -- cdk bootstrap
CloudFront の WAF を利用しているため、 us-east-1
のリージョンにも Bootstrap を行う必要があります。
npm exec -w cdk -- cdk bootstrap --region us-east-1
一旦こちらで、セットアップは完了です。
次のブログでAmazon Kendraをデプロイしていきたいと思います。
Amazon Lex V2 と Amazon Kendra のサンプルプロジェクト(simple-lex-kendra-jp)をやってみた②へ続く