Questa guida mostra come eseguire la migrazione dell'SDK Vertex AI per il codice Python dall'API PaLM all'API Gemini. Con Gemini, puoi generare testo, conversazioni in più passaggi (chat) e codice. Dopo la migrazione, controlla le risposte, perché l'output Gemini potrebbe essere diverso. Per ulteriori informazioni, consulta Introduzione alle classi multimodali nell'SDK Vertex AI.
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 Gemini, consulta il corpo della risposta di 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 maggiori informazioni, consulta Modello di completamento del codice Codey.Per la generazione del codice, Gemini ha una frequenza di blocchi delle richieste più elevata.
Il punteggio di affidabilità nei modelli di generazione del codice Codey, che indica il grado di affidabilità del modello nella sua risposta, non è esposto in Gemini.
Aggiornare il codice PaLM per utilizzare i modelli Gemini
I metodi nella classe GenerativeModel
sono per lo più identici ai metodi nelle classi PaLM. Ad esempio, usa GenerativeModel.start_chat
per sostituire
l'equivalente PaLM, ChatModel.start_chat
. Tuttavia, poiché Google Cloud migliora e aggiorna
sempre Gemini, potresti riscontrare alcune differenze. Per ulteriori informazioni, consulta la pagina di riferimento sull'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, utilizzerai 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-1.0-pro)
.Per generare testo in Gemini, usa il metodo
GenerativeModel.generate_content
anziché il metodopredict
usato nei modelli PaLM. Ad esempio:
model = GenerativeModel("gemini-1.0-pro-002") response = model.generate_content("Write a short poem about the moon")
Confronto tra le classi Gemini e PaLM
Ogni classe del modello PaLM viene sostituita dalla classe GenerativeModel
in Gemini. La
tabella seguente mostra le classi utilizzate dai modelli PaLM e la loro classe
equivalente in Gemini.
modello PaLM | classe del 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
Il processo di configurazione è lo stesso sia per l'API PaLM sia per l'API Gemini in Vertex AI. Per maggiori 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 del tuo progetto Google Cloud e LOCATION con la località del tuo progetto Google Cloud (ad esempio, us-central1
).
Esempi di codice Gemini e PaLM
Ognuna 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 del testo: di 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 del testo.
PaLM | Gemini |
---|---|
|
|
Generazione del testo con parametri
I seguenti esempi di codice mostrano le differenze tra l'API PaLM e l'API Gemini per creare un modello di generazione del testo, con parametri facoltativi.
PaLM | Gemini |
---|---|
|
|
Chat
I seguenti esempi di codice mostrano le differenze tra l'API PaLM e l'API Gemini per creare 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 è un anno bisestile.
Codey | Gemini |
---|---|
|
|
Passaggi successivi
- Per ulteriori dettagli sui modelli e sulle funzionalità più recenti, consulta la panoramica dell'API Vertex AI Gemini.