ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Flower 安装实战指南:PyPI、conda 与 Docker 三种安装方式详解及版本校验

Flower 安装实战指南:PyPI、conda 与 Docker 三种安装方式详解及版本校验 Flower 安装实战指南PyPI、conda 与 Docker 三种安装方式详解及版本校验【免费下载链接】flowerFlower: A Friendly Federated AI Framework项目地址: https://gitcode.com/GitHub_Trending/flo/flower本文基于 Flower 官方安装文档 how-to-install-flower.rst 编写覆盖 Python 版本要求、稳定版/预发布版/夜间版nightly的安装命令、conda 渠道配置、安装后版本校验以及 Docker 方式安装的入口。读完后你可以独立完成 Flower 框架在 Linux/macOS/Windows 上的安装与环境验证并理解flwr命令行背后的入口实现。一、前置条件Python 版本要求Flower 要求至少Python 3.11解释器。这一约束在仓库的打包配置 framework/pyproject.toml 中有明确声明[project] name flwr version 1.38.0 description Flower: A Friendly Federated AI Framework requires-python 3.11,4.0从 framework/pyproject.toml 的分类器classifiers还可以看到当前版本在打包时声明支持 Python 3.11 / 3.12 / 3.13CPython 实现。因此在安装前请先用python --version确认解释器版本满足要求低版本环境需要先升级或切换到新的虚拟环境。二、安装稳定版Stable Release2.1 使用 pip 从 PyPI 安装稳定版发布于 PyPI包名为flwr$ python -m pip install flwr使用 Simulation Runtime 的模拟场景需要额外安装simulationextra$ python -m pip install flwr[simulation]从源码配置看simulation是一个可选依赖optional-dependency其真实内容定义在 framework/pyproject.toml 中[project.optional-dependencies] simulation [ ray2.55.1; python_version 3.11 and python_version 3.13, ray2.55.1; python_version 3.13 and python_version 3.15 and sys_platform ! win32, ]可以推断出两点实践信息使用 Simulation Runtime 的底层依赖是Ray 2.55.1安装flwr[simulation]时会自动拉取对应版本在Windows 平台的 Python 3.13 上simulationextra 不会安装 Ray条件表达式中排除了win32且 Python 3.13 及以上这类环境下的模拟能力需要结合具体 Python 版本评估。除simulation外flwr包还定义了agent依赖browser-use[core]、trafilatura与dp依赖dp-accounting用于差分隐私记账两个可选依赖按需安装即可。2.2 使用 conda 或 mamba 安装Flower 也发布在conda-forge渠道。若尚未添加该渠道需要先执行$ conda config --add channels conda-forge $ conda config --set channel_priority strict启用conda-forge后即可用conda安装$ conda install flwr或使用更快的mamba$ mamba install flwr三、验证安装安装完成后用flwr --version命令校验。一切正常时命令行会打印当前 Flower 的版本号$ flwr --version Flower version: 1.38.0其中版本号1.38.0与文档构建配置 framework/docs/source/conf.py 中的|stable_flwr_version|替换值一致也与 framework/pyproject.toml 声明的包版本对应。flwr命令是如何工作的从源码结构看flwr是 pip 安装时注册的 console script 入口。framework/pyproject.toml 中声明了完整的命令入口表[project.scripts] # flwr CLI flwr flwr.cli.app:app # Simulation Engine flwr-simulation flwr.simulation.app:flwr_simulation # Deployment Engine flower-superlink flwr.superlink.cli:flower_superlink flower-supernode flwr.supernode.cli:flower_supernode flower-superexec flwr.supercore.cli:flower_superexec flwr-serverapp flwr.superlink.cli:flwr_serverapp flwr-clientapp flwr.supernode.cli:flwr_clientapp flwr-agentapp flwr.supercore.cli:flwr_agentapp flwr-model flwr.supercore.cli:flwr_model flwr-connector flwr.supercore.cli:flwr_connector即安装flwr包后本机同时获得flwr、flwr-simulation、flower-superlink、flower-supernode、flower-superexec等一批命令分别对应模拟引擎Simulation Runtime与部署引擎Deployment Runtime的组件。flwr --version的处理逻辑位于 framework/py/flwr/cli/app.py该回调通过is_eagerTrue的--version/-V选项捕获版本请求随后打印package_version并立即退出if version: typer.secho(fFlower version: {package_version}, fgblue) raise typer.Exit()Windows 用户注意如果在 Windows 上看到异常的终端输出例如乱码或裸 ANSI 转义序列 □[32m□[1m通常不是 Flower 本身的问题而是终端宿主如旧版 conhost不支持 ANSI 渲染所致。官方 FAQ 给出的建议是安装最新版 Windows Terminal 并在其中运行 Flower 命令可通过Get-Process -Id $PID输出检查当前会话是否在 Windows Terminal 中详见 ref-faq.rst。四、通过 Docker 安装与运行如果不想在宿主机上安装 Python 环境可以改用官方预制镜像。Docker 文档入口见 docker/index.rst核心信息预制镜像发布在 Docker Hub支持amd64与arm64v8两种架构主要镜像包括flwr/superlinkSuperLink 控制面、flwr/supernodeSuperNode 节点与flwr/superexec承载 ServerApp/ClientApp 的 SuperExec以版本 tag 固定镜像例如flwr/superlink:1.38.0可与本机flwr --version输出版本对齐避免版本漂移。最简启动示例摘自 docker/tutorial-quickstart-docker.rst$ docker run --rm \ -p 8000:8000 -p 9092:9092 \ --network flwr-network \ --name superlink \ --detach \ flwr/superlink:1.38.0 \ --insecure \ --host 0.0.0.0 \ --isolation \ process其中-p 8000:8000与-p 9092:9092分别映射 Runtime/Control API 与 Fleet API 端口--isolation process表示 ServerApp 由独立进程执行而非容器内拉起。完整的端到端 Docker 部署SuperLink、SuperNode、SuperExec 及flwr run运行应用见 docker/tutorial-quickstart-docker.rst 与 docker/tutorial-quickstart-docker-compose.rst生产部署相关的 TLS 启用、SuperLink 状态持久化等文档分别位于 docker/enable-tls.rst 和 docker/persist-superlink-state.rst。五、安装预发布版Pre-release在稳定版发布之前Flower 会不定期提供 alpha、beta、release candidate 等预发布版本可能不稳定。使用--pre标志即可安装$ python -m pip install -U --pre flwr对应 Simulation Runtime 场景$ python -m pip install -U --pre flwr[simulation]注意 extra 语法在 shell 中建议加引号避免方括号被解释为通配符。预发布版本适合尝鲜新功能不建议用于生产联邦学习任务。六、安装夜间版NightlyFlower 的最新改动会以 nightly 形式持续发布同样可能不稳定独立包名为flwr-nightly$ python -m pip install -U flwr-nightly模拟场景下需附带simulationextra$ python -m pip install -U flwr-nightly[simulation]夜间版用于跟踪主干最新变更适合贡献者复现问题或开发者评估新接口若安装flwr-nightly后运行flwr --version输出的版本号会带 pre-release/nightly 标识便于与稳定版 1.38.0 区分。七、安装方式选型速查场景推荐方式命令常规开发、Simulation Runtime 模拟pip simulationextrapython -m pip install flwr[simulation]已重度使用 conda 的科研环境conda-forgeconda install flwr或mamba install flwr生产部署、不希望在宿主机装 Python官方 Docker 镜像见 docker/index.rst评估最新/未稳定特性pre-release / nightlypython -m pip install -U --pre flwr、python -m pip install -U flwr-nightly无论采用哪种方式最后都应执行flwr --version确认版本再进入 how-to-run-simulations.rst 等后续文档开始编写与运行联邦学习应用。【免费下载链接】flowerFlower: A Friendly Federated AI Framework项目地址: https://gitcode.com/GitHub_Trending/flo/flower创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表