SDK简介

最近更新时间:2021-04-09 18:18:02

查看PDF

King SDK 是金山云人工智能平台 KingAI 提供的开源软件包,让用户可以通过SDK代码向 KingAI 提交机器学习和深度学习的训练任务。用户无需关注底层的系统配置,更专注于模型和算法等业务逻辑。用户直接调用KingAI SDK即可轻松管理数据集、启动AI训练以及生成模型并将其部署上线。

KingAI SDK目前只提供Python语言的SDK。

产品特性

  • 内置了深度优化的 TensorFlow 和 PyTorch 等多种流行的深度学习框架。
  • KingAI SDK分为local模式和remote模式。local模式下,会开启一个独立的conda执行环境;remote模式,会对接模型训练服务。
  • SDK当前支持tensorflow、pytorch、xgboost框架,同时支持自定义框架或者pip源。
  • 对接数据管理,支持基于datasetid为训练指定数据源。
  • 对接模型管理,可以注册训练好的模型。
  • 用机器学习平台能力,支持 CPU 和 GPU 等多种算力类型。

参数说明

参数: 说明: 备注:
framework_name 框架名称,比如tensorflow/pytorch等. 在自定义训练中,需要指定框架名称.具体训练中,无需指定,比如基于Tensorflow训练, tf_estimator = Tensorflow(xxxx). 参数类型: 字符串
framework_version 框架版本 local模型下,可以指定pip源支持的版本. remote模式,必须是模型训练服务支持的版本 参数类型: 字符串,必需指定
entry_point 入口执行文件 参数类型: 字符串,必需指定
source_dir 执行代码所属的目录 训练时,训练代码的完成路径为: source_dir/entry_point 参数类型: 字符串,如果不指定,代表当前目录
hyperparameters 超参 参数类型: dict形式, 可选 如: { “epochs”: 1, “batch-size”: 200}
envs 训练使用的环境变量信息 参数类型: dict形式, 可选 如: { “ADDRESS”: “beijing”}
image_name 使用的镜像名称 参数类型: 字符串, 可选. remote模式,基于框架名称和版本,训练服务会拼成使用的镜像.
train_instance_type 训练的类型 可选参数: local和remote local: 本地执行 remote: 远程执行 参数类型: 字符串,可选,默认值是local
train_instance_local_mode 本地模式下,训练的方式 当前仅支持conda,后续会支持container. 仅在train_instance_type设为local模式下才生效. 参数类型: 字符串,可选,默认值是conda
base_job_name 作业名称的前缀 参数类型: 字符串,可选
output_path 模型输出目录 当前仅支持指定本地,后续会支持输出到ks3 参数类型: 字符串,可选
train_engine 训练使用的环境对象 参数类型: TrainEngine类型,可选
dependences 训练代码依赖的pip包 参数类型: 列表,可选 如: dependences=[‘numpy==1.15.1’]
python_version 使用的python版本 默认是3.7,当前仅在local模式下生效. 远程模式下,依赖镜像中的python版本. 参数类型: 字符串,可选
kai_conf 训练上下文配置 参数类型: KaiConf,可选,默认None
is_register 是否注册到模型管理 仅在local模式下生效
register_model_config 模型注册时,使用的配置信息 当remote模式训练或者local模式is_register为True时,此参数必须设置. dict形式 register_model_config={ ‘experiment_id’: ‘4a4be455-bb0a-4ac9-9bef-d7811abe9b30’, ‘model_name’: ‘remote-train-test’ },设置关联实验以及模型名称
model_meta_path Model.py所在的路径 如果模型文件和服务发布使用的Model.py不在一个目录,那么可以执行此参数
resource_dict 训练使用的资源 仅在remote模式下生效,dict形式 如: resource_dict={ ‘cpu’: 12, ‘memory’: 24, “gpu”: 1, “type”: “p40” }
preprocess 训练前置处理 参数类型: 字符串,可选
postprecess 训练后处理 参数类型: 字符串,可选

操作步骤

  1. 在容器开发中新建任务,进入jupyter Notebok编译环境。

  2. 准备训练的代码文件。

  3. SDK提交训练任务分为remote和local两种模式

    • 如果为remote模式,需要将训练的代码文件上传到KS3指定目录。

    • 如果为local模式,需要将训练的代码文件放在jupyter Notebok编译环境的主目录下(/home/kai)。

  4. 输入示例代码,模型训练模块会同步该条训练任务。

文档内容是否对您有帮助?

根本没帮助
文档较差
文档一般
文档不错
文档很好

在文档使用中是否遇到以下问题

内容不全,不深入
内容更新不及时
描述不清晰,比较混乱
系统或功能太复杂,缺乏足够的引导
内容冗长

更多建议

0/200

评价建议不能为空

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

问题反馈