安装Gallery CLI配置工具
场景描述
- Gallery CLI配置工具支持将AI Gallery仓库的资产下载到云服务端,便于在云服务本地进行训练、部署推理。
- Gallery CLI配置工具支持将单个超过5GB的文件从本地上传至AI Gallery仓库中。
约束限制
下载Gallery CLI配置工具包(本地)
如果是在本地服务器安装Gallery CLI配置工具,则参考本节将工具包下载至本地。
- 下载AI Gallery CLI安装包、校验文件。
- 将AI Gallery CLI安装包及对应的校验文件放在同一目录下,执行如下命令使用OpenSSL工具进行校验工具包。
openssl cms -verify -binary -in gallery_cli-*-py3-none-any.whl.cms -inform DER -content gallery_cli-*-py3-none-any.whl -noverify > ./test
出现如下信息则表示校验通过。Verification successful
下载Gallery CLI配置工具包(云服务器)
如果是在ModelArts Lite等云服务器安装Gallery CLI配置工具,则参考本节将工具包下载至云服务器。
- 登录AI Gallery,单击右上角“我的Gallery”进入我的Gallery页面。
- 左侧菜单栏选择“我的资源 > 云服务器”,单击专属资源池页签进入云服务详情页面。
- 在节点页签,单击选择“配置工具”,弹出该节点的配置工具页面。
- 在配置工具页面,单击“下载”启动下载任务。当配置工具的状态记录中“工具状态”为“下载完成”时表示下载完成,工具包存放在“下载位置”的目录下。
如果下载失败,单击“下载”可以重新下载。
- 登录云服务器查看工具包是否下载成功。
- 在云服务详情页面,单击节点页签的选择“前往控制台”跳转到云服务器控制台。
- 在云服务器控制台的节点基本信息页面,单击右上角“远程登录”选择登录方式远程登录云服务器节点。推荐使用CloudShell登录,直接页面单击“CloudShell登录”跳转到CloudShell页面,输入专属资源池信息登录服务器。具体步骤请参见远程登录Linux弹性云服务器(CloudShell方式)。
- 进入4获取的“下载位置”,执行如下命令使用OpenSSL工具进行校验工具包。
openssl cms -verify -binary -in gallery_cli-*-py3-none-any.whl.cms -inform DER -content gallery_cli-*-py3-none-any.whl -noverify > ./test
出现如下信息则表示校验通过。Verification successful
安装Gallery CLI配置工具
当Gallery CLI配置工具包下载完成后,进入服务器安装工具。不管是ModelArts Lite云服务,还是本地Windows/Linux等服务器,安装操作都相同。
- 登录服务器,激活python虚拟环境。
conda activate [env_name] # 例如使用conda管理python环境(需要确认环境已安装Anaconda)
- 在python环境中安装CLI工具。
pip install ./gallery_cli-0.0.3-py3-none-any.whl
- 配置CLI工具的环境信息。
- 在服务器的任意目录下(本文以“/gallerycli”为例)新建CLI配置文件“config.env”,包含如下配置信息。
# IAM相关配置 iam_url=https://iam.myhuaweicloud.com/v3/auth/tokens iam_project=cn-north-7 iam_timeout=15 # 账号密码,和AK/SK二选一 iam_domain=xxx iam_user=xxx iam_password=xxx # AK/SK,和账号密码二选一 iam_ak=xxx iam_sk=xxx # 托管仓库相关配置 repo_url=https://{ModelArts-Endpoint}.myhuaweicloud.com # 系统相关配置 cached_dir=/test # 加解密配置 sdk_encrypt_implementation_func=/path/to/crypt.py.my_encrypt_func sdk_decrypt_implementation_func=/path/to/crypt.py.my_decrypt_func
表1 配置项参数说明 参数名称
说明
iam_url
IAM地址,默认为“https://iam.myhuaweicloud.com/v3/auth/tokens”。
iam_project
服务器所在区域的项目名称,获取方式请参见获取项目ID和名称。如果是本地服务器则默认是北京四区域,此处填写“cn-north-4”。
iam_timeout
(可选)IAM访问超时时间,单位为秒,缺省值是5。当环境网络不稳定时,建议将该值改大。如果超过该时间IAM还没有响应,系统会返回超时错误码,便于定位链接故障。
iam_domain
用户的账号ID,获取方式请参见获取账号名和账号ID。
iam_user
IAM用户名,获取方式请参见获取用户名和用户ID。
iam_password
IAM用户密码,即账号的登录密码。
iam_ak
访问密钥AK,获取方式请参见访问密钥。
iam_sk
访问密钥SK,获取方式请参见访问密钥。
repo_url
AI Gallery仓库的地址,格式为“http://{ModelArts-Endpoint}.myhuaweicloud.com”,其中不同区域的Endpoint可以在ModelArts地区和终端节点获取。
cached_dir
缓存目录,默认AI Gallery仓库的文件下载至该目录下。
sdk_encrypt_implementation_func
自定义加密函数,认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件中密文存放,使用时解密,确保安全。
sdk_decrypt_implementation_func
自定义解密函数,认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件中密文存放,使用时解密,确保安全。
- 配置文件中,账号密码认证和AK/SK认证二选一即可。如果使用账号密码认证,则需要填写配置项“iam_domain”、“iam_user”和“iam_password”;如果使用AK/SK认证,则需要填写配置项“iam_ak”、“iam_sk”和加密配置。
- 华为账号只能使用AK/SK认证。如果要使用账号密码认证,且必须先创建一个IAM用户再获取IAM用户名和密码进行认证,操作指导请参见创建IAM用户。
- 配置项中的认证凭据信息不建议使用明文,可以通过下述方式扩展自定义的加解密组件。
- 在module(yourmodule)自定义一个解(加)密方法,例如decrypt_func(cipher),要求可以通过“from yourmodule import decrypt_func”的方式获取认证凭据信息。
- 在配置文件中配置“sdk_decrypt_implementation_func=yourmodule.decrypt_func”指向自定义的解密方法的引用。程序加载时会通过import_lib加载认证凭据信息。
- 配置文件中配置密文的格式“iam_ak={Crypto}cipher”,其中cipher会在配置项读取认证凭据信息时被解析传递进decrypt_func方法中,进行解密。
- 其他类似自定义加密的方法,会在保存Token到本地时进行加密。
- 配置CLI工具的环境变量,指定到上一步新建的配置文件。
export SDK_CONFIG_PATH=/gallerycli/config.env # 填写正确的config.env路径
- 在服务器的任意目录下(本文以“/gallerycli”为例)新建CLI配置文件“config.env”,包含如下配置信息。
- 配置完成后,执行如下命令查看CLI工具是否安装成功。
gallery-cli --help
如果安装成功会显示CLI中所有可用选项的列表,如下所示。
Usage: gallery-cli [OPTIONS] COMMAND [ARGS]... ╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ --install-completion Install completion for the current shell. | │ --show-completion Show completion for the current shell, to copy it or customize the installation. | │ --help Show this message and exit. | ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭─ Commands ─────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │ download Download files from the AI Gallery | │ login Log in using ak sk from huawei cloud iam | │ logout Log out | ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
“--help”选项可以用于获取命令的更多详细信息,可以随时使用它来列出所有可用选项及其详细信息。例如,“gallery-cli download --help”可以获取使用CLI下载文件的更多帮助信息。
登录Gallery CLI配置工具
当Gallery CLI配置工具安装完成后,可以登录Gallery CLI上传或下载AI Gallery仓库的资产。
在服务器执行如下命令登录Gallery CLI配置工具。
gallery-cli login
显示如下信息表示登录成功。“/test”是自定义的服务器的缓存目录,token是系统自动生成的文件夹。
/test/token
登出Gallery CLI配置工具
上传或下载AI Gallery仓库的资产完成后,登出Gallery CLI清理缓存。
在服务器执行如下命令登出Gallery CLI配置工具。
gallery-cli logout
显示如下信息表示登出成功。系统自动清除缓存目录“/test”下的token文件夹。
Logout successful!