-
Notifications
You must be signed in to change notification settings - Fork 782
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add step-by-step and pipeline tutorials for reinforcement learning with Vertex AI. #19
Add step-by-step and pipeline tutorials for reinforcement learning with Vertex AI. #19
Conversation
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
LGTM! Thanks for the PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM because community tutorials don't need review.
Just add the CODEOWNERS file
...orcement_learning/pipeline_reinforcement_learning_vertex_ai/src/trainer/trainer_component.py
Outdated
Show resolved
Hide resolved
...ng/pipeline_reinforcement_learning_vertex_ai/pipeline_reinforcement_learning_vertex_ai.ipynb
Outdated
Show resolved
Hide resolved
Got this error when running at the ModelUpload stage: /cc @sasha-gitg This is one of the reasons when I was proposing to add the |
Thanks for pointing this out. I encountered the same issue with CustomContainerTrainingJob, and also logged this in a friction log (which I will send you offline). For the two notebooks, there are instructions in the GCS bucket creation section about avoiding multi-regional buckets. |
@KathyFeiyang please add the prototype to the CODEOWNERS |
In Vertex, buckets must be in a single region and must match the region of the Vertex service. We have an open ticket to add verification before we call the API(b/183494969) in the Vertex SDK. In many scenarios the service exception is informative enough (like the example above) and is generally raised immediately. For components, I don't think this is feasible because the storage uri could be passed in as PipelineParam and we will not know the identity of the uri until the task is executed. Are you thinking of a different solution? |
…Directly load dataset from remote bucket.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you @KathyFeiyang for your contribution to our community content!
@Ark-kun @sasha-gitg Thank you for the discussion above around the potential improvement to using GCS buckets with Vertex. For the scope of this PR and adding the two RL prototypes, the feature change with Vertex is not immediately necessary, because users are instructed in the notebooks to match bucket region with Vertex region, and platform changes can't be implemented in the context of this PR. Therefore, I'll prepare to wrap up the PR. Meanwhile, I do think the discussion is valuable to continue. |
Add step-by-step and pipeline tutorials for reinforcement learning with Vertex AI.
Add two reinforcement learning on Vertex AI prototypes. The prototypes use TF-Agents, Kubeflow Pipelines (KFP) and Vertex AI in building a reinforcement learning application: movie recommendation system based on the MovieLens 100K dataset.
Step-by-step demo: showcase how to use custom training, custom hyperparameter tuning, custom prediction and endpoint deployment of Vertex AI to build a RL movie recommendation system
End-to-end pipeline demo: showcase how to build a RL-specific MLOps pipeline using KFP and Vertex Pipelines, as well as additional Vertex AI and GCP services such as BigQuery, Cloud Functions, Cloud Scheduler, Pub/Sub.
Each demo contains a notebook that carries out the full workflow and user instructions, and a
src/
directory for Python modules and unit tests.Before submitting a Jupyter notebook, follow this mandatory checklist: