目次


Watson Assistant ワークスペースのエクスポート、インポート方法を学ぶ

インテントとエンティティーを使用して、エージェントがダイアログを介して対話する機能を構造化する

Comments

この簡単なチュートリアルでは、Watson™ Assistant API を使用して Watson Assistant ワークスペースをエクスポートおよびインポートする手順を説明します。

背景

Watson Assistant で仮想エージェントの作成にチームで取り組むときは、まず、インテントとエンティティーを使用してエージェントのドメインを定義してから、エージェントがダイアログを介して対話する機能を構造化します。開発チームは仮想エージェント・ソリューションを構築してデプロイする間、このインテント、エンティティー、ダイアログの 3 つを中心に構成される Watson Assistant ワークスペースを頼りに、バージョンを管理し、開発を進めていきます。Watson Assistant API では、このように重要な役割を果たす Watson Assistant ワークスペースを簡単にエクスポート、インポートできるようになっています。ここで説明する手順に従えば、複製された既存のワークスペースをエクスポートしてインポートし、トレーニング、開発、テストに使用することができます。

環境の構築

コマンド・プロンプトまたはターミナル・ウィンドウから Watson Assistant ワークスペースをエクスポートするには、curl を使用できます。IBM Cloud ユーザー・インターフェースから Watson Assistant ワークスペースをエクスポートすることもできますが、このプロセスをスクリプト化または自動化する場合は、API を使用するのが一般的です。以下の手順でコマンドを実行するために使用するマシン上に、curl がインストールされていることを確認してください。

当然のことながら、この手順に従ってワークスペースをインポートおよびエクスポートするには、IBM Cloud 上でプロビジョニングされた 1 つ以上の Watson Assistant インスタンスと、そのインスタンスに関連付けられた 1 つ以上のワークスペースも必要です。

ワークスペース ID を取得する

特定のワークスペースをエクスポートするには、そのワークスペースの ID が必要です。ワークスペース ID は、IBM Cloud 上の Watson Assistant UI または Watson Assistant API を使用して確認できます。

Watson Assistant API を使用してワークスペース ID を確認する場合は、以下の curl コマンドを実行します。

curl -u "{username}":"{password}" "https://gateway.watsonplatform.net/assistant/api/v1/workspaces?version=2018-09-20"

上記のコマンドに含まれる {username}{password} は、実際の Watson Assistant インスタンスに該当する資格情報で置き換える必要があります。お気付きかもしれませんが、Watson Assistant インスタンスが認証手段として使用するのは、ユーザー名/パスワードではなく Identity and Access Management (IAM) API キーです。したがって、上記の例では "{username}":"{password}」 を "apikey:{apikey}」 で置き換えます。{apikey} は、Watson Assistance サービス・インスタンスの IAM API キーの値です。

上記のコマンド内で使用している URL は、U.S. South リージョン内で実行される Watson Assistant サービス・インスタンスで使用されるものなので、URL の値を実際の Watson Assistant インスタンスの URL に更新してください。URL はリージョンに応じて変わります。該当する URL も、サービス資格情報を確認するときに使用した IBM Cloud のページで確認できます。

Watson Assistant ワークスペースをエクスポートする

確認した Watson Assistant ワークスペース ID を設定した上で、以下のコマンドを実行します。これにより、ワークスペースが JSON ファイルにエクスポートされます。

curl -u "{username}":"{password}"  "https://gateway.watsonplatform.net/assistant/api/v1/workspaces/<workspace_id>?version=2018-09-20&export=true" > workspace.json

上記のコマンドも、サービス・インスタンスに応じた IAM API キーを使用するように変更してください。URL にも Watson Assistant インスタンスが実行されているリージョンを反映させる必要があります。また、<workspace_id> を、前の手順で確認した値で置き換えます。

このコマンドは Watson Assistant ワークスペースを、workspace.json という名前のローカル・ファイルに JSON 形式でエクスポートします。必要に応じてファイル名を変更してください。Watson Assistant ワークスペースをエクスポートした後は、任意のソース・コード管理システムから適切なコマンドを使って、自由にファイルのバージョンを管理できます。この JSON ファイルは、ワークスペースを Watson Assistant にインポートして再現する場合にも使用します。ワークスペースは同じ Watson Assistant サービス・インスタンス上に再現することも、別の Watson Assistance サービス・インスタンス上に再現することもできます。後者の場合、IBM CLoud のリージョンは同じでも異なっていてもかまいません。

Watson Assistant ワークスペースをインポートする

この最後のステップでは、Watson Assistant ワークスペースを別の Watson Assistant サービス・インスタンスにインポートします。Watson Assistant ワークスペースをインポートするには、以下のコマンドを実行します。

curl -H "Content-Type: application/json" -X POST -u "{username}":"{password}" -d @workspace.json "https://gateway.watsonplatform.net/assistant/api/v1/workspaces?version=2018-09-20"

前と同じく、必要に応じて IAM API キーを使用するように上記のコマンドを変更し、Watson Assistant インスタンスに合わせて URL を更新してください。繰り返しますが、workspace.json ファイルの Watson Assistant ワークスペースは同じ Watson Assistant インスタンスにインポートすることも、必要に応じて別のインスタンスにインポートすることもできます。Watson Assistant ワークスペースをインポートした後は、ワークスペース名をワークスペースのバージョンやリリース・フェーズを特定する名前に変更することをお勧めします。ワークスペースの名前変更は、インポート後に Watson Assistant UI を使用して行うことができます。

まとめ

このチュートリアルでは上記の手順に沿って、Watson Assistant API を使用して Watson Assistant ワークスペースをエクスポートおよびインポートする方法を説明しました。必要な手順を説明するために、ここでは curl コマンドを使用して Watson Assistant API に対してコマンドを実行しましたが、これらの API 呼び出しは、Watson SDK を使用したアプリケーションで実行できます。また、API 呼び出しをスクリプトにして、構成またはビルド管理ツールの一部として実行することもできます。


ダウンロード可能なリソース


関連トピック


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Cognitive computing
ArticleID=1065752
ArticleTitle=Watson Assistant ワークスペースのエクスポート、インポート方法を学ぶ
publish-date=05162019