aggregator:
  settings:
    best_state_path: save/best.pbuf
    db_store_rounds: 2
    init_state_path: save/init.pbuf
    last_state_path: save/last.pbuf
    rounds_to_train: 300
  template: openfl.component.Aggregator
assigner:
  settings:
    task_groups:
    - name: train_and_validate
      percentage: 1.0
      tasks:
      - aggregated_model_validation
      - train
      - locally_tuned_model_validation
  template: openfl.component.RandomGroupedAssigner
collaborator:
  settings:
    db_store_rounds: 2
    delta_updates: true
    opt_treatment: RESET
  template: openfl.component.Collaborator
compression_pipeline:
  settings: {}
  template: openfl.pipelines.NoCompressionPipeline
data_loader:
  settings:
    batch_size: 58
    collaborator_count: 10
    data_group_name: brats
    percent_train: 0.9
  defaults: plan/defaults/data_loader.yaml
  template: src.tf_brats_dataloader.TensorFlowBratsDataLoader
network:
  settings:
    agg_addr: DESKTOP-J9T68VV.EUC.edu.eg
    agg_port: 60448
    cert_folder: cert
    client_reconnect_interval: 5
    disable_client_auth: false
    hash_salt: auto
    tls: true
  template: openfl.federation.Network
task_runner:
  settings: {}
  defaults:  plan/defaults/task_runner.yaml
  template: src.EfficientNetB3_Model
tasks:
  aggregated_model_validation:
    function: validate
    kwargs:
      apply: global
      batch_size: 58
      metrics:
      - acc
  locally_tuned_model_validation:
    function: validate
    kwargs:
      apply: local
      batch_size: 58
      metrics:
      - acc
  settings: {}
  train:
    function: train_batches
    kwargs:
      batch_size: 58
      epochs: 20
      metrics:
      - loss
    
