导出工件

在某些情况下,您可能会发现您并不想让用户将工件直接下载至其计算机中。Driverless AI 提供几个配置选项/环境变量,可启用工件导出选项而非下载。工件可导出至文件系统目录、亚马逊 S3 存储桶或 Bitbucket 存储库。

请注意:启用导出选项时,将自动禁用工件下载选项。

启用工件导出

config.toml 文件公开了以下变量:

  • enable_artifacts_upload: 将“实验”页面的所有下载选项替换为导出选项,让用户可使用 artifacts_store 推送到工件存储库。默认会禁用此项设置。

  • artifacts_store: 指定以下存储方式之一:

    • file_system: 将工件存储于由 artifacts_file_system_directory 设置指定的文件系统目录中。

    • S3: 将工件存储于由 artifacts_s3_bucket 设置指定的 S3 存储桶中。

    • bitbucket: 将工件存储于 Bitbucket 存储库中。

为您所选择的存储方式指定以下设置:

文件系统目录

  • artifacts_file_system_directory: 文件系统位置,工件将被复制至此。这应该是您服务器上的一个目录。

AWS S3

  • artifacts_s3_bucket: 用于存储工件的 AWS S3 存储桶。

Bitbucket

  • bitbucket_skip_cert_verification: 指定是否在通过 HTTPS 使用存储库时跳过对 Bitbucket 证书验证。默认禁用此项设置。

  • bitbucket_tmp_relative_dir: 指定本地临时目录,工件将被复制至此(相对于 data_directory)。

请注意: 禁用工件下载这一选项并不会影响数据集。用户能否下载数据集由 enable_dataset_downloading 配置选项控制,此选项默认设置为 true 。如果您不想让用户将数据集下载至其本地计算机上,则将此选项设置为 false 。目前没有可允许将数据集导出至文件系统的配置选项。

以下示例展示如何在启动 Driverless AI Docker 映像时启用将工件导出至文件系统的选项。

docker run \
--pid=host \
--init \
--rm \
--shm-size=256m \
-e DRIVERLESS_AI_ENABLE_ARTIFACTS_UPLOAD="true" \
-e DRIVERLESS_AI_ARTIFACTS_STORE="file_system" \
-e DRIVERLESS_AI_ARTIFACTS_FILE_SYSTEM_DIRECTORY="tmp" \
-u `id -u`:`id -g` \
-p 12345:12345 \
-v `pwd`/data:/data \
-v `pwd`/log:/log \
-v `pwd`/license:/license \
-v `pwd`/tmp:/tmp \
h2oai/dai-centos7-x86_64:1.9.2.1-cuda10.0.xx

以下示例展示如何在本机安装时启用将工件导出至文件系统的选项。

  1. 导出 Driverless AI config.toml 文件或将其添加至 ~/.bashrc。例如:

# DEB and RPM
export DRIVERLESS_AI_CONFIG_FILE="/etc/dai/config.toml"

# TAR SH
export DRIVERLESS_AI_CONFIG_FILE="/path/to/your/unpacked/dai/directory/config.toml"
  1. 在 config.toml 文件中编辑以下配置选项。完成后,保存更改。

# Replace all the downloads on the experiment page to exports and allow users to push to the artifact store configured with artifacts_store
enable_artifacts_upload = true

# Artifacts store.
# file_system: stores artifacts on a file system directory denoted by artifacts_file_system_directory.
#
artifacts_store = "file_system"

# File system location where artifacts will be copied in case artifacts_store is set to file_system
artifacts_file_system_directory = "tmp"
  1. 启动 Driverless AI。请注意,用于启动 Driverless AI 的命令将因安装类型而异。

# Deb or RPM with systemd (preferred for Deb and RPM):
# Start Driverless AI.
sudo systemctl start dai

# Deb or RPM without systemd:
# Start Driverless AI.
sudo -H -u dai /opt/h2oai/dai/run-dai.sh

# Tar.sh
# Start Driverless AI
./run-dai.sh

导出工件

当启用/配置导出工件选项时, 已完成的实验 页面上的菜单选项会发生变化。具体来讲,所有 “下载” 选项(AutoDoc 除外)均将变为 “导出” 。

Completed experiments menus
  1. 点击工件开始导出。例如,点击 导出摘要和日志

Export summary and logs
  1. 指定文件名称或使用默认的文件名称,即为所导出工件指定的新名称。默认情况下,此名称与所选择的导出工件名称相匹配。

  2. 现在点击 摘要和日志:导出至数据存储 按钮。(请注意,此按钮名称会因您选择的工件而异。)此按钮将启动导出操作。完成后,导出的工件将显示于工件列表中。目录结构为:<path_to_export_to>/<user>/<experiment_id>/

Exported artifact
  1. 继续导出用于实验的其他工件。

Export additional artifacts