Comprendere le richieste per migliorare la qualità del completamento
La costruzione di richieste può essere difficile. In pratica, il prompt agisce per configurare i pesi del modello per completare l'attività desiderata, ma è più un'arte che una scienza, dato che spesso richiede esperienza e intuizione per creare una richiesta di successo.
Quando si inviano prompt ben costruiti al modello, quest'ultimo restituisce completamenti migliori.
Nel bot di raccomandazione per le escursioni, un ottimo prompt di sistema aiuta il modello a prepararsi a consigliare escursioni appropriate. Una richiesta efficace da parte degli utenti è in grado di perfezionare ulteriormente le raccomandazioni restituite dal modello.
In questa unità vengono illustrati i concetti generali e i modelli che possono essere usati per costruire richieste e vengono esaminate alcune tecniche da usare per migliorare la qualità dei completamenti.
Nozioni di base
Le richieste di testo sono il modo in cui gli utenti interagiscono con i modelli GPT. I modelli linguistici generativi tentano di produrre la serie successiva di parole che con più probabilità seguono il testo precedente. È come se avessimo detto Qual è la prima cosa che viene in mente quando dico <prompt>?
Man mano che si sviluppano richieste complesse, è utile tenere presente questo comportamento fondamentale. Indipendentemente dal prompt, il modello risponde semplicemente con ciò che determina sia l'elemento seguente più probabile.
Componenti richiesta
Quando si usa l'API di completamento non esiste alcuna differenziazione tra parti diverse del prompt, ma è comunque utile suddividere la richiesta nelle parti componenti, perché l'obiettivo è quello di pensare alla costruzione di richieste.
Istruzioni
Le istruzioni sono probabilmente il componente prompt più comunemente usato. Rappresentano la parte del prompt che indica al modello cosa fare e possono variare da semplici a complesse. Ad esempio, Consiglia escursioni a Sei un appassionato di escursioni che aiuta le persone a scoprire escursioni divertenti nella loro zona. Sei vivace e amichevole. Ti presenti al primo saluto. Quando aiuti le persone, chiedi sempre dove si trovano e l'intensità di escursionismo che desiderano per consigliare al meglio.
Contenuto primario
Il contenuto primario fa riferimento a un tipo di testo elaborato o trasformato dal modello. Viene in genere usato in combinazione con le istruzioni. Ad esempio, verranno forniti tre suggerimenti per le escursioni nelle vicinanze che variano in lunghezza dopo aver ottenuto tali informazioni.
Il contenuto principale può essere molto più lungo, ad esempio chiedere al modello di riepilogare un articolo di Wikipedia.
Esempi
Le richieste riuscite spesso si basano sulla pratica dell'apprendimento "one-shot" o "few-shot". Questo fa riferimento all'inclusione di uno o più esempi del comportamento desiderato del modello, cosa che in genere include coppie di input e output. Questo non è apprendimento nel senso che il modello viene modificato in modo permanente, ma implica piuttosto che gli esempi migliorano la condizione del modello per rispondere come desiderato solo per l'inferenza corrente.
L'uso di prompt senza esempi viene talvolta definito apprendimento "zero-shot".
Hike request: I live near Seattle and would like an easy hike.
Recommendation: That's great to hear, the Seattle area has some of the best hikes in the nation! You should try Little Si, you'll love it.
Hike request: I want to go on a hike in the North Cascades that will blow my mind.
Recommendation: You won't find a bad hike in the North Cascades. However, I hear the Sahale Arm stops people in their tracks with its beauty.
Hike request: I'd like to find a strenuous hike that's just like the Enchantments, but without as many people.
Recommendation:
Segnale
I segnali fungono da "jumpstart" per l'output del modello, consentendo di indirizzare il modello all'output desiderato. Spesso si tratta di un prefisso su cui il modello può essere compilato. Un segnale può indirizzare il completamento a includere gli elementi chiave. I segnali vengono spesso usati insieme alle istruzioni.
L'esempio seguente mostra un singolo segnale per riepilogare molte revisioni finali.
Richiesta | Completamento |
---|---|
Le recensioni dei sentieri sono una considerazione importante per gli escursionisti che scelgono dove recarsi, perché elencano le condizioni correnti del sentiero. [...] Riepilogare la recensione dei percorsi precedenti: La cosa principale da capire leggendo le recensioni dei percorsi precedenti sono: |
che il sentiero Mailbox Peak al momento è fangoso e pieno di zanzare una volta superata la fascia alberata. Da metà mattina in poi, inoltre, il sentiero è affollato. |
Contenuto di supporto
I contenuti di supporto sono costituiti da informazioni che il modello può utilizzare per influenzare l'output in qualche modo. Differiscono dal contenuto principale in quanto non sono la destinazione o l'attività principale, ma vengono in genere usati insieme al contenuto primario. Gli esempi comuni includono informazioni contestuali, ad esempio la data corrente, il nome dell'utente, le preferenze utente e così via.
Procedure consigliate
- Essere specifici. Lasciare il minimo possibile interpretazione. Limitare lo spazio operativo.
- Ricorrere a indicazioni descrittive. Usare le analogie.
- Ribadire. A volte potrebbe essere necessario ripetersi nel modello. Fornire istruzioni prima e dopo il contenuto principale, usare un'istruzione e un segnale e così via.
- L'ordine è importante. L'ordine in cui vengono presentate le informazioni al modello può influire sull'output. Se si inseriscono istruzioni prima del contenuto ("riepilogare quanto segue…") o dopo ("riepilogare quanto sopra…") può fare la differenza nell'output. Anche l'ordine degli esempi few-shot può essere importante. Questa tecnica viene chiamata recency bias.
- Eseguire il priming dell'output. Includere alcune parole o frasi alla fine del prompt per ottenere una risposta del modello che segua il modulo desiderato.
- Fornire al modello un'alternativa. A volte può essere utile fornire al modello un percorso alternativo se non è in grado di completare l'attività assegnata. Ad esempio, quando si pone una domanda su una parte di testo, è possibile includere qualcosa di simile a "rispondi con "non trovato" se la risposta non è presente". Questa tecnica consente al modello di evitare di generare risposte false.
- Prompt di catena di pensieri. Al modello viene richiesto di procedere passo per passo e presentare tutti i passaggi coinvolti. In questo modo si riduce la possibilità di inesattezze dei risultati e si semplifica la valutazione della risposta del modello.