Как передать вывод одного узла в качестве входного параметра другому узлу в DAG рабочего процесса Ar go - PullRequest
1 голос
/ 17 января 2020

Я пытаюсь построить DAG конвейера ML, используя Ar go. И я сталкиваюсь с проблемой, когда мне нужно, чтобы значение от одного узла в группе доступности баз данных было отправлено в качестве параметра на его последующий узел. Скажем, структура AR GO DAG выглядит следующим образом:

{
  "apiVersion": "argoproj.io/v1alpha1",
  "kind": "Workflow",
  "metadata": {
    "generateName": "workflow01-"
  },
  "spec": {
    "entrypoint": "workflow01",
    "arguments": {
      "parameters": [
        {
          "name": "log-level",
          "value": "INFO"
        }
      ]
    },
    "templates": [
      {
        "name": "workflow01",
        "dag": {
          "tasks": [
            {
              "name": "A",
              "template": "task-container",
              "arguments": {
                "parameters": [
                  {
                    "name": "model-type",
                    "value": "INTENT-TRAIN"
                  }
                ]
              }
            },
            {
              "name": "B",
              "template": "task-container",
              "dependencies": ["A"],
              "arguments": {
                "parameters": [
                  {
                    "name": "model-type",
                    "value": "INTENT-EVALUATE"
                  }
                ]
              }
            }
          ]
        }
      },
      {
        "name": "task-container",
        "inputs": {
          "parameters": [
            {
              "name": "model-type",
              "value": "NIL"
            }
          ]
        },
        "container": {
          "env": [
            {
              "name": "LOG_LEVEL",
              "value": "{{workflow.parameters.log-level}}"
            },
            {
              "name": "MODEL_TYPE",
              "value": "{{inputs.parameters.model-type}}"
            }
          ]
        }
      }
    ]
  }
}

A -> B

Вычисление в B зависит на значение, которое было вычислено в A.

Как я смогу передать значение, вычисленное в A, в B?

1 Ответ

1 голос
/ 18 января 2020

Для этого вы можете использовать «артефакты» Ар go - см. Примеры в https://github.com/argoproj/argo/tree/master/examples#artifacts

Другой способ - настроить общий том: https://github.com/argoproj/argo/tree/master/examples#volumes

...