我有一个完整的预处理、培训、评估Python 3.8中的ML管道,我想在Kubeflow管道中进行转换。它主要用于分割任务(即RGB图像)
我所有的代码都是以面向对象的方式设计的。这有可能使OOP策略保持在Kubeflow中吗?这个问题的意思是:
func_to_conntainer_op装饰器将类方法转换为容器如果有可能,如果您有任何代码示例作为示例,这将是有帮助的。
否则,您推荐什么可以轻松地搬到KF?
(谢谢你的帮助;)
发布于 2022-04-23 06:42:41
我不知道是否有一种原生的Kubeflow方法,但是由于func_to_container_op以一个独立的函数作为它的输入,self状态变量肯定是一个问题。您可能会通过检查函数来获得一些运气,它最终使用一个工厂来创建一个类,您可以直接创建这个类。
作为一种更简单的选择,如果您查看基于类的ZenML API,您可以这样做:
class Preprocessing(BaseStep):
def entrypoint(self,
dataset: pd.DataFrame,
) -> Output(train=pd.DataFrame,
test=pd.DataFrame,
validation=pd.DataFrame):
...
return train_dataset, test_dataset, val_dataset然后,可以将此步骤放入管道中,并将Kubeflow作为见[这里]进行部署。
由于这个步骤已经是一个类,也许有一种简单的方法可以将现有的类转换为ZenML BaseStep类?
声明:我是ZenML的联合创始人之一。
https://stackoverflow.com/questions/71968862
复制相似问题