# Vertex AI Workbench: Jupyter notebooks in de cloud [[TOC]] ## Wat is Vertex AI Workbench? Vertex AI Workbench is de beheerde Jupyter notebook-omgeving van Google in de cloud. Je krijgt een krachtige machine (met optioneel GPU) met JupyterLab voorgeïnstalleerd, directe toegang tot Google Cloud-services zoals BigQuery, Cloud Storage en Vertex AI, en geen gedoe met lokale configuratie. Voordelen ten opzichte van lokale Jupyter: - Schaalbaarheid: kies een machine met honderden GB RAM en meerdere GPU's - Directe Cloud-integratie: BigQuery-tabellen en Cloud Storage-buckets zijn direct beschikbaar - Geen setup: Python, TensorFlow, PyTorch en andere ML-bibliotheken zijn al geïnstalleerd - Beheerde levenscyclus: patches en updates worden door Google verzorgd :::info title="Workbench-instanties zijn de standaard" De vroegere indeling met **Managed notebooks** en **User-managed notebooks** is uitgefaseerd. Sinds 2025 kun je deze types niet meer aanmaken. De huidige en aanbevolen vorm is een **Vertex AI Workbench-instantie**. Bestaande oude notebooks blijven werken, maar krijgen geen updates meer. Migreer ze naar Workbench-instanties. ::: :::warn title="Workbench is niet gratis" Kosten zijn gebaseerd op de gebruikte machine-configuratie en de draaitijd. Zet de instantie stop wanneer je niet werkt om kosten te besparen. ::: ## Een Workbench-instantie aanmaken :::howto title="Een nieuwe instantie aanmaken" 1. Ga naar de [Google Cloud Console](https://console.cloud.google.com). 2. Navigeer naar **Vertex AI** en daarna **Workbench**. 3. Klik bij het tabblad **Instances** op **Create new** (of **Nieuwe instantie**). 4. Geef de instantie een naam en kies de **regio** en **zone** (kies dicht bij jou of bij je data, bijvoorbeeld `europe-west4`). 5. Open de geavanceerde opties om het **machine-type** te kiezen: - `n1-standard-4` (4 vCPU, 15 GB) voor licht werk - `n1-highmem-8` (8 vCPU, 52 GB) voor data science - een machine met een **NVIDIA T4-GPU** voor ML-training 6. Kies eventueel een omgeving met TensorFlow of PyTorch voorgeïnstalleerd. 7. Klik op **Create** en wacht tot de status **Active** is. ::: Het aanmaken duurt doorgaans enkele minuten. Daarna verschijnt de knop **Open JupyterLab** bij de instantie. ## JupyterLab gebruiken in Workbench ### BigQuery-integratie BigQuery-tabellen zijn direct beschikbaar via de BigQuery-extensie in JupyterLab, of via Python: ```python from google.cloud import bigquery client = bigquery.Client() query = """ SELECT naam, leeftijd, stad FROM `mijn-project.mijn-dataset.gebruikers` WHERE stad = 'Amsterdam' LIMIT 1000 """ df = client.query(query).to_dataframe() print(df.head()) ``` ### Cloud Storage-integratie ```python from google.cloud import storage import pandas as pd storage_client = storage.Client() bucket = storage_client.bucket('mijn-bucket-naam') blob = bucket.blob('data/dataset.csv') blob.download_to_filename('/tmp/dataset.csv') df = pd.read_csv('/tmp/dataset.csv') ``` ### Vertex AI SDK gebruiken Gebruik de actuele **Google Gen AI SDK** (`google-genai`). De oude module `vertexai.generative_models` is uitgefaseerd en wordt verwijderd, dus gebruik het nieuwe client-gebaseerde patroon: ```python from google import genai client = genai.Client( vertexai=True, project='mijn-project', location='europe-west4', ) response = client.models.generate_content( model='gemini-2.5-pro', contents='Analyseer de volgende dataset: ...', ) print(response.text) ``` :::tip title="Installeer de juiste SDK" Installeer de bibliotheek met `pip install google-genai`. Modellen zoals `gemini-2.5-pro` en `gemini-2.5-flash` zijn algemeen beschikbaar; nieuwere reeksen verschijnen geregeld in Model Garden. Controleer de actuele modelnamen in de Vertex AI-documentatie voordat je ze hardcodeert. ::: ## Instantie stoppen en kosten beheren :::warn title="Een actieve instantie kost geld" Een draaiende Workbench-instantie brengt kosten met zich mee, ook als je geen code uitvoert. Stop de instantie via de Cloud Console of via de JupyterLab-interface wanneer je klaar bent. ::: Automatisch stoppen instellen: :::howto title="Idle shutdown inschakelen" 1. Open de instantie-instellingen in de Cloud Console (of stel dit in bij het aanmaken). 2. Zoek de optie **Idle shutdown** of **Automatisch stoppen na inactiviteit**. 3. Stel een inactiviteitsperiode in, bijvoorbeeld `30` minuten. 4. Sla de instelling op. ::: ## Notebooks opslaan en delen Notebooks worden opgeslagen op de schijf van de Workbench-instantie. Om ze duurzaam te bewaren en te delen, kopieer je ze naar Cloud Storage of beheer je ze met Git: ```python from google.cloud import storage def sla_notebook_op_in_gcs(lokaal_pad, bucket_naam, gcs_pad): client = storage.Client() bucket = client.bucket(bucket_naam) blob = bucket.blob(gcs_pad) blob.upload_from_filename(lokaal_pad) print(f'Notebook opgeslagen: gs://{bucket_naam}/{gcs_pad}') sla_notebook_op_in_gcs( '/home/jupyter/analyse.ipynb', 'mijn-notebooks-bucket', 'notebooks/analyse.ipynb' ) ``` :::tip title="Gebruik Git voor samenwerking" Voor teamwerk koppel je je notebooks aan een Git-repository in plaats van een instantie tussen meerdere mensen te delen. Zo voorkom je conflicten en houd je versiegeschiedenis bij. ::: :::faq ### Hoeveel kost een Workbench-instantie? Een instantie zonder GPU, zoals `n1-standard-4`, kost grofweg enkele tientallen eurocenten per uur. Een instantie met een T4-GPU ligt vaak rond de 0,70 tot 1,00 euro per uur. Prijzen wisselen per regio en machine-type, dus controleer altijd de actuele Google Cloud-prijspagina. ### Kan ik mijn eigen Python-packages installeren? Ja, via `pip install ` in een notebookcel of via de JupyterLab-terminal. De packages blijven beschikbaar zolang de instantie bestaat, maar gaan verloren als je de instantie verwijdert en opnieuw aanmaakt. ### Kan ik meerdere gebruikers toegang geven tot dezelfde instantie? Standaard werkt één gebruiker per instantie. Via IAM-rechten kun je anderen toegang geven, maar gelijktijdig werken in dezelfde notebooks leidt tot conflicten. Gebruik Git voor samenwerking. ### Wat is er gebeurd met Managed en User-managed notebooks? Beide types zijn uitgefaseerd en kun je niet meer aanmaken. Gebruik in plaats daarvan een Vertex AI Workbench-instantie. Bestaande oude notebooks blijven draaien zonder updates; Google biedt een migratiehulpmiddel om ze om te zetten naar Workbench-instanties. ### Hoe bewaar ik mijn werk als de instantie verwijderd wordt? Sla notebooks en data altijd op in Cloud Storage of in een Git-repository. De schijf van een instantie is niet duurzaam zodra de instantie wordt verwijderd. ### Welk Gemini-model gebruik ik in mijn notebook? Begin met een algemeen beschikbaar model zoals `gemini-2.5-pro` voor zwaar redeneerwerk of `gemini-2.5-flash` voor snellere, goedkopere taken. Controleer de Vertex AI-documentatie voor de nieuwste beschikbare modellen voordat je een vaste modelnaam in je code zet. :::