Python 関数のデプロイ

Python 関数は、モデルのデプロイと同じ方法で Watson Machine Learning にデプロイできます。 ツールおよびアプリは、 watsonx.ai Python クライアントまたは REST API を使用して、デプロイされたモデルにデータを送信するのと同じ方法で、デプロイされた関数にデータを送信することができます。 Python 関数をデプロイすると、詳細 (資格情報など) を非表示にすることができます。 また、データをモデルに渡す前に前処理することもできます。 さらに、エラーを処理し、複数のモデルへの呼び出しを組み込むことができます。これらの呼び出しはすべて、アプリケーション内ではなく、デプロイされた関数内にあります。

Python 関数の作成とデプロイに関するサンプルノートブック

watsonx.ai の Python クライアントライブラリを使用して Python 関数を作成・デプロイする方法の例については、GitHubに公開されている以下のサンプルノートブックを参照してください:

サンプル名 フレームワーク 実演された技術
ソフトウェア仕様書向けに Python 関数を展開する コア
Python 関数を作成するWebサービスを作成するモデルの評価を行う

このノートブックでは、関数の作成とデプロイに関する6つの手順を解説しています:

  1. 関数を定義する
  2. スペースの認証と定義
  3. 関数をリポジトリに保存する
  4. ソフトウェア仕様を入手する
  5. 保存済み関数をデプロイする
  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)

詳細情報