2

カスタム リストを使用して、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=[
            ...
        ]
    )
    ...

しかし、同様のエラーが発生します。アイテムの「元の」名前を取得するにはどうすればよいですか?

4

2 に答える 2