问题标签 [kubeflow-pipelines]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
190 浏览

google-kubernetes-engine - 谷歌云 Cloudbuild Kubeflow 管道

我有一个带有 3 个组件的 Kubeflow 管道的 Google Cloud Platform 帐户。

我正在使用 cloudbuild 为每个组件创建 docker 映像,并将这些映像推送到容器注册表。但是,当我尝试运行管道时,Kubeflow 界面会显示以下消息:

随后出现此错误:

这些是运行管道的 cloudbuild 配置:

这是 build.py 文件:

知道为什么会发生此错误吗?

提前致谢!

0 投票
1 回答
562 浏览

machine-learning - AWS SageMaker ML DevOps tooling / architecture - Kubeflow?

I'm tasked with defining AWS tools for ML development at a medium-sized company. Assume about a dozen ML engineers plus other DevOps staff familiar with serverless ( lambdas and the framework ). The main questions are: a) what is an architecture that allows for the main tasks related to ML development (creating, training, fitting models, data pre-processing, hyper parameter optimization, job management, wrapping serverless services, gathering model metrics, etc ), b) what are the main tools that can be used for packaging and deploying things and c) what are the development tools (IDEs, SDKs, 'frameworks' ) used for it? I just want to set Jupyter notebooks aside for a second. Jupyter notebooks are great for proof-of-concepts and the closest thing to PowerPoint for management... But I have a problem with notebooks when thinking about deployable units of code.
My intuition points to a preliminary target architecture with 5 parts:

1 - A 'core' with ML models supporting basic model operations (create blank, create pre-trained, train, test/fit, etc). I foresee core Python scripts here - no problem.

2- (optional) A 'containerized-set-of-things' that performs hyper parameter optimization and/or model versioning

3- A 'contained-unit-of-Python-scripts-around-models' that exposes an API and that does job management and incorporates data pre-processing. This also reads and writes to S3 buckets.

4- A 'serverless layer' with high level API ( in Python ). It talks to #3 and/or #1 above.

5- Some container or bundling thing that will unpack files from Git and deploy them onto various AWS services creating things from the previous 3 points.

As you can see, my terms are rather fuzzy:) If someone can be specific with terms that will be helpful. My intuition and my preliminary readings say that the answer will likely include a local IDE like PyCharm or Anaconda or a cloud-based IDE (what can these be? - don't mention notebooks please). The point that I'm not really clear about is #5. Candidates include Amazon SageMaker Components for Kubeflow Pipelines and/or Amazon SageMaker Components for Kubeflow Pipelines and/or AWS Step Functions DS SDK For SageMaker. It's unclear to me how they can perform #5, however. Kubeflow looks very interesting but does it have enough adoption or will it die in 2 years? Are Amazon SageMaker Components for Kubeflow Pipelines, Amazon SageMaker Components for Kubeflow Pipelines and AWS Step Functions DS SDK For SageMaker mutually exclusive? How can each of them help with 'containerizing things' and with basic provisioning and deployment tasks?

0 投票
1 回答
139 浏览

git - 将 kubeflow 管道文件与 git 同步

我想在本地对我的 python 脚本进行更改,然后将其推送到 git,然后在 Google Cloud 上运行 Kubeflow 管道。在云上运行文件之前,如何从 git 中提取最新提交?

0 投票
1 回答
317 浏览

python-3.x - 如何在 Kubeflow Pipeline 中挂载 Google Bucket?

我在带有 KF 的 GCP 中的 VM 上启动并运行了一个 KubeFlow 管道。我使用带有图像 jupyter-kale 和 python 的 Jupyter Notebook 服务器创建管道。管道的第一部分是进行数据准备,它下载图像并将它们保存到 PVC。这一切都很好,但我的存储空间用完了,所以我决定将直接下载的图像保存到谷歌存储桶,而不是使用 PVC。我修改了我的管道,如下面的代码所示:

但是此代码在开始后立即导致错误消息说该卷具有无效值并且无法找到:

此步骤处于错误状态并显示以下消息:Pod "try-mount-75vrt-3151677017" is invalid: [spec.volumes[2].name: Invalid value: "gs://xxx-images/my_folder/": a DNS-1123 标签必须由小写字母数字字符或“-”组成,并且必须以字母数字字符开头和结尾(例如“my-name”或“123-abc”,用于验证的正则表达式为“a-z0-” 9?'),spec.containers[0].volumeMounts[3].name:未找到:“gs://xxx-images/my_folder/”,spec.containers[1].volumeMounts[0].name:没有找到:“gs://xxx-images/my_folder/”]

所以,我的问题:

  • 如何在 Kubeflow Pipelines 中挂载谷歌存储桶?
0 投票
2 回答
116 浏览

google-cloud-platform - 在 GCP 上部署 Kubeflow

几周以来,我一直在阅读生产中 ML 的不同方法。我决定测试 Kubeflow,并决定在 GCP 上测试它。我开始使用官方 kubeflow 网站(这里https://www.kubeflow.org/docs/gke/)上的 guidline 在 GCP 上部署 Kubeflow 。我遇到了很多问题,很难解决。我开始寻找更好的方法,我注意到 GCP AI 平台现在只需几个简单的步骤即可部署 Kubeflow 管道。(https://cloud.google.com/ai-platform/pipelines/docs/connecting-with-sdk。

在轻松设置之后,我几乎没有任何疑问和疑问。如果设置和部署 Kubeflow 这么容易,为什么我们必须按照 kubeflow 官网建议的那样繁琐的方式进行。由于在 GCP 上创建 Kubeflow 管道基本上意味着我在 GCP 上部署 Kubeflow,这是否意味着我可以访问其他 Kubeflow 服务,如 Katib?

埃尔纳兹

0 投票
1 回答
236 浏览

kubernetes - Kubernetes 环境变量未通过 PodDefault 附加

我在 kubeflow 笔记本服务器上工作。我需要添加一些作为环境变量的配置。因此,我决定创建 configmap 和 PodDefault。

这是我的配置映射文件。我已使用以下语法将此文件附加到 PodDefault 对象中

实际上这些值来自 kubeflow 配置部分。但它没有附在笔记本(Pod)中

谁能知道如何解决这个问题?

提前致谢

0 投票
1 回答
182 浏览

kubernetes - 从 Kubeflow 管道运行中获取实验名称

我刚开始使用 Kubeflow,遇到了一个问题。我需要我的管道能够自动获取它所属的实验的名称。我尝试使用kfp 包,但在我看来,没有办法获得当前运行的实验名称。你有什么建议吗?非常感谢!

0 投票
2 回答
492 浏览

python - 尝试使用文件在 Kubeflow 组件之间传递数据时出现问题

我使用 python 函数制作了两个组件,并尝试使用文件在它们之间传递数据,但我无法这样做。我想计算总和,然后使用文件将答案发送给其他组件。下面是部分代码(代码在没有文件传递的情况下工作)。请协助。

0 投票
2 回答
184 浏览

kubernetes - 将 Elyra-Pipelines 编译为基于 Tekton 的 Kubeflow 失败

我使用以下说明在KIND之上安装了一个运行基于 tekton 的 kubeflow 管道的 kubernetes 集群

现在我从 Elyra 管道编辑器收到以下错误消息。在基于 argo 的 kfp 集群上运行可以正常工作。

kfp 编译器是否不支持 tekton?有人可以对此有所了解吗?

HTTP 响应正文:

0 投票
1 回答
193 浏览

google-cloud-platform - 如何将请求的响应正文格式化为 Google Cloud Platform API 请求的预测端点

在使用 AI Platform 组件时,我正在学习 GCP 上预制的教程。简而言之,它涉及使用 Kubeflow 和 Tensorflow Extended 来构建和部署一个完整的 ML 模型,以预测谁将成为 Chicago Taxi 数据集的大倾销者。一切都进展顺利,甚至可以部署并命中我的模型的预测端点,但是,我似乎无法正确获取请求正文或找到关于如何知道请求正文应该是什么样子的良好文档。下面我有:

  1. Kubeflow 中来自 SchemaGen 的模型
  2. 我用于训练的 data.csv 中的标题以及我从中提取的要测试的行
  3. 我在邮递员中使用的 curl 是错误的。

值得注意的是,该错误谈到了预期的浮点数并获取了一个字符串,但模型说它应该是一个浮点数。我想知道是否有人可以帮助我确定数据类型,requestBody 的排序,以便我可以成功地进行预测。提前致谢!

来自 Kubeflow 的 SchemaGen: 在此处输入图像描述

csv 标题和数据行的副本:pickup_community_area,fare,trip_start_month,trip_start_hour,trip_start_day,trip_start_timestamp,pickup_latitude,pickup_longitude,dropoff_latitude,dropoff_longitude,trip_miles,pickup_census_tract,dropoff_census_tract,payment_type,company,trip_seconds,dropoff_community_area,tips,big_tipper 60,27 ,2,3,1380593700,41.836150155,-87.648787952,,,12.6,,,现金,出租车加盟服务,1380,,0,0

卷曲:

curl --location --request POST 'https://ml.googleapis.com/v1/projects/<<project-name-here/models/tfxmodel:predict'
--header '授权:Bearer <<TOKEN HERE'
- -header 'Accept: application/json'
--header 'Content-Type: application/json'
--data-raw '{"instances":["Taxi Affiliation Services","","","","" ,"27.05","现金","",60,41.836150155,-87.648787952,0,12.6,1380,3,2,10,1380593700]}'

响应:{“错误”:“预测失败:错误处理输入:预期的字符串,得到 27.05 类型的 'float' 代替。”}

值得注意的是,如果我开始将所有浮点数和整数转换为字符串,它最终会给我一个无效的 requestbody 错误,这并不让我感到惊讶。

对于一些评论:如果我将单个 qoutes 添加到 double 中,并将空值更新为零:

请求正文:

回应:

}