You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flower联邦学习:如何在不同机器部署服务端与客户端做实测?

不同机器部署Flower服务端与客户端实现联邦学习基准测试

完全可以在不同机器上分别运行Flower的服务端和客户端,以此开展真实场景的基准测试,具体操作步骤如下:

1. 配置服务端

  • 编写服务端代码时,启动服务需指定可被外部访问的IP地址,不能用localhost,推荐用0.0.0.0允许所有IP接入,端口选一个未被占用的(比如8080),示例代码片段:
    import flwr as fl
    
    fl.server.start_server(
        server_address="0.0.0.0:8080",
        config=fl.server.ServerConfig(num_rounds=10)
    )
    
  • 开放服务端机器对应端口的防火墙权限:
    • Linux系统可执行命令:sudo ufw allow 8080
    • Windows系统需在防火墙的「入站规则」中添加允许8080端口的规则

2. 配置客户端

  • 客户端代码里,将连接地址替换为服务端机器的实际IP(局域网或公网IP)+端口,示例代码片段:
    import flwr as fl
    
    class FlowerClient(fl.client.NumPyClient):
        # 实现get_parameters、fit、evaluate方法
        ...
    
    fl.client.start_numpy_client(
        server_address="192.168.1.100:8080",  # 替换为服务端真实IP
        client=FlowerClient()
    )
    
  • 提前验证客户端与服务端的网络连通性:在客户端机器上执行ping 服务端IP,确保能正常通信(公网环境下若无法直接访问,可借助VPN或内网穿透工具)

3. 运行与基准测试

  • 先启动服务端程序,待服务端就绪后,再依次启动各机器上的客户端程序,客户端会自动连接服务端并参与联邦训练
  • 基准测试可从以下维度开展:
    • 记录每轮训练的整体耗时、单客户端训练耗时
    • 统计客户端参与率、掉线重连情况
    • 跟踪模型精度、损失值的变化趋势
    • 模拟真实场景:给不同机器的客户端配置非IID数据分布,测试联邦学习的鲁棒性和性能

内容的提问来源于stack exchange,提问作者Mastour Ikhlass

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 04:42:56