AI Prompt Engineering · Lezione

Introduzione al framework DSPy

Perché DSPy sostituisce i prompt scritti manualmente con signature dichiarative

Lezione 1 di 413 passaggi

Introduzione al framework DSPy è una lezione AI Prompt Engineering gratuita su CoddyKit. Questa è la lezione 1 di 4. 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 4 lezioni in totale.

La fragilità dei prompt scritti a mano

I prompt creati manualmente sono fragili. Una sola modifica a una parola può cambiare radicalmente il comportamento del modello, e ciò che funziona con GPT-4 spesso non funziona con Claude o Gemini.

Gli ingegneri dei prompt trascorrono ore a perfezionare la formulazione, per poi scoprire che le modifiche non si generalizzano a set di dati o versioni del modello diversi. Questa fragilità è il problema principale che DSPy risolve.

Che cos'è DSPy

DSPy (Declarative Self-improving Python) è un framework di Stanford che considera la creazione dei prompt un problema di compilazione, anziché un'attività artigianale.

Anziché scrivere: "Think step by step and answer the following question...", si dichiara che cosa si desidera ottenere (una signature) e si lascia che DSPy stabilisca come formulare il prompt per ottenere il risultato dal modello.

Installazione di DSPy

DSPy è disponibile su PyPI. Per iniziare, lo si installi e si configuri un backend per un modello linguistico.

pip install dspy-ai

# Basic setup in Python
import dspy

# Configure the language model
lm = dspy.LM('openai/gpt-4o-mini', api_key='sk-...')
dspy.configure(lm=lm)

print('DSPy configured successfully')

Idea fondamentale: separare la logica dalla creazione dei prompt

Nel prompting tradizionale, la logica del programma e il testo del prompt sono strettamente intrecciati. Se si desidera modificare il modo in cui il modello ragiona, è necessario riscrivere la stringa del prompt.

DSPy separa questi aspetti: si scrive la logica Python usando i moduli e DSPy genera (e ottimizza) automaticamente il testo effettivo del prompt durante una fase di compilazione.

Signature: dichiarare l'intento

Una signature in DSPy è una dichiarazione tipizzata degli input e degli output. Indica che cosa si desidera ottenere, non come ottenerlo.

DSPy usa la signature per costruire un prompt appropriato al momento della compilazione: non è necessario occuparsi manualmente del prompt engineering.

import dspy

# Declare: given a question, produce an answer
class SimpleQA(dspy.Signature):
    """Answer questions with short factual responses."""
    question: str = dspy.InputField()
    answer: str = dspy.OutputField(desc='A concise factual answer')

# DSPy turns this declaration into a real prompt automatically
print(SimpleQA.__doc__)

Moduli: blocchi di ragionamento componibili

DSPy fornisce moduli che implementano schemi di ragionamento comuni. Li si usa come i layer di PyTorch, componendoli in programmi più grandi.

  • dspy.Predict — predizione diretta
  • dspy.ChainOfThought — aggiunge passaggi di ragionamento
  • dspy.ReAct — ragionamento + uso di strumenti
import dspy

class SimpleQA(dspy.Signature):
    """Answer questions with short factual responses."""
    question: str = dspy.InputField()
    answer: str = dspy.OutputField()

# Three different module strategies for the same signature
predict_module = dspy.Predict(SimpleQA)
cot_module = dspy.ChainOfThought(SimpleQA)

# Call just like a function
result = predict_module(question='What is the capital of France?')
print(result.answer)

Che cosa fa la compilazione

La compilazione è il processo durante il quale DSPy ottimizza i prompt del programma usando un set di addestramento e una funzione metrica.

Prima della compilazione, DSPy usa un prompt predefinito di base. Dopo la compilazione, DSPy ha trovato esempi few-shot, istruzioni migliori o dimostrazioni chain-of-thought che massimizzano il valore della metrica. I prompt ottimizzati vengono salvati e riutilizzati durante l'inferenza.

Un programma DSPy minimo

Ecco un programma DSPy minimo completo: una signature, un modulo e una chiamata. Non viene scritta alcuna stringa di prompt.

import dspy

# 1. Configure LM
lm = dspy.LM('openai/gpt-4o-mini', api_key='sk-...')
dspy.configure(lm=lm)

# 2. Define signature
class Summarize(dspy.Signature):
    """Summarize text into one sentence."""
    text: str = dspy.InputField()
    summary: str = dspy.OutputField()

# 3. Create module
summarizer = dspy.Predict(Summarize)

# 4. Use it
result = summarizer(text='DSPy is a framework for programming language models.')
print(result.summary)

DSPy e il prompt engineering tradizionale

La differenza filosofica fondamentale:

  • Tradizionale: si scrive il testo del prompt → il modello lo esegue → si modifica manualmente il testo
  • DSPy: si scrive la logica Python → l'ottimizzatore trova il testo del prompt migliore → il modello esegue il prompt ottimizzato

DSPy considera i prompt dettagli implementativi di cui dovrebbe occuparsi un compilatore, proprio come un compilatore trasforma Python in bytecode.

Quando conviene usare DSPy

DSPy è particolarmente efficace quando si dispone di:

  • Una metrica chiara da ottimizzare (accuratezza, F1, valutazione degli utenti)
  • Un set di addestramento con esempi (anche 20-50 esempi possono essere sufficienti)
  • Una pipeline con più passaggi di ragionamento che interagiscono tra loro

Per prompt semplici e usati una sola volta, il sovraccarico di DSPy non vale la pena. Per le pipeline LLM di produzione con obiettivi misurabili, può trasformare radicalmente il processo.

Panoramica dell'ecosistema DSPy

DSPy non è soltanto un wrapper per API: è un ecosistema completo:

  • Signatures: dichiarazione di I/O
  • Modules: strategie di ragionamento
  • Optimizers: BootstrapFewShot, MIPRO, COPRO
  • Evaluate: ambiente di valutazione integrato
  • Assertions: vincoli dichiarativi sugli output

Esplorerà ciascuno di questi elementi nelle lezioni successive del corso.

Verifica delle conoscenze: concetto fondamentale di DSPy

Qual è il modo principale in cui DSPy si differenzia dalla scrittura manuale dei prompt?

Riepilogo: fondamenti del framework DSPy

DSPy affronta la fragilità dei prompt scritti manualmente trattando la creazione dei prompt come un problema di compilazione. Si scrivono signature (dichiarazioni tipizzate di input e output) e le si compongono con moduli come Predict e ChainOfThought. Un ottimizzatore trova quindi automaticamente il testo del prompt migliore usando i dati di addestramento e la metrica forniti. Il risultato è una pipeline di prompt portabile, verificabile e migliorabile automaticamente, senza prompt engineering manuale.

Gratis per iniziare

Impara AI Prompt Engineering con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
53
Lezioni
199

Domande Frequenti

La lezione «Introduzione al framework DSPy» è gratuita?

Sì — il testo completo di «Introduzione al framework DSPy» è 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 4 lezioni in totale.

Cosa imparerò in «Introduzione al framework DSPy»?

Perché DSPy sostituisce i prompt scritti manualmente con signature dichiarative 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 1 di 4.

Quanto tempo richiede la lezione «Introduzione al framework DSPy»?

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. Introduzione al framework DSPy
  2. Definizione di signature e moduli
  3. Compilazione e ottimizzazione dei prompt
  4. Valutazione delle pipeline DSPy
← Torna a AI Prompt Engineering