隐私计算实训营学习四:SecretFlow的安装和部署

本文详细介绍了SecretFlow的安装方法,包括Docker镜像、pip安装和源码编译,并重点讲解了仿真模式和生产模式的部署流程,涉及单机和集群部署,以及密态设备SPU的配置。同时提到了KUSCIA和SecretNote在生产模式中的应用以优化协作体验。

一、SecretFlow安装

SecretFlow运行要求:

  • Python >= 3.8
  • 操作系统:CentOS7、Anolis8、Ubuntu 18.04/20.04、macOS 11.1+、WSL2
  • 资源:≥ 8核16GB

安装包:

  • secretflow:包含secretflow所有的requirements,体积较大
  • secretflow-lite:仅包含基础功能(不包含深度学习等依赖库),体积较小

安装方式:

1、docker镜像。

docker hub:
docker run -it secretflow/secretflow-anolis8:latest
docker run –it secretflow/secretflow-lite-anolis8:latest

阿里云:
docker run -it secretflow-registry.cnhangzhou.cr.aliyuncs.com/secretflow-anolis8:latest
docker run –it secretflow-registry.cnhangzhou.cr.aliyuncs.com /secretflow-lite-anolis8:latest

2、pypi安装:要求pip >= 19.3,建议使用conda管理python环境。

pip install –U secretflow #全版本
pip install –U secretflow-lite #lite版本

3、源码安装:要求pip >= 19.3,建议使用conda管理python环境。

#1.下载源码并建立Python虚拟环境
git clone https://github.com/secretflow/secretflow.git
cd secretflow
conda create -n secretflow python==3.8
conda activate secretflow

#2.安装secretflow
#涉及到C++编译,建议使用镜像secretflow/release-ci:latest
python setup.py bdist_wheel #生成python内容包
pip install dist/*.whl #安装

此处采用方式2利用conda构建虚拟环境安装(本想用源码编译安装,依赖环境太多,后续有空再尝试):

#conda构建一个虚拟环境
conda create -n sf python=3.8
conda activate sf

#pip安装SecretFlow,此处参考其他博主更换pip源
pip install -U secretflow -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成如图:
在这里插入图片描述
测试仿真单机部署:
在这里插入图片描述

二、SecretFolw部署模式简介

SecretFlow提供了仿真模式与生产模式两种部署方案:仿真模式用于快速验证代码效果,仅需在一台机器上部署代码即可;生产模式针对安全生产设计,主要作了安全增强,每一个参与方都是独立的Ray集群,所有参与方都需要执行代码。
SecretFlow与Ray关系:Ray为分布式计算框架,SecretFlow使用Ray作为分布式计算调度框架,Ray集群由一个主节点和零或若干个从节点组成。
在这里插入图片描述

三、SecretFlow部署-仿真模式

通信网络:
在这里插入图片描述
1、单机仿真:单个节点模拟alice、bob两个参与方。

#address='local':表示启动一个本地的Ray节点
>>> import secretflow as sf
>>> sf.init(parties=['alice', 'bob'], address='local') #parties参与方、address在当前启动一个Ray的节点
>>
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值