0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Amazon Lex の V1 Bot を V2 Bot に移行する

Posted at

はじめに

2021/7/14 に Amazon Lex の V1 API で作成されたチャットボットを V2 に移行できる Migration Tool が利用可能になりました。

V2 API がリリースされた当初は手動の移行 (実質再作成) が必要だったのですが、これにより主要な設定を V2 API のボットとして移行できるようになりました。

Lex V1 と V2 の違い

Amazon Lex は 2021年1月に V2 API がリリースされています。コンソールのデザインが変わっただけではなく、新しい機能を含む新規の API としてのリリースです。1 つのボットで複数言語に対応させることができるなど、生産性が向上するアップデートも多く含まれています。

Migration Tool で移行されるもの

  • カスタムインテントとスロットタイプのみが V2 Bot に移行されます
  • V2 Bot では 1 つのボットで複数言語に対応できるため、異なる言語で作成された複数の V1 Bot を 1 つの V2 Bot に移行することもできます

以下の設定は移行対象外です。

  • ボットのエイリアス
  • Amazon Kendra インデックス
  • AWS Lambda関数
  • 会話ログの設定
  • メッセージングチャネルの連携 (Slack など)
  • Tag

Lex の応答で Lambda 関数を使用している場合は手動で移行する必要がありますが、そもそも V2 API の Input event format と Response format に合わせて Lambda 関数を改修する必要があるので致し方ないかと思います。(V1 用の Lambda 関数はそのままでは動かない)

V2 API のフォーマットは以下のドキュメントをご確認ください。

やってみる

移行作業

Lex のコンソールで提供されているサンプルの BookTrip を移行してみます。

V1 コンソールの Migration Tool から対象のボットを選択し、Migrate をクリックします。

image.png

Step 1 で移行元の Bot version と選択し、移行先の V2 Bot の名前を入力して次に進みます。

image.png

Step 2 で移行先の V2 Bot に設定する IAM ロールを新規作成するか、既存の IAM ロールを指定します。

image.png

Step 3 では設定内容を確認して、Start migration をクリックするだけです。簡単ですね!

image.png

移行結果の確認

Migration Tool の画面下部、History から移行結果を確認することができます。Migration status が IN_PROGRESS から COMPLETED になるまで少し待機します。完了後、Migaration details の View から移行結果を確認することができます。

image.png

V2 Bot に移行できないリソースがあった場合は、Alerts として表示されます。ドキュメントのリンクから対応方法を確認できます。以下の例では Hang-up phrases が V2 Bot ではサポートされないためにアラートメッセージが表示されています。V2 Bot は一致するインテントがなかった場合に呼び出される FallbackIntent がデフォルトで設定されるため、大きな問題にはならないかと思います。

image.png

V2 コンソールを確認すると、カスタムインテントとスロットタイプが移行されていることを確認できます。

image.png

複数言語の統合

先ほどは BookTrip の日本語ボットを V2 Bot に移行しましたが、V2 Bot に言語を追加する形で V1 の英語ボットを移行してみます。

BookTrip の英語ボットを選択し、Migrate をクリックします。

image.png

Step1 で 移行先の V2 Bot 名に先ほどと同じボット名を入力すると、Step 2 で以下のような警告メッセージが表示されます。移行先の English (US) のドラフトバージョンの設定が存在する場合は上書きされるという内容ですが、今回は新たに英語の言語設定を追加することが目的ですので問題ありません。

image.png

完了後、V2 コンソールで移行先のボットを確認すると、言語に英語が追加されていることを確認できます。

image.png

参考

簡単ですが以上です。
参考になれば幸いです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?