Questa pagina descrive come eseguire l'ottimizzazione supervisionata e di distillazione sui modelli aperti come Llama 3.1. Se non diversamente specificato, le istruzioni riportate in questa pagina si applicano sia al fine-tuning supervisionato sia al fine-tuning di distillazione. La distillazione consente di ottimizzare un modello studente più piccolo utilizzando gli output di un modello insegnante più grande.
Modalità di ottimizzazione supportate
- Fine-tuning supervisionato:
- Fine-tuning completo
- Low-Rank Adaptation (LoRA): LoRA è una modalità di ottimizzazione efficiente dei parametri che regola solo un sottoinsieme di parametri. È più conveniente e richiede meno dati di addestramento rispetto al fine-tuning completo. D'altra parte, il fine-tuning completo ha un potenziale di qualità più elevato grazie alla regolazione di tutti i parametri.
- Ottimizzazione della distillazione: l'ottimizzazione della distillazione utilizza l'SDK GenAI, dove specifichi un modello insegnante per generare risposte che vengono poi utilizzate per ottimizzare un modello studente più piccolo.
Casi d'uso consigliati per l'ottimizzazione della distillazione
L'ottimizzazione della distillazione è più efficace quando il modello insegnante è notevolmente più capace dello studente nell'attività target. È consigliato per trasferire funzionalità di ragionamento complesse e multi-step da un modello insegnante più grande a un modello studente più piccolo, tra cui:
- Matematica e ragionamento quantitativo
- Risposte a domande scientifiche, mediche e di altri domini specifici che richiedono un ragionamento passo passo
- Altre attività in cui un modello insegnante efficace con un comportamento di "ragionamento" o chain-of-thought produce costantemente risposte di qualità superiore rispetto allo studente.
La distillazione offre vantaggi minori per le attività in cui il modello studente ha già prestazioni simili a quelle del modello insegnante o per le attività di recupero di contenuti in formato breve in cui la traccia di ragionamento del modello insegnante non aggiunge valore.
Modelli supportati
Modelli supportati per il fine-tuning supervisionato
- Gemma 4 E2B IT (
google/gemma4@gemma-4-e2b-it) - Gemma 4 E4B IT (
google/gemma4@gemma-4-e4b-it) - Gemma 4 26B A4B IT (
google/gemma4@gemma-4-26b-a4b-it) - Gemma 4 31B IT (
google/gemma4@gemma-4-31b-it) - Gemma 3 1B IT (
google/gemma3@gemma-3-1b-it) - Gemma 3 4B IT (
google/gemma3@gemma-3-4b-it) - Gemma 3 12B IT (
google/gemma3@gemma-3-12b-it) - Gemma 3 27B IT (
google/gemma3@gemma-3-27b-it) - Medgemma 1.5 4B IT (
google/medgemma@medgemma-1.5-4b-it) - Qwen 3.6 27B (
qwen/qwen3-6@qwen3.6-27b) - Qwen 3.6 35B A3B (
qwen/qwen3-6@qwen3.6-35b-a3b) - Qwen 3.5 9B (
qwen/qwen3-5@qwen3.5-9b) - Qwen 3 4B (
qwen/qwen3@qwen3-4b) - Qwen 3 8B (
qwen/qwen3@qwen3-8b) - Qwen 3 14B (
qwen/qwen3@qwen3-14b) - Qwen 3 32B (
qwen/qwen3@qwen3-32b) - Llama 3.1 8B (
meta/llama3_1@llama-3.1-8b) - Llama 3.1 8B Instruct (
meta/llama3_1@llama-3.1-8b-instruct) - Llama 3.2 1B Instruct (
meta/llama3-2@llama-3.2-1b-instruct) - Llama 3.2 3B Instruct (
meta/llama3-2@llama-3.2-3b-instruct) - Llama 3.3 70B Instruct (
meta/llama3-3@llama-3.3-70b-instruct) - Llama 4 Scout 17B 16E Instruct (
meta/llama4@llama-4-scout-17b-16e-instruct) - GLM 4.7 Flash (
zai-org/glm-4.7-flash@glm-4.7-flash)
Modelli supportati per l'ottimizzazione della distillazione
Modelli insegnante supportati:
- DeepSeek R1 0528 MaaS (
deepseek-ai/deepseek-r1-0528-maas) - DeepSeek V3.2 MaaS (
deepseek-ai/deepseek-v3.2-maas) - GLM 5.2 MaaS (
zai-org/glm-5.2-maas) - Kimi K2 Thinking MaaS (
moonshotai/kimi-k2-thinking-maas) - Qwen 3 Next 80B A3B Thinking MaaS (
qwen/qwen3-next-80b-a3b-thinking-maas)
Modelli di studenti supportati:
- Qwen 3 4B (
qwen/qwen3@qwen3-4b) - Qwen 3 8B (
qwen/qwen3@qwen3-8b) - Qwen 3 14B (
qwen/qwen3@qwen3-14b) - Qwen 3 32B (
qwen/qwen3@qwen3-32b) - Gemma 3 1B IT (
google/gemma3@gemma-3-1b-it) - Gemma 3 4B IT (
google/gemma3@gemma-3-4b-it) - Gemma 3 12B IT (
google/gemma3@gemma-3-12b-it) - Gemma 3 27B IT (
google/gemma3@gemma-3-27b-it)
Aree geografiche supportate
L'endpoint globale (global) è vivamente consigliato per l'avvio dei job di ottimizzazione; selezionerà una regione supportata con capacità disponibile e avvierà un job di ottimizzazione.
Tieni presente quanto segue quando avvii un job dall'endpoint globale:
- Quando crei un job di ottimizzazione globale, viene creato un job di ottimizzazione regionale corrispondente (nella regione selezionata). Ti verrà addebitata solo la quota e la fatturazione per un singolo job di ottimizzazione.
- Le risorse secondarie (come esperimenti o modelli TensorBoard) verranno create nella regione di destinazione selezionata. La località può essere estratta dal nome completo della risorsa e sottoposta a query utilizzando l'SDK Vertex AI.
I job di ottimizzazione specifici per regione sono ancora disponibili per gli utenti con esigenze più avanzate (ad esempio, tutte le risorse limitate a una singola regione):
- Iowa (
us-central1) - Paesi Bassi (
europe-west4) - Oregon (
us-west1) - Columbus (
us-east5) - Singapore (
asia-southeast1) - Giacarta (
asia-southeast2)
Limitazioni
| Modello | Specifica | Valore |
|---|---|---|
| Gemma 4 E2B IT | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 4 E4B IT | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 4 26B A4B IT | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 4 31B IT | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 3 1B IT | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 3 4B IT | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 3 12B IT | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Gemma 3 27B IT | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Medgemma 1.5 4B IT | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Qwen 3.6 27B | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 12288 | |
| Modalità | Testo | |
| Qwen 3.6 35B A3B | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 12288 | |
| Modalità | Testo | |
| Qwen 3.5 9B | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Qwen 3 4B | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Qwen 3 8B | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Qwen 3 14B | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Qwen 3 32B | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Llama 3.1 8B | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Llama 3.1 8B Instruct | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Llama 3.2 1B Instruct | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Llama 3.2 3B Instruct | Modalità di ottimizzazione | Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Llama 3.3 70B Instruct | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) Fine-tuning completo |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo | |
| Llama 4 Scout 17B 16E Instruct | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 2048 | |
| Modalità | Testo Immagini* *I set di dati misti di esempi di solo testo e immagini non sono supportati. Se nel set di dati è presente almeno un esempio di immagine, tutti gli esempi di solo testo verranno esclusi. |
|
| GLM 4.7 Flash | Modalità di ottimizzazione | Parameter-efficient fine-tuning (PEFT) |
| Lunghezza massima della sequenza | 8192 | |
| Modalità | Testo |
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Gemini Enterprise Agent Platform and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Gemini Enterprise Agent Platform and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
Installa l'SDK e importa le librerie per il tuo metodo di ottimizzazione.
Fine-tuning supervisionato
Installa e inizializza l'SDK Vertex AI Python, quindi importa le seguenti librerie:
import os
import time
import uuid
import vertexai
vertexai.init(project=PROJECT_ID, location=REGION)
from google.cloud import aiplatform
from vertexai.tuning import sft, SourceModel
Ottimizzazione della distillazione
Installa il seguente SDK:
pip install google-genai
Quindi importa le seguenti librerie:
import os
import time
import uuid
from google import genai
from google.genai import types
client = genai.Client(vertexai=True, project=PROJECT_ID, location=REGION)
Prepara il set di dati per l'ottimizzazione
Per l'ottimizzazione è necessario un set di dati di addestramento. Ti consigliamo di preparare un set di dati di convalida facoltativo se vuoi valutare le prestazioni del modello ottimizzato.
Il set di dati deve essere in uno dei seguenti formati JSON Lines (JSONL) supportati, in cui ogni riga contiene un singolo esempio di ottimizzazione.
Carica i file JSONL su Cloud Storage.
Set di dati di solo testo
Completamento del prompt
{"prompt": "<prompt text>", "completion": "<ideal generated text>"}
Formato di chat a turni
{"messages": [
{"content": "You are a chatbot that helps with scientific literature and generates state-of-the-art abstracts from articles.",
"role": "system"},
{"content": "Summarize the paper in one paragraph.",
"role": "user"},
{"content": " Here is a one paragraph summary of the paper:\n\nThe paper describes PaLM, ...",
"role": "assistant"}
]}
GenerateContent
{
"systemInstruction": {
"parts": [{ "text": "You are a chatbot that helps with scientific literature and generates state-of-the-art abstracts from articles." }]},
"contents": [
{"role": "user",
"parts": [{ "text": "Summarize the paper in one paragraph." }]},
{"role": "assistant",
"parts": [{ "text": "Here is a one paragraph summary of the paper:\n\nThe paper describes PaLM, ..." }]}
]}
Set di dati multimodali
Formato di chat a turni
{"messages": [
{"role": "user", "content": [
{"type": "text", "text": "You are a chatbot that helps with scientific literature and generates state-of-the-art abstracts from articles."},
{"type": "image_url", "image_url": {
"url": "gs://your-gcs-bucket/your-image.jpeg",
"detail": "low"}}]
},
{"role": "assistant", "content": [
{"type": "text", "text": "Here is a one paragraph summary of the paper:\n\nThe paper describes PaLM, ..."}]
},
{"role": "user", "content": [
{"type": "text", "text": "You are a chatbot that helps with scientific literature and generates state-of-the-art abstracts from articles."},
{"type": "image_url", "image_url": {
"url": "data:image/jpeg;base64,<base64 image>",
"detail": "low"}}]
},
{"role": "assistant", "content": [
{"type": "text", "text": "Here is a one paragraph summary of the paper:\n\nThe paper describes PaLM, ..."}]
},
]}
GenerateContent
{
"systemInstruction": {
"parts": [{ "text": "You are a chatbot that helps with scientific literature and generates state-of-the-art abstracts from articles." }]},
"contents": [
{"role": "user",
"parts": [
{"text": "You are a chatbot that helps with scientific literature and generates state-of-the-art abstracts from articles." },
{"file_data": {
"mime_type": "image/jpeg", "file_uri": "gs://your-gcs-bucket/your-image.jpeg"}}]
},
{"role": "assistant",
"parts": [{ "text": "Here is a one paragraph summary of the paper:\n\nThe paper describes PaLM, ..." }]}
]}
I formati supportati includono JPEG, PNG, WEBP e immagini con codifica Base64.
Tieni presente che se le immagini sono archiviate in un bucket Cloud Storage diverso dai file JSONL, devi assicurarti di aver concesso il ruolo IAM Storage Object User (roles/storage.objectUser) su entrambi i bucket per questi due service account:
service-PROJECT_NUMBER@gcp-sa-vertex-moss-ft.iam.gserviceaccount.comservice-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com
Crea job di ottimizzazione
Puoi ottimizzare da:
- Un modello di base supportato, come Llama 3.1
Un modello con la stessa architettura di uno dei modelli di base supportati. Potrebbe trattarsi di un checkpoint del modello personalizzato da un repository come Hugging Face o di un modello ottimizzato in precedenza da un job di ottimizzazione di Gemini Enterprise Agent Platform. In questo modo, puoi continuare l'ottimizzazione di un modello già ottimizzato.
Console Cloud (supervisionata)
Puoi avviare l'ottimizzazione nei seguenti modi:
- Vai alla scheda del modello, fai clic su Ottimizza e scegli Ottimizzazione gestita.
Vai alla scheda del modello Llama 3.1
o
- Vai alla pagina Ottimizzazione e fai clic su Crea modello ottimizzato.
Compila i parametri e fai clic su Avvia ottimizzazione.
Viene avviato un job di ottimizzazione, che puoi visualizzare nella pagina Ottimizzazione nella scheda Ottimizzazione gestita.
Al termine del job di ottimizzazione, puoi visualizzare le informazioni sul modello ottimizzato nella scheda Dettagli.
SDK Agent Platform (supervisionato)
Sostituisci i valori dei parametri con i tuoi, quindi esegui il seguente codice per creare un job di ottimizzazione:
sft_tuning_job = sft.train(
source_model=SourceModel(
base_model="meta/llama3_1@llama-3.1-8b",
# Optional, folder that is either a custom model checkpoint or previously tuned model
custom_base_model="gs://{STORAGE-URI}",
),
tuning_mode="FULL", # FULL or PEFT_ADAPTER
epochs=3,
train_dataset="gs://{STORAGE-URI}", # JSONL file
validation_dataset="gs://{STORAGE-URI}", # JSONL file
output_uri="gs://{STORAGE-URI}",
)
SDK GenAI (distillazione)
Sostituisci i valori dei parametri con i tuoi, quindi esegui il seguente codice per creare un job di ottimizzazione della distillazione:
tuning_job = client.tunings.tune(
base_model="qwen/qwen3@qwen3-4b",
training_dataset=types.TuningDataset(
gcs_uri="gs://{STORAGE-URI}"
),
config=types.CreateTuningJobConfig(
method="DISTILLATION",
base_teacher_model="qwen/qwen3-next-80b-a3b-thinking-maas",
epoch_count=3,
validation_dataset=types.TuningValidationDataset(
gcs_uri="gs://{STORAGE-URI}"
),
output_uri="gs://{STORAGE-URI}",
),
)
Artefatti del modello ottimizzato
Al termine del job di ottimizzazione, gli artefatti del modello ottimizzato vengono archiviati nella directory di output di Cloud Storage.
gs://<output_dir>/
# (Distillation tuning only) The labeled dataset from teacher model's inference
-> distillation_labelled_dataset.jsonl
gs://<output_dir>/postprocess/node-0/checkpoints/
# Final checkpoint
-> final/
-> model-00001-of-000xx.safetensors
-> model-000yy-of-000xx.safetensors
# Intermediate checkpoints
-> checkpoint-M/
-> model-00001-of-000xx.safetensors
-> model-000yy-of-000xx.safetensors
…
-> checkpoint-N/
-> model-00001-of-000xx.safetensors
-> model-000yy-of-000xx.safetensors
- Viene memorizzato un massimo di 10 checkpoint.
- Se il numero di epoche (E) è inferiore a 10, vengono archiviati esattamente E checkpoint (uno per ogni epoca).
- I checkpoint intermedi dell'intervallo da M a N sono ordinati. Tieni presente che i checkpoint intermedi non sono sempre numerati consecutivamente. Ad esempio, i checkpoint potrebbero essere numerati 1, 3, 5, 10 anziché 1, 2, 3, 4.
Esegui il deployment del modello ottimizzato
Puoi eseguire il deployment del modello ottimizzato su un endpoint Gemini Enterprise Agent Platform. Puoi anche esportare il modello ottimizzato da Cloud Storage ed eseguirne il deployment altrove.
Per eseguire il deployment del modello ottimizzato su un endpoint Gemini Enterprise Agent Platform:
Cloud Console
Vai alla pagina Model Garden e fai clic su Esegui il deployment del modello con pesi personalizzati.
Compila i parametri e fai clic su Esegui il deployment.
SDK Agent Platform per Python
Esegui il deployment di un G2 machine utilizzando un container predefinito:
from vertexai.preview import model_garden
MODEL_ARTIFACTS_STORAGE_URI = "gs://{STORAGE-URI}/postprocess/node-0/checkpoints/final"
model = model_garden.CustomModel(
gcs_uri=MODEL_ARTIFACTS_STORAGE_URI,
)
# deploy the model to an endpoint using GPUs. Cost will incur for the deployment
endpoint = model.deploy(
machine_type="g2-standard-12",
accelerator_type="NVIDIA_L4",
accelerator_count=1,
)
Ottieni un'inferenza
Una volta completato il deployment, puoi inviare richieste all'endpoint con prompt testuali. Tieni presente che l'esecuzione dei primi prompt richiederà più tempo.
# Loads the deployed endpoint
endpoint = aiplatform.Endpoint("projects/{PROJECT_ID}/locations/{REGION}/endpoints/{endpoint_name}")
prompt = "Summarize the following article. Article: Preparing a perfect risotto requires patience and attention to detail. Begin by heating butter in a large, heavy-bottomed pot over medium heat. Add finely chopped onions and minced garlic to the pot, and cook until they're soft and translucent, about 5 minutes. Next, add Arborio rice to the pot and cook, stirring constantly, until the grains are coated with the butter and begin to toast slightly. Pour in a splash of white wine and cook until it's absorbed. From there, gradually add hot chicken or vegetable broth to the rice, stirring frequently, until the risotto is creamy and the rice is tender with a slight bite.. Summary:"
# Define input to the prediction call
instances = [
{
"prompt": "What is a car?",
"max_tokens": 200,
"temperature": 1.0,
"top_p": 1.0,
"top_k": 1,
"raw_response": True,
},
]
# Request the prediction
response = endpoint.predict(
instances=instances
)
for prediction in response.predictions:
print(prediction)
Per maggiori dettagli su come ottenere inferenze da un modello di cui è stato eseguito il deployment, consulta Ottieni un'inferenza online.
Tieni presente che i modelli open gestiti utilizzano il metodo chat.completions anziché il metodo predict utilizzato dai modelli di cui è stato eseguito il deployment. Per saperne di più su come ottenere inferenze dai modelli gestiti, consulta Effettua una chiamata a un modello Llama.
Limiti e quote
La quota viene applicata al numero di job di ottimizzazione simultanei. Ogni progetto include una quota predefinita per eseguire almeno un job di ottimizzazione. Si tratta di una quota globale, condivisa tra tutte le regioni disponibili e i modelli supportati. Se vuoi eseguire più job contemporaneamente, devi richiedere una quota aggiuntiva per Global concurrent managed OSS model fine-tuning jobs per project.
Oltre alla quota per i job di ottimizzazione, l'ottuning della distillazione utilizza il modello insegnante e il tuo progetto deve avere una quota sufficiente per il modello insegnante specificato. I modelli aperti forniti come servizio (MaaS) utilizzano la quota condivisa dinamica. Quando un job di ottimizzazione chiama un modello insegnante, consuma la quota condivisa del progetto per quel modello. Per maggiori informazioni sulle quote per i modelli aperti gestiti, consulta Modelli gestiti di Gemini Enterprise Agent Platform per MaaS.
Prezzi
La fatturazione per l'ottimizzazione si basa sui prezzi per l'ottimizzazione del modello. Il numero di token di addestramento viene calcolato moltiplicando il numero di token nel set di dati di addestramento per il numero di epoche. Per l'ottimizzazione della distillazione, ti vengono addebitate anche le chiamate API effettuate al modello insegnante per generare risposte, in base ai prezzi dei modelli gestiti.
Ti vengono addebitati anche i servizi correlati, come Cloud Storage e Gemini Enterprise Agent Platform Prediction.
Scopri di più sui prezzi di Gemini Enterprise Agent Platform, sui prezzi di Cloud Storage e utilizza il Calcolatore prezzi per generare una stima dei costi in base all'utilizzo previsto.