flwr-nightly 1.10.0.dev20240713__tar.gz → 1.10.0.dev20240714__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of flwr-nightly might be problematic. Click here for more details.
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/PKG-INFO +1 -1
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/pyproject.toml +1 -1
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.hf.py.tpl +19 -0
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.jax.py.tpl +16 -0
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.mlx.py.tpl +16 -0
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.numpy.py.tpl +16 -0
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.pytorch.py.tpl +27 -0
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.sklearn.py.tpl +20 -0
- flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.tensorflow.py.tpl +27 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/run/run.py +1 -1
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/app.py +11 -5
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/deployment.py +85 -21
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/exec_grpc.py +5 -2
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/executor.py +18 -1
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.hf.py.tpl +0 -17
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.jax.py.tpl +0 -12
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.mlx.py.tpl +0 -15
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.numpy.py.tpl +0 -12
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.pytorch.py.tpl +0 -28
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.sklearn.py.tpl +0 -17
- flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.tensorflow.py.tpl +0 -27
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/LICENSE +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/README.md +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/build.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/config_utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/example.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/install.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/new.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/.gitignore.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/README.flowertune.md.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/README.md.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/__init__.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.hf.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.jax.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.mlx.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.numpy.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.pytorch.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.sklearn.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/client.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/app.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/client.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/config.yaml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/dataset.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/models.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/server.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/flwr_tune/static_config.yaml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/task.hf.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/task.jax.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/task.mlx.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/task.pytorch.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/code/task.tensorflow.py.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.flowertune.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.hf.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.jax.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.mlx.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.numpy.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.pytorch.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.sklearn.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/templates/app/pyproject.tensorflow.toml.tpl +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/run/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/client.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/client_app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/dpfedavg_numpy_client.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_adapter_client/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_adapter_client/connection.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_client/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_client/connection.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_rere_client/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_rere_client/client_interceptor.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_rere_client/connection.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/grpc_rere_client/grpc_adapter.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/heartbeat.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/message_handler/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/message_handler/message_handler.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/message_handler/task_handler.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/centraldp_mods.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/comms_mods.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/localdp_mod.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/secure_aggregation/secagg_mod.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/secure_aggregation/secaggplus_mod.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/mod/utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/node_state.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/node_state_tests.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/numpy_client.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/rest_client/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/rest_client/connection.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/supernode/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/supernode/app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/client/typing.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/address.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/config.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/constant.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/context.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/date.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/differential_privacy.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/differential_privacy_constants.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/dp.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/exit_handlers.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/logger.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/message.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/object_ref.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/parameter.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/pyproject.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/configsrecord.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/conversion_utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/metricsrecord.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/parametersrecord.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/recordset.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/record/typeddict.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/recordset_compat.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/retry_invoker.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/crypto/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/crypto/shamir.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/crypto/symmetric_encryption.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/ndarrays_arithmetic.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/quantization.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/secaggplus_constants.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/secure_aggregation/secaggplus_utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/serde.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/telemetry.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/typing.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/common/version.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/common_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/common_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/common_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/common_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/driver_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/driver_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/driver_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/driver_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/error_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/error_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/error_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/error_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/exec_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/exec_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/exec_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/exec_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fab_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fab_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fab_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fab_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fleet_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fleet_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fleet_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/fleet_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/grpcadapter_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/grpcadapter_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/grpcadapter_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/grpcadapter_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/node_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/node_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/node_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/node_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/recordset_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/recordset_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/recordset_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/recordset_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/run_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/run_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/run_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/run_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/task_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/task_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/task_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/task_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/transport_pb2.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/transport_pb2.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/transport_pb2_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/proto/transport_pb2_grpc.pyi +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/py.typed +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/client_manager.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/client_proxy.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/compat/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/compat/app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/compat/app_utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/compat/driver_client_proxy.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/compat/legacy_context.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/criterion.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/driver/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/driver/driver.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/driver/grpc_driver.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/driver/inmemory_driver.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/history.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/run_serverapp.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/server.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/server_app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/server_config.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/serverapp_components.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/aggregate.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/bulyan.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/dp_adaptive_clipping.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/dp_fixed_clipping.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/dpfedavg_adaptive.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/dpfedavg_fixed.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fault_tolerant_fedavg.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedadagrad.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedadam.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedavg.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedavg_android.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedavgm.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedmedian.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedopt.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedprox.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedtrimmedavg.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedxgb_bagging.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedxgb_cyclic.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedxgb_nn_avg.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/fedyogi.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/krum.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/qfedavg.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/strategy/strategy.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/driver/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/driver/driver_grpc.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/driver/driver_servicer.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_adapter/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_adapter/grpc_adapter_servicer.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_bidi/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_bidi/flower_service_servicer.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_bridge.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_client_proxy.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_bidi/grpc_server.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_rere/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_rere/fleet_servicer.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/grpc_rere/server_interceptor.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/message_handler/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/message_handler/message_handler.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/rest_rere/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/rest_rere/rest_api.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/vce/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/vce/backend/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/vce/backend/backend.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/vce/backend/raybackend.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/fleet/vce/vce_api.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/state/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/state/in_memory_state.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/state/sqlite_state.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/state/state.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/state/state_factory.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/superlink/state/utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/typing.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/utils/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/utils/tensorboard.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/utils/validator.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/workflow/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/workflow/constant.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/workflow/default_workflows.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/workflow/secure_aggregation/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/workflow/secure_aggregation/secagg_workflow.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/server/workflow/secure_aggregation/secaggplus_workflow.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/app.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/ray_transport/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/ray_transport/ray_actor.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/ray_transport/ray_client_proxy.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/ray_transport/utils.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/simulation/run_simulation.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/__init__.py +0 -0
- {flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/exec_servicer.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
|
|
|
4
4
|
|
|
5
5
|
[tool.poetry]
|
|
6
6
|
name = "flwr-nightly"
|
|
7
|
-
version = "1.10.0.
|
|
7
|
+
version = "1.10.0.dev20240714"
|
|
8
8
|
description = "Flower: A Friendly Federated Learning Framework"
|
|
9
9
|
license = "Apache-2.0"
|
|
10
10
|
authors = ["The Flower Authors <hello@flower.ai>"]
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"""$project_name: A Flower / HuggingFace Transformers app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context
|
|
4
|
+
from flwr.server.strategy import FedAvg
|
|
5
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def server_fn(context: Context):
|
|
9
|
+
# Define strategy
|
|
10
|
+
strategy = FedAvg(
|
|
11
|
+
fraction_fit=1.0,
|
|
12
|
+
fraction_evaluate=1.0,
|
|
13
|
+
)
|
|
14
|
+
config = ServerConfig(num_rounds=3)
|
|
15
|
+
|
|
16
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
17
|
+
|
|
18
|
+
# Create ServerApp
|
|
19
|
+
app = ServerApp(server_fn=server_fn)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""$project_name: A Flower / JAX app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context
|
|
4
|
+
from flwr.server.strategy import FedAvg
|
|
5
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def server_fn(context: Context):
|
|
9
|
+
# Define strategy
|
|
10
|
+
strategy = FedAvg()
|
|
11
|
+
config = ServerConfig(num_rounds=3)
|
|
12
|
+
|
|
13
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
14
|
+
|
|
15
|
+
# Create ServerApp
|
|
16
|
+
app = ServerApp(server_fn=server_fn)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""$project_name: A Flower / MLX app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context
|
|
4
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
5
|
+
from flwr.server.strategy import FedAvg
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def server_fn(context: Context):
|
|
9
|
+
# Define strategy
|
|
10
|
+
strategy = FedAvg()
|
|
11
|
+
config = ServerConfig(num_rounds=3)
|
|
12
|
+
|
|
13
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
14
|
+
|
|
15
|
+
# Create ServerApp
|
|
16
|
+
app = ServerApp(server_fn=server_fn)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""$project_name: A Flower / NumPy app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context
|
|
4
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
5
|
+
from flwr.server.strategy import FedAvg
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def server_fn(context: Context):
|
|
9
|
+
# Define strategy
|
|
10
|
+
strategy = FedAvg()
|
|
11
|
+
config = ServerConfig(num_rounds=3)
|
|
12
|
+
|
|
13
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
14
|
+
|
|
15
|
+
# Create ServerApp
|
|
16
|
+
app = ServerApp(server_fn=server_fn)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"""$project_name: A Flower / PyTorch app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context, ndarrays_to_parameters
|
|
4
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
5
|
+
from flwr.server.strategy import FedAvg
|
|
6
|
+
|
|
7
|
+
from $import_name.task import Net, get_weights
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
# Initialize model parameters
|
|
11
|
+
ndarrays = get_weights(Net())
|
|
12
|
+
parameters = ndarrays_to_parameters(ndarrays)
|
|
13
|
+
|
|
14
|
+
def server_fn(context: Context):
|
|
15
|
+
# Define strategy
|
|
16
|
+
strategy = FedAvg(
|
|
17
|
+
fraction_fit=1.0,
|
|
18
|
+
fraction_evaluate=1.0,
|
|
19
|
+
min_available_clients=2,
|
|
20
|
+
initial_parameters=parameters,
|
|
21
|
+
)
|
|
22
|
+
config = ServerConfig(num_rounds=3)
|
|
23
|
+
|
|
24
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
25
|
+
|
|
26
|
+
# Create ServerApp
|
|
27
|
+
app = ServerApp(server_fn=server_fn)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"""$project_name: A Flower / Scikit-Learn app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context
|
|
4
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
5
|
+
from flwr.server.strategy import FedAvg
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
def server_fn(context: Context):
|
|
9
|
+
# Define strategy
|
|
10
|
+
strategy = FedAvg(
|
|
11
|
+
fraction_fit=1.0,
|
|
12
|
+
fraction_evaluate=1.0,
|
|
13
|
+
min_available_clients=2,
|
|
14
|
+
)
|
|
15
|
+
config = ServerConfig(num_rounds=3)
|
|
16
|
+
|
|
17
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
18
|
+
|
|
19
|
+
# Create ServerApp
|
|
20
|
+
app = ServerApp(server_fn=server_fn)
|
flwr_nightly-1.10.0.dev20240714/src/py/flwr/cli/new/templates/app/code/server.tensorflow.py.tpl
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"""$project_name: A Flower / TensorFlow app."""
|
|
2
|
+
|
|
3
|
+
from flwr.common import Context, ndarrays_to_parameters
|
|
4
|
+
from flwr.server import ServerApp, ServerAppComponents, ServerConfig
|
|
5
|
+
from flwr.server.strategy import FedAvg
|
|
6
|
+
|
|
7
|
+
from $import_name.task import load_model
|
|
8
|
+
|
|
9
|
+
# Define config
|
|
10
|
+
config = ServerConfig(num_rounds=3)
|
|
11
|
+
|
|
12
|
+
parameters = ndarrays_to_parameters(load_model().get_weights())
|
|
13
|
+
|
|
14
|
+
def server_fn(context: Context):
|
|
15
|
+
# Define strategy
|
|
16
|
+
strategy = strategy = FedAvg(
|
|
17
|
+
fraction_fit=1.0,
|
|
18
|
+
fraction_evaluate=1.0,
|
|
19
|
+
min_available_clients=2,
|
|
20
|
+
initial_parameters=parameters,
|
|
21
|
+
)
|
|
22
|
+
config = ServerConfig(num_rounds=3)
|
|
23
|
+
|
|
24
|
+
return ServerAppComponents(strategy=strategy, config=config)
|
|
25
|
+
|
|
26
|
+
# Create ServerApp
|
|
27
|
+
app = ServerApp(server_fn=server_fn)
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/superexec/app.py
RENAMED
|
@@ -24,6 +24,7 @@ import grpc
|
|
|
24
24
|
|
|
25
25
|
from flwr.common import EventType, event, log
|
|
26
26
|
from flwr.common.address import parse_address
|
|
27
|
+
from flwr.common.config import parse_config_args
|
|
27
28
|
from flwr.common.constant import SUPEREXEC_DEFAULT_ADDRESS
|
|
28
29
|
from flwr.common.exit_handlers import register_exit_handlers
|
|
29
30
|
from flwr.common.object_ref import load_app, validate
|
|
@@ -55,6 +56,7 @@ def run_superexec() -> None:
|
|
|
55
56
|
address=address,
|
|
56
57
|
executor=_load_executor(args),
|
|
57
58
|
certificates=certificates,
|
|
59
|
+
config=parse_config_args(args.executor_config),
|
|
58
60
|
)
|
|
59
61
|
|
|
60
62
|
grpc_servers = [superexec_server]
|
|
@@ -74,21 +76,25 @@ def _parse_args_run_superexec() -> argparse.ArgumentParser:
|
|
|
74
76
|
parser = argparse.ArgumentParser(
|
|
75
77
|
description="Start a Flower SuperExec",
|
|
76
78
|
)
|
|
77
|
-
parser.add_argument(
|
|
78
|
-
"executor",
|
|
79
|
-
help="For example: `deployment:exec` or `project.package.module:wrapper.exec`.",
|
|
80
|
-
default="flwr.superexec.deployment:executor",
|
|
81
|
-
)
|
|
82
79
|
parser.add_argument(
|
|
83
80
|
"--address",
|
|
84
81
|
help="SuperExec (gRPC) server address (IPv4, IPv6, or a domain name)",
|
|
85
82
|
default=SUPEREXEC_DEFAULT_ADDRESS,
|
|
86
83
|
)
|
|
84
|
+
parser.add_argument(
|
|
85
|
+
"--executor",
|
|
86
|
+
help="For example: `deployment:exec` or `project.package.module:wrapper.exec`.",
|
|
87
|
+
default="flwr.superexec.deployment:executor",
|
|
88
|
+
)
|
|
87
89
|
parser.add_argument(
|
|
88
90
|
"--executor-dir",
|
|
89
91
|
help="The directory for the executor.",
|
|
90
92
|
default=".",
|
|
91
93
|
)
|
|
94
|
+
parser.add_argument(
|
|
95
|
+
"--executor-config",
|
|
96
|
+
help="Key-value pairs for the executor config, separated by commas.",
|
|
97
|
+
)
|
|
92
98
|
parser.add_argument(
|
|
93
99
|
"--insecure",
|
|
94
100
|
action="store_true",
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import subprocess
|
|
18
18
|
import sys
|
|
19
19
|
from logging import ERROR, INFO
|
|
20
|
+
from pathlib import Path
|
|
20
21
|
from typing import Dict, Optional
|
|
21
22
|
|
|
22
23
|
from typing_extensions import override
|
|
@@ -33,25 +34,73 @@ from .executor import Executor, RunTracker
|
|
|
33
34
|
|
|
34
35
|
|
|
35
36
|
class DeploymentEngine(Executor):
|
|
36
|
-
"""Deployment engine executor.
|
|
37
|
+
"""Deployment engine executor.
|
|
38
|
+
|
|
39
|
+
Parameters
|
|
40
|
+
----------
|
|
41
|
+
superlink: str (default: "0.0.0.0:9091")
|
|
42
|
+
Address of the SuperLink to connect to.
|
|
43
|
+
root_certificates: Optional[str] (default: None)
|
|
44
|
+
Specifies the path to the PEM-encoded root certificate file for
|
|
45
|
+
establishing secure HTTPS connections.
|
|
46
|
+
flwr_dir: Optional[str] (default: None)
|
|
47
|
+
The path containing installed Flower Apps.
|
|
48
|
+
"""
|
|
37
49
|
|
|
38
50
|
def __init__(
|
|
39
51
|
self,
|
|
40
|
-
|
|
41
|
-
root_certificates: Optional[
|
|
52
|
+
superlink: str = DEFAULT_SERVER_ADDRESS_DRIVER,
|
|
53
|
+
root_certificates: Optional[str] = None,
|
|
54
|
+
flwr_dir: Optional[str] = None,
|
|
42
55
|
) -> None:
|
|
43
|
-
self.
|
|
44
|
-
|
|
56
|
+
self.superlink = superlink
|
|
57
|
+
if root_certificates is None:
|
|
58
|
+
self.root_certificates = None
|
|
59
|
+
self.root_certificates_bytes = None
|
|
60
|
+
else:
|
|
61
|
+
self.root_certificates = root_certificates
|
|
62
|
+
self.root_certificates_bytes = Path(root_certificates).read_bytes()
|
|
63
|
+
self.flwr_dir = flwr_dir
|
|
45
64
|
self.stub: Optional[DriverStub] = None
|
|
46
65
|
|
|
66
|
+
@override
|
|
67
|
+
def set_config(
|
|
68
|
+
self,
|
|
69
|
+
config: Dict[str, str],
|
|
70
|
+
) -> None:
|
|
71
|
+
"""Set executor config arguments.
|
|
72
|
+
|
|
73
|
+
Parameters
|
|
74
|
+
----------
|
|
75
|
+
config : Dict[str, str]
|
|
76
|
+
A dictionary for configuration values.
|
|
77
|
+
Supported configuration key/value pairs:
|
|
78
|
+
- "superlink": str
|
|
79
|
+
The address of the SuperLink Driver API.
|
|
80
|
+
- "root-certificates": str
|
|
81
|
+
The path to the root certificates.
|
|
82
|
+
- "flwr-dir": str
|
|
83
|
+
The path to the Flower directory.
|
|
84
|
+
"""
|
|
85
|
+
if not config:
|
|
86
|
+
return
|
|
87
|
+
if superlink_address := config.get("superlink"):
|
|
88
|
+
self.superlink = superlink_address
|
|
89
|
+
if root_certificates := config.get("root-certificates"):
|
|
90
|
+
self.root_certificates = root_certificates
|
|
91
|
+
self.root_certificates_bytes = Path(root_certificates).read_bytes()
|
|
92
|
+
if flwr_dir := config.get("flwr-dir"):
|
|
93
|
+
self.flwr_dir = flwr_dir
|
|
94
|
+
|
|
47
95
|
def _connect(self) -> None:
|
|
48
|
-
if self.stub is None:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
96
|
+
if self.stub is not None:
|
|
97
|
+
return
|
|
98
|
+
channel = create_channel(
|
|
99
|
+
server_address=self.superlink,
|
|
100
|
+
insecure=(self.root_certificates_bytes is None),
|
|
101
|
+
root_certificates=self.root_certificates_bytes,
|
|
102
|
+
)
|
|
103
|
+
self.stub = DriverStub(channel)
|
|
55
104
|
|
|
56
105
|
def _create_run(
|
|
57
106
|
self,
|
|
@@ -74,7 +123,9 @@ class DeploymentEngine(Executor):
|
|
|
74
123
|
|
|
75
124
|
@override
|
|
76
125
|
def start_run(
|
|
77
|
-
self,
|
|
126
|
+
self,
|
|
127
|
+
fab_file: bytes,
|
|
128
|
+
override_config: Dict[str, str],
|
|
78
129
|
) -> Optional[RunTracker]:
|
|
79
130
|
"""Start run using the Flower Deployment Engine."""
|
|
80
131
|
try:
|
|
@@ -84,7 +135,7 @@ class DeploymentEngine(Executor):
|
|
|
84
135
|
|
|
85
136
|
# Install FAB Python package
|
|
86
137
|
subprocess.check_call(
|
|
87
|
-
[sys.executable, "-m", "pip", "install", str(fab_path)],
|
|
138
|
+
[sys.executable, "-m", "pip", "install", "--no-deps", str(fab_path)],
|
|
88
139
|
stdout=subprocess.DEVNULL,
|
|
89
140
|
stderr=subprocess.DEVNULL,
|
|
90
141
|
)
|
|
@@ -93,14 +144,27 @@ class DeploymentEngine(Executor):
|
|
|
93
144
|
run_id: int = self._create_run(fab_id, fab_version, override_config)
|
|
94
145
|
log(INFO, "Created run %s", str(run_id))
|
|
95
146
|
|
|
96
|
-
|
|
147
|
+
command = [
|
|
148
|
+
"flower-server-app",
|
|
149
|
+
"--run-id",
|
|
150
|
+
str(run_id),
|
|
151
|
+
"--superlink",
|
|
152
|
+
str(self.superlink),
|
|
153
|
+
]
|
|
154
|
+
|
|
155
|
+
if self.flwr_dir:
|
|
156
|
+
command.append("--flwr-dir")
|
|
157
|
+
command.append(self.flwr_dir)
|
|
158
|
+
|
|
159
|
+
if self.root_certificates is None:
|
|
160
|
+
command.append("--insecure")
|
|
161
|
+
else:
|
|
162
|
+
command.append("--root-certificates")
|
|
163
|
+
command.append(self.root_certificates)
|
|
164
|
+
|
|
165
|
+
# Execute the command
|
|
97
166
|
proc = subprocess.Popen( # pylint: disable=consider-using-with
|
|
98
|
-
|
|
99
|
-
"flower-server-app",
|
|
100
|
-
"--run-id",
|
|
101
|
-
str(run_id),
|
|
102
|
-
"--insecure",
|
|
103
|
-
],
|
|
167
|
+
command,
|
|
104
168
|
stdout=subprocess.PIPE,
|
|
105
169
|
stderr=subprocess.PIPE,
|
|
106
170
|
text=True,
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"""SuperExec gRPC API."""
|
|
16
16
|
|
|
17
17
|
from logging import INFO
|
|
18
|
-
from typing import Optional, Tuple
|
|
18
|
+
from typing import Dict, Optional, Tuple
|
|
19
19
|
|
|
20
20
|
import grpc
|
|
21
21
|
|
|
@@ -32,8 +32,11 @@ def run_superexec_api_grpc(
|
|
|
32
32
|
address: str,
|
|
33
33
|
executor: Executor,
|
|
34
34
|
certificates: Optional[Tuple[bytes, bytes, bytes]],
|
|
35
|
+
config: Dict[str, str],
|
|
35
36
|
) -> grpc.Server:
|
|
36
37
|
"""Run SuperExec API (gRPC, request-response)."""
|
|
38
|
+
executor.set_config(config)
|
|
39
|
+
|
|
37
40
|
exec_servicer: grpc.Server = ExecServicer(
|
|
38
41
|
executor=executor,
|
|
39
42
|
)
|
|
@@ -45,7 +48,7 @@ def run_superexec_api_grpc(
|
|
|
45
48
|
certificates=certificates,
|
|
46
49
|
)
|
|
47
50
|
|
|
48
|
-
log(INFO, "Flower
|
|
51
|
+
log(INFO, "Starting Flower SuperExec gRPC server on %s", address)
|
|
49
52
|
superexec_grpc_server.start()
|
|
50
53
|
|
|
51
54
|
return superexec_grpc_server
|
|
@@ -31,9 +31,24 @@ class RunTracker:
|
|
|
31
31
|
class Executor(ABC):
|
|
32
32
|
"""Execute and monitor a Flower run."""
|
|
33
33
|
|
|
34
|
+
@abstractmethod
|
|
35
|
+
def set_config(
|
|
36
|
+
self,
|
|
37
|
+
config: Dict[str, str],
|
|
38
|
+
) -> None:
|
|
39
|
+
"""Register provided config as class attributes.
|
|
40
|
+
|
|
41
|
+
Parameters
|
|
42
|
+
----------
|
|
43
|
+
config : Optional[Dict[str, str]]
|
|
44
|
+
A dictionary for configuration values.
|
|
45
|
+
"""
|
|
46
|
+
|
|
34
47
|
@abstractmethod
|
|
35
48
|
def start_run(
|
|
36
|
-
self,
|
|
49
|
+
self,
|
|
50
|
+
fab_file: bytes,
|
|
51
|
+
override_config: Dict[str, str],
|
|
37
52
|
) -> Optional[RunTracker]:
|
|
38
53
|
"""Start a run using the given Flower FAB ID and version.
|
|
39
54
|
|
|
@@ -44,6 +59,8 @@ class Executor(ABC):
|
|
|
44
59
|
----------
|
|
45
60
|
fab_file : bytes
|
|
46
61
|
The Flower App Bundle file bytes.
|
|
62
|
+
override_config: Dict[str, str]
|
|
63
|
+
The config overrides dict sent by the user (using `flwr run`).
|
|
47
64
|
|
|
48
65
|
Returns
|
|
49
66
|
-------
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / HuggingFace Transformers app."""
|
|
2
|
-
|
|
3
|
-
from flwr.server.strategy import FedAvg
|
|
4
|
-
from flwr.server import ServerApp, ServerConfig
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
# Define strategy
|
|
8
|
-
strategy = FedAvg(
|
|
9
|
-
fraction_fit=1.0,
|
|
10
|
-
fraction_evaluate=1.0,
|
|
11
|
-
)
|
|
12
|
-
|
|
13
|
-
# Start server
|
|
14
|
-
app = ServerApp(
|
|
15
|
-
config=ServerConfig(num_rounds=3),
|
|
16
|
-
strategy=strategy,
|
|
17
|
-
)
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / JAX app."""
|
|
2
|
-
|
|
3
|
-
import flwr as fl
|
|
4
|
-
|
|
5
|
-
# Configure the strategy
|
|
6
|
-
strategy = fl.server.strategy.FedAvg()
|
|
7
|
-
|
|
8
|
-
# Flower ServerApp
|
|
9
|
-
app = fl.server.ServerApp(
|
|
10
|
-
config=fl.server.ServerConfig(num_rounds=3),
|
|
11
|
-
strategy=strategy,
|
|
12
|
-
)
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / MLX app."""
|
|
2
|
-
|
|
3
|
-
from flwr.server import ServerApp, ServerConfig
|
|
4
|
-
from flwr.server.strategy import FedAvg
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
# Define strategy
|
|
8
|
-
strategy = FedAvg()
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
# Create ServerApp
|
|
12
|
-
app = ServerApp(
|
|
13
|
-
config=ServerConfig(num_rounds=3),
|
|
14
|
-
strategy=strategy,
|
|
15
|
-
)
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / NumPy app."""
|
|
2
|
-
|
|
3
|
-
import flwr as fl
|
|
4
|
-
|
|
5
|
-
# Configure the strategy
|
|
6
|
-
strategy = fl.server.strategy.FedAvg()
|
|
7
|
-
|
|
8
|
-
# Flower ServerApp
|
|
9
|
-
app = fl.server.ServerApp(
|
|
10
|
-
config=fl.server.ServerConfig(num_rounds=1),
|
|
11
|
-
strategy=strategy,
|
|
12
|
-
)
|
flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.pytorch.py.tpl
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / PyTorch app."""
|
|
2
|
-
|
|
3
|
-
from flwr.common import ndarrays_to_parameters
|
|
4
|
-
from flwr.server import ServerApp, ServerConfig
|
|
5
|
-
from flwr.server.strategy import FedAvg
|
|
6
|
-
|
|
7
|
-
from $import_name.task import Net, get_weights
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
# Initialize model parameters
|
|
11
|
-
ndarrays = get_weights(Net())
|
|
12
|
-
parameters = ndarrays_to_parameters(ndarrays)
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
# Define strategy
|
|
16
|
-
strategy = FedAvg(
|
|
17
|
-
fraction_fit=1.0,
|
|
18
|
-
fraction_evaluate=1.0,
|
|
19
|
-
min_available_clients=2,
|
|
20
|
-
initial_parameters=parameters,
|
|
21
|
-
)
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
# Create ServerApp
|
|
25
|
-
app = ServerApp(
|
|
26
|
-
config=ServerConfig(num_rounds=3),
|
|
27
|
-
strategy=strategy,
|
|
28
|
-
)
|
flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.sklearn.py.tpl
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / Scikit-Learn app."""
|
|
2
|
-
|
|
3
|
-
from flwr.server import ServerApp, ServerConfig
|
|
4
|
-
from flwr.server.strategy import FedAvg
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
strategy = FedAvg(
|
|
8
|
-
fraction_fit=1.0,
|
|
9
|
-
fraction_evaluate=1.0,
|
|
10
|
-
min_available_clients=2,
|
|
11
|
-
)
|
|
12
|
-
|
|
13
|
-
# Create ServerApp
|
|
14
|
-
app = ServerApp(
|
|
15
|
-
config=ServerConfig(num_rounds=3),
|
|
16
|
-
strategy=strategy,
|
|
17
|
-
)
|
flwr_nightly-1.10.0.dev20240713/src/py/flwr/cli/new/templates/app/code/server.tensorflow.py.tpl
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"""$project_name: A Flower / TensorFlow app."""
|
|
2
|
-
|
|
3
|
-
from flwr.common import ndarrays_to_parameters
|
|
4
|
-
from flwr.server import ServerApp, ServerConfig
|
|
5
|
-
from flwr.server.strategy import FedAvg
|
|
6
|
-
|
|
7
|
-
from $import_name.task import load_model
|
|
8
|
-
|
|
9
|
-
# Define config
|
|
10
|
-
config = ServerConfig(num_rounds=3)
|
|
11
|
-
|
|
12
|
-
parameters = ndarrays_to_parameters(load_model().get_weights())
|
|
13
|
-
|
|
14
|
-
# Define strategy
|
|
15
|
-
strategy = FedAvg(
|
|
16
|
-
fraction_fit=1.0,
|
|
17
|
-
fraction_evaluate=1.0,
|
|
18
|
-
min_available_clients=2,
|
|
19
|
-
initial_parameters=parameters,
|
|
20
|
-
)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
# Create ServerApp
|
|
24
|
-
app = ServerApp(
|
|
25
|
-
config=config,
|
|
26
|
-
strategy=strategy,
|
|
27
|
-
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/build.py
RENAMED
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/config_utils.py
RENAMED
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/example.py
RENAMED
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/install.py
RENAMED
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/__init__.py
RENAMED
|
File without changes
|
{flwr_nightly-1.10.0.dev20240713 → flwr_nightly-1.10.0.dev20240714}/src/py/flwr/cli/new/new.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|