Filtra un array per conservare solo gli elementi che corrispondono a una condizione. Usalo dopo una query RAG, una richiesta HTTP o un Loop che produce una lista, per restringere i risultati prima di passarli a un altro step.
filterQuando un workflow riceve un grande array di elementi โ risultati di ricerca, ordini, utenti, voci di log โ spesso ne serve solo un sottoinsieme. Il nodo Filter permette di ridurre quell'array ai soli elementi rilevanti usando una semplice condizione, prima di passarlo a un Loop, un Agent o qualsiasi step successivo.
Si specifica un nome di proprieta su ogni elemento dell'array e lo si confronta con un valore usando uno degli operatori integrati. La condizione viene valutata una volta per elemento. Gli elementi per cui risulta vera vengono conservati; tutti gli altri vengono scartati. Il risultato filtrato e i conteggi degli elementi sono poi disponibili per gli step successivi tramite la sintassi standard di output dello step.
| Campo | Stato | Descrizione |
|---|---|---|
| Array | Obbligatorio | Riferimento all'array da filtrare, ad es. {{ search.output.results }}. |
| Condition Field | Obbligatorio | Il nome della proprieta su ogni elemento dell'array da valutare, ad es. score. |
| Operator | Obbligatorio | Operatore di confronto โ equals, not_equals, greater_than, less_than, contains, not_contains, is_null, is_not_null, is_empty, is_not_empty. |
| Value | Opzionale | Il valore con cui confrontare. Non necessario per is_null, is_not_null, is_empty, is_not_empty. |
Il nodo Filter espone i seguenti campi nel suo output dello step:
| Campo | Tipo | Descrizione |
|---|---|---|
items | array | Array filtrato contenente solo gli elementi che corrispondono alla condizione. |
count | number | Numero di elementi nell'array filtrato. |
excluded_count | number | Numero di elementi rimossi dal filtro. |
search) che restituisce un array di
oggetti risultato, ciascuno con una proprieta score.
{{ search.output.results }}, Condition Field su
score, Operator su greater_than e
Value su 0.8.
{{ filter.output.count }} sia greater_than 0
prima di continuare.
{{ filter.output.items }} โ l'agent ora elabora solo
corrispondenze ad alta affidabilita.
items e un array vuoto e count e 0. Usa un Logic Gate dopo il Filter per gestire il caso di risultato vuoto in modo appropriato.is_null o is_not_null per filtrare gli elementi dove un campo potrebbe essere assente, evitando errori che si verificherebbero con un confronto diretto.