隐语实训营第四讲笔记:SecretFlow在Windows上的安装和部署

部署运行你感兴趣的模型镜像

环境:

Python:3.8

pip: >= 19.3

OS: CentOS 7, Ubuntu 22.04

CPU/Memory: 推荐最低配置是 8C16G.(CPU8核,内存为16GB)

安装方式:通过WSL安装SecretFlow

由于隐语不直接支持Windows,需要使用WSL(Windows Subsystem for Linux)

第一步:在Windows上安装WSL2

步骤 1 - 启用适用于 Linux 的 Windows 子系统

以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

这里会提示重新启动,请等待重新启动计算机,然后继续执行下一步。

步骤 2 - 检查运行 WSL 2 的要求

若要更新到 WSL 2,需要运行 Windows 10。

  • 对于 x64 系统:版本 1903 或更高版本,内部版本为 18362.1049 或更高版本。
  • 对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。

或者Windows11版本。(本文使用Windows11进行安装和部署)

步骤 3 - 启用虚拟机功能

以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

再次重新启动计算机,以完成 WSL 安装并更新到 WSL 2。

步骤 4 - 下载 Linux 内核更新包

1.下载最新包:

适用于 x64 计算机的 WSL2 Linux 内核更新包

如果使用的是 ARM64 计算机,请下载ARM64包

2.运行上一步中下载的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)

 步骤 5 - 将 WSL 2 设置为默认版本

打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:

wsl --set-default-version 2

步骤 6 - 安装所选的 Linux 分发

1.打开 系统自带微软商店Microsoft Store,输入ubuntu搜索,选择最新版Ubuntu 22.04.3 LTS下载。下载完成后可使用“开始”菜单打开该发行版(默认情况下为 Ubuntu)。

首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。

然后,为新的 Linux 分发版创建用户帐户和密码注意,其账户名的正则表达式为:

NAME_REGEX="^[a-z][-a-z0-9]*\$"

至此,第一步完成安装WSL(适用于 Linux 的 Windows 子系统)。

第二步:在WSL中安装Anaconda

使用“开始”菜单打开安装好的ubuntu,在命令行(显示为base)中输入命令下载Anaconda

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

安装下载好的Anaconda安装包 

bash Miniconda3-latest-Linux-x86_64.sh

 第三步:安装SecretFlow

  • 创建conda环境(创建名称为“sf”的conda环境)

conda create -n sf python=3.8

  • 激活conda环境(以后每次打开ubuntu直接激活创建的conda环境)

conda activate sf
  •  使用pip安装SecretFlow(-i部分为指定阿里源)
pip install -U secretflow -i https://mirrors.aliyun.com/pypi/simple/

测试SecretFlow

激活sf环境

conda activate sf

使用cat命令创建test.py文件,>表示输入

cat  >  test.py

复制测试代码,注意,复制完成按回车到下一行,然后按Ctrl+Z结束输入

import secretflow as sf
sf.init(parties=['alice', 'bob', 'carol'], address='local')

alice_device = sf.PYU('alice')

message_from_alice = alice_device(lambda x:x)("Hello World!")

print(sf.reveal(message_from_alice))

再次使用cat命令查看test.py文件内容

cat test.py 

运行test.py文件,成功运行结果为输出:Hello  World!

python  test.py

备注:第一次运行会报错,提示缺失依赖 :使用以下命令安装依赖后再次运行。

sudo apt-get update
sudo apt-get install libgomp1

安装secretnote

第一步:安装Docker Desktop

1.下载Docker Desktop(Docker Desktop Installer.exe)点击链接下载docker-for-windows版本的安装包。打开下载好的exe文件,等待安装完成后,在Settings界面勾选以下设置

2. 打开PowerShell,设置默认WSL连接Docker

wsl --set-default Ubuntu-22.04

 3.配置docker代理镜像源

打开Docker Desktop,进入Settings界面,点击Docker Engine,在json配置文件中输入镜像源

  "registry-mirrors": [
    "https://huecker.io"
  ]

注意"registry-mirrors"的前面应加英文逗号“,” 作分隔。点击右下角Apply&restart应用。

 第二步:使用Docker拉取SecretNote镜像

1.使用“开始”菜单打开安装好的ubuntu,输入命令:

docker pull secretflow/secretnote:unstable-amd64

2.激活名为“sf”的Conda环境,创建目录:note,使用cat命令创建docker-compose.yml文件,粘贴以下内容 :

创建目录:note:

mkdir  note

创建docker-compose.yml文件:

cat   >   docker-compose.yml

 粘贴内容:(粘贴完按回车换行在按Ctrl+Z换行)

services:
  alice:
    image: 'secretflow/secretnote:1.3.0-amd64'
    platform: linux/amd64
    environment:
      - SELF_PARTY=alice
      - ALL_PARTIES=alice,bob
    ports:
      - 8090:8888
    entrypoint: /root/scripts/start.sh
    volumes:
      - /root/scripts

  bob:
    image: 'secretflow/secretnote:1.3.0-amd64'
    platform: linux/amd64
    environment:
      - SELF_PARTY=bob
      - ALL_PARTIES=alice,bob
    ports:
      - 8092:8888
    entrypoint: /root/scripts/start.sh
    volumes:
      - /root/scripts

3.使用docker-compose启动: 

docker-compose up
 

4.打开浏览器输入http://localhost:8090/ 打开SecretNote可视化界面

5.查看本机ip地址

命令行界面输入ifconfig查看以太网IP地址:

ifconfig

5.添加两个节点。

alice:本机IP地址:8090

bob:本机IP地址:8092

至此SecretNote安装完毕,后续可在SecretNote可视化界面进行代码编写。

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值