カスタム リストを使用して、Kubeflow パイプラインで並列 Op を実行したいと考えています。また、リストの要素の値を Op の定義に使用したいと考えています。私はこのようなことを試みています:
my_list = ['foo', 'bar']
with dsl.ParallelFor(my_list) as item:
op_first = dsl.ContainerOp(
name=f'{item} - First Op',
image=f'gcr.io/...',
arguments=[
...
]
)
...
しかし、次のようなエラーが発生します。
ValueError: Only letters, numbers, spaces, "_", and "-" are allowed in name.
Must begin with letter: {{pipelineparam:op=;name=loop-item-param-103a50f1}} - First Op
私も試してみました
my_dict = [{'name': 'foo'}, {'name': 'bar'}]
with dsl.ParallelFor(my_list) as item:
name = item.name
op_first = dsl.ContainerOp(
name=f'{name} - First Op',
image=f'gcr.io/...',
arguments=[
...
]
)
...
しかし、同様のエラーが発生します。アイテムの「元の」名前を取得するにはどうすればよいですか?