Ночной TF / Cloned TFX - как управлять изображением для Kubeflow?
Когда я получаю доступ к моей конечной точке Kubeflow, чтобы загрузить и запустить конвейер, используя клонированный TFX, процесс начинает зависать на первом шаге, производящем это сообщение:
Msgstr "Этот шаг находится в состоянии ожидания с этим сообщением: ImagePullBackOff: Back-off вытягивающее изображение"tenorflow/tfx:0.14.0dev", которое является тем же изображением, которое использовалось в созданном файле yaml конвейера.
Моя общая цель - создать ExampleGen для файлов tfrecords, как описано в руководстве здесь. Самая последняя версия tfx в pip - 0.13 и еще не включает в себя необходимые функции. По этой причине я устанавливаю tf-nightly и clone/build tfx (dev-версия 0.14). Сделав это и установив некоторые дополнительные модули, например, tenorsflow_data_validation, я теперь могу создать свой конвейер, используя компоненты tfx и включая ExampleGen для файлов tfrecords. Я наконец строю конвейер с помощью KubeflowRunner. Все же это приводит к ошибке, указанной выше.
Теперь я задаюсь вопросом о надлежащем способе решения этой проблемы. Я думаю, что один из способов - это создать изображение самостоятельно с указанными версиями, но, может быть, есть более практичный способ?
1 ответ
У TFX пока нет ночной сборки изображений. В настоящее время по умолчанию используется изображение, помеченное версией библиотеки, которую вы используете для построения конвейера, поэтому причина в том, что тег 0.14dev0
, Это текущая версия в HEAD, смотрите здесь: https://github.com/tensorflow/tfx/blob/a1f43af5e66f9548ae73eb64813509445843eb53/tfx/version.py
Вы можете создать свой собственный образ и куда-то его подтолкнуть, например gcr.io/your-gcp-project/your-image-name:tag
и укажите, что конвейер использует это изображение, настроив tfx_image
аргумент для конвейера: https://github.com/tensorflow/tfx/blob/74f9b6ab26c51ebbfb5d17826c5d5288a67dcf85/tfx/orchestration/kubeflow/base_component.py