Questa guida mostra come eseguire la migrazione del codice dell'SDK Vertex AI per Python dall'utilizzo dell'API PaLM all'utilizzo dell'API Gemini. Con Gemini puoi generare testo, conversazioni multi-turno (chat) e codice. Dopo la migrazione, controlla le risposte perché l'output di Gemini potrebbe essere diverso da quello di PaLM.
Differenze tra Gemini e PaLM
Di seguito sono riportate alcune differenze tra i modelli Gemini e PaLM:
Le loro strutture di risposta sono diverse. Per informazioni sulla struttura della risposta di Gemini, consulta la sezione Corpo della risposta del riferimento del modello dell'API Gemini.
Le loro categorie di sicurezza sono diverse. Per scoprire le differenze tra le impostazioni di sicurezza di Gemini e PaLM, consulta Differenze principali tra Gemini e altre famiglie di modelli.
Gemini non può eseguire il completamento del codice. Se devi creare un'applicazione di completamento del codice, utilizza il modello
code-gecko
. Per ulteriori informazioni, consulta Modello di completamento del codice Codey.Per la generazione di codice, Gemini ha un tasso di blocco della recitazione più elevato.
Il punteggio di affidabilità nei modelli di generazione di codice Codey che indica il livello di confidenza del modello nella sua risposta non è esposto in Gemini.
Aggiorna il codice PaLM per utilizzare i modelli Gemini
I metodi della classe GenerativeModel
sono per lo più gli stessi dei metodi delle classi PaLM. Ad esempio, utilizza GenerativeModel.start_chat
per sostituire
l'equivalente PaLM, ChatModel.start_chat
. Tuttavia, poiché Google Cloud è in costante
miglioramento e aggiornamento, potresti riscontrare alcune differenze. Per ulteriori
informazioni, consulta il
riferimento all'SDK Python.
Per eseguire la migrazione dall'API PaLM all'API Gemini, sono necessarie le seguenti modifiche al codice:
Per tutte le classi di modelli PaLM, utilizzi la classe
GenerativeModel
in Gemini.Per utilizzare la classe
GenerativeModel
, esegui la seguente istruzione di importazione:from vertexai.generative_models import GenerativeModel
Per caricare un modello Gemini, utilizza il costruttore
GenerativeModel
anziché il metodofrom_pretrained
. Ad esempio, per caricare il modello Gemini 1.0 Pro, utilizzaGenerativeModel(gemini-2.0-flash-001)
.Per generare testo in Gemini, utilizza il metodo
GenerativeModel.generate_content
anziché il metodopredict
utilizzato nei modelli PaLM. Ad esempio:
model = GenerativeModel("gemini-2.0-flash-001") response = model.generate_content("Write a short poem about the moon")
Confronto tra le classi Gemini e PaLM
Ogni classe di modelli PaLM viene sostituita dalla classe GenerativeModel
in Gemini. La
tabella seguente mostra le classi utilizzate dai modelli PaLM e la classe equivalente
in Gemini.
Modello PaLM | Classe modello PaLM | Classe del modello Gemini |
---|---|---|
text-bison |
TextGenerationModel |
GenerativeModel |
chat-bison |
ChatModel |
GenerativeModel |
code-bison |
CodeGenerationModel |
GenerativeModel |
codechat-bison |
CodeChatModel |
GenerativeModel |
Istruzioni di configurazione comuni
Per l'API PaLM e l'API Gemini in Vertex AI, la procedura di configurazione è la stessa. Per ulteriori informazioni, consulta Introduzione all'SDK Vertex AI per Python. Di seguito è riportato un breve esempio di codice che installa l'SDK Vertex AI per Python.
pip install google-cloud-aiplatform import vertexai vertexai.init(project="PROJECT_ID", location="LOCATION")
In questo codice campione, sostituisci PROJECT_ID con l'ID progetto Google Cloud e LOCATION con la posizione del progetto Google Cloud (ad esempio, us-central1
).
Esempi di codice di Gemini e PaLM
Ciascuna delle seguenti coppie di esempi di codice include il codice PaLM e, accanto, il codice Gemini di cui è stata eseguita la migrazione dal codice PaLM.
Generazione di testo: base
I seguenti esempi di codice mostrano le differenze tra l'API PaLM e l'API Gemini per la creazione di un modello di generazione di testo.
PaLM | Gemini |
---|---|
|
|
Generazione di testo con parametri
I seguenti esempi di codice mostrano le differenze tra l'API PaLM e l'API Gemini per la creazione di un modello di generazione di testo, con parametri facoltativi.
PaLM | Gemini |
---|---|
|
|
Chat
Gli esempi di codice riportati di seguito mostrano le differenze tra l'API PaLM e l'API Gemini per la creazione di un modello di chat.
PaLM | Gemini |
---|---|
|
|
Generazione del codice
I seguenti esempi di codice mostrano le differenze tra l'API PaLM e l'API Gemini per la generazione di una funzione che prevede se un anno è bisestile.
Codey | Gemini |
---|---|
|
|
Migrare i prompt ai modelli Gemini
Se hai set di prompt che hai utilizzato in precedenza con i modelli PaLM 2, puoi ottimizzarli per l'utilizzo con i modelli Gemini utilizzando lo strumento di ottimizzazione dei prompt Vertex AI (anteprima).
Passaggi successivi
- Per ulteriori dettagli sui modelli e sulle funzionalità più recenti, consulta la pagina Modelli Google.