Padroneggia l'ingegneria dei prompt per l'IA e la visione artificiale. Impara a ottimizzare gli input per gli LLM e i modelli multimodali come Ultralytics per ottenere risultati superiori.
Il prompt engineering è il processo strategico di progettazione, perfezionamento e ottimizzazione del testo di input per guidare i modelli di intelligenza artificiale (AI) verso la produzione di output accurati, pertinenti e di alta qualità. Inizialmente diventato famoso con l'ascesa dei modelli linguistici di grandi dimensioni (LLM) come GPT-4, questa disciplina si è evoluta fino a diventare una competenza fondamentale per interagire con sistemi di IA generativa in varie modalità, tra cui testo, immagini e video. Anziché alterare i pesi del modello sottostante attraverso il retraining, il prompt engineering sfrutta le conoscenze esistenti del modello inquadrando l'attività in modo che il sistema possa comprenderla al meglio, colmando il divario tra l'intenzione umana e l'esecuzione della macchina.
Fondamentalmente, l'ingegneria dei prompt si basa sulla comprensione di come i modelli di base elaborano il contesto e le istruzioni. Un prompt ben costruito riduce l'ambiguità fornendo vincoli espliciti, formati di output desiderati (come JSON o Markdown) e informazioni di base rilevanti . I professionisti avanzati utilizzano tecniche come il few-shot learning, in cui l'utente fornisce alcuni esempi di coppie input-output all'interno del prompt per dimostrare il modello desiderato.
Un'altra strategia efficace è quella del chain-of-thought prompting, che incoraggia il modello a suddividere compiti di ragionamento complessi in passaggi intermedi. Ciò migliora significativamente le prestazioni nelle query che richiedono un elevato uso della logica. Inoltre, ottimizzare l'uso della finestra di contesto, ovvero il limite alla quantità di testo che un modello può elaborare contemporaneamente, è fondamentale per mantenere la coerenza nelle interazioni lunghe. Risorse esterne, come la guida di OpenAI sulla progettazione dei prompt, sottolineano l'importanza del perfezionamento iterativo per gestire efficacemente i casi limite.
Sebbene spesso associata al testo, la progettazione di prompt sta diventando sempre più importante nella visione artificiale (CV). I moderni modelli multimodali e i rilevatori a vocabolario aperto, come YOLO, consentono agli utenti di definire gli obiettivi di rilevamento utilizzando l' elaborazione del linguaggio naturale (NLP) anziché ID di classe numerici predefiniti.
In questo contesto, il "prompt" è una descrizione testuale dell'oggetto (ad esempio, "persona che indossa un casco rosso "). Questa capacità, nota come apprendimento zero-shot, consente ai sistemi di detect oggetti su cui non sono stati esplicitamente addestrati, sfruttando le associazioni apprese tra caratteristiche visive e incorporamenti semantici . Per gli ambienti di produzione ad alta velocità in cui le classi sono fisse, gli sviluppatori potrebbero eventualmente passare da modelli prompt a modelli efficienti e riqualificati come YOLO26, ma l'ingegneria prompt rimane la chiave per una rapida prototipazione e flessibilità.
L'ingegneria rapida genera valore in diversi settori industriali consentendo un'automazione flessibile e intelligente:
L'esempio seguente mostra come l'ingegneria del prompt viene applicata in modo programmatico utilizzando il metodo
ultralytics pacchetto. Qui utilizziamo un modello YOLO che accetta prompt di testo per definire quali oggetti cercare
dinamicamente, in contrasto con modelli standard come
YOLO26 che utilizzano elenchi di classi fissi.
from ultralytics import YOLO
# Load a YOLO-World model capable of interpreting text prompts
model = YOLO("yolov8s-world.pt")
# Apply prompt engineering to define custom classes dynamically
# The model maps these text descriptions to visual features
model.set_classes(["person in safety vest", "forklift", "blue hardhat"])
# Run inference on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Show results - the model only detects objects matching the prompts
results[0].show()
Per implementare efficacemente soluzioni di IA tramite la Ultralytics , è importante distinguere il prompt engineering da tecniche di ottimizzazione simili: