0Pricing
AI Prompt Engineering · Lezione

Prompting zero-shot e few-shot

Scopra come ottenere risposte senza esempi (zero-shot) o fornendo alcuni esempi illustrativi (few-shot).

Prompting zero-shot e few-shot è una lezione AI Prompt Engineering gratuita su CoddyKit. Questa è la lezione 2 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento AI Prompt Engineering, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso AI Prompt Engineering include 3 lezioni in totale.

Introduzione al prompting zero-shot e few-shot

Benvenuti a questa lezione sul prompting zero-shot e few-shot! Si tratta di tecniche fondamentali per guidare i modelli linguistici di grandi dimensioni (LLM) nello svolgimento di attività.

Comprenderle aiuta a ottenere risultati migliori e più precisi dall'IA.

Comprendere lo zero-shot

Prompting zero-shot significa assegnare a un LLM un compito senza fornire esempi di come svolgerlo.

  • Si fa affidamento esclusivamente sulle conoscenze preaddestrate dell'LLM.
  • Il prompt contiene solo le istruzioni e i dati di input.
  • È efficace per compiti semplici e comuni che l'LLM ha probabilmente incontrato durante l'addestramento.

Zero-shot in azione: classificare

Ecco un esempio di zero-shot. Chiediamo all'LLM di classificare il sentiment di un testo senza mostrargli classificazioni precedenti del sentiment.

Provi a eseguire questo esempio:

def call_llm_api(prompt):
    # In a real scenario, this would call an LLM API.
    # For this example, we simulate a response.
    if "sentiment" in prompt.lower():
        return "Sentiment: Positive"
    return "LLM Response: Could not process."

# Our zero-shot prompt
zero_shot_prompt = "Classify the sentiment of 'The movie was fantastic!'"

print(f"Prompt: {zero_shot_prompt}")
print(f"LLM Output: {call_llm_api(zero_shot_prompt)}")

Zero-shot: estrarre informazioni

Il prompting zero-shot è ottimo anche per estrarre informazioni specifiche da un testo.

È sufficiente indicare all'LLM cosa cercare, e questo utilizzerà le proprie conoscenze generali per trovarlo.

def call_llm_api(prompt):
    if "name and age" in prompt.lower():
        return "Name: Alice, Age: 30"
    return "LLM Response: Information not found."

# Another zero-shot prompt example
zero_shot_prompt = "Extract the name and age from 'My name is Alice and I am 30 years old.'"

print(f"Prompt: {zero_shot_prompt}")
print(f"LLM Output: {call_llm_api(zero_shot_prompt)}")

Limiti dello zero-shot

Per quanto potente, il prompting zero-shot presenta alcuni limiti:

  • Ambiguità: i compiti soggetti a interpretazione possono produrre risultati incoerenti.
  • Novità: se il compito o il concetto è molto nuovo o di nicchia, l'LLM potrebbe avere difficoltà senza esempi.
  • Complessità: per il ragionamento in più passaggi o una formattazione altamente specifica, le sole istruzioni potrebbero non essere sufficienti.

Introduzione al prompting few-shot

Il prompting few-shot supera i limiti dello zero-shot includendo direttamente nel prompt alcuni esempi di input e output.

  • Questi esempi guidano l'LLM sul compito, sullo stile o sul formato desiderati.
  • È come mostrare a uno studente alcuni esercizi risolti prima di chiedergli di risolverne uno nuovo.
  • Questa tecnica migliora significativamente le prestazioni nei compiti complessi o ambigui.

Few-shot in azione: riscrivere

In questo caso, forniamo un esempio di come riformulare una frase usando la forma attiva. Questo aiuta l'LLM a comprendere la trasformazione specifica che desideriamo.

Osservi come l'esempio chiarisce il compito:

def call_llm_api(prompt):
    if "active voice" in prompt.lower() and "ball was thrown" in prompt.lower():
        return "Output: The boy threw the ball."
    return "LLM Response: Could not rephrase."

# Our few-shot prompt with one example
few_shot_prompt = """Rephrase into active voice:
Input: The mouse was chased by the cat.
Output: The cat chased the mouse.

Rephrase into active voice:
Input: The ball was thrown by the boy."""

print(f"Prompt: {few_shot_prompt}")
print(f"LLM Output: {call_llm_api(few_shot_prompt)}")

Few-shot: generazione di codice

Il prompting few-shot è estremamente utile per generare codice o rispettare formati di output specifici.

Mostrando un esempio del codice desiderato, ad esempio la firma e il corpo di una funzione, l'LLM può replicare meglio quella struttura.

def call_llm_api(prompt):
    if "function to add" in prompt.lower():
        return "def add(a, b):\n    return a + b"
    return "LLM Response: Code not generated."

# Few-shot prompt for code generation
few_shot_prompt = """Generate a Python function:
Example 1:
Input: Function to multiply two numbers.
Output:
def multiply(a, b):
    return a * b

Example 2:
Input: Function to add two numbers."""

print(f"Prompt: {few_shot_prompt}")
print(f"LLM Output:\n{call_llm_api(few_shot_prompt)}")

Scegliere la tecnica giusta

Come si decide tra zero-shot e few-shot?

  • Zero-shot: è ideale per compiti semplici e ben compresi, per i quali sono sufficienti le conoscenze generali dell'LLM. È conciso e consente di risparmiare spazio in termini di token.
  • Few-shot: è ideale per compiti complessi, ricchi di sfumature o personalizzati, che richiedono formati o stili specifici. Fornisce una guida fondamentale e migliora la precisione, ma utilizza più token.

Verifica di zero-shot/few-shot

Quale tecnica di prompting è generalmente più adatta ai compiti semplici e ben definiti che non richiedono esempi specifici?

Riepilogo: la potenza del prompting

Ha imparato a conoscere due tecniche fondamentali di prompting:

  • Il prompting zero-shot utilizza solo istruzioni e sfrutta le vaste conoscenze dell'LLM per i compiti semplici.
  • Il prompting few-shot aggiunge esempi al prompt, offrendo una guida fondamentale per ottenere risultati più complessi, ricchi di sfumature o personalizzati.

Padroneggiare queste tecniche consente di interagire più efficacemente con gli LLM e di ottenere i risultati desiderati!

Domande Frequenti

La lezione «Prompting zero-shot e few-shot» è gratuita?

Sì — il testo completo di «Prompting zero-shot e few-shot» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso AI Prompt Engineering, passa a CoddyKit PRO. Il corso AI Prompt Engineering include 3 lezioni in totale.

Cosa imparerò in «Prompting zero-shot e few-shot»?

Scopra come ottenere risposte senza esempi (zero-shot) o fornendo alcuni esempi illustrativi (few-shot). Eserciti AI Prompt Engineering con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare AI Prompt Engineering?

Non è richiesta alcuna esperienza precedente. AI Prompt Engineering su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 3.

Quanto tempo richiede la lezione «Prompting zero-shot e few-shot»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione AI Prompt Engineering?

Sì. Ogni lezione AI Prompt Engineering include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Comprendere le capacità degli LLM
  2. Prompting zero-shot e few-shot
  3. Role-playing e prompt con persona
← Torna a AI Prompt Engineering