Python 関数のデプロイ
Python 関数は、モデルのデプロイと同じ方法で Watson Machine Learning にデプロイできます。 ツールおよびアプリは、 watsonx.ai Python クライアントまたは REST API を使用して、デプロイされたモデルにデータを送信するのと同じ方法で、デプロイされた関数にデータを送信することができます。 Python 関数をデプロイすると、詳細 (資格情報など) を非表示にすることができます。 また、データをモデルに渡す前に前処理することもできます。 さらに、エラーを処理し、複数のモデルへの呼び出しを組み込むことができます。これらの呼び出しはすべて、アプリケーション内ではなく、デプロイされた関数内にあります。
Python 関数の作成とデプロイに関するサンプルノートブック
watsonx.ai の Python クライアントライブラリを使用して Python 関数を作成・デプロイする方法の例については、GitHubに公開されている以下のサンプルノートブックを参照してください:
| サンプル名 | フレームワーク | 実演された技術 |
|---|---|---|
| ソフトウェア仕様書向けに Python 関数を展開する | コア | Python 関数を作成するWebサービスを作成するモデルの評価を行う |
このノートブックでは、関数の作成とデプロイに関する6つの手順を解説しています:
- 関数を定義する
- スペースの認証と定義
- 関数をリポジトリに保存する
- ソフトウェア仕様を入手する
- 保存済み関数をデプロイする
- データを処理のために関数に送信する
watsonx.ai Python クライアント・ライブラリーを使用する他のサンプル・ノートブックへのリンクについては、 ノートブックでの Watson Machine Learning の使用を参照してください。
関数のスケーラビリティの向上
デプロイメントスペースから、またはプログラムで関数をデプロイする場合、デフォルトではその関数のコピーが1つデプロイされます。 スケーラビリティを高めるには、デプロイメントの設定を編集してレプリカの数を増やすことができます。 レプリカの数を増やすと、スコアリング要求の数を増やすことができます。
次の例では、 Python クライアントAPIを使用して、レプリカの数を3に設定しています。
change_meta = {
client.deployments.ConfigurationMetaNames.HARDWARE_SPEC: {
"name":"S",
"num_nodes":3}
}
client.deployments.update(<deployment_id>, change_meta)
詳細情報
- デプロイ可能な Python 関数の定義について詳しくは、 デプロイ可能な Python 関数の作成および保管の「 デプロイ可能な関数の一般要件 」セクションを参照してください。
- ユーザーインターフェースから、デプロイメントスペース内の関数をデプロイすることができます。 詳細については、 「デプロイメントスペース」 を参照してください。
- Python 関数を使用して、自然言語処理モデルをデプロイできます。 詳しくは、 自然言語処理モデルのデプロイを参照してください。
- AIのユースケースにおいて、 Python の機能を追跡することができます。 詳細については、 「 Python 関数の追跡」 を参照してください