Tag: prompt-engineering, llm, system-prompt, few-shot, chain-of-thought, rag
Livello: intermedio
TL;DR: Tecniche operative per strutturare istruzioni, contesti, vincoli e output deterministici nei modelli linguistici.
Zero-shot: richiesta diretta di esecuzione senza esempi forniti nel contesto.
Few-shot: inclusione di esempi di input e output per guidare formato e stile.
Chain-of-thought: forzatura del ragionamento passo-passo prima della risposta finale per compiti complessi.
System prompt: definizione di ruolo, vincoli operativi, contesto di esecuzione e policy di sicurezza.
Delimitatori: separatori espliciti per isolare istruzioni di sistema, dati utente e documenti esterni.
Structured output: imposizione di schemi precisi come JSON Schema o formati serializzati.
Prompt injection: vulnerabilità in cui l'input utente altera o aggira le istruzioni di sistema.
Context window: limite di token gestibili dal modello, che impone pruning e strategie RAG mirate.
Parametri di sampling: temperature controlla la casualità; top_p imposta il campionamento per probabilità cumulata.
Q: Come riduci le allucinazioni in compiti analitici complessi?R: Isolo il contesto con delimitatori, impongo l'approccio chain-of-thought per validare ogni passaggio logico e richiedo citazioni esatte dei dati forniti senza extrapolazioni.
Q: Quando conviene usare few-shot invece del fine-tuning?R: Uso few-shot quando il formato o il tono devono essere standardizzati rapidamente senza costi di training, passando al fine-tuning solo se servono latenza minima o volumi scalabili di dati stilistici.
Q: Come gestisci la generazione di JSON valido e deterministico?R: Definisco lo schema formale nel prompt di sistema, attivo il constraint JSON mode o lo schema enforcement e aggiungo un esempio minimale di output atteso.
Istruzioni negative: dire cosa non fare invece di specificare chiaramente il comportamento atteso.
Ambiguità nei delimitatori: mescolare input non fidato con le istruzioni di sistema.
Token explosion: inviare contesto ridondante saturando la finestra e degradando l'attenzione.
Output non parsabile: omissione di vincoli sintattici stretti che produce markdown o testo libero attorno a dati strutturati.
Confusione tra temperature e top_p: modificare entrambi contemporaneamente rendendo non riproducibili i test di sampling.
{
"role": "system",
"content": "Sei un analista dati. Rispondi solo in formato JSON valido conforme allo schema:\n{\"status\": \"success\" | \"error\", \"code\": number, \"message\": string}."
}
Markdown
### Contesto
xml
<documento id="doc_1">
Dati tecnici del rilascio v2.1.0...
</documento>
### Istruzioni
Analizza esclusivamente il testo compreso nei tag . Estrai i bug risolti elencandoli punto per punto.
```