首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用YAML规范从组件中记录度量?

如何使用YAML规范从组件中记录度量?
EN

Stack Overflow用户
提问于 2021-10-07 09:17:37
回答 1查看 156关注 0票数 0

我们在Google顶点AI中使用kpf v2,并希望记录由yaml规范构建的组件的度量值。

我们只能通过基于Python函数的组件来完成这项工作,如果我们可以使用mlpipeline-metrics (类型为Output[Metrics])直接调用log_metrics(..)

https://www.kubeflow.org/docs/components/pipelines/sdk/pipelines-metrics/的文档说,您可以从容器内部用json将度量标准写入名为MLPipeline Metrics的OutputPath。但是这在顶点AI中不起作用,因为metr8cs没有出现在控制台中。

我们的组件设置如下:

代码语言:javascript
复制
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}

在这样编写度量文件之后:

代码语言:javascript
复制
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)

我们还试着设置

代码语言:javascript
复制
    fileOutputs:
      mlpipeline-metrics: /mlpipeline-metrics.json

在组件中,这似乎是早期实现它的方法,但这似乎也不起作用。

有什么细节是我在写度量时遗漏的,还是根本不起作用,还是在顶点AI中不受支持?

EN

回答 1

Stack Overflow用户

发布于 2022-05-20 15:21:30

一种在文档中解释的方法,neh。但是在库贝流管道回购的问题上,他给出了一个解决方案,他修改了.yaml,并通过调用Executor类在组件代码中做了一个小的修改。

https://github.com/kubeflow/pipelines/issues/6116#issuecomment-1059174206

我向它添加了一些内容,并将其放在repo中,以便仅使用容器进行部署,并使用输入工件和输入参数添加示例。

https://github.com/juansebashr/VertexPipelinesCICD

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69478536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档