Skip to content

使用Mac电脑部署fate flow eggroll单机版

Brycelin edited this page Mar 9, 2020 · 3 revisions

启动方式:

在IDEA启动bootstrap3in1,配置方式见wiki,保持cm和nm的端口一致,无需启动egg_pair进程

fate_flow_server需要在Mac终端启动,同时fate_flow_client也需要在终端提交任务

  1. 修改eggroll.properties。将venv改为IDEA中项目module中的venv路径,需要注意的时候FATE和eggroll的venv版本需要保持一致

  2. 修改bootstrap3in1 的配置。打开IDEA的edit configuration,选择项目需要启动的bootstrap3in1,修改Environment variables,除了wiki中需要添加的EGGROLL_HOME等环境变量( 参考https://github.com/WeBankFinTech/eggroll/wiki/Develop-Tips),还需要添加PYTHONPATH环境变量,将FATE和eggroll的PYTHONPATH配置在此处,必须要配置,否则egg_pair自动拉起时会有很多问题

  3. 终端启动fate_flow_server。首先创建env.sh,添加以下信息:

    export EGGROLL_HOME="/Users/bryce/projects/eggroll"
    export EGGROLL_LOG_LEVEL=DEBUG
    export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=
    export PYTHONPATH=$EGGROLL_HOME/python
    # for fate
    export FATE_HOME="/Users/bryce/projects/FATE"
    export PYTHONPATH=$EGGROLL_HOME/python:$FATE_HOME
    export EGGROLL_RESOURCE_MANAGER_AUTO_BOOTSTRAP=0

    source env.sh。然后source venv(此处保持跟IDEA中配置的Python interpreter一致)。执行:

    python fate_flow_server.py

    启动成功后看到Running 字样的时候即为启动成功

  4. 终端提交任务。打开另一个终端,进入到fate_flow目录中,使用与第三点中相同的env.sh和venv。提交任务即可

  5. 由于FATE和eggroll中依赖众多Python package,建议在Mac电脑部署的时候选择conda的venv作为FATE+eggroll的venv,因为FATE依赖gmpy2,使用pip安装会比较麻烦,建议使用conda。