資料の 英語版 に戻るアグリゲーター (パーティー) への接続
アグリゲーター (パーティー) への接続
最終更新: 2024年11月28日
各パーティーは、以下のステップに従って、開始されたアグリゲーターに接続します。
プロジェクトを開き、統合学習エクスペリメントをクリックします。
「セットアップ情報の表示 (View setup information)」 をクリックし、ダウンロード・アイコンをクリックしてパーティー・コネクター・スクリプトをダウンロードします。
各パーティーは、パーティー・コネクター・スクリプトを構成し、スクリプトを実行するための有効な資格情報を提供する必要があります。 完了したパーティー・コネクター・スクリプトの例を以下に示します。
from ibm_watsonx_ai import APIClient wml_credentials = { "url": "https://us-south.ml.cloud.ibm.com", "apikey": "<API KEY>" } wml_client = APIClient(wml_credentials) wml_client.set.default_project("XXX-XXX-XXX-XXX-XXX") party_metadata = { wml_client.remote_training_systems.ConfigurationMetaNames.DATA_HANDLER: { "name": "MnistSklearnDataHandler", "path": "example.mnist_sklearn_data_handler", "info": { "npz_file":"./example_data/example_data.npz" } party = wml_client.remote_training_systems.create_party("XXX-XXX-XXX-XXX-XXX", party_metadata) party.monitor_logs() party.run(aggregator_id="XXX-XXX-XXX-XXX-XXX", asynchronous=False)
パラメーター:
api_key
:
IAM API キー。 新しい API キーを作成するには、IBM Cloudウェブサイトにアクセスし、[Manage] > [Access(IAM)] > [API keys] の下にある[Create anIBM Cloud Pak for DataAPI key] をクリックします。
オプション: 別のプロジェクトのスクリプトを再使用する場合は、更新された
project_id
、aggregator_id
、およびexperiment_id
をセットアップ情報ウィンドウからコピーし、それらをスクリプトにコピーすることができます。まだインストールされていない場合は、最新の Federated Learning パッケージと一緒にwatsonx.aiRuntime をインストールしてください:
- Mac で M シリーズを使用している場合は、以下のスクリプトを使用して最新のパッケージをインストールします。
# ----------------------------------------------------------------------------------------- # (C) Copyright IBM Corp. 2023. # https://opensource.org/licenses/BSD-3-Clause # ----------------------------------------------------------------------------------------- # # # Script to create a conda environment and install ibm_watsonx_ai with # the dependencies required for Federated Learning on MacOS. # The name of the conda environment to be created is passed as the first argument. # # Note: This script requires miniforge to be installed for conda. # usage=". install_fl_rt23.1_macos.sh conda_env_name" arch=$(uname -m) os=$(uname -s) if (($# < 1)) then echo $usage exit fi ENAME=$1 conda create -y -n ${ENAME} python=3.10 conda activate ${ENAME} pip install ibm_watsonx_ai if [ "$os" == "Darwin" -a "$arch" == "arm64" ] then conda install -y -c apple tensorflow-deps fi python - <<EOF import pkg_resources import platform import subprocess package = 'ibm_watsonx_ai' extra = 'fl-rt23.1-py3.10' extra_ = extra.replace('.','-') extra_s = '; extra == "{}"' remove = None add = [] if platform.system() == "Darwin" and platform.processor() == "arm": remove = 'tensorflow' add = ['tensorflow-macos==2.9.2'] pkgs = pkg_resources.working_set.by_key[package].requires(extras=[extra]) pkgs = [ p.__str__().removesuffix(extra_s.format(extra)).removesuffix(extra_s.format(extra_)) for p in pkgs if ( extra in p.__str__() or extra_ in p.__str__() ) and ( not remove or remove not in p.__str__() )] print( "Installing standard packages for {}[{}]:{}".format(package,extra,pkgs) ) print( "Installing additional packages:{}".format(add) ) cmd = [ 'pip', 'install'] + add + pkgs subprocess.run( cmd ) EOF
- それ以外の場合は、次のコマンドを使用してインストールします。
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ 'ibm_watsonx_ai[fl-rt23.1-py3.10]'
構成が完了し、パーティー・コネクター・スクリプトを保存したら、コマンド行に次のコマンドを入力してスクリプトを実行します。
python3 rts_<RTS Name>_<RTS ID>.py
参考情報
親トピック: 統合学習エクスペリメントの作成