* fix: notebook template tuning
* fix: notebook template tuning
* fix: possible confusion on when to wait for the email notification
* fix: possible confusion on when to wait for the email notification
* adds the updated predictive-maintenance (managed)notebook from community to official folder
* ran linter test
* resubmitting during phase2
* ran linter test
* addresses the review comments: updates based on the new template, sets delete_bucket to False
* ran linter test
* replaces timestamp with uuid
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* fixes tensorflow version, replaces timestamp with uuid, adds service-account and minor textual changes
* removes second defnition of random library
* ran linter test
* uncomments the user flag and updates the installation command
* ran linter test
* removes the extra backslash
* ran linter test
* updates the installation step to fix long running compatibility checks
* ran linter test
* updates the METADATA path during installation steps
* ran linter test
* adds google-api-core version in the installation
* ran linter test
* removes METADATA step during installation
* ran linter test
* updates google api-core & auth versions
* ran linter test
* fixes tensorflow version, replaces timestamp with uuid, adds service-account and minor textual changes
* removes second defnition of random library
* ran linter test
* uncomments the user flag and updates the installation command
* ran linter test
* removes the extra backslash
* ran linter test
* updates the installation step to fix long running compatibility checks
* ran linter test
* updates the METADATA path during installation steps
* ran linter test
* adds google-api-core version in the installation
* ran linter test
* removes METADATA step during installation
* ran linter test
* updates google api-core & auth versions
* ran linter test
* fixes the issues from review: cell descriptions, parameter definitions, tense changes, 3rd person --> 2nd person, list model after pipeline run
* ran linter test
* removes the METADATA hack and updates the installations
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* changed based on andrew review comments
* changed based on andrew review comments
* import library issues
* import library issues
* import issues
* import issues
* modified notebook
* modified notebook
* added new notebook
* added new notebook
* new auto_ml_text_classifiation
* new auto_ml_text_classifiation
* new automl text classification
* linter test
* linter test
* changes on andrew comments
* changes on andrew comments
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* fixing links to open notebook - main and images
* linter test changes
* fixes the papermill execution error(hard-coded bucket link was the cause)
* ran linter test
* adds minor textual changes
* ran linter test
* fixes issues from review: future tense, copyright year, section placement, latest sdk methods, new updates from the template
* ran linter test
Co-authored-by: Manuel Amunategui <manuel.amunategui@springml.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* made changes
* made changes
* ran linter test
* made changes
* ran linter
* made changes
* ran linter
* changes suggested by andrew done
* ran linter
* replaced timestamp with uuid
* ran linter
* changed bucket creation command according to template
* ran linter
* changed text in overview
* changed region cell from markdown to code
* made changes
* replaced dataset from constant to a variable
* replaced constant dataset_id with a variable
* ran linter
* changed suggested by andrew done
* ran linter
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* adds the missing delete_bucket variable, adds steps to configure SERVICE_ACCOUNT
* removes unnecessary random import
* ran linter test
* removes the src folder dependency to run on Colab, adds the pipeline.wait step, updates the cleanup steps
* ran linter test
* fixed issues from review: section posistions, tense changes, section descriptions, template updates
* ran linter test
* Added matching engine notebook official
* Ran linter
* Added matching engine to .cloud-build/test_notebook_vm.txt
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* new notebook of custom image classification
* new notebook of custome image classification
* andrew commented changes
* andrew commented changes
* andrew commented changes
* andrew commented changes
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* fixes exception(reg-test), replaces timestamp with uuid, minor changes
* ran linter test
* resolved review comments: license year, Vertex AI SDK, dataset after objective and future tense
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* deleted file in community and added file in official folder
* renamed file
* ran linter test
* renamed file
* ran linter
* made changes
* ran linter test
* made changes
* ran linter test
* made changes
* ran linter test
* made changes
* ran linter
* made change
* ran linter test
* changes suggested by andrew done
* ran linter
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified notebook according to notebook_template.
* ran linter
* Added create dataset step
* ran linter
* replaced hardcoded dataset name with a variable
* ran linter
* changes suggested by nadrew done
* ran linter
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* done UUID changes
* ran lintertest
* made changes in cleanup section
* ran lintertest
* done UUID changes
* ran lintertest
* made changes in cleanup section
* ran lintertest
* made changes in cleanup section
* Ran linter test
* made UUID changes
* RAN linter test
* Made Some minor Chanages notebook
* Ran Linter Test
* small changes made
* Ran Linter Test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified notebook according to template, tensorflow library is used only for file opening so instead of tf we used bucket.blob.download_as_string()
* ran linter
* all changes requested by andrew are done
* cleared all outputs
* making changes to run linter test
* making changes to run linter test
* ran linter
* removed region text in create bucket step
* ran linter
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the configuring steps, replaces timestamp with uuid, expands the imports
* ran linter test
* separates the vertex-ai and bigquery initialization steps
* adds comment to cell_24
* adds blank line to cell_24:7:1
* adds blank line to cell_24:7:1
* ran linter test
* fixes aiplatform+bigquery installation compatibility issue
* ran linter test
* fixes installation dependencies
* ran linter test
* fixes the issues from the review: future tense, section positions, updates from the latest template
* ran linter test
* fixes the issues from the review: Code formatting, delete redundant cells, resource name changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Created spark notebook with test code
* Implemented experimental code for poly_view
* implemented the table
* WIP-notebook
* moved experimental to tutorial
* delete experimental code and rename the notebook
* clear all outputs
* fix: delete outputs again
* fix: changed template to the newer one
* fix: modify link on workbench
* add creating a cluster
* Completed Before you begin part
* Change execution sequence
* completed write back process
* change order that switching kernel goes top
* modify pie chart to bar chart
* Completed write up part
* WIP: adding description and comments.
* WIP: delete outputs
* fix: nbqa done
* Completed the first draft
* Delete %%time from cells
* Apply changes as per the code review from Brad except SparkSql
* delete outputs
* Change SparkSQL to Spark API
* change label to xlabel
* fix: description in Dataset
* fix: change BUCKET_NAME to DATASET_NAME, link for the region, and add descriptions and examples for frequency table
* fix: move normalize_name to top of the cell
* fix: refactor udf functions and descriptions
* fix: add link for udf
* fix: description in Dataset
* fix: grammer
* fix: add declared in the sentence
* fix: small changes on grammar
* fix: delete string
* fix: change UserDefinedFunction to udf
* fix: as per TW's code review
* fix: reorder REGION and TIMESTAMP under Creating a GCS bucket
* fix: lint
* chore: add bmiro@ as a codeowner of this doc
* fix: change the variable to fix a bug
* fix: as per TW's second review
* fix: add installation part to pass the ci test
* fix: url for links to main
* fix: delete disabling API since it doesn't affect to the pricing
* fix: add conditions for CI test
* fix: changed jar for testing
* fix: add gcs connector
* fix: change writing method to direct
* fix: delete gcs connector
* fix: specify java folder
* fix: change java_home location
* fix: change unzip instruction
* fix: delete mono_ranking_avg_bytes from testing env
* fix: delete frequency_table from testing env
* fix: delete GCS bucket part
* fix: as per Brad's review
* fix: lint
* fix: add version
* fix: change comment
* fix: add package due to switching the kernel
* fix: delete dataproc cluster command
* fix: change link
* fix: change link
* fix: revert cluster deletion command
* fix: change parenthesis to encoded character
* fix: change the name of the notebook
* fix: change timestamp to UUID
* fix: change the link and add description
* fix: change metadata
* replaces timestamp with uuid #create *task #tag1 replace the TIMESTAMP with uuid in other official notebooks
* ran linter test
* updates the uuid code
* fixes the comment style highlighted through linter-test
* ran linter test
* adds length argument to uuid function defaulted to 8
* ran linter test
* Start a new branch for TabNet tutorial.
* format lint
* Clean version Created using Colaboratory
* Remove unused import
* Remove unused import
* Created using Colaboratory
* add import
* Add visualization for TabNet
* add gcs
* run format
* reformat
* reformat
* Rmove the - file
* run linter
* run linter
* Update the objective and data section
* Update the link.
* Update data description.
* Update data description.
Co-authored-by: Long Le <longtle@google.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Added notebook demonstrating Tensorboard Custom Training with custom container.
* Added notebook demonstrating Tensorboard Custom Training with custom container.
* update codeowners file
* call Vertex API instead of gapic API
* resolve comments for custom container
* resolve comments and format
* resolve comments
* using --quiet for delete doctor repository
* address more comments
Co-authored-by: gericdong <itseric@google.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Added notebook demonstrating Tensorboard Custom Training with prebuilt container
* Added notebook demonstrating Tensorboard Custom Training with prebuilt container
* small fix
* address comments
* format
* update project id to be [your-project-id], and populate tensorboard resource name automatically
* Added notebook demonstrating Tensorboard Custom Training with prebuilt container
* Added notebook demonstrating Tensorboard Custom Training with prebuilt container
* small fix
* address comments
* format
* fix typo for service account
* use vertex api instead of gapic api
* address comments
* minor fix
* minor fix for link
* minor fix
* resolve more comments
* a minor fix for comment
* format the notebook
* resolve comments
* address more comments
Co-authored-by: gericdong <itseric@google.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Added notebook
* Made changes in installing packages code cell
* Ran linter test
* fixes the installation issues and updates some textual content
* fixes the # formatting for comments
* ran linter test
* adds pyarrow to the packages
* ran linter test
* replaces timestamp with uuid
* ran linter test
* updates the uuid code
* fixes the comment style highlighted through linter-test
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: krishr2d2 <krishna.movva@springml.com>
* notebook refresh from vertex ai sdk project
* linter test
* notebook refresh from vertex ai sdk project with trainer folder
* linter test
* add pyarrow
* modified notebook
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@gmail.com>
Co-authored-by: sudarshan-SpringML <sudarshan.c@springml.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified notebook
* small changes done
* modified notebook and moved notebook to official folder
* ran linter test
* resolved comments
* ran linter test
* sentence case heading added for some more text
* ran linter test
* made changes
* ran linter test
* made changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* multi_node_ddp_gloo_vertex_training_with_custom_container refresh and related trainer folder
* linter test
* various fixes and colab update
* linter test
* modified notebook
* modified notebook
* ran linter test
* Update multi_node_ddp_gloo_vertex_training_with_custom_container.ipynb
Co-authored-by: sudarshan-SpringML <sudarshan.c@springml.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@gmail.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* moving REGION up
* moving REGION up and csv file name
* fix: changed bucket URL to console
* removing TODOs from Tabnet notebook
* adding notebook and editing CODEOWNERS file
* fixing links
* adding to community because of test issue
* removing CODEOWNERS
* reverting CODEOWNERS
* linting?
* adding fixes
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* fix: pinning
* fix: pinning
* adding new notebook on BQML online pred via Model Registry
* minor changes
* fixes to linting
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: autodiscover
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: autodiscover
* feat: autodiscover
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* fix: title
* fix: title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: auto-discover
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* update: tune title
* update: tune title
* feat: import automl tabular model
* feat: import automl tabular model
* feat: HPT for non-TF
* feat: HPT for non-TF
* fix: split guidelines from template
* fix: split guidelines from template
* fix: split guidelines from template
* upgrade: updates for new release
* upgrade: updates for new release
* New notebook to demonstrate how to enable TensorBoard Profiler
* Reformatted with Lint
* Changed service account handling and added a step to monitor job state
* Addressed review comments
* Addressed technical writerreview comments
* Addressed Ivan review comments
* Switched from GAPIC to Vertex SDK
* Removed an unused package
* Addressed review comments
* Add an example use case for custom prediction routines.
* Addressing some PR comments: reworded the readme in a few places, added a 'probe' command to build.py that sends a sample predict request, and pinned versions in requirements. Also fixed a bug where the artifacts_uri passed in during deployment on Vertex AI was not recognized as a directory.
* Autoformat code with black and fix a couple of typing errors.
* Addressing PR comments: Add deployment machine type to the config and add docstring to probe_prediction method.
* Update example to work with new LocalModel interface.
* Update example to work with new LocalModel interface.
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Added a service account injection
* Revert this
* Added service account injection
* Fixed cloud build file
* Added gcloud version debug info
* Fixed sa injection
* Removed test file
* Revert CODEOWNERS
* google_cloud_pipeline_components_bqml_pipeline_demand_forecasting notebook
* linter test to check with andy
* google_cloud_pipeline_components_bqml_pipeline_demand_forecasting notebook
* linter test to check with andy
* merge
* linter test minor fails. check with andy
* add code owner
* minor changes
* remove components
* linter test passed
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* moving REGION up
* moving REGION up and csv file name
* fix: changed bucket URL to console
* removing TODOs from Tabnet notebook
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* experiments cuj1 notebook release
* add andy reviews
* linter test passed
* align notebooks
* linter test passed
* minor changes
* linter test passed
* minor changes
* linter test passed
Co-authored-by: Ivan Cheung <ivans.mailbox@gmail.com>
Currently, there is no kernel_name. Hence, the execution test cannot run for notebooks that don't have kernels defined in their .ipynb file.
Side-note: We should use lint to remove the kernel_name from .ipynb as well, as it could include info specific to the author's environment.
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Added new Stage 1 notebook to create unlabelled
Vertex AI AutoML text entity extraction dataset
from collection of PDF files on Google Cloud Storage
* Linted notebook
* Removed TODOs
* Updates per PR comments
* Revered to multiple imports per line
* upgrade: current notebook standard
* upgrade: current notebook standard
* Update sdk_automl_tabular_binary_classification_batch_explain.ipynb
* fix: bucket nit
* upgrade: current notebook standard
* upgrade: current notebook standard
* Update google_cloud_pipeline_components_automl_tabular.ipynb
* fix: bucket
* fix: bucket
* upgrade: current notebook standard
* upgrade: current notebook standard
* Update google_cloud_pipeline_components_automl_images.ipynb
* fix: bucket
* fix: bucket
* feat: add example of import from dataframe
* feat: add example of import from dataframe
* update: change in required perms
* update: change in required perms
* review: updates from review
* review: updates from review
* updates: fine tuning
* feat: add example of import from dataframe
* feat: add example of import from dataframe
* update: change in required perms
* update: change in required perms
* review: updates from review
* review: updates from review
* feat: add example of import from dataframe
* feat: add example of import from dataframe
* update: change in required perms
* update: change in required perms
* Added official version of tabular regression batch bq
* Ran linter
* Fixed cleanup
* Additional cleanup
* Added working version
* Refactored and made work
* Ran linter and cleaned up
* Renamed aip to aiplatform
* Replaced online with batch
* Renamed notebook
* Ran linter and cleaned up
* Fixed bug
* Fixed SQL by adding backticks
* Install google-cloud-bigquery[all]
* Refactored datasets
* Ran linter
* Removed GCS cells
* Fixed import file
* Fixed SQL issues and added cleanup of training dataset
* Fixed hardcorded table
* Fixed brand names
* Fixed header
* Fixed results table
* Addressed tech writing review comments
* Ran linter
* added MLPerf benchmark reference and updated Criteo sample to use GRPC for stock containers
* addressed feedback for BERT sample and did similar changes to Criteo sample
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates and adds the telecom-subscriber-churn-prediction notebook to official and removes from the community
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* adds manual-scaling config and explanation to the notebook
* ran linter test after installing linter requirement updates
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Delete revised version
* Copy notebook from /notebooks/official
* Renamed base notebook
* Added first version by mansari@
* Updated to revised version by andrewferlitsch@
* Added author / reviewer information
Added sample files
* Updated CODEOWNERS
* Fixed links for opening the notebook in Colab/Github/Vertex
Removed installation of and references to pandas
Fixed gcs_annotation_file_name string reference
* Fixed the links for opening notebook (again!)
* Added attribution and references
* Removed references as covered at top
* Updated installation commands to match
* Updated Vertex AI region name to be more clear
* Added db-types dependency for pandas operations
that are now failing
* Minor edits
* Combined package installation and
added a note to ignore the errors
* Minor edit to message
* Added special thanks to andrewferlitsch@
* Updated andrewferlitsch@ GithHub profile link
* Updated sample files URLs to absolute URLs
* Removed empty code block
* Added additional attribution (and the one that did not make it into previous commit!)
* Fixed multi-package import formatting
Switched to pandas instead of db-dtypes
* Fixed isort issue
* Removed unnecessary pandas import
* Formatted the notebook with nbfmt
* Additional notebook formatting
* Updated link to open in Vertex AI Workbench
to point to raw .ipynb file
* Fixed lint issues
* Formatting changes
Added additional APIs to be enabled
* Fixed sample dataset link to point to public version
* Fixed linting issues
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Commit for lint
* Commit after name change
* Commit of notebook and CODEOWNERS
Added custom container with xai notebook, and explainable_ai folder in the community folder
* Removed extra copy of file
* Remove extra file
* Updated per review from DPE
* Lint test updates
* linter ran
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
When opening a PR, the CODEOWNERS and instructions hyperlinks throw a 404 error because they point to a URL that has been changed. Fixing these hyperlinks.
* fix: new template review updates
* fix: new template review updates
* mport -> import
* fix: dummy code sample required an import
dummy code samples (not otherwise part of template) -- should be self contained since they will be deleted by the template user.
* fix: added install for self-contained code passes ingestion test
* fix: example code (not otherwise part of template) not self-contained.
* fix: continue update so code example is self-contained
* update: numpy already installed in test env
* Delete revised version
* Copy notebook from /notebooks/official
* Renamed base notebook
* Added first version by mansari@
* Updated to revised version by andrewferlitsch@
* Added author / reviewer information
Added sample files
* Updated CODEOWNERS
* Fixed links for opening the notebook in Colab/Github/Vertex
Removed installation of and references to pandas
Fixed gcs_annotation_file_name string reference
* Fixed the links for opening notebook (again!)
* Added attribution and references
* Removed references as covered at top
* Updated installation commands to match
* Updated Vertex AI region name to be more clear
* Added db-types dependency for pandas operations
that are now failing
* Minor edits
* Combined package installation and
added a note to ignore the errors
* Minor edit to message
* Added special thanks to andrewferlitsch@
* Updated andrewferlitsch@ GithHub profile link
* Updated sample files URLs to absolute URLs
* Removed empty code block
* Added additional attribution (and the one that did not make it into previous commit!)
* Fixed multi-package import formatting
Switched to pandas instead of db-dtypes
* Fixed isort issue
* Removed unnecessary pandas import
* Formatted the notebook with nbfmt
* Additional notebook formatting
* Updated link to open in Vertex AI Workbench
to point to raw .ipynb file
* Fixed lint issues
* Formatting changes
Added additional APIs to be enabled
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Delete revised version
* Copy notebook from /notebooks/official
* Renamed base notebook
* Added first version by mansari@
* Updated to revised version by andrewferlitsch@
* Added author / reviewer information
Added sample files
* Updated CODEOWNERS
* Fixed links for opening the notebook in Colab/Github/Vertex
Removed installation of and references to pandas
Fixed gcs_annotation_file_name string reference
* Fixed the links for opening notebook (again!)
* Added attribution and references
* Removed references as covered at top
* Updated installation commands to match
* Updated Vertex AI region name to be more clear
* Added db-types dependency for pandas operations
that are now failing
* Minor edits
* Combined package installation and
added a note to ignore the errors
* Minor edit to message
* Added special thanks to andrewferlitsch@
* Updated andrewferlitsch@ GithHub profile link
* Updated sample files URLs to absolute URLs
* Removed empty code block
* Added additional attribution (and the one that did not make it into previous commit!)
* Fixed multi-package import formatting
Switched to pandas instead of db-dtypes
* Fixed isort issue
* Removed unnecessary pandas import
* Formatted the notebook with nbfmt
* Additional notebook formatting
* Updated link to open in Vertex AI Workbench
to point to raw .ipynb file
* Fixed lint issues
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* update: ModelEvaluation SDK
* update: ModelEvaluation SDK
* feat: matching engine
* feat: matching engine
* feat: wip: twotowers
* feat: wip: twotowers
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* update: ModelEvaluation SDK
* update: ModelEvaluation SDK
* feat: matching engine
* feat: matching engine
* Delete revised version
* Copy notebook from /notebooks/official
* Renamed base notebook
* Added first version by mansari@
* Updated to revised version by andrewferlitsch@
* Added author / reviewer information
Added sample files
* Updated CODEOWNERS
* Fixed links for opening the notebook in Colab/Github/Vertex
Removed installation of and references to pandas
Fixed gcs_annotation_file_name string reference
* Fixed the links for opening notebook (again!)
* Added attribution and references
* Removed references as covered at top
* Updated installation commands to match
* Updated Vertex AI region name to be more clear
* Added db-types dependency for pandas operations
that are now failing
* Minor edits
* Combined package installation and
added a note to ignore the errors
* Minor edit to message
* Added special thanks to andrewferlitsch@
* Updated andrewferlitsch@ GithHub profile link
* Updated sample files URLs to absolute URLs
* Removed empty code block
* Added additional attribution (and the one that did not make it into previous commit!)
* Fixed multi-package import formatting
Switched to pandas instead of db-dtypes
* Fixed isort issue
* Removed unnecessary pandas import
* Formatted the notebook with nbfmt
* Additional notebook formatting
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* update: ModelEvaluation SDK
* update: ModelEvaluation SDK
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* fix: check for workbench
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* fix: check for workbench
* fix: check for workbench
* Delete revised version
* Copy notebook from /notebooks/official
* Renamed base notebook
* Added first version by mansari@
* Updated to revised version by andrewferlitsch@
* Added author / reviewer information
Added sample files
* Updated CODEOWNERS
* Fixed links for opening the notebook in Colab/Github/Vertex
Removed installation of and references to pandas
Fixed gcs_annotation_file_name string reference
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: triton server
* feat: triton server
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: triton server
* feat: triton server
* feat: using Vision API for preprocessing data
* feat: using Vision API for preprocessing data
* feat: component vs job resource settings
* feat: component vs job resource settings
* feat: add colab code for docker
* feat: add colab code for docker
* fix: add colab support for docker
* fix: add colab support for docker
* fix: delete tmp BQ model
* fix: delete tmp BQ model
* feat: GAPIC->SDK for private endpoints
* feat: GAPIC->SDK for private endpoints
* fix: add IS_COLAB flag
* fix: add IS_COLAB flag
* fix: add IS_COLAB flag
* fix: add IS_COLAB flag
* fix: add IS_COLAB flag
* fix: add IS_COLAB flag
* fix: IS_COLAB
* fix: IS_COLAB
* fix: IS_COLAB
* fix: IS_COLAB
* fix: IS_COLAB
* feat: more model eval work
* feat: more model eval work
* made changes
* ran linter test
* added minor changes
* ran linter test
* made changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* made changes
* ran linter test
* made minor changes
* ran linter test
* made changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* changes made
* ran linter test
* made minor changes
* ran linter test
* made changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Add minor changes to get_started_with_dataflow_pipeline_components
* minor changes and tested
* remove variable dataflow_wait_op, since not used in other places.
* remove variable dataflow_wait_op, since not used in other places
* removed unused import
* Run linter test
* Add gcloud project set when using colab
* Run linter
* correct anem toColab logo Run in Colab
* run linter
* correct the list of items to remove
* Run linter
* Run liinter
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Added vertexai notebook
* Ran the linter test
* Made the required changes based on the comments
* Ran linter test again
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* feat: add colab code for docker
* feat: add colab code for docker
* fix: add colab support for docker
* fix: add colab support for docker
* fix: delete tmp BQ model
* fix: delete tmp BQ model
* Add minor changes to get_started_vertex_datasets notebook
* run linter
* Run Linter test
* Add google authentication cell for colab execution
* run linter
* correct the project id definition
* Run linter
* Add project id cell
* run liner
* Added imports that are required
* run linter test
* Add gcloud project set
* Run linter
* add linter run
* Running linter test
* run linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* adds the ml_ops/stage2/get_Started_bqml_training notebook to official and removes the same from community folder
* ran linter test
* updates the textual content
* ran linter test
* moves the updated stage2/get-started-bqml notebook back to the communit folder
* ran linter test
* updates the header according to the template
* ran linter test
* adds colab part and minor changes
* ran linter test
* retains the newly added code lost in conflicts
* ran linter test
* converts vertex to vertex ai
* ran linter test
* moves deletion of temporary BQ table outside delete_storage condition
* ran linter test
* adds bigquery-storage dependency to the notebook tested on Colab
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified file
* modified file
* ran linter test
* deleted file in community folder
* ran linter test
* changed folder name in links
* ran linter test
* resolved comments
* ran linter test
* modified file
* ran linter test
* deleted file in community folder
* modified notebook
* ran linter test
* renamed managed_notebooks folder to workbench
* ran linter
* resolved comments
* ran linter test
* pulled new version of branch
* ran linter again
* resolved comments
* ran linter test
* removed %%time and added --user flag to all pip installs
* ran linter test
* added debug statements
* ran linter test
* added verbose
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the get-started-vertex-experiments notebook in the community folder
* ran linter test
* adds the costs section
* ran linter test
* adds colab part and minor changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the get-started-automl-training notebook
* ran linter test
* adds --user flag during installation step
* ran linter test
* updates the clean up step
* ran linter test
* adds colab part and minor changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* adds the updated mlops-stage1-get_started_bq_datasets notebook to the official branch and removes it from the community branch
* removes second instance of create_bigquery_dataset() function
* ran linter test successfully
* adds costs section
* ran linter test successfully
* updates the dependency installation step and GCS bucket explanation
* ran linter test
* adds pyarrow to the installations
* ran linter test
* removes unnecessary installations + adds silent install + moves the notebook back from official to community folder + adds IS_TESTING condition during clean-up
* ran linter test
* resolves the move up?? comment and builtin comment
* ran linter test
* updates textual content about package installation
* ran linter test
* resolves the future-tense and dependency installations comments
* ran linter test
* updates the header according to template
* ran linter test
* adds Colab part and minor changes
* ran linter test
* updates the enable apis step in setup project section
* ran linter test
* changes vertex to vertex ai
* ran linter test
* moves temporary BQ table deletion outside the delete_storage condition
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified file
* made linter changes
* made changes
* linter test issues resolved
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Start a new branch for TabNet tutorial.
* Clean version Created using Colaboratory
* Created using Colaboratory
* Remove unused import
* format lint
* Remove unused import
* Created using Colaboratory
* Remove unused import
* Fix the first iteration of reviewing except the image location
* add import
* Update the image to vertex
* Force delete the BQ to avoid waiting
* Add codeowner for TabNet
* Remove - from folder name
* Add deployment in Vertex AI
* Add delete the resource
Co-authored-by: Long Le <longtle@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* minor changes made to notebook
* ran lintertest
* added coment
* ran lintertest
* made changes sujjested in git review
* ran linter test
* changes done as per review
* ran lintertest
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* adding Vertex AI optimized TensorFlow runtime samples
* updated URLs, added code to import benchmark.py
* fixed 'Open in Vertex AI Workbench' links
* final cleanup
* added @vlasesnkoalexey as an owner of notebooks/community/vertex_endpoints/optimized_tensorflow_runtime
* rerun linter
* updates the get-started-automl-pipelines in the mlops/stage3 folder inside community folder
* replaces the unused variable deploy_op with _
* removes the unused Model import
* adds the costs section
* ran linter test
* adds Colab part to the notebook
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the mlops/stage3/get_started_with_kubeflow_pipelines.ipynb notebook
* fixes unused variables
* fixes conflicting function names
* ran linter test
* adds colab changes
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates: adds delete-batch code + adds colab part + updates textual content
* sets delete_bucket to False as default
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates get-started-featurestore notebook in mlops/stage2
* ran linter test
* adds the colab changes and minor textual changes
* ran linter test
* adds the colab changes to the notebook and minor textual changes
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified file
* run linter test
* run in colab
* added coment
* run lintertest
* changed as per review coments
* ran lintertest
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* add new notebook version
* linter test done. passed
* simple fix
* add images
* linter test done
* fix image name
* fix file name in the notebook
* linter code run. done
* linter code run. done
* name fixes. linter code done. passed.
* fix project id and region
* test done
* format
* linter test done.
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the mlops/stage3/get_started_with_kubeflow_pipelines.ipynb notebook
* fixes unused variables
* fixes conflicting function names
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the get-started-automl-pipelines in the mlops/stage3 folder inside community folder
* replaces the unused variable deploy_op with _
* removes the unused Model import
* adds the costs section
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* modified notebook
* linter test issues resolved
* ran linter test
* added colab option
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* updates the get-started-automl-training notebook
* ran linter test
* adds --user flag during installation step
* ran linter test
* updates the clean up step
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* add dataproc components tabular notebook
* add src package
* add codeowner
* linter test done. almost ok except for the flake8 E231. need to follow up with andy
* fix typos based on andy review
* linter test done. review with andy
* hyperparameter_tuning_op fix
* project name
* add delete repo
* fix image
* linter test done
* fix image reference
* fix typo image reference
* minor fixes
* karl fixes
* karl fixes on links
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* add new notebook version
* linter test done. passed
* simple fix
* add images
* linter test done
* fix image name
* fix file name in the notebook
* linter code run. done
* linter code run. done
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* feat: add notebook for FastAPI server
* feat: add notebook for FastAPI server
* feat: add notebook for FastAPI server
* feat: notebook for private endpoints
* feat: notebook for private endpoints
* license tweak
* remove unused import json
* fixed a missing import
* add sleep(300) to test my theory
* add missing newline
* put sleep behind a conditional
* revert new notebook name to previous name for compatibility with extant links
* fix quoting syntax error
* reformatted due to relint
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Add example using auto scale
* Format with nbqa
* Complete sentence
* Give the sample for CreateFeaturestoreRequest only, instead of actual call to create FS to avoid duplicate resource or extra cleanup.
* Remove unused import
* Remove version pinning
* Add try block to avoid error when test was not cleanup properly.
* Lint
* Fix import
* Merge print lro result with the call in the same try block
* Fix typo
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Morgan Du <morgandu@google.com>
In "Step by Step Guide to Building Reinforcement Learning Applications using Vertex AI", the replay_buffer was unbound if training_data_spec_transformation_fn was provided to the train() function
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: workaround for blocking issue
* update: workaround for blocking issue
* fix: reconfigure endpoint
* fix: reconfigure endpoint
* feat: add get started with TF serving functions
* feat: add get started with TF serving functions
* feat: notebook for TF Serving
* feat: notebook for TF Serving
* bqml pipeline notebook for official blog
* add notebook to CODEOWNERS
* add author name
* requirements commenting fix
* linter test done
* unpin the maintenance version for kfp
* fix: install conflicts
* Update google_cloud_pipeline_components_bqml_text.ipynb
* add karl fix
* lint test done
* add andy fixes
* linter test done
* flip order of the special METADATA fix
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@gmail.com>
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: workaround for blocking issue
* update: workaround for blocking issue
* fix: reconfigure endpoint
* fix: reconfigure endpoint
* feat: add get started with TF serving functions
* feat: add get started with TF serving functions
* Ml ops 7v2 (#429)
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* Update README.md
* Add files via upload
* Update README.md
* Delete stage6b.png
* Delete stage6c.png
* Add files via upload
* Delete stage6b.png
* Delete stage6c.png
* Add files via upload
* Delete stage6b.png
* feat: new notebook on endpoints (#430)
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: workaround for blocking issue
* update: workaround for blocking issue
* wrong location
* Create README.md
* Update README.md
* Update README.md
* Update README.md
* Update README.md
* fix: links
* fix: title
* fix: example for reconfiguring the traffic split (#431)
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: workaround for blocking issue
* update: workaround for blocking issue
* fix: reconfigure endpoint
* fix: reconfigure endpoint
* Add section on granting Dataproc IAM roles.
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@gmail.com>
Co-authored-by: Win Woo <wwoo@google.com>
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: workaround for blocking issue
* update: workaround for blocking issue
* fix: reconfigure endpoint
* fix: reconfigure endpoint
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: workaround for blocking issue
* update: workaround for blocking issue
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* update: more details to objective on endpoint notebook
* feat: add data labeling notebook
* feat: add data labeling notebook
* update: details on dsl.Condition
* update: details on dsl.Condition
* feat: add TFHub model example
* feat: add TFHub model example
* adds the updated mlops-stage1-get_started_bq_datasets notebook to the official branch and removes it from the community branch
* removes second instance of create_bigquery_dataset() function
* ran linter test successfully
* adds costs section
* ran linter test successfully
* updates the dependency installation step and GCS bucket explanation
* ran linter test
* adds pyarrow to the installations
* ran linter test
* removes unnecessary installations + adds silent install + moves the notebook back from official to community folder + adds IS_TESTING condition during clean-up
* ran linter test
* resolves the move up?? comment and builtin comment
* ran linter test
* updates textual content about package installation
* ran linter test
* resolves the future-tense and dependency installations comments
* ran linter test
* updates the header according to template
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* add automl tabular regression online bq with minor changes
* Run Linter
* Fix errors from the CLA test
* run linter
* resolve issue.
* run Linter
* Merge
* test lint
* fix for linter test
* add automl tabular regression online bq with minor changes
* Run Linter
* Fix errors from the CLA test
* run linter
* resolve issue.
* run Linter
* Merge
* test lint
* fix for linter test
* Fix Bucket name variable
* run linter
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* adds the ml_ops/stage2/get_Started_bqml_training notebook to official and removes the same from community folder
* ran linter test
* updates the textual content
* ran linter test
* moves the updated stage2/get-started-bqml notebook back to the communit folder
* ran linter test
* updates the header according to the template
* ran linter test
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* update: for official
* update: for official
* cleanup: add deleting model/endpoint created from pipeline
* cleanup: add deleting model/endpoint created from pipeline
* feat: add dataproc notebook
* feat: add dataproc notebook
* update: for official
* update: for official
* cleanup: add deleting model/endpoint created from pipeline
* cleanup: add deleting model/endpoint created from pipeline
* Add minor changes to automl image object detection
* run linter
* Correct the milli nodes hours
* fix errors
* fix getenv
* Run linter
* remove tabular notebook, wrongly added
* Correct the bucket varible and minor changes to text
* Run linter
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* fix: use os.getenv()
* fix: use os.getenv()
* fix: use os.getenv()
* fix: use os.getenv()
* fix: use os.getenv()
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Add NVIDIA Triton on Vertex AI Prediction official notebook
* Add NVIDIA Triton on Vertex AI Prediction official notebook
* Add NVIDIA Triton on Vertex AI Prediction official notebook
* Add NVIDIA Triton on Vertex AI Prediction community notebook
* Add NVIDIA Triton on Vertex AI Prediction community notebook
* Add NVIDIA Triton on Vertex AI Prediction community notebook
* Fixes based on feedback to NVIDIA Triton on Vertex AI Prediction community notebook
* Start a new branch for TabNet tutorial.
* Clean version Created using Colaboratory
* Created using Colaboratory
* Remove unused import
* format lint
* Remove unused import
* Created using Colaboratory
* Remove unused import
* Fix the first iteration of reviewing except the image location
* add import
* Update the image to vertex
* Force delete the BQ to avoid waiting
* Add codeowner for TabNet
* Remove - from folder name
Co-authored-by: Long Le <longtle@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Using BQML 1st-party components and 1.0.0 of google-cloud-pipeline-components
* Using BQML 1st-party components and upgrading to 1.0.0 of google-cloud-pipeline-components
* Using BQML 1st-party components and upgrading to 1.0.0 of google-cloud-pipeline-components
* Using BQML 1st-party components and upgrading to 1.0.0 of google-cloud-pipeline-components
* Using BQML components and upgrade to 1.0.0 of GCPC
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* adds automl-text-sentiment-analysis-online notebook
* adds the cleaned up automl-text-sentiment-analysis notebook after running linter test
* adds textual content on what the dataset predicts in the dataset section
* ran the linter test after the update
* adds textual content on what the dataset predicts in the dataset section
* ran the linter test after the update
* corrects the IMPORT_FILE parameter in the notebook
* ran linter test after update
* deletes the source file from the community/sdk folder
* updates the colab, git & workbench links in the notebook
* ran linter test
* updates the license year to 2022 and simplifies the clean-up step for bucket-deletion
* ran linter test
* adds TESTING env condition while deleting the buckets
* ran linter test successfully
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* adds the automl-video-action-recognition-notebook
* ran linter test
* fixes the dag variable by replacing with job
* ran linter test
* fixes the dag variable by replacing with job
* ran linter test
* corrects the IMPORT_FILE parameter in the notebook
* ran linter test after update
* updates the colab, git & vertex-ai links
* ran linter test
* updates the license year to 2022 and simplifies the lean-up step for bucket created
* ran linter test
* removes the file from the community folder
* adds the TESTING env condition while deleting the buckets
* ran linter test successfully
* adds TESTING env condition while deleting the bucket
* ran linter test successfully
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* modified colab,github,vertexAI links and added vertex logo
* ran linter
* resolved comments
* ran linter
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* changed master to main for links and added vertex AI logo
* ran linter
* resolved comments
* ran linter
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* A notebook that shows Vertex AI feature store capabilities in a real-world scenario (#296)
* A notebook that shows Vertex AI feature store capabilities in a real-world scenario
* new notebook version
* fix CODEOWNERS
* comment to the feature store monitoring api
* format notebook
* fix CODEOWNERS
* fix CODEOWNERS as required
* new version
* new notebook version
* notebook cleaning
* new update
* add fix to pass lint test
* resolve conflict
* import libraries fix
* update image
* update notebook
* fix comment
* new notebook version
* new notebook and assets
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Added files in their old folder
* Deleted unneeded file
* Ran linter
* Fixed CODEOWNERS
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: ivanmkc <ivans.mailbox@gmail.com>
* A notebook that shows Vertex AI feature store capabilities in a real-world scenario
* new notebook version
* fix CODEOWNERS
* comment to the feature store monitoring api
* format notebook
* fix CODEOWNERS
* fix CODEOWNERS as required
* new version
* new notebook version
* notebook cleaning
* new update
* add fix to pass lint test
* resolve conflict
* import libraries fix
* update image
* update notebook
* fix comment
* new notebook version
* new notebook and assets
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Deploying TF Hub object detection model using Vertex endpoints
* Add user to codeowners
* fix path in CODEOWNERS
* clear all outputs
* run linter
* manual lint fix
* fix more linting errors
* order imports in alphabetical order
* run linter
* made changes requested on feedback
* automate fetching endpoint model id
* fix hardcoded value in bash command
* generalize region endpoint and project in bash cell
* retrieve endpoint and model ids programatically
* fix formatting
* run linter
* Remove pipfile
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* adds the automl-video-action-recognition-notebook
* ran linter test
* fixes the dag variable by replacing with job
* ran linter test
* fixes the dag variable by replacing with job
* ran linter test
* corrects the IMPORT_FILE parameter in the notebook
* ran linter test after update
* updates the colab, git & vertex-ai links
* ran linter test
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Add google_cloud_pipeline_components_model_upload_predict_evaluate notebook.ipynb
* format with linter
* add import for tensorflow when in the testing environment
* linter
* fix dependency issues for testing env
* address comments
* eval component does not output gcp_resources yet, still in experimental
* added location to aip.init
* add deletion for model and batch prediction jobs
* typo, missed a comma.
* linter
* Remove tensorflow import + use gsutil to check if artifacts exist.
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* notebook refresh from vertex ai sdk project batch 1
* successfully ran linter test
* removed global variable import file
* update with linter test changes
* removing community version of dk_automl_video_classification_batch.ipynb
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* added notebook
* ran linter
* fix aip not defined error
* ran lint
* resolved git comments
* ran linter
* deleted file in community folder and removed globals
* ran linter
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* added notebook
* changed folder
* reinstalled linter
* ran linter
* pulled new changes and merged
* resolved comments
* resolved comments
* ran linter
* deleted file in community folder and removed globals in file
* ran linter
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* PyTorch on Vertex - Updated to match GCPC v0.2.2 API
* PyTorch on Vertex - Fixes based on review comments
* PyTorch on Vertex - fixes based on review
* PyTorch on Vertex - linter fixes
* PyTorch on Vertex - fixes based on feedback
* PyTorch on Vertex - fixes based on feedback
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* feat: get started XAI
* feat: get started XAI
* feat: XAI with sklearn
* feat: XAI with sklearn
* feat: add covert component example
* feat: add covert component example
* feat: upgrade FS to SDK
* feat: upgrade FS to SDK
* feat: update to v1
* feat: update to v1
* fix: XAI for sklearn
* fix: XAI for sklearn
* SDK Featurestore notebook
* fixed issues, tried to make notebook more readable, style
* removed previous notebook
* moved sdk-feature-store to community (for now)
* made fixes
* moved BQ output table cells down
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
Co-authored-by: Morgan Du <morgandu@google.com>
* feat: get started XAI
* feat: get started XAI
* feat: XAI with sklearn
* feat: XAI with sklearn
* feat: add covert component example
* feat: add covert component example
* feat: upgrade FS to SDK
* feat: upgrade FS to SDK
* feat: update to v1
* feat: update to v1
* feat: get started XAI
* feat: get started XAI
* feat: XAI with sklearn
* feat: XAI with sklearn
* feat: add covert component example
* feat: add covert component example
* feat: upgrade FS to SDK
* feat: upgrade FS to SDK
* Fixes and renames link to launch automl-text-classification.pynb in Vertex AI Workbench
* Fixes and renames link to launch sdk_automl_tabular_forecasting_batch.pynb in Vertex AI Workbench
* Fixes links for launching notebook in Vertex AI Workbench for Explainable AI samples
* Fixes link for launching notebook in Vertex AI Workbench for model monitoring sample
* Fixes links to launch pipelines notebook samples
* Fixed lint problem in automl-text-classification.ipynb
* Autofixed lint errors
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* feat: get started XAI
* feat: get started XAI
* feat: XAI with sklearn
* feat: XAI with sklearn
* feat: add covert component example
* feat: add covert component example
* Added example for PyTorch lightning distributed training of a ResNet model
* Revert "Added example for PyTorch lightning distributed training of a ResNet model"
This reverts commit bcbe832c51.
* Added example for PyTorch lightning distributed training of a ResNet model
* Revert "Added example for PyTorch lightning distributed training of a ResNet model"
This reverts commit 2a792cb7ac.
* Added example for PyTorch lightning distributed training of a ResNet model
* Added Notebook for PyTorch lightning distributed training of a ResNet model
* Added Notebook for PyTorch lightning distributed training of a ResNet model
* Notebook updates after review
* Notebook updates after review
* Added example for PyTorch lightning distributed training of a ResNet model
* Revert "Added example for PyTorch lightning distributed training of a ResNet model"
This reverts commit bcbe832c51.
* Added example for PyTorch lightning distributed training of a ResNet model
* Revert "Added example for PyTorch lightning distributed training of a ResNet model"
This reverts commit 2a792cb7ac.
* Added example for PyTorch lightning distributed training of a ResNet model
* Added Notebook for PyTorch lightning distributed training of a ResNet model
* Added Notebook for PyTorch lightning distributed training of a ResNet model
* Notebook updates after review
* Notebook updates after review
* Adjust Tensorboard to TensorBoard
* Adjust Tensorboard to TensorBoard
* Revert "Adjust Tensorboard to TensorBoard"
This reverts commit 9aac52e358b4ccc27a9a5a9e3bc5ef3305553462.
* Adjust Tensorboard to TensorBoard
* Adjust Tensorboard to TensorBoard
* Adjust Tensorboard to TensorBoard and and run lint
* Added example for PyTorch lightning distributed training of a ResNet model
* Revert "Added example for PyTorch lightning distributed training of a ResNet model"
This reverts commit bcbe832c51.
* Added example for PyTorch lightning distributed training of a ResNet model
* Revert "Added example for PyTorch lightning distributed training of a ResNet model"
This reverts commit 2a792cb7ac.
* Added example for PyTorch lightning distributed training of a ResNet model
* PyTorch on Vertex - Updated to match GCPC v0.2.2 API
* PyTorch on Vertex - Fixes based on review comments
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Original alphafold Dockerfile and notebook as a starting point
* Migrate dependencies from notebook into Dockerfile
* adding build_docker.sh script for building docker image
* remove cell, and replace with accelerator configuration cell. Also remove dependency on google.colab
* dockerfile remove redundant
* Changing text in launch button
* add vertexai.png
* update notebook, including permalink to vertexai.png
* updating notebook markdown and correcting the vertexai.png image display
* add div brackets and fix broken launch link
* table instead of div
* width=40
* resizing vertexai image
* updated FAQ
* updated Licence
* add back in the output_file zip
* launch button at top of notebook
* default workdir aligned with JuptyerLab home directory
* intro paragraph
* update CPU instructions
* exchange notebook title and launch header
* Dockerfile license
* collapsing cells
* splitting out sequences into un-collapsed cell
* Update licence
* update download instructions text
* Remove "double-click" text
* hide cells
* Increasing indent to pass linting for alphafold_on_gcp (#224)
* increasing indent to pass linting
* more linting
* wild
* AMBER relaxation f-string
* hidden cells
* wild commit
* move links to main
* Update swivel and matchine engine samples
* Fix lint
* format notebooks
* fix lint
* fix lint
* upgrade google-python-api-client for testing pipeline
* upgrade google-api-core for testing pipeline
* install tensorflow after other required packages
* fix lint
* upgrade google-auth for testing
* install tensorflow in testing env
* upgrade pip with user flag
* remove kfp as a dependency
* separate matching engine notebook into another commit
* fix service account extraction
* service account is optional so comment it
* submit pipeline without specifying service account
* clarify how TensorBoard relates to Vertex ML metadata
* add reference to Vertex ML metadata
* fix typo
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
* Add tensorflow pip install to migration notebook
The build is failing due to tensorflow missing. Adding this dependency.
* build: Testing change to notebook test to resolve build error
* build: Reverted change to base branch
* Add Neo4j notebook
* delete extra line
* Across this notebook, the dataframe assignment and display occurs both within and outside with statements. Consider following the pattern of the 2nd query, where it is outside.
* Typo: unlabled
* AutoML Tables is no longer a standalone product in Vertex AI, so I suggest the naming "Vertex AI for AutoML tabular data."
Hi. I tried to run this all through cloud shell. pip makes to Python 2.0 there and the command fails. So, this PR has pip3.
Also, the cloud shell path didn't know about the directory where all this stuff installed, so I've added a command to add it to PATH.
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* TPU pipeline to community folder
* Changes per review by Andrew F
* Lint test
* Moved to community/pipelines
* Updated codeowners to reference pipelines folder
* Update to codeowners
* feat: MLMD + Pipelines notebook
* Updates from notebook execution test
* Update with changes from linter
* Update MLMD notebook from feedback, upgrade to latest sdk versions
* Add metadata notebook to codeowners file
* Resolve merge conflicts with codeowners
* Update KFP and Vertex SDK versions
* Run the linter
Co-authored-by: Karl Weinmeister <11586922+kweinmeister@users.noreply.github.com>
* Added forecasting notebook
* Fixed forecasting notebook
* Ran linter
* Small fix
* Fixed dataset variable name conflict
* Ran linter
* Fixed cleanup bug
* fix: remove online prediction reference
* fix: rephrase title to just AutoML tabular forecasting
* fix: update training time to one hour
Co-authored-by: Andrew Ferlitsch <aferlitsch@google.com>
I believe you *can* use a multi-region; it just might not work as well (e.g. for latency, cost) as a regional bucket where you are doing other operations. This removes in inaccurate statement.
#120 is failing due to existing notebooks failing. This change will temporarily reduce the number of folders checked, to enable this PR to be merged, which enables weekly regression tests. Then, we will address the issues with the notebooks and remove these exemptions.
* added sklearn-example
* nb formatting
* added readme
* added endpoint to notebook
* nb formatting
* added endpoint prediction example
* nb formatting
* fixed request
* minor woring fixes in docstrings
* added codeowner and included PR feedback
Co-authored-by: Maximilian Engelhardt <maximilian.engelhardt@ing.com>
help="The path to the file that has newline-limited folders of notebooks that should be tested.",
required=True,
)
parser.add_argument(
"--base_branch",
help="The base git branch to diff against to find changed files.",
required=False,
)
parser.add_argument(
"--container_uri",
type=str,
help="The container uri to run each notebook in.",
required=True,
)
parser.add_argument(
"--variable_project_id",
type=str,
help="The GCP project id. This is used to inject a variable value into the notebook before running.",
required=True,
)
parser.add_argument(
"--variable_region",
type=str,
help="The GCP region. This is used to inject a variable value into the notebook before running.",
required=True,
)
parser.add_argument(
"--variable_service_account",
type=str,
help="A service account. This is used to inject a variable value into the notebook before running. This is not the account that will run the notebook.",
required=True,
)
parser.add_argument(
"--variable_vpc_network",
type=str,
help="The full VPC network name. See https://cloud.google.com/compute/docs/networks-and-firewalls#networks. Format is projects/{project}/global/networks/{network}, where {project} is a project number, as in '12345', and {network} is network name. See <https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert> for details. This is used to inject a variable value into the notebook before running.",
required=False,
)
parser.add_argument(
"--staging_bucket",
type=str,
help="The GCP directory for staging temporary files.",
required=True,
)
parser.add_argument(
"--artifacts_bucket",
type=str,
help="The GCP directory for storing executed notebooks.",
If you are opening a PR for `Official Notebooks` under the [notebooks/official](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/master/notebooks/official) folder, follow this mandatory checklist:
- [ ] Use the [notebook template](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/notebooks/notebook_template.ipynb) as a starting point.
**REQUIRED:** Add a summary of your PR here, typically including why the change is needed and what was changed. Include any design alternatives for discussion purposes.
<br>
--- YOUR PR SUMMARY GOES HERE ---
<br><br><br>
**REQUIRED:** Fill out the below checklists or remove if irrelevant
1. If you are opening a PR for `Official Notebooks` under the [notebooks/official](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/main/notebooks/official) folder, follow this mandatory checklist:
- [ ] Use the [notebook template](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/notebook_template.ipynb) as a starting point.
- [ ] Follow the style and grammar rules outlined in the above notebook template.
- [ ] Verify the notebook runs successfully in Colab since the automated tests cannot guarantee this even when it passes.
- [ ] Passes all the required automated checks. You can locally test for formatting and linting with these [instructions](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/docs/contributing.md#code-quality-checks).
- [ ] Passes all the required automated checks. You can locally test for formatting and linting with these [instructions](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/CONTRIBUTING.md#code-quality-checks).
- [ ] You have consulted with a tech writer to see if tech writer review is necessary. If so, the notebook has been reviewed by a tech writer, and they have approved it.
- [ ] This notebook has been added to the [CODEOWNERS](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/docs/CODEOWNERS) file under `# Official Notebooks` section, pointing to the author or the author's team.
- [ ] This notebook has been added to the [CODEOWNERS](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/official/CODEOWNERS) file under the `Official Notebooks` section, pointing to the author or the author's team.
- [ ] The Jupyter notebook cleans up any artifacts it has created (datasets, ML models, endpoints, etc) so as not to eat up unnecessary resources.
<br>
If you are opening a PR for `Community Notebooks` under the [notebooks/community](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/master/notebooks/community) folder:
- [ ] This notebook has been added to the [CODEOWNERS](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/docs/CODEOWNERS) file under the `# Community Notebooks` section, pointing to the author or the author's team.
- [ ] Passes all the required formatting and linting checks. You can locally test with these [instructions](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/docs/contributing.md#code-quality-checks).
2.If you are opening a PR for `Community Notebooks` under the [notebooks/community](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/main/notebooks/community) folder:
- [ ] This notebook has been added to the [CODEOWNERS](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/community/CODEOWNERS) file under the `Community Notebooks` section, pointing to the author or the author's team.
- [ ] Passes all the required formatting and linting checks. You can locally test with these [instructions](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/CONTRIBUTING.md#code-quality-checks).
If you are opening a PR for `Community Content` under the [community-content](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/master/community-content) folder:
<br>
3. If you are opening a PR for `Community Content` under the [community-content](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/main/community-content) folder:
- [ ] Make sure your main `Content Directory Name` is descriptive, informative, and includes some of the key products and attributes of your content, so that it is differentiable from other content
- [ ] The main content directory has been added to the [CODEOWNERS](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/docs/CODEOWNERS) file under the `# Community Content` section, pointing to the author or the author's team.
- [ ] Passes all the required formatting and linting checks. You can locally test with these [instructions](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/docs/contributing.md#code-quality-checks).
- [ ] The main content directory has been added to the [CODEOWNERS](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/community-content/CODEOWNERS) file under the `Community Content` section, pointing to the author or the author's team.
- [ ] Passes all the required formatting and linting checks. You can locally test with these [instructions](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/CONTRIBUTING.md#code-quality-checks).
@@ -6,15 +6,32 @@ Welcome to the Google Cloud [Vertex AI](https://cloud.google.com/vertex-ai/docs/
## Overview
The repository contains [Notebooks](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/main/notebooks) and [Community Content](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/master/community-content) that demonstrate how to develop and manage ML workflows using Google Cloud Vertex AI.
The repository contains [notebooks](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/master/notebooks) and [community content](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/master/community-content) that demonstrate how to develop and manage ML workflows using Google Cloud Vertex AI.
## Repository structure
```bash
├── community-content - Sample code and tutorials contributed by the community
├── notebooks
│ ├── community - Notebooks contributed by the community
│ ├── official - Notebooks demonstrating use of each Vertex AI service
│ │ ├── automl
│ │ ├── custom
│ │ ├── ...
```
## Contributing
Contributions welcome! See the [Contributing Guide](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/docs/contributing.md).
Contributions welcome! See the [Contributing Guide](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/master/CONTRIBUTING.md).
## Getting help
Please use the [issues page](https://github.com/GoogleCloudPlatform/vertex-ai-samples/issues) to provide feedback or submit a bug report.
## Disclaimer
This is not an officially supported Google product. The code in this repository is for demonstrative purposes only.
## Feedback
Please feel free to fill out our [survey](https://bit.ly/vertex-ai-samples-survey) to give us feedback on the repo and its content.
"[Vertex AI Workbench](https://cloud.google.com/vertex-ai/docs/workbench) offers an end-to-end notebook-based production environment that can be preconfigured with the runtime dependencies necessary to run AlphaFold on Vertex AI. With [User-Managed Notebooks](https://cloud.google.com/vertex-ai/docs/workbench/user-managed/introduction), you can configure a GPU accelerator to run AlphaFold using Tensorflow, without having to install and manage drivers or JupyterLab instances. This notebook allows you to easily predict the structure of a protein using a slightly simplified version of [AlphaFold v2.1.0](https://doi.org/10.1038/s41586-021-03819-2). \n",
"\n",
"##  [Launch this Notebook in Vertex AI Workbench](https://console.cloud.google.com/vertex-ai/workbench/deploy-notebook?download_url=https://github.com/GoogleCloudPlatform/vertex-ai-samples/raw/main/community-content/alphafold_on_workbench/AlphaFold.ipynb)\n",
"\n",
"**Differences to AlphaFold v2.1.0**\n",
"\n",
"In comparison to AlphaFold v2.1.0, this notebook notebook uses **no templates (homologous structures)** and a selected portion of the [BFD database](https://bfd.mmseqs.com/). We have validated these changes on several thousand recent PDB structures. While accuracy will be near-identical to the full AlphaFold system on many targets, a small fraction have a large drop in accuracy due to the smaller MSA and lack of templates. For best reliability, we recommend instead using the [full open source AlphaFold](https://github.com/deepmind/alphafold/), or the [AlphaFold Protein Structure Database](https://alphafold.ebi.ac.uk/).\n",
"\n",
"**This notebook has an small drop in average accuracy for multimers compared to local AlphaFold installation, for full multimer accuracy it is highly recommended to run [AlphaFold locally](https://github.com/deepmind/alphafold#running-alphafold).** Moreover, the AlphaFold-Multimer requires searching for MSA for every unique sequence in the complex, hence it is substantially slower. If your notebook times-out due to slow multimer MSA search, we recommend running AlphaFold locally.\n",
"\n",
"Please note that this notebook is provided as an early-access prototype and is not a finished product. It is provided for theoretical modelling only and caution should be exercised in its use. \n",
"\n",
"**Citing this work**\n",
"\n",
"Any publication that discloses findings arising from using this notebook should [cite](https://github.com/deepmind/alphafold/#citing-this-work) the [AlphaFold paper](https://doi.org/10.1038/s41586-021-03819-2).\n",
"\n",
"**Licenses**\n",
"\n",
"This Colab uses the [AlphaFold model parameters](https://github.com/deepmind/alphafold/#model-parameters-license) which are subject to the Creative Commons Attribution 4.0 International ([CC BY 4.0](https://creativecommons.org/licenses/by/4.0/legalcode)) license. The Colab itself is provided under the [Apache 2.0 license](https://www.apache.org/licenses/LICENSE-2.0). See the full license statement below.\n",
"\n",
"\n",
"**More information**\n",
"\n",
"You can find more information about how AlphaFold works in the following papers:\n",
"Please paste the sequence of your protein in the text box below, then run the remaining cells via _Run_ > _Run Selected Cell and All Below_. You can also run the cells individually by pressing the _Play_ button on the left.\n",
"\n",
"Note that the search against databases and the actual prediction can take some time, from minutes to hours, depending on the length of the protein and what type of GPU you allocate (see FAQ below).\n",
"\n",
"To start, enter the amino acid sequence(s) to fold ⬇️\n",
"\n",
"If you enter only a single sequence, the monomer model will be used. If you enter multiple sequences, the multimer model will be used."
"Once this cell has been executed, you will see statistics about the multiple sequence alignment (MSA) that will be used by AlphaFold. In particular, you’ll see how well each residue is covered by similar sequences in the MSA."
"Once this cell has been executed, a zip-archive \"prediction.zip\" with the obtained prediction will be saved on the VM, and available for download to your computer in the sidebar. In case you are having issues with the relaxation stage, you can disable it below. Warning: This means that the prediction might have distracting small stereochemical violations."
"In general predicted LDDT (pLDDT) is best used for intra-domain confidence, whereas Predicted Aligned Error (PAE) is best used for determining between domain or between chain confidence.\n",
"\n",
"Please see the [AlphaFold methods paper](https://www.nature.com/articles/s41586-021-03819-2), the [AlphaFold predictions of the human proteome paper](https://www.nature.com/articles/s41586-021-03828-1), and the [AlphaFold-Multimer paper](https://www.biorxiv.org/content/10.1101/2021.10.04.463034v1) as well as [our FAQ](https://alphafold.ebi.ac.uk/faq) on how to interpret AlphaFold predictions."
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "jeb2z8DIA4om"
},
"source": [
"## FAQ & Troubleshooting\n",
"\n",
"\n",
"* How do I get a predicted protein structure for my protein?\n",
" * Connect the notebook to the Jupyter kernel \"Python 3 (ipykernel)\".\n",
" * Paste the amino acid sequence of your protein (without any headers) into the variable sequence_1 in \"Making a Prediction\".\n",
" * Run all cells in the notebook, either by running them individually or via \"Kernel\"/\"Restart Kernel and Run All Cells...\"\n",
" * The predicted protein structure will be downloaded once all cells have been executed. Note: This can take minutes to hours - see below.\n",
"* How long will this take?\n",
" * The search against genetic databases can take minutes to hours.\n",
" * Running AlphaFold and generating the prediction can take minutes to hours, depending on the length of your protein and on which GPU-type your VM has access to.\n",
"* My notebook no longer seems to be doing anything, what should I do?\n",
" * Some steps may take minutes to hours to complete.\n",
" * If nothing happens or if you receive an error message, try restarting your notebook runtime via \"Kernel\"/\"Restart Kernel and Run All Cells...\".\n",
" * If this doesn’t help, try resetting restarting your VM inside the GCloud Console (\"Compute Engine\"/\"VM Instances\").\n",
"* How does this compare to the open-source version of AlphaFold?\n",
" * This notebook version of AlphaFold searches a selected portion of the BFD dataset and currently doesn’t use templates, so its accuracy is reduced in comparison to the full version of AlphaFold that is described in the [AlphaFold paper](https://doi.org/10.1038/s41586-021-03819-2) and [Github repo](https://github.com/deepmind/alphafold/) (the full version is available via the inference script).\n",
"* I received a warning “Notebook requires high RAM”, what do I do?\n",
" * In the \"Compute Engine\"/\"VM Instances\" Console menu, you can reconfigure the host VM settings. See [Changing the machine type of a VM instance](https://cloud.google.com/compute/docs/instances/changing-machine-type-of-stopped-instance) for instructions.\n",
"* Does this tool install anything on my computer?\n",
" * No, everything happens in the VM instance within your Google Cloud project.\n",
"* How should I share feedback and bug reports?\n",
" * Please share any feedback and bug reports as an [issue](https://github.com/GoogleCloudPlatform/vertex-ai-samples/issues) on Github.\n",
"\n",
"\n",
"## Related work\n",
"\n",
"Take a look at these Colab notebooks provided by the community (please note that these notebooks may vary from our validated AlphaFold system and we cannot guarantee their accuracy):\n",
"\n",
"* The [ColabFold AlphaFold2 notebook](https://colab.research.google.com/github/sokrypton/ColabFold/blob/main/AlphaFold2.ipynb) by Sergey Ovchinnikov, Milot Mirdita and Martin Steinegger, which uses an API hosted at the Södinglab based on the MMseqs2 server ([Mirdita et al. 2019, Bioinformatics](https://academic.oup.com/bioinformatics/article/35/16/2856/5280135)) for the multiple sequence alignment creation.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"id": "YfPhvYgKC81B"
},
"source": [
"# License and Disclaimer\n",
"\n",
"This is not an officially-supported Google product.\n",
"\n",
"This notebook and other information provided is for theoretical modelling only, caution should be exercised in its use. It is provided ‘as-is’ without any warranty of any kind, whether expressed or implied. Information is not intended to be a substitute for professional medical advice, diagnosis, or treatment, and does not constitute medical or other professional advice.\n",
"Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0.\n",
"\n",
"Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\n",
"\n",
"## Model Parameters License\n",
"\n",
"The AlphaFold parameters are made available under the terms of the Creative Commons Attribution 4.0 International (CC BY 4.0) license. You can find details at: https://creativecommons.org/licenses/by/4.0/legalcode\n",
"\n",
"\n",
"## Third-party software\n",
"\n",
"Use of the third-party software, libraries or code referred to in the [Acknowledgements section](https://github.com/deepmind/alphafold/#acknowledgements) in the AlphaFold README may be governed by separate terms and conditions or license provisions. Your use of the third-party software, libraries or code is subject to any such terms and you should check that you can comply with any applicable restrictions or terms and conditions before use.\n",
"\n",
"\n",
"## Mirrored Databases\n",
"\n",
"The following databases have been mirrored by DeepMind, and are available with reference to the following:\n",
"* UniProt: v2021\\_03 (unmodified), by The UniProt Consortium, available under a [Creative Commons Attribution-NoDerivatives 4.0 International License](http://creativecommons.org/licenses/by-nd/4.0/).\n",
"* UniRef90: v2021\\_03 (unmodified), by The UniProt Consortium, available under a [Creative Commons Attribution-NoDerivatives 4.0 International License](http://creativecommons.org/licenses/by-nd/4.0/).\n",
"* MGnify: v2019\\_05 (unmodified), by Mitchell AL et al., available free of all copyright restrictions and made fully and freely available for both non-commercial and commercial use under [CC0 1.0 Universal (CC0 1.0) Public Domain Dedication](https://creativecommons.org/publicdomain/zero/1.0/).\n",
"* BFD: (modified), by Steinegger M. and Söding J., modified by DeepMind, available under a [Creative Commons Attribution-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by/4.0/). See the Methods section of the [AlphaFold proteome paper](https://www.nature.com/articles/s41586-021-03828-1) for details."
CPR ([custom prediction routines](https://github.com/googleapis/python-aiplatform/blob/custom-prediction-routine/google/cloud/aiplatform/prediction/README.md)) is a framework designed by Google Cloud developers to make it easier to combine machine learning models with custom preprocessing and postprocessing logic in a real-time serving application.
## Using this example
This code is a self-contained example of a custom model server project built using CPR.
As is, you can use it to serve the ViT-Small image classification model from Ross Wightman's [`timm`](https://github.com/rwightman/pytorch-image-models) library of image model implementations in PyTorch. Both CPU and GPU are supported.
You can also consider using the code here as a template for your own CPR project if you want to use a different model from `timm`, a different PyTorch model, or an entirely different framework.
### Requirements
In order to use this example, you'll need Docker and Python 3 installed on your system.
To get started, first create a virtual environment in an empty directory:
```sh
mkdir cpr-example
python3 -m venv cpr-example
cd cpr-example &&source bin/activate
```
Then, clone the [vertex-ai-samples repo](https://github.com/GoogleCloudPlatform/vertex-ai-samples) in that directory:
cd vertex-ai-samples/community-content/cpr-examples/timm_serving
```
Finally, install the Python modules required to build and run the model server:
```sh
pip install -r requirements.txt
```
### Predictor
The `TimmPredictor` class in `timm_serving/predictor.py` implements most of the important logic for the server.
-`load(artifacts_dir)`: The predictor's `load` method is called when the server starts up in order to set up the predictor, usually by loading model weights and any artifacts needed for preprocessing and postprocessing. In this example, we initialize the saved model from the `state_dict.pth` file located inside the `artifacts_dir` folder and create the preprocessing transform from the model config.
-`preprocess`, `predict`, `postprocess`: These methods are applied in sequence to the deserialized JSON data from each request.
-`preprocess` decodes images from base64 and apply cropping, scaling and normalizing transforms.
-`predict` runs the ViT-Small model on the preprocessed images and returns class scores.
-`postprocess` finds the top five classes and packs the class names, probabilities, and indices in a serializable result.
### Building the container
To build the model server locally, run the build command:
```sh
python build.py build
```
You can edit configuration values such as the model server's base image, the name and tag assigned to the image, and the path where model weights are stored locally.
When you run the build command, model weights are downloaded and the model server container is built.
### Running local tests
`test.py` contains a suite of unit tests for the predictor as well as end-to-end tests for the model server.
- The infamous [mandrill](https://commons.wikimedia.org/wiki/File:Wikipedia-sipi-image-db-mandrill-4.2.03.png)
### Deploying to Vertex AI
Before uploading or deploying the container, you'll need to modify `config.py` to set appropriate values for:
-`project_id`: Your GCP project id.
-`region`: Region where the model will be uploaded and deployed.
-`repository`: [Artifact Registry repository](https://cloud.google.com/artifact-registry/docs/repositories/create-repos) in your project where the container image will be uploaded.
-`artifacts_gcs_dir`: Folder in a [Google Cloud Storage bucket](https://cloud.google.com/storage/docs/creating-buckets) where the model weights will be uploaded.
Once this is done, first upload the model:
```sh
python build.py upload
```
Then deploy it:
```sh
python build.py deploy
```
If you run the deploy command again, it will create a new endpoint. If you want to undeploy the model, you can do so using the Vertex AI dashboard on the Google Cloud console, or use `gcloud ai endpoints undeploy` from the command line.
After deploying successfully, you can run `python build.py probe` to send a sample request to the deployed model.
*Pluto* is a programming environment for Julia, designed to be interactive and helpful. It provides a familiar notebook interface but it is not a Jupyter notebook. The biggest difference is that Pluto notebooks are reactive, changing a variable or function in one cell causes the cells that depend on that variable or function to be reevaluated. Pluto also provides useful interaction mechanisms that allow users to dynamically interact with the notebooks computation state.
The JuliaCon 2020 presentation: [Interactive notebooks ~ Pluto.jl]() provides a good introduction to Pluto. The source is at [fonsp/Pluto.jl]()
# Install Pluto
## Create a Vertex AI JupyterLab Instance
1. From the [GCP console](https://console.cloud.google.com) "hamburger menu"
select Vertex AI > Workbench
2. Click NEW NOTEBOOK
* Choose Python 3 if you won't be using a GPU
* Choose Python 3 (CUDA Toolkit xx.y) if you do want use a GPU
3. Give the notebook an appropriate name
4. Edit Notebook properties if you have special requirements otherwise accept the defaults and click CREATE
5. When the notebook instance is ready click OPEN JUPYTERLAB
In the PyTorch on Google Cloud series of blog posts, we aim to share how to build, train and deploy PyTorch models at scale and how to create reproducible machine learning pipelines on Google Cloud with [Vertex AI](https://cloud.google.com/vertex-ai).
In the PyTorch on Google Cloud series of blog posts, we aim to share how to build, train, deploy and orchestrate PyTorch models at scale and how to create reproducible machine learning pipelines on Google Cloud with [Vertex AI](https://cloud.google.com/vertex-ai).
This tutorial on text classification shows how to train a PyTorch based text classification model by fine tuning a pre-trained Huggingface Transformers model and deploy the model on [Vertex AI](https://cloud.google.com/vertex-ai/docs/start/client-libraries#python) using Vertex SDK and [`gcloud ai`](https://cloud.google.com/sdk/gcloud/reference/beta/ai).
@@ -9,6 +9,7 @@ This tutorial on text classification shows how to train a PyTorch based text cla
| <h4>Notebook</h4> | <h4>Description</h4> |
| :-------- | :------- |
| [pytorch-text-classification-vertex-ai-train-tune-deploy.ipynb](./pytorch-text-classification-vertex-ai-train-tune-deploy.ipynb) | Notebook to show training, hyper-parameter tuning and deploying a PyTorch model on Vertex AI |
| [pytorch-text-classification-vertex-ai-pipelines.ipynb](./pytorch-text-classification-vertex-ai-pipelines.ipynb) | Notebook to show orchestration of PyTorch ML workflows on Vertex AI Pipelines using Kubeflow Pipelines SDK |
"We will be using [Vertex SDK for Python](https://cloud.google.com/vertex-ai/docs/start/client-libraries#python) to interact with Vertex AI services. The high-level `aiplatform` library is designed to simplify common data science workflows by using wrapper classes and opinionated defaults. \n",
"We will be using [Vertex AI SDK for Python](https://cloud.google.com/vertex-ai/docs/start/client-libraries#python) to interact with Vertex AI services. The high-level `aiplatform` library is designed to simplify common data science workflows by using wrapper classes and opinionated defaults. \n",
"\n",
"#### Install Vertex SDK for Python"
"#### Install Vertex AI SDK for Python"
]
},
{
@@ -1199,7 +1199,7 @@
"source": [
"### Run predictions locally with sample examples\n",
"\n",
"Using the trained model, we can predict the sentiment label for an input text after applying the preprocessing function that was used during the training. We will run the predictions locally in the notebook and later show how you can deploy the model to an endpoint using [TorchServe](https://pytorch.org/serve/) on Vertex Predictions."
"Using the trained model, we can predict the sentiment label for an input text after applying the preprocessing function that was used during the training. We will run the predictions locally in the notebook and later show how you can deploy the model to an endpoint using [TorchServe](https://pytorch.org/serve/) on Vertex AI Predictions."
]
},
{
@@ -1382,7 +1382,7 @@
"id": "f7466d414a0e"
},
"source": [
"### Run Custom Job on Vertex Training with a pre-built container"
"### Run Custom Job on Vertex AI Training with a pre-built container"
]
},
{
@@ -1395,7 +1395,7 @@
"\n",
"In this notebook, we are using Hugging Face Datasets and fine tuning a transformer model from Hugging Face Transformers Library for sentiment analysis task using PyTorch. We will use [pre-built container for PyTorch](https://cloud.google.com/vertex-ai/docs/training/pre-built-containers#pytorch) and package the training application code by adding standard Python dependencies - `transformers`, `datasets` and `tqdm` - in the `setup.py` file. \n",
"\n",
""
""
]
},
{
@@ -1569,7 +1569,7 @@
"source": [
"#### **Run custom training job on Vertex AI**\n",
"\n",
"We use [Vertex SDK for Python](https://cloud.google.com/vertex-ai/docs/start/client-libraries#client_libraries) to create and submit training job to the Vertex training service."
"We use [Vertex AI SDK for Python](https://cloud.google.com/vertex-ai/docs/start/client-libraries#client_libraries) to create and submit training job to the Vertex AI training service."
]
},
{
@@ -1578,7 +1578,7 @@
"id": "5d2957ef04fd"
},
"source": [
"##### **Initialize the Vertex SDK for Python**"
"##### **Initialize the Vertex AI SDK for Python**"
]
},
{
@@ -1598,7 +1598,7 @@
"id": "6b0fed34b728"
},
"source": [
"##### **Configure and submit Custom Job to Vertex Training service**"
"##### **Configure and submit Custom Job to Vertex AI Training service**"
]
},
{
@@ -1609,7 +1609,7 @@
"source": [
"Configure a [Custom Job](https://cloud.google.com/vertex-ai/docs/training/create-custom-job) with the [pre-built container](https://cloud.google.com/vertex-ai/docs/training/pre-built-containers) image for PyTorch and training code packaged as Python source distribution. \n",
"\n",
"**NOTE:** When using Vertex SDK for Python for submitting a training job, it creates a [Training Pipeline](https://cloud.google.com/vertex-ai/docs/training/create-training-pipeline) which launches the Custom Job on Vertex Training service."
"**NOTE:** When using Vertex AI SDK for Python for submitting a training job, it creates a [Training Pipeline](https://cloud.google.com/vertex-ai/docs/training/create-training-pipeline) which launches the Custom Job on Vertex AI Training service."
]
},
{
@@ -1686,7 +1686,7 @@
"\n",
"You can monitor the custom job launched from Cloud Console following the link [here](https://console.cloud.google.com/vertex-ai/training/training-pipelines/) or use gcloud CLI command [`gcloud beta ai custom-jobs stream-logs`](https://cloud.google.com/sdk/gcloud/reference/beta/ai/custom-jobs/stream-logs)\n",
"\n",
""
""
]
},
{
@@ -1798,7 +1798,7 @@
"id": "c170d386492b"
},
"source": [
"### Run Custom Job on Vertex Training with custom container"
"### Run Custom Job on Vertex AI Training with custom container"
]
},
{
@@ -1807,7 +1807,7 @@
"id": "035227b6e581"
},
"source": [
"To create a [training job with custom container](https://cloud.google.com/vertex-ai/docs/training/create-custom-container?hl=hr), you define a `Dockerfile` to install or add the dependencies required for the training job. Then, you build and test your Docker image locally to verify, push the image to Container Registry and submit a Custom Job to Vertex Training service.\n",
"To create a [training job with custom container](https://cloud.google.com/vertex-ai/docs/training/create-custom-container?hl=hr), you define a `Dockerfile` to install or add the dependencies required for the training job. Then, you build and test your Docker image locally to verify, push the image to Container Registry and submit a Custom Job to Vertex AI Training service.\n",
"\n",
""
"##### **Initialize the Vertex AI SDK for Python**"
]
},
{
@@ -1988,11 +1988,11 @@
"id": "abf1fa4085cb"
},
"source": [
"##### **Configure and submit Custom Job to Vertex Training service**\n",
"##### **Configure and submit Custom Job to Vertex AI Training service**\n",
"\n",
"Configure a [Custom Job](https://cloud.google.com/vertex-ai/docs/training/create-custom-job) with the [custom container](https://cloud.google.com/vertex-ai/docs/training/create-custom-container) image with training code and other dependencies\n",
"\n",
"**NOTE:** When using Vertex SDK for Python for submitting a training job, it creates a [Training Pipeline](https://cloud.google.com/vertex-ai/docs/training/create-training-pipeline) which launches the Custom Job to train on Vertex Training."
"**NOTE:** When using Vertex AI SDK for Python for submitting a training job, it creates a [Training Pipeline](https://cloud.google.com/vertex-ai/docs/training/create-training-pipeline) which launches the Custom Job to train on Vertex AI Training."
]
},
{
@@ -2044,7 +2044,7 @@
},
"outputs": [],
"source": [
"# submit the custom job to Vertex training service\n",
"# submit the custom job to Vertex AI training service\n",
"model = job.run(\n",
" replica_count=1,\n",
" machine_type=\"n1-standard-8\",\n",
@@ -2065,7 +2065,7 @@
"\n",
"You can monitor the custom job launched from Cloud Console following the link [here](https://console.cloud.google.com/vertex-ai/training/training-pipelines/) or use gcloud CLI command [`gcloud beta ai custom-jobs stream-logs`](https://cloud.google.com/sdk/gcloud/reference/beta/ai/custom-jobs/stream-logs)\n",
"\n",
""
""
]
},
{
@@ -2148,11 +2148,11 @@
"id": "ba6122f929e3"
},
"source": [
"The training application code for fine-tuning a transformer model for sentiment analysis task uses hyperparameters such as learning rate and weight decay. These hyperparameters control the behavior of the training algorithm and can have a significant effect on the performance of the resulting model. This part of the notebook show how you can automate tuning these hyperparameters with Vertex Training service.\n",
"The training application code for fine-tuning a transformer model for sentiment analysis task uses hyperparameters such as learning rate and weight decay. These hyperparameters control the behavior of the training algorithm and can have a significant effect on the performance of the resulting model. This part of the notebook show how you can automate tuning these hyperparameters with Vertex AI Training service.\n",
"\n",
"We submit a [Hyperparameter Tuning job](https://cloud.google.com/vertex-ai/docs/training/hyperparameter-tuning-overview) to Vertex Training service by packaging the training application code and dependencies in a Docker container and push the container to Google Container Registry, similar to running a Custom Job on Vertex AI with Custom Container.\n",
"We submit a [Hyperparameter Tuning job](https://cloud.google.com/vertex-ai/docs/training/hyperparameter-tuning-overview) to Vertex AI Training service by packaging the training application code and dependencies in a Docker container and push the container to Google Container Registry, similar to running a Custom Job on Vertex AI with Custom Container.\n",
"\n",
""
""
]
},
{
@@ -2163,7 +2163,7 @@
"source": [
"### How hyperparameter tuning works in Vertex AI?\n",
"\n",
"Following are the high level steps involved in running a Hyperparameter Tuning job on Vertex Training service:\n",
"Following are the high level steps involved in running a Hyperparameter Tuning job on Vertex AI Training service:\n",
"\n",
"- You define the hyperparameters to tune the model along with the metric (or goal) to optimize\n",
"- Vertex AI runs multiple trials of your training application with the hyperparameters and limits you specified - maximum number of trials to run and number of parallel trials. \n",
@@ -2297,7 +2297,7 @@
"source": [
"### Run Hyperparameter Tuning Job on Vertex AI\n",
"\n",
"Before submitting the hyperparameter tuning job to Vertex AI, push the custom container image with training application to Google Cloud Container Registry and then submit the job to Vertex AI. We will be using the same image used for running Custom Job on Vertex Training service."
"Before submitting the hyperparameter tuning job to Vertex AI, push the custom container image with training application to Google Cloud Container Registry and then submit the job to Vertex AI. We will be using the same image used for running Custom Job on Vertex AI Training service."
]
},
{
@@ -2326,7 +2326,7 @@
"id": "f60fab07d67c"
},
"source": [
"##### **Initialize the Vertex SDK for Python**"
"##### **Initialize the Vertex AI SDK for Python**"
]
},
{
@@ -2346,7 +2346,7 @@
"id": "6652aa63ddff"
},
"source": [
"##### **Configure and submit Hyperparameter Tuning Job to Vertex Training service**\n",
"##### **Configure and submit Hyperparameter Tuning Job to Vertex AI Training service**\n",
"\n",
"Configure a [Hyperparameter Tuning Job](https://cloud.google.com/vertex-ai/docs/training/using-hyperparameter-tuning) with the [custom container](https://cloud.google.com/vertex-ai/docs/training/create-custom-container) image with training code and other dependencies.\n",
"\n",
@@ -2374,7 +2374,7 @@
"id": "9d46db3a8b23"
},
"source": [
"Define the training arguments with `hp-tune` argument set to `y` so that training application code can report metrics to Vertex"
"Define the training arguments with `hp-tune` argument set to `y` so that training application code can report metrics to Vertex AI"
]
},
{
@@ -2548,7 +2548,7 @@
"\n",
"You can monitor the hyperparameter tuning job launched from Cloud Console following the link [here](https://console.cloud.google.com/vertex-ai/training/hyperparameter-tuning-jobs/) or use gcloud CLI command [`gcloud beta ai custom-jobs stream-logs`](https://cloud.google.com/sdk/gcloud/reference/beta/ai/custom-jobs/stream-logs)\n",
"\n",
""
""
]
},
{
@@ -2557,7 +2557,7 @@
"id": "ba934b434f03"
},
"source": [
"After the job is finished, you can view and format the results of the hyperparameter tuning Trials (run by Vertex Training service) as a Pandas dataframe"
"After the job is finished, you can view and format the results of the hyperparameter tuning Trials (run by Vertex AI Training service) as a Pandas dataframe"
]
},
{
@@ -2612,7 +2612,7 @@
"id": "5dbccb2b7d32"
},
"source": [
"Now from the results of Trials, you can pick the best performing Trial to deploy to Vertex Predictions"
"Now from the results of Trials, you can pick the best performing Trial to deploy to Vertex AI Predictions"
"Deploying a PyTorch model on [Vertex Predictions](https://cloud.google.com/vertex-ai/docs/predictions/getting-predictions) requires to use a custom container that serves online predictions. You will deploy a container running [PyTorch's TorchServe](https://pytorch.org/serve/) tool in order to serve predictions from a fine-tuned transformer model from Hugging Face Transformers for sentiment analysis task. You can then use Vertex Predictions to classify sentiment of input texts. \n",
"Deploying a PyTorch model on [Vertex AI Predictions](https://cloud.google.com/vertex-ai/docs/predictions/getting-predictions) requires to use a custom container that serves online predictions. You will deploy a container running [PyTorch's TorchServe](https://pytorch.org/serve/) tool in order to serve predictions from a fine-tuned transformer model from Hugging Face Transformers for sentiment analysis task. You can then use Vertex AI Predictions to classify sentiment of input texts. \n",
"\n",
"### Deploying model on Vertex Predictions with custom container\n",
"### Deploying model on Vertex AI Predictions with custom container\n",
"\n",
"To use a custom container to serve predictions from a PyTorch model, you must provide Vertex AI with a Docker container image that runs an HTTP server, such as TorchServe in this case. Please refer to [documentation](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements) that describes the container image requirements to be compatible with Vertex Predictions.\n",
"To use a custom container to serve predictions from a PyTorch model, you must provide Vertex AI with a Docker container image that runs an HTTP server, such as TorchServe in this case. Please refer to [documentation](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements) that describes the container image requirements to be compatible with Vertex AI Predictions.\n",
"\n",
"\n",
"\n",
"\n",
"Essentially, to deploy a PyTorch model on Vertex Predictions following are the steps:\n",
"Essentially, to deploy a PyTorch model on Vertex AI Predictions following are the steps:\n",
"\n",
"1. Package the trained model artifacts including [default](https://pytorch.org/serve/#default-handlers) or [custom](https://pytorch.org/serve/custom_service.html) handlers by creating an archive file using [Torch model archiver](https://github.com/pytorch/serve/tree/master/model-archiver)\n",
"2. Build a [custom container](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements) compatible with Vertex Predictions to serve the model using Torchserve\n",
"3. Upload the model with custom container image to serve predictions as a Vertex Model resource\n",
"4. Create a Vertex Endpoint and [deploy the model](https://cloud.google.com/vertex-ai/docs/predictions/deploy-model-api) resource"
"2. Build a [custom container](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements) compatible with Vertex AI Predictions to serve the model using Torchserve\n",
"3. Upload the model with custom container image to serve predictions as a Vertex AI Model resource\n",
"4. Create a Vertex AI Endpoint and [deploy the model](https://cloud.google.com/vertex-ai/docs/predictions/deploy-model-api) resource"
]
},
{
@@ -2815,7 +2815,7 @@
},
"outputs": [],
"source": [
"%%writefile predictor/custom_text_handler.py\n",
"%%writefile predictor/custom_handler.py\n",
"\n",
"import os\n",
"import json\n",
@@ -2870,7 +2870,8 @@
" with open(mapping_file_path) as f:\n",
" self.mapping = json.load(f)\n",
" else:\n",
" logger.warning('Missing the index_to_name.json file. Inference output will not include class name.')\n",
" logger.warning('Missing the index_to_name.json file. Inference output will default.')\n",
"#### **Run the container locally** ***[Optional]***\n",
"\n",
"Before push the container image to Container Registry to use it with Vertex Predictions, you can run it as a container in your local environment to verify that the server works as expected"
"Before push the container image to Container Registry to use it with Vertex AI Predictions, you can run it as a container in your local environment to verify that the server works as expected"
]
},
{
@@ -3267,9 +3271,9 @@
"id": "69477b3a00c0"
},
"source": [
"#### **Deploying the serving container to Vertex Predictions**\n",
"#### **Deploying the serving container to Vertex AI Predictions**\n",
"\n",
"We create a model resource on Vertex AI and deploy the model to a Vertex Endpoints. You must deploy a model to an endpoint before using the model. The deployed model runs the custom container image to serve predictions. "
"We create a model resource on Vertex AI and deploy the model to a Vertex AI Endpoints. You must deploy a model to an endpoint before using the model. The deployed model runs the custom container image to serve predictions. "
]
},
{
@@ -3300,7 +3304,7 @@
"id": "a3da91e19af4"
},
"source": [
"##### **Initialize the Vertex SDK for Python**"
"##### **Initialize the Vertex AI SDK for Python**"
]
},
{
@@ -3437,7 +3441,7 @@
"id": "bc4673478269"
},
"source": [
"#### **Invoking the Endpoint with deployed Model using Vertex SDK to make predictions**"
"#### **Invoking the Endpoint with deployed Model using Vertex AI SDK to make predictions**"
]
},
{
@@ -3487,7 +3491,7 @@
"source": [
"##### **Formatting input for online prediction**\n",
"\n",
"For online prediction requests, the prediction input instances must be formatted as JSON with base64 encoding as shown here:\n",
"This notebook uses [Torchserve's KServe based inference API](https://pytorch.org/serve/inference_api.html#kserve-inference-api) which is also [Vertex AI Predictions compatible format](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#prediction). For online prediction requests, format the prediction input instances as JSON with base64 encoding as shown here:\n",
"\n",
"```\n",
"[\n",
@@ -3560,9 +3564,9 @@
},
"source": [
"##### ***[Optional]*** **Make prediction requests using gcloud CLI**\n",
"You can also call the Vertex Endpoint to make predictions using [`gcloud beta ai endpoints predict`](https://cloud.google.com/sdk/gcloud/reference/beta/ai/endpoints/predict). \n",
"You can also call the Vertex AI Endpoint to make predictions using [`gcloud beta ai endpoints predict`](https://cloud.google.com/sdk/gcloud/reference/beta/ai/endpoints/predict). \n",
"\n",
"The following cell shows how to make a prediction request to Vertex Endpoints using `gcloud` CLI: "
"The following cell shows how to make a prediction request to Vertex AI Endpoints using `gcloud` CLI: "
"ENABLE_CACHING = False # Whether to enable execution caching for the pipeline.\n",
@@ -635,7 +660,7 @@
"source": [
"#### Run unit tests on the Generator component\n",
"\n",
"Before running the command, fill in `RAW_DATA_PATH` in [`src/generator/test_generator_component.py`](src/generator/test_generator_component.py)."
"Before running the command, you should update the `RAW_DATA_PATH` in [`src/generator/test_generator_component.py`](src/generator/test_generator_component.py)."
]
},
{
@@ -713,12 +738,12 @@
"TRAINING_ARTIFACTS_DIR = (\n",
" f\"{BUCKET_NAME}/artifacts\" # Root directory for training artifacts.\n",
")\n",
"TRAINING_REPLICA_COUNT = \"1\" # Number of replica to run the custom training job.\n",
"TRAINING_REPLICA_COUNT = 1 # Number of replica to run the custom training job.\n",
"TRAINING_MACHINE_TYPE = (\n",
" \"n1-standard-4\" # Type of machine to run the custom training job.\n",
")\n",
"TRAINING_ACCELERATOR_TYPE = \"ACCELERATOR_TYPE_UNSPECIFIED\" # Type of accelerators to run the custom training job.\n",
"TRAINING_ACCELERATOR_COUNT = \"0\" # Number of accelerators for the custom training job."
"TRAINING_ACCELERATOR_COUNT = 0 # Number of accelerators for the custom training job."
]
},
{
@@ -769,8 +794,12 @@
"TRAINED_POLICY_DISPLAY_NAME = (\n",
" \"movielens-trained-policy\" # Display name of the uploaded and deployed policy.\n",
")\n",
"TRAFFIC_SPLIT = {\"0\": 100}\n",
"ENDPOINT_DISPLAY_NAME = \"movielens-endpoint\" # Display name of the prediction endpoint.\n",
"ENDPOINT_MACHINE_TYPE = \"n1-standard-4\" # Type of machine of the prediction endpoint."
"ENDPOINT_MACHINE_TYPE = \"n1-standard-4\" # Type of machine of the prediction endpoint.\n",
"ENDPOINT_REPLICA_COUNT = 1 # Number of replicas of the prediction endpoint.\n",
"ENDPOINT_ACCELERATOR_TYPE = \"ACCELERATOR_TYPE_UNSPECIFIED\" # Type of accelerators to run the custom training job.\n",
"ENDPOINT_ACCELERATOR_COUNT = 0 # Number of accelerators for the custom training job."
The [official](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/main/notebooks/official) folder contains notebooks organized by Google Cloud product. These are tested weekly and maintained by Google.
The [community](https://github.com/GoogleCloudPlatform/vertex-ai-samples/tree/main/notebooks/community) folder contains notebooks that may be created by Google or external contributors. They are not necessary maintained.
Contributions to the repo should use the [notebook template](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/notebook_template.ipynb) as a starting point.
"When you send a prediction or explanation request, the content of the request is base 64 decoded into a Tensorflow string (`tf.string`), which is passed to the serving function (`serving_fn`). The serving function preprocesses the `tf.string` into raw (uncompressed) numpy bytes (`preprocess_fn`) to match the input requirements of the model:\n",
"- `io.decode_jpeg`- Decompresses the JPG image which is returned as a Tensorflow tensor with three channels (RGB).\n",
"- `image.convert_image_dtype` - Changes integer pixel values to float 32.\n",
"- `image.convert_image_dtype` - Changes integer pixel values to float 32, and rescales pixel data between 0 and 1.\n",
"- `image.resize` - Resizes the image to match the input shape for the model.\n",
"- `resized / 255.0` - Rescales (normalization) the pixel data between 0 and 1.\n",
"\n",
"At this point, the data can be passed to the model (`m_call`)."
"When you send a prediction or explanation request, the content of the request is base 64 decoded into a Tensorflow string (`tf.string`), which is passed to the serving function (`serving_fn`). The serving function preprocesses the `tf.string` into raw (uncompressed) numpy bytes (`preprocess_fn`) to match the input requirements of the model:\n",
"- `io.decode_jpeg`- Decompresses the JPG image which is returned as a Tensorflow tensor with three channels (RGB).\n",
"- `image.convert_image_dtype` - Changes integer pixel values to float 32.\n",
"- `image.convert_image_dtype` - Changes integer pixel values to float 32, and rescales pixel data between 0 and 1.\n",
"- `image.resize` - Resizes the image to match the input shape for the model.\n",
"- `resized / 255.0` - Rescales (normalization) the pixel data between 0 and 1.\n",
"\n",
"At this point, the data can be passed to the model (`m_call`).\n",
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.