目次
はじめに
こんにちは、ハヤシです。
今回はプログラミングの知識が皆無でも、SlackとBedrockを連携させる方法があるようなのでそちらを記録していきます。
そもそもAmazon Bedrockとは?
生成AIモデルを利用できるAWSのサービスです。
サーバの管理不要でチャットや画像生成などを簡単に使用することができます。
多種多様なモデルがあり、用途に応じて同一のプラットフォームで使い分けることも可能です。
やってみた
では、本題です。
ここからは、SlackとBedrockを連携する手順を記載していきます。
今回はBedrockを使用して与えた名前からギャル風のあだ名を生成してくれるBOTを作成しました。
Bedrock agentsの作成
まずはBedrock agentsを作成します。
Bedrockのマネコンの左カラムの「エージェント」から「エージェント作成」をクリックします。
名前を入力して「作成」を押すとエージェントビルダーの画面に移動します。
そこで「エージェント名」「モデル」「エージェント向けの指示(プロンプト)」を好きに指定して右上の「保存」をクリックします。
そうすると右上に「準備」ボタンが出てくるので、ボタンをクリックして試しに実行してみると、ちゃんと回答が返ってきました。
最後にエイリアスを作成します。
エイリアスは名前を設定するだけで作成でき、自動でバージョンが作成されます。
作成したエイリアスのIDは後ほど使用するのでメモに取っておきます。
Amazon Q Developerの作成
次に、Amazon Q Developer(旧:Chatbot)の設定です。
まず「チャットクライアント」を「Slack」に設定しクライアントを作成します。
次に、チャネルを作成します。
Slackチャネルには、Bedrockを呼び出したいSlackのチャンネルを指定します。
プライベートチャンネルを使用する場合は、Slackチャンネルを右クリックしリンクをコピーして
URLの一番後ろの文字列を「チャネルID」に指定してください。
アクセス許可では、以下のようにロール名を指定し「チャネルガードレールポリシー」に「AmazonBedrockFullAccess」を追加します。
その他はデフォルトのまま、作成します。
そして権限の設定です。
作成されたチャネルからチャネルロールへ移動し、許可ポリシーに「BedrockFullAccess」を追加します。
Slackから呼び出す
さて、ここまで準備できたらあとはSlackからBedrockを呼び出すだけです。
ちなみに今回私はプライベートチャンネルを使用したため、Amazon Qのアプリを先に追加する必要があります。
それではBedrockを呼び出します。Slackで以下メッセージを送信します。
@Amazon Q connector add {任意のコネクター名} {Bedrock agentのエージェント ARN} {Bedrock agentのエイリアスID}
Amazon Qからこんなメッセージが返ってきたら、接続成功です。
では、実際にBedrockを実行してみます。
以下メッセージを送ってみましょう。
@Amazon Q ask {任意のコネクター名} {プロンプト}
BedrockからAmazon Qを通じて、返答が返ってきました!
これで、いつでも誰にだってギャル風(?)のあだ名をつけることができます🌟
さいごに
私みたいな初心者でも、たった30分足らずでとっても簡単に設定できちゃいました!
汎用性高そうなので、よき利用方法をもっと探していこうと思います。
それでは、最後までありがとうございました。
新米エンジニア