Descrizione
Validate structured input against JSON Schema + business rules. Returns valid/errors/normalized. Top 2026: schema, custom rules, strict mode, error path, normalize-on-fix.
agent_validator · ai · Utility · Disponibile · v1.1.0
Validate structured input against JSON Schema + business rules. Returns valid/errors/normalized. Top 2026: schema, custom rules, strict mode, error path, normalize-on-fix.
Campi mostrati nell’editor quando si configura il nodo. Generati direttamente dal NodeDefconfigFields.
| Campo | Tipo | Required | Default | Descrizione |
|---|---|---|---|---|
schemaJSON Schema di validazione | code | si | — { "type": "object", "required": ["email", "totale"], "properties": { "email": { "type": "string", "pattern": "^[^@]+@[^@]+$" }, "totale": { "type": "number", "minimum": 0 }, "tipo": { "type": "string", "enum": ["contratto","fattura","preventivo"] } } } | JSON Schema standard (draft-07). Definisce type/required/properties/pattern/enum/min/max. L'agent verifica che l'input rispetti lo schema e ritorna errors[] con path JSONPath. |
businessRulesRegole di business (opzionale) | string (multiline) | no | — es. "Se totale > 10000, customer_vat deve essere presente" "Se tipo=preventivo, deadline deve essere entro 30 giorni" | Regole in linguaggio naturale che vanno OLTRE il JSON Schema. L'agent le applica una per riga. |
strictModeStrict mode (rifiuta campi extra) | boolean | no | false | Se true, qualsiasi field non dichiarato nello schema produce un errore. Se false, campi extra sono ignorati. |
normalizeAuto-normalize (trim/lowercase/parse) | boolean | no | true | Se true, prova fix non-distruttivi prima di failare: trim stringhe, lowercase email, parse number da stringa numerica. Output in "normalized". |
onInvalidBehaviorCosa fare se invalido | enumcontinuehaltbranch | no | continue | continue=passa output al next con valid:false; halt=ferma workflow con errore; branch=usa con logic_if su output.valid per branching. |
providerLLM provider (opzionale, override) | enumliaraanthropicopenaigeminimistralgroqopenrouterollama | no | — | Vuoto = usa il default da Settings → AI Providers. Selezionalo SOLO per override locale (es. account diverso per questo nodo). |
apiKeyAPI key (override) | string (encrypted) | no | — | Vuoto = usa la chiave di Settings → AI Providers. Liara è free-tier (nessuna key necessaria). |
modelModello (override) | string | no | — es. claude-sonnet-4-5 | Vuoto = default del provider. Es. claude-sonnet-4-5, gpt-4o, gemini-2.0-flash, nha-v1. |
baseUrlBase URL (per Ollama / self-hosted) | string | no | — http://localhost:11434 | — |
extraContextContesto aggiuntivo (opzionale) | expression | no | — Esempi di output desiderato, glossario di dominio, regole speciali... | Testo aggiunto al prompt PRIMA dell'input. Utile per "few-shot examples" o vincoli che il system prompt non copre. |
Snippet JSON del nodo come compare nel workflow. I valori sono derivati daidefaultValue e dai parametri required.
{
"id": "node-agent_validator-1",
"defId": "agent_validator",
"label": "Agent: Schema Validator",
"config": {
"schema": "{\n \"type\": \"object\",\n \"required\": [\"email\", \"totale\"],\n \"properties\": {\n \"email\": { \"type\": \"string\", \"pattern\": \"^[^@]+@[^@]+$\" },\n \"totale\": { \"type\": \"number\", \"minimum\": 0 },\n \"tipo\": { \"type\": \"string\", \"enum\": [\"contratto\",\"fattura\",\"preventivo\"] }\n }\n}",
"strictMode": false,
"normalize": true,
"onInvalidBehavior": "continue"
}
}Disponibile da subito in tutti i piani FlowForge. Provalo gratis senza carta di credito.
Inizia gratisSfoglia tutti i nodi