Katib v1beta1 documentation update#2312
Conversation
|
Hi @andreyvelich ! Thank you for this update! Replying by point:
You're asking if we want to keep a v1alpha3 version of the docs, now that we're updating Katib to v1beta1, correct?
WDYT?
LGTM. |
rui-vas
left a comment
There was a problem hiding this comment.
One other point was the name change from Katib to something else. If we plan to do that, should we already make changes accordingly?
Any decision on that front?
|
Thank you for the comment @RFMVasconcelos!
These docs will be effective after we merge: kubeflow/community-distribution#1593.
I think, it's a good idea. I will add v1alpha3 reference docs and add link to 1.1. Is there any way to get link for 1.1 docs? I found only 1.0 link: https://v1-0-branch.kubeflow.org/. |
I think we can stick with Katib name for Kubeflow 1.2. WDYT @gaocegege @johnugeorge ? |
|
Preview: https://deploy-preview-2312--competent-brattain-de2d6d.netlify.app/. I have updated doc with v1alpha3 reference. /cc @RFMVasconcelos @gaocegege @johnugeorge |
rui-vas
left a comment
There was a problem hiding this comment.
Looking great!
You are indeed writing to the right branch! What we need to do is create the v1.1 branch and update master to be v1.2.
Let me create an issue about it :)
|
Oh, it looks like there is one already -> #2322 |
|
Thanks @RFMVasconcelos. |
|
@RFMVasconcelos @8bitmp3 @gaocegege @johnugeorge I removed WIP status, since kubeflow/community-distribution#1593 is ready to merge. If you have any objections and comments on this PR, please let me know. |
There was a problem hiding this comment.
@andreyvelich Thanks for the PR!
I've added a few suggestions and comments. Feel free to disregard them 👍
Maybe in the Katib explanation in /components/katib/overview.md we could also add a small link for all the new ML users about AutoML (e.g. https://www.fast.ai/2018/07/16/auto-ml2/) and/or Microsoft Azure, Google Cloud and AWS AutoML solution docs?
Thank you for your help!
Update: also maybe we should move the "about" section up in overview.md such that:
Katib is a Kubernetes-native project for automated machine learning (AutoML) —
it's a system for hyperparameter tuning and neural architecture search.
Katib supports a number of machine learning frameworks, including
TensorFlow, MXNet, PyTorch, XGBoost, and others.
The [Katib project](https://github.com/kubeflow/katib) is open source.
The [developer guide](https://github.com/kubeflow/katib/blob/master/docs/developer-guide.md)
is a good starting point for developers who want to contribute to the project.
| This page describes information about | ||
| [Katib config](https://github.com/kubeflow/katib/blob/master/manifests/v1beta1/katib-controller/katib-config.yaml). | ||
|
|
||
| Katib config is the Kubernetes | ||
| [Config Map](https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/) that contains information about: |
There was a problem hiding this comment.
Thank you for the PR @andreyvelich
Hi, what do you think of this suggestion?
- "refactor" to 'This page describes Katib config — the Kubernetes Config Map that contains information about:'
| This page describes information about | |
| [Katib config](https://github.com/kubeflow/katib/blob/master/manifests/v1beta1/katib-controller/katib-config.yaml). | |
| Katib config is the Kubernetes | |
| [Config Map](https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/) that contains information about: | |
| This page describes | |
| [Katib config](https://github.com/kubeflow/katib/blob/master/manifests/v1beta1/katib-controller/katib-config.yaml) — | |
| the Kubernetes | |
| [Config Map](https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/) that contains information about: |
|
|
||
| You can edit this Config Map even after deploying Katib. | ||
|
|
||
| If you deploy Katib in Kubeflow namespace, to edit Katib config run this: |
There was a problem hiding this comment.
Maybe just change the order here, use a different (present continuous) tense, and "the" (the definite article) (I checked with the K8s guide, as I'm not 100% sure about these):
| If you deploy Katib in Kubeflow namespace, to edit Katib config run this: | |
| If you are deploying Katib in the Kubeflow namespace, run this command to edit your Katib config: |
|
|
||
| `kubectl edit configMap katib-config -n kubeflow` | ||
|
|
There was a problem hiding this comment.
Suggestion - use code style/code font/code block/codefence (K8s style guide, Google style guide:
| `kubectl edit configMap katib-config -n kubeflow` | |
| ```shell | |
| kubectl edit configMap katib-config -n kubeflow | |
| ``` |
(without the tabs that indent the code block - they render differently if I remove them)
There was a problem hiding this comment.
@8bitmp3 Should we use ```shell everywhere?
e.g. https://github.com/kubeflow/website/blame/master/content/en/docs/components/hyperparameter-tuning/hyperparameter.md#L144 ?
There was a problem hiding this comment.
@8bitmp3 I've just seen you comment: https://github.com/kubeflow/website/pull/2320/files#r516300401 about it.
Will do the change in this PR.
|
|
||
| All of these settings except **`image`** can be omitted. If you don't specify any other settings, default value is set. | ||
|
|
||
| 1. `image` - Docker image for the `File` metrics collector's container. |
There was a problem hiding this comment.
| 1. `image` - Docker image for the `File` metrics collector's container. | |
| 1. `image` - a Docker image for the `File` metrics collector's container. |
There was a problem hiding this comment.
Agree, changed.
@8bitmp3 I made all list items with not capital letter to be consistent (e.g. https://github.com/kubeflow/website/blame/62aba5ce7a065eb2b60d6b7884f4ab075be33fcc/content/en/docs/components/katib/katib-config.md#L66)
WDYT ?
| Katib is Kubernetes-native project for automated machine learning (AutoML). | ||
| Use Katib for automated tuning of your machine learning (ML) model's hyperparameters and architecture. |
There was a problem hiding this comment.
Suggestions:
I think lines 87-95 about "the Katib project" should be right in the beginning of overview.md:
| Katib is Kubernetes-native project for automated machine learning (AutoML). | |
| Use Katib for automated tuning of your machine learning (ML) model's hyperparameters and architecture. | |
| Katib is a Kubernetes-native project for automated machine learning (AutoML) — | |
| it's a system for hyperparameter tuning and neural architecture search. | |
| Katib supports a number of machine learning frameworks, including | |
| TensorFlow, MXNet, PyTorch, XGBoost, and others. | |
| The [Katib project](https://github.com/kubeflow/katib) is open source. | |
| The [developer guide](https://github.com/kubeflow/katib/blob/master/docs/developer-guide.md) | |
| is a good starting point for developers who want to contribute to the project. |
|
@andreyvelich Thanks. If you're OK with the suggestions/own changes, feel free to get the LGTM and approve labels from the AutoML/Katib experts (which I am not 😄) /assign @animeshsingh @Bobgy @joeliedtke |
|
@8bitmp3 Thank you again for the help on this PR! |
| @@ -1,13 +1,13 @@ | |||
| +++ | |||
| title = "Trial Template Overview" | |||
There was a problem hiding this comment.
| title = "Trial Template Overview" | |
| title = "Overview of trial template parameters in Katib" |
(Sentence case, unless it's a product name, I think)
| @@ -1,13 +1,13 @@ | |||
| +++ | |||
| title = "Trial Template Overview" | |||
| description = "How to specify trial template parameters and support custom CRD in Katib" | |||
There was a problem hiding this comment.
| description = "How to specify trial template parameters and support custom CRD in Katib" | |
| description = "How to specify trial template parameters and support a custom resource (CRD) in Katib" |
(I had to look up CRD on the K8s docs - correct me if I'm wrong. Just wanted to help some new users)
| in Katib. Follow this page to know more about changing trial template specification, | ||
| how to use [Kubernetes ConfigMaps](https://kubernetes.io/docs/concepts/configuration/configmap/) | ||
| to store templates and how to modify Katib controller to support your | ||
| Kubernetes CRD in Katib experiments. |
There was a problem hiding this comment.
| in Katib. Follow this page to know more about changing trial template specification, | |
| how to use [Kubernetes ConfigMaps](https://kubernetes.io/docs/concepts/configuration/configmap/) | |
| to store templates and how to modify Katib controller to support your | |
| Kubernetes CRD in Katib experiments. | |
| in Katib. You will learn about changing trial template specification, | |
| how to use [Kubernetes ConfigMaps](https://kubernetes.io/docs/concepts/configuration/configmap/) | |
| to store templates and how to modify Katib controller to support your | |
| Kubernetes CRD in Katib experiments. |
| (e.g. [Kubernetes `Deployment`](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/)) | ||
| as a trial worker without modifying Katib controller source code and building | ||
| the new image. As long as your CRD creates Kubernetes pods, allows to inject | ||
| the new image. As long as your CRD creates Kubernetes Pods, allows to inject |
There was a problem hiding this comment.
is it Pods or pods in K8s? I thought it's "pods" 😄
There was a problem hiding this comment.
I think it's called Kubernetes Pods. 😄
Ref: https://kubernetes.io/docs/concepts/workloads/pods/#using-pods.
| the new image. As long as your CRD creates Kubernetes Pods, allows to inject | ||
| the [sidecar container](https://kubernetes.io/docs/concepts/workloads/pods/) on | ||
| these pods and has succeeded and failed status, you can use it in Katib. | ||
| these Pods and has succeeded and failed status, you can use it in Katib. |
There was a problem hiding this comment.
| these Pods and has succeeded and failed status, you can use it in Katib. | |
| these Pods and has succeeded and failed status, you can use it in Katib. |
is it Pods or pods in K8s? I thought it's "pods" 😄
| 1. Modify Katib controller | ||
| [ClusterRole's rules](https://github.com/kubeflow/katib/blob/master/manifests/v1beta1/katib-controller/rbac.yaml#L5) | ||
| with the new rule to get access for all resources that are created | ||
| with the new rule to give Katib access for the all resources that are created |
There was a problem hiding this comment.
Correction:
| with the new rule to give Katib access for the all resources that are created | |
| with the new rule to give Katib access to all resources that are created |
| [ClusterRole's rules](https://github.com/kubeflow/katib/blob/master/manifests/v1beta1/katib-controller/rbac.yaml#L5) | ||
| with the new rule to get access for all resources that are created | ||
| with the new rule to give Katib access for the all resources that are created | ||
| by trial. To know more about ClusterRole, check |
| @@ -293,7 +296,7 @@ Expected output for the Tekton `Pipeline`: | |||
| ``` | |||
|
|
|||
| If the above steps are successful, you are able to use your custom object YAML | |||
There was a problem hiding this comment.
| If the above steps are successful, you are able to use your custom object YAML | |
| If you ran the above steps successfully, you should be able to use your custom object YAML |
8bitmp3
left a comment
There was a problem hiding this comment.
@andreyvelich Just took a last look at katib/trial-template.md. We can revise more stuff in another PR, if necessary. Let's try to get a LGTM and /approve soon. Thanks for the patience
Sure @8bitmp3. @gaocegege @johnugeorge Can you give your |
|
I think we need to get |
|
@andreyvelich |
|
/approve |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: andreyvelich, Bobgy The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/lgtm |
|
Thank you @andreyvelich for this big push! It's merged 🚀 |
* Rename hyperparameter-tuning to Katib * Modify overview and hyperparameter * Modify docs for v1beta1 * Add v1beta1 REST api doc * Make metrics collector not capitalized * Add currentOptimalTrial info * Update UI images * Change describe to get command * Add v1alpha3 gRPC API ref * Add comments to v1alpha3 * Change REST to gRPC * Add default values for metrics collector * Change image tag to v1beta1-e294a90 * Changes after review * Fix list * Update v1beta1 reference * Add period * Add shell to commands * Fix colon * Address second review comments * Changes after doc check * Fix API links * Make changes for the trial template * Modify trial doc * Apply a11y rules * Address the comments * Changes for trial template guide * Trial template changes
* Rename hyperparameter-tuning to Katib * Modify overview and hyperparameter * Modify docs for v1beta1 * Add v1beta1 REST api doc * Make metrics collector not capitalized * Add currentOptimalTrial info * Update UI images * Change describe to get command * Add v1alpha3 gRPC API ref * Add comments to v1alpha3 * Change REST to gRPC * Add default values for metrics collector * Change image tag to v1beta1-e294a90 * Changes after review * Fix list * Update v1beta1 reference * Add period * Add shell to commands * Fix colon * Address second review comments * Changes after doc check * Fix API links * Make changes for the trial template * Modify trial doc * Apply a11y rules * Address the comments * Changes for trial template guide * Trial template changes
Related: kubeflow/katib#1360.
Blocked by: kubeflow/community-distribution#1593.
I updated docs for Katib v1beta1. I made few changes:
hyperparameter-tuningsection tokatibto make it clearer, since we are building AutoML project. What do you think about it @8bitmp3 @RFMVasconcelos ?I am still waiting for the pending PRs (I need to update docker images and few UI images., but it would be great if you can start to review it!
/assign @gaocegege @johnugeorge
/cc @8bitmp3 @RFMVasconcelos