Configurazione della memorizzazione nella cache di un'esecuzione
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Quando Vertex AI Pipelines esegue una pipeline, verifica se esiste un'esecuzione in Vertex ML Metadata con l'interfaccia (chiave della cache) di ogni passaggio della pipeline.
L'interfaccia del passaggio è definita come la combinazione di quanto segue:
Gli input del passaggio della pipeline. Questi input includono il valore dei parametri di input (se presenti) e l'ID artefatto di input (se presente).
La definizione dell'output del passaggio della pipeline. Questa definizione di output
include la definizione del parametro di output (nome, se presente) e la definizione dell'artefatto di output (nome, se presente).
La specifica del componente. Questa specifica include l'immagine, i comandi, gli argomenti e le variabili di ambiente utilizzati, nonché l'ordine dei comandi e degli argomenti.
Inoltre, solo le pipeline con lo stesso nome condivideranno la
cache.
Se in Vertex ML Metadata esiste un'esecuzione corrispondente, vengono utilizzati gli output di
quell'esecuzione e il passaggio viene ignorato. Ciò consente di ridurre i costi
saltando i calcoli completati in un'esecuzione della pipeline precedente.
Puoi disattivare la memorizzazione nella cache dell'esecuzione a livello di attività impostando quanto segue:
eval_task.set_caching_options(False)
Puoi disattivare la memorizzazione nella cache dell'esecuzione per un intero job della pipeline. Quando esegui
una pipeline utilizzando PipelineJob(), puoi utilizzare l'argomento enable_caching per
specificare che questa esecuzione della pipeline non utilizza la memorizzazione nella cache. Tutti i passaggi all'interno del
job della pipeline non utilizzeranno la memorizzazione nella cache.
Scopri di più sulla creazione di esecuzioni della pipeline.
Utilizza il seguente esempio per disattivare la memorizzazione nella cache:
pl=PipelineJob(display_name="My first pipeline",# Whether or not to enable caching# True = enable the current run to use caching results from previous runs# False = disable the current run's use of caching results from previous runs# None = defer to cache option for each pipeline component in the pipeline definitionenable_caching=False,# Local or Cloud Storage path to a compiled pipeline definitiontemplate_path="pipeline.yaml",# Dictionary containing input parameters for your pipelineparameter_values=parameter_values,# Cloud Storage path to act as the pipeline rootpipeline_root=pipeline_root,)
A questa funzionalità si applicano le seguenti limitazioni:
Il risultato memorizzato nella cache non ha una durata (TTL) e può essere riutilizzato
finché la voce non viene eliminata da
Vertex ML Metadata. Se la voce viene eliminata da
Vertex ML Metadata, l'attività verrà eseguita di nuovo per rigenerare il
risultato.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[],[],null,["# Configure execution caching\n\nWhen Vertex AI Pipelines runs a pipeline, it checks to see whether or not\nan *execution* exists in Vertex ML Metadata with the interface\n(cache key) of each pipeline step.\n\nThe step's interface is defined as the combination of the following:\n\n1. The **pipeline step's inputs**. These inputs include the input\n parameters' value (if any) and the input artifact ID (if any).\n\n2. The **pipeline step's output definition**. This output definition\n includes output parameter definition (name, if any) and output artifact\n definition (name, if any).\n\n3. The **component's specification**. This specification includes the\n image, commands, arguments and environment variables being used, as well\n as the order of the\n commands and arguments.\n\nAdditionally, only the pipelines with the same pipeline name will share the\ncache.\n\nIf there is a matching execution in Vertex ML Metadata, the outputs of\nthat execution are used and the step is skipped. This helps to reduce costs by\nskipping computations that were completed in a previous pipeline run.\n\nYou can turn off execution caching at task level by setting the following: \n\n eval_task.set_caching_options(False)\n\nYou can turn off execution caching for an entire pipeline job. When you run\na pipeline using `PipelineJob()`, you can use the `enable_caching` argument to\nspecify that this pipeline run does not use caching. All steps within the\npipeline job won't use caching.\n[Learn more about creating pipeline runs](/vertex-ai/docs/pipelines/run-pipeline).\n\nUse the following sample to turn off caching: \n\n pl = PipelineJob(\n display_name=\"My first pipeline\",\n\n # Whether or not to enable caching\n # True = enable the current run to use caching results from previous runs\n # False = disable the current run's use of caching results from previous runs\n # None = defer to cache option for each pipeline component in the pipeline definition\n enable_caching=False,\n\n # Local or Cloud Storage path to a compiled pipeline definition\n template_path=\"pipeline.yaml\",\n\n # Dictionary containing input parameters for your pipeline\n parameter_values=parameter_values,\n\n # Cloud Storage path to act as the pipeline root\n pipeline_root=pipeline_root,\n )\n\n| **Important:** Pipeline components should be built to be deterministic. A given set of inputs should always produce the same output. Depending on their interface, non-deterministic pipeline components can be unexpectedly skipped due to execution caching.\n\nThe following limitations apply to this feature:\n\n- The cached result doesn't have a time to live (TTL), and can be reused as long as the entry is not deleted from the Vertex ML Metadata. If the entry is deleted from Vertex ML Metadata, the task will rerun to regenerate the result again."]]