AWS re:invent 2023 〜Amazon Q をSlackに召喚する
2023-11-29
azblob://2023/11/29/eyecatch/2023-11-29-hello-amazonq-chatbot-000_0.jpg

Amazon Q発表

8時間ほど前にAWSからAmazon Qが発表されました!

ChatGPTなどのようにAWSに関することをチャット形式で質問可能です. 
まだ英語版のみの対応ですが日本語への対応が待ち遠しいですね!

https://www.youtube.com/watch?v=bZsIPinetV4

また,それに伴ってAWSのマネジメントコンソールのサイドバーにもAmazon Qが表示されるようになり,どこからでも簡単に質問することが可能になりました!

Amazon QをSlackに召喚してみる

Amazon Qの発表とほぼ同時にSlackとMicrosoft TeamsにてAWS ChatBotを介してAmazonQと会話することがサポートされたとの発表がありました.

どうもLambdaでコードを書いたりしなくてもボタンをポチポチするだけで召喚ができるようになるようです.

とのことなので早速Slackに召喚してみたいと思います.

Chatbot用のIAMロール作成

まず, Chatbot用のロールを作成する必要があります. Chatbot作成時の画面からもロールの作成は可能なのですが,AmazonQ用のポリシーが付与されたロールが作成できないため今の所は手動で作成する必要があります.

1. IAMのサービスに移動し,ユースケースからAWS Chatbotを選択する.

2. 許可を追加より, AmazonQFullAccess   を付与する.

3. 確認画面が表示されますが,こんな感じでロールを作成します.

SlackとAWSとの接続

次にAWS Chatbotにアクセスしてクライアントの設定をしていきます.

チャットクライアントを設定 から,Slackを選択しワークスペースとの接続を行います.

ワークスペースとの接続を許可するか?という画面に飛びますのでAllowをクリックして承認します.

正常に接続されるとワークスペースの設定画面に遷移しますので新しいチャネルを設定からSlackのチャンネルとの接続を作成していきます.

設定は以下のようになっています.よしなに入力して問題ないのですが,注意する箇所は以下の項目です.

  • Slackチャネル
    • AmazonQと会話したいチャネルのIDを入力してください.
  • チャネルロール
    • 既存のIAMロールを使用するを選択し,先ほどの手順で作成したロールを選択する必要があります.
  • チャネルガードレールポリシー
    • AmazonQFullAccessを選択する必要があります.

ここまで設定が完了するとSlack上での会話が可能となります!先ほど設定したチャンネルで@awsをメンションして聞いてみましょう!

早速Windows AMIを使用してEC2インスタンスを起動する方法に聞いてみました. 
ソースも示してくれているので回答に正確性が出て助かりますね.

ちなみに,会話の内容を覚えているらしくWindowsについて聞いた後に「Linuxは?」と聞くとLinuxでの方法も示してくれました.

まとめ

SlackやTeamsなどの連携がクリックするだけで作成できるのはとても楽ですね!

今後もまだまだアップデートが続いていくと思うので楽しみです!