Fare pratica con i prompt
Obiettivi di apprendimento
Al completamento di questa unità, sarai in grado di:
- Scrivere prompt usando tecniche avanzate di progettazione dei prompt.
- Spiegare i vantaggi della progettazione avanzata dei prompt rispetto al prompting diretto.
Ora che ragioni come un prompt engineer, puoi creare alcuni prompt per conto tuo. Affronterai due casi d’uso partendo da un modello di prompt zero-shot, poi modificherai i prompt iniziali per avvalerti delle tecniche di progettazione avanzata. Confrontando gli output del modello per ciascun prompt, dovresti vedere come poche semplici modifiche possono migliorare le singole risposte.
Ti consigliamo di seguire i passaggi descritti in questa unità per superare la sfida alla fine e ottenere il badge. Dopo aver effettuato la registrazione per l’organizzazione Developer, assicurati di connetterla a Trailhead (trovi le istruzioni qui sotto) per controllare la sfida e conseguire il badge.
Registrarsi per un’organizzazione Developer Edition per Agentforce
Per completare questo modulo è necessaria una speciale organizzazione Developer Edition in cui è abilitato Agentforce. Accedi alla Developer Edition gratuita e connettila a Trailhead adesso per poter completare le sfide di questo badge. Tieni presente che questa Developer Edition è destinata a funzionare con le sfide presenti in questo badge e potrebbe non funzionare con altri badge. Controlla sempre se stai utilizzando un Trailhead Playground o la speciale organizzazione Developer Edition consigliata da noi.
- Fai clic sul link per registrarti per un’organizzazione Developer Edition gratuita.
- Compila il modulo.
- In Email, inserisci un indirizzo email attivo.
- In Username (Nome utente), inserisci un nome utente univoco simile a un indirizzo email, che non deve necessariamente corrispondere a un account email valido.
- In Email, inserisci un indirizzo email attivo.
- Al termine, fai clic su Sign me up (Registrami). Viene visualizzato un messaggio di conferma.
- Quando ricevi l’email di attivazione (potresti dover attendere qualche minuto), aprila e fai clic su Verify Account (Verifica account).
- Completa la registrazione impostando la password e la domanda di controllo.
- Hai eseguito l’accesso alla tua Developer Edition.
Ora collega la nuova organizzazione Developer Edition a Trailhead.
- Assicurati di aver eseguito l'accesso al tuo account Trailhead.
- Nella sezione della sfida in fondo a questa pagina, fai clic sul nome del playground e poi su Connetti organizzazione.
- Nella schermata di accesso, inserisci il nome utente (che è riportato nell’email che hai appena ricevuto) e la password per la Developer Edition che hai appena configurato.
- Nella schermata Allow Access? (Consentire l'accesso?), fai clic su Allow (Consenti).
- Nella schermata Want to connect this org for hands-on challenges? (Vuoi connettere questa organizzazione per le sfide pratiche?) fai clic su Yes! Save it (Sì! Salva).
Il sistema ti reindirizzerà alla pagina della sfida, dove potrai subito iniziare a utilizzare la tua nuova Developer Edition per ottenere questo badge.
Impostare Agentforce
Innanzitutto, assicurati che Agentforce sia abilitato.
- Fai clic su
.
- Utilizzando la casella Quick Find (Ricerca veloce), cerca e seleziona Einstein Setup (Impostazione Einstein).
- Accertati che il pulsante di alternanza in corrispondenza di Turn on Einstein (Attiva Einstein) sia impostato su On (Attivato).
- Aggiorna il browser per caricare nuovamente la pagina Setup (Imposta).
- Utilizzando la casella Quick Find (Ricerca veloce), cerca e seleziona Agentforce Agents (Agenti Agentforce).
- Accertati che il pulsante di alternanza in corrispondenza di Agentforce sia impostato su On (Attivato).
Creare un modello di prompt zero-shot
- Utilizzando la casella Quick Find (Ricerca veloce), cerca e seleziona Prompt Builder (Generatore di prompt).
- Fai clic su New Prompt Template (Nuovo modello di prompt).
- Seleziona e inserisci le informazioni richieste nel modello di prompt come descritto di seguito.
- Prompt Template Type (Tipo di modello prompt): Flex
- Prompt Template Name (Nome modello di prompt):
Generate Sample Email(Genera email campione) - API Name (Nome API):
Generate_Sample_Email(questo campo viene compilato automaticamente)
- Template Description (Descrizione modello):
Creates a basic email template.(Crea un modello di email di base.)
- Prompt Template Type (Tipo di modello prompt): Flex
- In Define Sources (Definisci origini), inserisci i dettagli seguenti:
- Name (Nome):
Customer Account(Account cliente) - API Name (Nome API):
Customer_Account(questo campo viene compilato automaticamente)
- Source Type (Tipo di origine): Object (Oggetto)
- Object (Oggetto): Account
- Name (Nome):
- Fai clic su Next (Avanti).
Ora iniziamo con istruzioni semplici per un’email di invito a un evento. Daremo all’agente alcune istruzioni e i dettagli necessari per creare l’invito.
- Inserisci la seguente istruzione zero-shot copiando il testo e incollandolo nell’area Prompt text (Testo prompt).
Write the introduction and body for a friendly and professional email from the Salesforce marketing team inviting an example customer to attend an upcoming event. Include the event name, location, and value of attending. Event Details: Name: Salesforce AI Launch Tour Location: Chicago Date: June 25
- Ora fai riferimento a un account utente specifico da cui il modello prenderà i dati. Fai clic su Preview Settings (Impostazioni anteprima) (
) sopra Template Settings (Impostazioni Modello).
- In Inputs (Input), nel campo Customer Account (Account cliente), cerca e seleziona Burlington Textiles Corp of America.
- Fai clic su Click Save & Preview (Salva e visualizza anteprima) (
), sopra Inputs (Input) per generare e visualizzare l’anteprima della risposta.
Verranno visualizzati due campi con gli output: Resolved Prompt (Prompt risolto) e Generated Response (Risposta generata). Nella sezione Resolved Prompt (Prompt risolto) è visualizzato il prompt dove gli eventuali segnaposto sono stati risolti. Puoi visualizzare l’email di esempio completata nel campo Generated Response (Risposta generata).
Questa risposta zero-shot restituisce un’email piuttosto generica, ma che rappresenta un punto di partenza. Vediamo come si possono migliorare il tono e la struttura aggiungendo qualche esempio da cui il modello può imparare.
Modificare il prompt con esempi few-shot
Aggiungiamo un paio di esempi few-shot per indirizzare meglio il modello.
- Fai clic su Prompt (
) per tornare al prompt.
- Sostituisci il testo nell’area Prompt copiando e incollando il testo seguente:
Write the introduction and body for a friendly and professional email from the Salesforce marketing team inviting an example customer to attend an upcoming event. Include the event name, location, and value of attending. Replicate the following format, but make the email body more detailed and evocative: Event Details: Name: Salesforce AI Launch Tour Location: Chicago Date: June 25 Example 1: Event: Salesforce AI Launch Tour Location: Chicago Customer: Jordan Manning Company: FutureWorks Industries Email: Subject: You’re Invited to the Salesforce AI Launch Tour – Chicago Hi Jordan, We’re excited to invite you and your team at FutureWorks Industries to the Salesforce AI Launch Tour in Chicago on June 25. Write the introduction and body for a friendly and professional email from the Salesforce marketing team inviting an example customer to attend an upcoming event. Include the event name, location, and value of attending. Replicate the following format and tone, but replace all names with placeholders. Expand on the email copy to include at least three paragraphs while keeping the tone friendly and the content engaging. Event Details: Name: Salesforce AI Launch Tour Location: Chicago Date: June 25 Example 1: Event: Salesforce AI Launch Tour Location: Chicago Customer: Jordan Manning Company: FutureWorks Industries Email: Subject: You’re Invited to the Salesforce AI Launch Tour – Chicago Hi Jordan, We’re excited to invite you and your team at FutureWorks Industries to the Salesforce AI Launch Tour in Chicago on June 25. It’s a great chance to see how Salesforce AI can drive productivity and connect with peers in your industry. Hope to see you there! – Your Salesforce Team Example 2: Event: Salesforce Customer Success Summit Location: New York Customer: Maya Jones Company: NextStep Health Subject: Let’s Meet at the Salesforce Customer Success Summit Hi Maya, We’d love to see you at our Customer Success Summit in New York on May 12. NextStep Health has been doing incredible work, and this event is a great opportunity to explore new tools to grow faster with Salesforce. We're excited to share the future and out latest innovations with our fantastic customers. Let us know if you can make it! – Your Salesforce Team
- Fai clic su Save & Preview (Salva e visualizza anteprima) per generare e visualizzare l’anteprima della risposta nel campo Generated Response (Risposta generata).
Dovresti vedere un’email che integra il linguaggio e lo stile dei tuoi esempi.
Fornendo all’agente esempi specifici del tipo di output che vorresti, lo hai aiutato a generare email migliori. Se confronti i due prompt, vedrai che anche esempi molto semplici sono efficaci, in particolare se sono abbinati a istruzioni nel prompt su come utilizzarli. Ma soprattutto, questa tecnica e le altre che hai appreso, funzionano su tutti gli LLM e i tipi di prompt.
Provare un prompt chain-of-thought
Hai visto come migliorare un prompt di base, che ne dici di provare con un prompt zero-shot e aggiungere un altro tipo di progettazione avanzata: il prompting chain-of-thought? Per mostrare come queste tecniche funzionano anche con output di formati diversi, proveremo questa tecnica usando un prompt di tipo Risposte ricerca generate da Einstein AI.
Creare nuovo modello di prompt
- Se sei ancora nella pagina del prompt discusso nella sezione precedente, fai clic sulla freccia indietro per tornare alla pagina delle impostazioni del Generatore di prompt.
- Fai clic su New Prompt Template (Nuovo modello di prompt).
- Compila questi campi:
- Prompt Template Type (Tipo di modello di prompt): Einstein AI-Generated Search Answers (Risposte ricerca generate da Einstein AI)
- Prompt Template Name (Nome modello di prompt):
Resort Package Names(Nomi di pacchetti del resort)
API Name (Nome API):Resort_Package_Names(questo campo viene compilato automaticamente)
- Template Description (Descrizione modello):
Generates package names for Coral Cloud resort offerings based on the provided details.(Genera nomi di pacchetti per le offerte del resort Coral Cloud in base ai dettagli forniti.)
- Prompt Template Type (Tipo di modello di prompt): Einstein AI-Generated Search Answers (Risposte ricerca generate da Einstein AI)
- Fai clic su Next (Avanti).
Definire le istruzioni per il prompt
- Fai clic su Preview Settings (Impostazioni anteprima) (
) sopra Template Settings (Impostazioni Modello).
- Su lato sinistro della pagina, sotto Inputs (Input) inserisci le informazioni seguenti:
- Query:
Generate 5 Package names(Genera i nomi di cinque pacchetti) - Chunks (Blocchi) (ciascuno sulla propria riga):
-
private villas(Ville private) -
beachside dining(Cena sulla spiaggia) -
family-friendly atmosphere(Atmosfera rilassata per famiglie)
-
- Query:
- Nell’area Prompt, incolla questo testo:
You are a marketing assistant creating luxurious and appealing resort package names. Based on the following details, generate 5 creative and enticing names for a resort vacation package. Resort details: Coral Cloud Resorts offers private villas, beachside dining, and a family-friendly atmosphere focused on luxurious comfort.
- Fai clic su Save and Preview (Salva e visualizza anteprima) per provare il prompt.
- Guarda i nomi dei pacchetti generati nella sezione Response (Risposta) per vedere in che modo i tuoi esempi hanno modificato l’output. Vedrai una risposta con i nomi numerati racchiusi da parentesi, simile a questa:
{"answer":"1. Coral Cloud Escape Package \n2. Beachside Bliss Family Retreat \n3. Luxe Villa Getaway \n4. Serenity by the Sea Experience \n5. Private Paradise Family Adventure","sources":""} ({"answer":"1. Fuga a Coral Cloud \n2. Pausa di relax in famiglia sulla spiaggia \n3. Fuga di lusso in villa \n4. Oasi di pace al mare \n5. Avventure in famiglia nel lusso","sources":""})
L’aspetto della risposta potrebbe essere diverso, ma se hai generato nuovi nomi di pacchetti, l’esperimento è riuscito!
Aggiungere istruzioni chain-of-thought
Ora modifichiamo il modello per aggiungere istruzioni chain-of-thought.
- Fai clic su Prompt (
) per tornare al prompt.
- Sostituisci il prompt corrente copiando e incollando il testo seguente:
You are a marketing assistant creating luxurious and appealing resort package names. Based on the following details, generate 5 creative and enticing names for a resort vacation package. Resort details: Coral Cloud Resorts offers private villas, beachside dining, and a family-friendly atmosphere focused on luxurious comfort. Make the names concise, elegant, and themed to match the details. Avoid generic phrases like “Special Deal” or “Vacation Offer.” Aim for names that evoke emotion and curiosity. Explain your thought process for each package step-by-step.
La logica chain-of-thought viene aggiunta al prompt attraverso la frase “explain your thought process for each package step-by-step” (Spiega passo dopo passo il ragionamento che hai seguito per ogni pacchetto). Poiché l’LLM è in grado di comprendere il contesto, puoi usare queste istruzioni dove ritieni che possano essere utili.
- Non modificare la query e i blocchi.
- Fai clic su Save & Preview (Salva e visualizza anteprima) per generare la risposta aggiornata.
Verrà visualizzato qualcosa di simile a quanto segue:
{"answer":"1. **Serenity Shores Retreat** - This name conveys a sense of peace and tranquility, appealing to those seeking relaxation in luxurious surroundings.\n\n2. **Coral Haven Escape** - The use of 'Haven' suggests a safe and welcoming space, while 'Escape' evokes a desire to leave daily stress behind for a luxurious getaway.\n\n3. **Azure Bliss Villas** - 'Azure' reflects the beautiful ocean colors, and 'Bliss' communicates a feeling of happiness and contentment associated with a luxurious stay.\n\n4. **Tropical Tranquility Experience** - This name emphasizes the serene environment of the resort, inviting guests to immerse themselves in a calm and luxurious atmosphere.\n\n5. **Family Oasis Retreat** - This name highlights the family-friendly aspect of the resort while suggesting a luxurious and comfortable environment for all ages.","sources":""} ({"answer":"1. **Rifugio nelle spiagge della quiete** - Questo nome trasmette un senso di pace e tranquillità, per chi cerca un luogo in cui rilassarsi circondato dal lusso.\n\n2. **Fuga nel porto dei coralli** - L’uso della parola “porto” suggerisce un luogo sicuro e accogliente dove lasciarsi alle spalle lo stress quotidiano per una breve vacanza.\n\n3. **Ville nel paradiso azzurro** - La parola “azzurro” evoca i bellissimi colori del mare e il paradiso comunica la sensazione di gioia e piacere associata a un soggiorno di lusso.\n\n4. **La tranquillità dei tropici** - Questo nome mette in evidenza l’ambiente sereno del resort, invitando gli ospiti a immergersi in un’atmosfera tranquilla e lussuosa.\n\n5. **Oasi di lusso per la famiglia** - Questo nome sottolinea l’aspetto familiare del resort e suggerisce un ambiente lussuoso e confortevole per tutte le età.","sources":""}
Visto la differenza? La risposta aggiornata ti fa capire perché l’agente ha proposto quei nomi pacchetto. Con il prompting chain-of-thought fornisci all’agente IA le istruzioni per spiegare il motivo per cui ha generato il nome di ciascun pacchetto. In questo esempio hai trovato diverse idee per denominare i pacchetti in collaborazione con un agente. Nel corso del processo l’agente ti ha fornito esempi insieme a un contesto pertinente. Questo ti permettere di vedere il ragionamento che ha portato alla creazione dei contenuti, oltre ai contenuti stessi. Con il tempo questa conoscenza ti aiuterà a sfruttare meglio tutti i prompt.
Ora puoi lavorare con il Generatore di prompt usando la tecnica prompt chain-of-thought. Quando hai completato i passaggi della sfida, fai clic su Controlla la sfida per conseguire questo badge.
Complimenti! Sei sulla buona strada per usare tecniche di più avanzate per la creazione di prompt e ottenere risultati migliori.
