# Cube Studio ### 整体架构 image cube是 腾讯音乐 开源的一站式云原生机器学习平台,目前主要包含 - 1、数据管理:特征平台,支持在/离线特征;数据源管理,支持结构数据和媒体标注数据管理; - 2、在线开发:在线的vscode/jupyter代码开发;在线镜像调试,支持免dockerfile,增量构建; - 3、训练编排:任务流编排,在线拖拉拽;开放的模板市场,支持tf/pytorch/mxnet/spark/ray/horovod/kaldi/volcano等分布式计算/训练任务;task的单节点debug,分布式任务的批量优先级调度,聚合日志;任务运行资源监控,报警;定时调度,支持补录,忽略,重试,依赖,并发限制,定时任务算力的智能修正; - 4、超参搜索:nni,katib,ray的超参搜索; - 5、推理服务:tf/pytorch/onnx模型的推理服务,serverless流量管控,triton gpu推理加速,依据gpu利用率/qps等指标的hpa能力,虚拟化gpu,虚拟显存等服务化能力; - 6、资源统筹:多集群多项目组资源统筹,联邦调度,边缘计算; # 帮助文档 https://github.com/tencentmusic/cube-studio/wiki # 开源共建 学习、部署、体验、开源建设 欢迎来撩。或添加微信luanpeng1234,备注<开源建设>, [共建指南](https://github.com/tencentmusic/cube-studio/wiki/%E5%85%B1%E5%BB%BA%E6%8C%87%E5%8D%97) # 支持模板 提示: - 1、可自由定制任务插件,更适用当前业务需求 | 模板 | 类型 | 组件说明 | | :----- | :---- | :---- | | 自定义镜像 | 基础命令 | 完全自定义单机运行环境,可自由实现所有自定义单机功能 | | datax | 导入导出 | 异构数据源导入导出 | | media-download | 数据处理 | 分布式媒体文件下载 | | video-audio | 数据处理 | 分布式视频提取音频 | | video-img | 数据处理 | 分布式视频提取图片 | | sparkjob | 数据处理 | spark serverless 分布式数据计算 | | ray | 数据处理 | python ray框架 多机分布式功能,适用于超多文件在多机上的并发处理 | | xgb | 机器学习 | xgb模型训练 | | ray-sklearn | 机器学习 | 基于ray框架的sklearn支持算法多机分布式并行计算 | | volcano | 数据处理 | volcano框架的多机分布式,可自由控制代码,利用环境变量实现多机worker的工作与协同 | | pytorchjob-train | 训练 | pytorch的多机多卡分布式训练 | | horovod-train | 训练 | horovod的多机多卡分布式训练 | | tfjob | 训练 | tf分布式训练,k8s云原生方式 | | tfjob-train | 训练 | tf分布式训练,内部支持plain和runner两种方式 | | tfjob-runner | 训练 | tf分布式-runner方式 | | tfjob-plain | 训练 | tf分布式-plain方式 | | kaldi-train | 训练 | kaldi音频分布式训练 | | tf-model-evaluation | 模型评估 | tensorflow2.3分布式模型评估 | | tf-offline-predict | 离线推理 | tf模型离线推理 | | model-offline-predict | 离线推理 | 所有框架的分布式模型离线推理 | | deploy-service | 服务部署 | 部署云原生推理服务 | # 平台部署 [参考wiki](https://github.com/tencentmusic/cube-studio/wiki/%E5%B9%B3%E5%8F%B0%E5%8D%95%E6%9C%BA%E9%83%A8%E7%BD%B2) 平台完成部署之后如下: ![cube](https://user-images.githubusercontent.com/20157705/174762561-29b18237-7d45-417e-b7c0-14f5ef96a0e6.gif) # 贡献 算法: @hujunaifuture @jaffe-fly @JLWLL @ma-chengcheng @chendile 平台: @xiaoyangmai @VincentWei2021 @SeibertronSS @cyxnzb @gilearn @wulingling0108