EsempioscriptintermediateEseguibileschema-validation
Validazione: garantisce che gli output degli LLM corrispondano a schemi di dati predefiniti.
Questo componente fornisce validazione dello schema e parsing di dati strutturati per assicurare formati coerenti per il codice a valle.
Fatti chiave
- Livello
- intermediate • Blocchi di Costruzione degli Agenti
- Runtime
- Python • API OpenAI
- Pattern
- Structured extraction with explicit acceptance criteria
- Interazione
- Sandbox live • Script
- Aggiornato
- 14 marzo 2026
Naviga questo esempio
Libreria
Sfoglia gli esempiRiapri la libreria completa per confrontare pattern vicini e percorsi collegati.Interazione
Esegui ora nel sandboxProva l'interazione direttamente nella superficie guidata di questo esempio.Sorgente
Apri codice completoLeggi l'implementazione reale, i punti evidenziati e i requisiti runtime.MCP
Chiama via MCPUsa la stessa risorsa dentro agenti, export deterministici e setup MCP.
Principi collegati
4-validation.py
python
"""
Validation: Ensures LLM outputs match predefined data schemas.
This component provides schema validation and structured data parsing to guarantee consistent data formats for downstream code.
More info: https://platform.openai.com/docs/guides/structured-outputs?api-mode=responses
"""
from openai import OpenAI
from pydantic import BaseModel
class TaskResult(BaseModel):
"""
More info: https://docs.pydantic.dev
"""
task: str
completed: bool
priority: int
def structured_intelligence(prompt: str) -> TaskResult:
client = OpenAI()
response = client.responses.parse(
model="gpt-4o",
input=[
{
"role": "system",
"content": "Extract task information from the user input.",
},
{"role": "user", "content": prompt},
],
text_format=TaskResult,
)
return response.output_parsed
if __name__ == "__main__":
result = structured_intelligence(
"I need to complete the project presentation by Friday, it's high priority"
)
print("Structured Output:")
print(result.model_dump_json(indent=2))
print(f"Extracted task: {result.task}")
Principi correlati
- P1delegationProgettare per la delega piuttosto che per la manipolazione direttaProgettare esperienze attorno all'assegnazione del lavoro, l'espressione dell'intento, l'impostazione dei vincoli e la revisione dei risultati, piuttosto che richiedere agli utenti di eseguire manualmente ogni passaggio.Apri il principio →
- P5delegationSostituire la magia implicita con modelli mentali chiariIl prodotto dovrebbe aiutare gli utenti a comprendere cosa il sistema può fare, cosa sta facendo attualmente, cosa non può fare e quali condizioni governano il suo comportamento.Apri il principio →
- P7trustStabilire fiducia attraverso l'ispezionabilitàGli utenti dovrebbero essere in grado di esaminare come è stato prodotto un risultato quando la fiducia, la responsabilità o la qualità della decisione sono importanti.Apri il principio →
- P8trustRendere espliciti i passaggi, le approvazioni e i blocchiQuando il sistema non può procedere, la ragione dovrebbe essere immediatamente visibile, insieme a qualsiasi azione richiesta dall'utente o da un'altra dipendenza.Apri il principio →
- P10delegationOttimizzare per la guida, non solo per l'inizioIl sistema dovrebbe supportare gli utenti non solo nell'avvio dei compiti, ma anche nella guida, nel perfezionamento, nella riprioritizzazione e nella correzione del lavoro mentre è in corso.Apri il principio →