This article explains how to run an NVFlare code object in Rhino FCP.
Note: If you want to know how to run NVFlare Code using the SDK, see Running NVFlare Code using the Rhino SDK.
Prerequisites
Create an NVFlare code object before you complete these steps. See this article for more details: Creating New NVFlare Code or Code Version.
Running NVFlare Code using the Rhino FCP UI
To run NVFlare Code, complete the following steps.
- Go to the main project's page and select your project.
- Select Code from the menu on the left to open the Code Objects page.
- Select the Run button for the code object you'd like to run.
- In the Run Model Training page, do the following.
- Fill in the following fields within the new Code Run modal window.
Note: These steps are the same for all NVIDIA FLARE Code Object versions 2.0, 2.2, 2.3, and 2.4.
- Training Datasets: One or many already imported Dataset to be used as input to your Code. If a Dataset happens to be a Collaborator's Dataset, the code will be run by your Collaborator's Rhino Client. In other words, the data never moves outside your collaborator's Rhino Client. If your Datasets all reside on your Rhino Client, make sure to check the below checkbox to simulate federated learning
- Simulated FL - One FL Client Per Training Dataset: Check this box to run simulated federated learning. When checked, your Rhino Client will spin up each Dataset as its own federation network, with each Dataset being its own "remote client," and perform federated training
- Validation Datasets (Optional): An optional one or many Dataset that the newly trained federated model will be validated against
- Output Dataset Name Suffix: A suffix that is appended to the name of each input validation Dataset. This name will serve as the output validation Dataset that will be created during your validation run and then will be re-imported back into the system to display the results of your training validation
-
Federated Server Config Override (Optional): Copy and paste the contents of your
config_fed_server.jsonfile here. This will overrideconfig_fed_server.jsonin the config directory of the initial container image you pushed to your workspace's ECR. You can use this to dynamically set values for training, like hyper-parameters -
Federated Server Client Override (Optional): Copy and Paste the contents of your
config_fed_client.jsonfile here. This will overrideconfig_fed_client.jsonin the config directory of the initial container image you pushed to your workspace's ECR. You can use this to dynamically set values for training, like hyper-parameters - Timeout (seconds): The number of seconds that must elapse before a Code run is killed. This is to avoid zombie tasks that run perpetually within a Rhino client. The default is 1 hour
When you have completed adding all your NVFlare Code Run details, click the Run Training button to run your Code.
Getting Help
If you have received an error or run into any issues throughout the process, please reach out to support@rhinohealth.com for more assistance.