AlphaGenome

Durata del video: 30 minuti

AlphaGenome è un modello di base di deep learning sviluppato da Google DeepMind che prevede gli effetti regolatori funzionali delle sequenze di DNA nel genoma umano. Analizzando le sequenze di DNA fino a 1 milione di coppie di basi (1 MB) con una risoluzione a singola base, il modello prevede in che modo le variazioni genetiche influiscono sui meccanismi molecolari e biologici in 11 modalità genomiche: espressione genica (RNA_SEQ, CAGE, PROCAP), accessibilità della cromatina (ATAC, DNASE), modificazioni degli istoni e legame dei fattori di trascrizione (CHIP_HISTONE, CHIP_TF), splicing dell'RNA (SPLICE_SITES, SPLICE_SITE_USAGE, SPLICE_JUNCTIONS) e mappe di contatto della cromatina 3D (CONTACT_MAPS).

Questo documento descrive i requisiti hardware e di deployment per AlphaGenome e mostra come eseguire il deployment e l'esecuzione di query sul modello su Gemini Enterprise Agent Platform.

Requisiti hardware e di implementazione

A causa dell'architettura profonda di AlphaGenome e della finestra di contesto da 1 MB, il modello ha requisiti hardware e di memoria rigorosi. Questa sezione tratta i seguenti argomenti:

Configurazioni di VM e GPU supportate

AlphaGenome richiede almeno un nodo. Puoi eseguire il deployment del modello negli endpoint della piattaforma agente utilizzando tipi di macchine dotati di acceleratori NVIDIA A100 o H100.

Se hai bisogno di capacità aggiuntiva per gestire volumi di richieste maggiori, puoi configurare la scalabilità automatica sull'endpoint Agent Platform per aggiungere nodi automaticamente. Per saperne di più, consulta Scala i nodi di inferenza utilizzando la scalabilità automatica.

Tipi di acceleratori e macchine supportati

Seleziona uno dei seguenti tipi di macchine supportate che forniscono i 80 GB di memoria GPU richiesti:

  • NVIDIA H100 (80 GB): a3-highgpu-1g, a3-highgpu-2g, a3-highgpu-4g, a3-highgpu-8g
  • NVIDIA A100 (80 GB): a2-ultragpu-1g, a2-ultragpu-2g, a2-ultragpu-4g, a2-ultragpu-8g
  • NVIDIA H100 Mega (80 GB): a3-megagpu-8g

Per specifiche dettagliate, consulta Configura le risorse di computing per l'inferenza.

Requisiti relativi alle quote

Prima di eseguire il deployment del modello, assicurati che il tuo progetto Google Cloud disponga di una quota di distribuzione GPU sufficiente nella regione di destinazione per le seguenti metriche:

  • aiplatform.googleapis.com/custom_model_serving_nvidia_h100_gpus
  • aiplatform.googleapis.com/custom_model_serving_nvidia_a100_gpus
  • aiplatform.googleapis.com/custom_model_serving_nvidia_h100_mega_gpus
  • compute.googleapis.com/gpus_per_gpu_family

Esegui il deployment di AlphaGenome

AlphaGenome è disponibile come modello con deployment autonomo da Model Garden. Per istruzioni dettagliate sul provisioning dell'infrastruttura dell'endpoint e sul deployment del modello in un progetto Google Cloud , consulta Esegui il deployment dei modelli open da Model Garden.

Model Garden fornisce le seguenti versioni di pubblicazione per AlphaGenome:

  • alphagenome-004 (predefinito, gRPC e HTTP unificati): gestisce tutti e sette i metodi DnaModelService (predict_sequence, predict_interval, predict_variant, score_variant, score_interval, score_ism_variants e output_metadata) da un container unificato che supporta sia lo streaming gRPC HTTP/2 sulla porta 8081 sia lo streaming HTTP (streamRawPredict) sulla porta 8080:
    • Pubblico (endpoint condiviso) (gRPC): seleziona Pubblico (endpoint condiviso) in Accesso endpoint durante il deployment in Model Garden per eseguire query sul modello tramite flussi gRPC (PredictionService.StreamDirectRawPredict utilizzando dna_client_grpc.create_vertex_client). La chiamata del modello tramite gRPC trasmette direttamente i chunk di tensori binari compressi senza overhead di serializzazione JSON o base64, il che riduce la latenza sulle previsioni di tracce da 1 MB ed evita i timeout del gateway HTTP su workload multivarianti ad alta concorrenza come la mutagenesi di saturazione in silico (score_ism_variants).
    • Pubblico (endpoint dedicato) (HTTP): mantieni l'opzione predefinita Pubblico (endpoint dedicato) durante il deployment in Model Garden per eseguire query sul modello tramite streaming HTTP (streamRawPredict utilizzando dna_client_http.create_http_client), che trasmette payload protobuf binari suddivisi in blocchi (proto_b64) senza il limite di 10 MB per la dimensione della risposta HTTP degli endpoint condivisi.
    • Selezione dei fold: i client gRPC e client HTTP su alphagenome-004 supportano la selezione dei fold del modello (ALL_FOLDS per impostazione predefinita o singoli fold da FOLD_0 a FOLD_3) utilizzando il parametro model_version.
  • alphagenome-003 (HTTP legacy): fornisce previsioni tramite streaming HTTP/1.1 (streamRawPredict) sulla porta 8080 e rimane disponibile per la compatibilità con le versioni precedenti dei deployment dei client HTTP esistenti.

Utilizza AlphaGenome

Puoi interagire con un endpoint AlphaGenome di cui è stato eseguito il deployment in modo programmatico utilizzando l'SDK Python (tramite gRPC su endpoint condivisi o HTTP su endpoint dedicati).

Per il riferimento API completo, le definizioni dei parametri e gli schemi dettagliati, consulta la documentazione ufficiale di AlphaGenome.

Prerequisiti e autenticazione

Agent Platform utilizza Identity and Access Management (IAM) per gestire l'accesso agli endpoint di cui è stato eseguito il deployment. Assicurati che l'ambiente di esecuzione (ad esempio un terminale locale, una VM o Colaboratory) sia autenticato con un account di servizio o con credenziali utente che dispongono del ruolo IAM Agent Platform User (roles/aiplatform.user).

Utilizzo (alphagenome-004)

Gli esempi seguenti mostrano come eseguire query su un endpoint alphagenome-004 di cui è stato eseguito il deployment utilizzando l'SDK Python:

Python

Installa l'SDK

Il file wheel per l'SDK Cloud AlphaGenome (alphagenome-004) è disponibile nel repository GitHub GoogleCloudPlatform. Scarica e installa il file wheel eseguendo i seguenti comandi:

# Download the wheel file
wget -q https://github.com/GoogleCloudPlatform/vertex-ai-samples/raw/main/notebooks/community/alphagenome/whl/alphagenome_cloud_sdk-0.4.2.12-py3-none-any.whl

# Install the wheel file
pip install alphagenome_cloud_sdk-0.4.2.12-py3-none-any.whl

Inizializza il client

Prima di eseguire query sul modello, inizializza il client per l'endpoint alphagenome-004 di cui hai eseguito il deployment. Sia il client gRPC (GrpcDnaClient) sia il client HTTP (HttpDnaClient) implementano l'interfaccia alphagenome.models.dna_model.DnaModel standard.

Per connetterti a un endpoint condiviso (standard) alphagenome-004 tramite streaming gRPC, passa il nome della risorsa dell'endpoint Agent Platform a dna_client_grpc.create_vertex_client:

from alphagenome.models import dna_client
from alphagenome_cloud_sdk.models import dna_client_grpc

# Specify the standard (shared) endpoint resource name:
endpoint = "projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID"

# Optional: Specify `service_account` for service account impersonation, or
# `model_version` to select a specific fold ("ALL_FOLDS", "FOLD_0", "FOLD_1",
# "FOLD_2", or "FOLD_3").
dna_model = dna_client_grpc.create_vertex_client(
    endpoint=endpoint,
    # service_account="SERVICE_ACCOUNT_EMAIL",
    # model_version=dna_client.ModelVersion.ALL_FOLDS,
)

Se hai eseguito il deployment di alphagenome-004 in un endpoint dedicato, utilizza dna_client_http.create_http_client:

from alphagenome.models import dna_client
from alphagenome_cloud_sdk.models import dna_client_http

# Create the HTTP client pointing to the dedicated endpoint streamRawPredict URL.
dna_model = dna_client_http.create_http_client(
    vertex_ai_url="https://ENDPOINT_DNS/v1/projects/PROJECT_ID/locations/LOCATION/endpoints/ENDPOINT_ID:streamRawPredict",
    # service_account="SERVICE_ACCOUNT_EMAIL",
    # model_version=dna_client.ModelVersion.ALL_FOLDS,
)

Prevedi le tracce per una sequenza di DNA

Utilizza predict_sequence per prevedere le modalità genomiche per una stringa di DNA non elaborata:

# Pad a synthetic sequence to 1 MB using 'N' for unknown/padding bases
padded_sequence = 'GATTACA'.center(dna_client.SEQUENCE_LENGTH_1MB, 'N')

output = dna_model.predict_sequence(
    sequence=padded_sequence,
    requested_outputs=[
        dna_client.OutputType.CAGE,   # Transcription Start Sites
        dna_client.OutputType.DNASE,  # Chromatin Accessibility
    ],
    ontology_terms=[
        'UBERON:0002048',             # Lung tissue ontology term
    ],
)

# Access prediction values (shape: sequence_length, num_tracks)
dnase_signals = output.dnase.values
dnase_metadata = output.dnase.metadata

Prevedi le tracce per un intervallo del genoma di riferimento

Utilizza predict_interval per prevedere le modalità direttamente da una regione cromosomica specifica nel genoma di riferimento:

from alphagenome.data.genome import Interval

# Define a genomic interval and resize it to the 1 MB context window
interval = Interval(
    chromosome='chr19',
    start=40991281,
    end=41018398,
    strand='.',
    name='CYP2B6',
).resize(dna_client.SEQUENCE_LENGTH_1MB)

output = dna_model.predict_interval(
    interval=interval,
    requested_outputs=[dna_client.OutputType.RNA_SEQ],
    ontology_terms=['UBERON:0001114'],  # Right liver lobe
)

Prevedi gli effetti di una variante sulle tracce genomiche

Utilizza predict_variant per generare previsioni di tracce di riferimento (reference) e mutate (alternate) accoppiate in un intervallo:

from alphagenome.data import genome

interval = genome.Interval(
    chromosome='chr19',
    start=41003816,
    end=41005864,
    strand='.',
).resize(dna_client.SEQUENCE_LENGTH_1MB)

variant = genome.Variant(
    chromosome='chr19',
    position=41004840,
    reference_bases='C',
    alternate_bases='T',
)

variant_output = dna_model.predict_variant(
    interval=interval,
    variant=variant,
    requested_outputs=[dna_client.OutputType.RNA_SEQ],
    ontology_terms=['UBERON:0001114'],
)

ref_rna_values = variant_output.reference.rna_seq.values
alt_rna_values = variant_output.alternate.rna_seq.values

Assegna un punteggio all'effetto di una variante

Utilizza score_variant per riassumere l'effetto previsto di una variante genetica confrontando una sequenza di riferimento (REF) con una sequenza mutata alternativa (ALT):

from alphagenome.data import genome
from alphagenome.models import variant_scorers

# Define the genetic variant
variant = genome.Variant(
    chromosome='chr22',
    position=36201698,
    reference_bases='A',
    alternate_bases='C',
)

# Select the recommended variant scoring method for RNA-Seq
variant_scorer = variant_scorers.RECOMMENDED_VARIANT_SCORERS['RNA_SEQ']

# Execute the scoring
variant_scores = dna_model.score_variant(
    interval=variant.reference_interval.resize(dna_client.SEQUENCE_LENGTH_1MB),
    variant=variant,
    variant_scorers=[variant_scorer],
)

# Output is returned as a list of AnnData objects containing raw and quantile scores
print("Scores shape:", variant_scores[0].X.shape)

Assegna un punteggio a un intervallo genomico

Utilizza score_interval per calcolare i punteggi degli intervalli di mascheramento dei geni in una regione genomica:

from alphagenome.data import genome
from alphagenome.models import interval_scorers

interval = genome.Interval(
    chromosome='chr19',
    start=40991281,
    end=41018398,
    strand='.',
).resize(dna_client.SEQUENCE_LENGTH_1MB)

interval_scorer = interval_scorers.RECOMMENDED_INTERVAL_SCORERS['RNA_SEQ']

interval_scores = dna_model.score_interval(
    interval=interval,
    interval_scorers=[interval_scorer],
)

print("Interval scores shape:", interval_scores[0].X.shape)

Esegui la mutagenesi di saturazione in silico

Utilizza score_ism_variants per valutare tutte le possibili varianti a singolo nucleotide in un ism_interval target:

from alphagenome.data import genome
from alphagenome.models import variant_scorers

# Define the 1 MB sequence context interval and a target 50 bp ISM window
sequence_interval = genome.Interval(
    chromosome='chr19',
    start=41003816,
    end=41005864,
).resize(dna_client.SEQUENCE_LENGTH_1MB)

ism_interval = genome.Interval(
    chromosome='chr19',
    start=41004815,
    end=41004865,
)

dnase_scorer = variant_scorers.RECOMMENDED_VARIANT_SCORERS['DNASE']

ism_scores = dna_model.score_ism_variants(
    interval=sequence_interval,
    ism_interval=ism_interval,
    variant_scorers=[dnase_scorer],
)

print("Number of variants scored:", len(ism_scores))

Utilizzo (alphagenome-003)

Python

Installa l'SDK

Il file Wheel per l'SDK Cloud AlphaGenome è disponibile nel repository GitHub GoogleCloudPlatform. Puoi scaricare il file Wheel eseguendo questo comando:

# Download the whl file using - 
wget -q https://github.com/GoogleCloudPlatform/vertex-ai-samples/raw/main/notebooks/community/alphagenome/whl/alphagenome_cloud_sdk-0.4.2.11-py3-none-any.whl

# Install the whl file
pip install alphagenome_cloud_sdk-0.4.2.11-py3-none-any.whl

Inizializza il client

Prima di poter utilizzare il modello, devi inizializzare il client:

from alphagenome.models import dna_client
from alphagenome_cloud_sdk.models import dna_client_http

# Create the HTTP client pointing to the Agent Platform endpoint.
# The `service_account` parameter is optional and only required if you are 
# choosing to authenticate via service account impersonation.
dna_model = dna_client_http.create_http_client(
    vertex_ai_url=vertex_ai_url,
    # service_account=service_account  # Uncomment to use service account impersonation
)

Prevedi le tracce per una sequenza di DNA

Utilizza predict_sequence per prevedere le modalità genomiche per una stringa di DNA non elaborata:

# Pad a synthetic sequence to 1 MB using 'N' for unknown/padding bases
padded_sequence = 'GATTACA'.center(dna_client.SEQUENCE_LENGTH_1MB, 'N')

output = dna_model.predict_sequence(
    sequence=padded_sequence,
    requested_outputs=[
        dna_client.OutputType.CAGE,   # Transcription Start Sites
        dna_client.OutputType.DNASE,  # Chromatin Accessibility
    ],
    ontology_terms=[
        'UBERON:0002048',             # Lung tissue ontology term
    ]
)

# Access prediction values (shape: sequence_length, num_tracks)
dnase_signals = output.dnase.values
dnase_metadata = output.dnase.metadata

Prevedi le tracce per un intervallo del genoma di riferimento

Utilizza predict_interval per prevedere le modalità direttamente da una regione cromosomica specifica nel genoma di riferimento:

from alphagenome.data.genome import Interval

# Define a genomic interval and resize it to the 1Mb context window
interval = Interval(
    chromosome='chr19',
    start=40991281,
    end=41018398,
    strand='.',
    name='CYP2B6'
).resize(dna_client.SEQUENCE_LENGTH_1MB)

output = dna_model.predict_interval(
    interval=interval,
    requested_outputs=[dna_client.OutputType.RNA_SEQ],
    ontology_terms=['UBERON:0001114']  # Right liver lobe
)

Valuta l'effetto di una variante (mutagenesi in silico)

Utilizza score_variant per confrontare l'espressione prevista di una sequenza di riferimento (REF) con una sequenza mutata alternativa (ALT):

from alphagenome.data import genome
from alphagenome.models import variant_scorers

# Define the genetic variant
variant = genome.Variant(
    chromosome='chr22',
    position=36201698,
    reference_bases='A',
    alternate_bases='C',
)

# Select the variant scoring method for RNA-Seq
variant_scorer = variant_scorers.RECOMMENDED_VARIANT_SCORERS['RNA_SEQ']

# Execute the scoring
variant_scores = dna_model.score_variant(
    interval=variant.reference_interval.resize(dna_client.SEQUENCE_LENGTH_1MB),
    variant=variant,
    variant_scorers=[variant_scorer],
    fix_negative_strand=True
)

# Output is returned as an AnnData object containing raw and quantile scores
print("Scores shape:", variant_scores[0].X.shape)

Prezzi

AlphaGenome richiede un abbonamento a pagamento. Per informazioni sui prezzi di AlphaGenome, contatta un esperto di vendite di Google Cloud o collabora con il tuo team dedicato all'account Google Cloud.

Sei responsabile dei costi dell'infrastruttura utilizzata per ospitare il modello, inclusi l'endpoint della piattaforma dell'agente e le istanze GPU su cui viene eseguito il deployment del modello. Per saperne di più, consulta i prezzi della piattaforma Agent.

Limitazioni

AlphaGenome presenta le seguenti limitazioni:

  • Solo per uso di ricerca: AlphaGenome è uno strumento di ricerca e non è destinato o autorizzato per l'uso diagnostico clinico.
  • Orizzonte di contesto di 1 MB: una singola query di previsione non può acquisire interazioni genomiche che si verificano su distanze superiori a 1 MB.
  • Nessun supporto per l'ottimizzazione: AlphaGenome non supporta l'ottimizzazione su set di dati di addestramento privati. Il modello è disponibile solo per l'inferenza.

Directory di riferimento scientifico

Per supportare le comunità scientifiche e di sviluppatori, la tabella seguente elenca i materiali di riferimento principali, la letteratura e le risorse per AlphaGenome:

Tipo di risorsa Titolo e link Descrizione
Articolo sottoposto a revisione paritaria Advancing regulatory variant effect prediction with AlphaGenome, Nature (gennaio 2026) La pubblicazione scientifica principale che descrive in dettaglio l'architettura, le valutazioni e i benchmark delle prestazioni del modello.
Articolo di pre-stampa AlphaGenome: advancing regulatory variant effect prediction with a unified DNA sequence model, bioRxiv (luglio 2025) Il manoscritto iniziale prima della revisione tra pari.
Annuncio AlphaGenome: AI for better understanding the genome, blog di Google DeepMind (giugno 2025) Il blog post di lancio di alto livello che illustra l'impatto del modello sulla genomica.
Documentazione dell'API Documentazione di AlphaGenome Documentazione tecnica per gli schemi dell'SDK Python e dell'API HTTP.
Procedura dettagliata per i video AlphaGenome: l'AI per comprendere meglio il genoma Video tutorial che illustra le funzionalità del modello e i flussi di interazione di base. (Durata del video: 30 minuti)
Notebook della guida rapida Notebook di Colab per la guida rapida di AlphaGenome Un notebook che fornisce esempi eseguibili di inizializzazione dell'SDK e punteggio dell'effetto di una variante.

Assistenza e feedback

Puoi ricevere assistenza per AlphaGenome nei seguenti modi:

  • Supporto per la scienza genomica e l'output del modello: per discussioni sulla biologia, sulle previsioni del modello o sull'interpretabilità, o per interagire con Google DeepMind, unisciti al forum community pubblico di AlphaGenome all'indirizzo alphagenomecommunity.com.
  • Assistenza per infrastruttura e piattaforma: per domande su Google Cloud quote, acceleratori, problemi con le librerie client o fatturazione, contatta il tuo team dedicato all'accountGoogle Cloud o apri una richiesta con l'assistenza clienti Google Cloud.