# #google-cloud-ml #kubeflow-pipelines #google-cloud-vertex-ai
Вопрос:
Мы используем kpf v2 в Google Clouds Vertex AI и хотим регистрировать показатели из компонента, построенного по спецификации yaml.
Мы можем сделать эту работу только из компонента на основе функций Python, с помощью которого мы можем напрямую вызывать mlpipeline-metrics
(типа Output[Metrics]
) log_metrics(..)
.
Документы в https://www.kubeflow.org/docs/components/pipelines/sdk/pipelines-metrics/ говорит, что вы можете записать свои метрики в json из контейнера в выходной путь с именем метрики MLPipeline. Но это не работает в Vertex AI, так как metr8cs не отображается в консоли.
Наш компонент настроен следующим образом:
name: a component
outputs:
- {name: MLPipeline Metrics, type: Metrics}
implementation:
container:
image: eu.gcr.io/project/knark/base:latest
command: [python3, -m, module.foo,
--metrics, {outputPath: MLPipeline Metrics}
С файлом метрик, написанным следующим образом:
parser = ArgumentParser()
parser.add_argument('-m', '--metrics', default='/mlpipeline-metrics.json')
opts = parser.parse_args()
metrics = {'cluster-entropy': .5, 'inertia': 100.}
with open(metrics_path, 'w') as f:
json.dump({'metrics': [{'name': m, 'value': v, 'format': 'RAW'} for m, v in metrics.items()]}, f)
Мы также попытались установить
fileOutputs:
mlpipeline-metrics: /mlpipeline-metrics.json
в компоненте, который, по-видимому, является способом сделать это раньше, но, похоже, это тоже не работает.
Есть ли какие-либо детали, которые я упускаю при написании показателей, или это вообще не работает, или это не поддерживается в Vertex AI?
Комментарии:
1. AFAIK нет способа проверить или отслеживать эти показатели из Vertex, показатели мониторинга для vertex немного ограничены в то время, я полагаю, что стоило бы повысить FR, это следует сделать с помощью отправки обратной связи в документации