Vai al contenuto principale

Assistenti di workflow

Gli assistenti di workflow sono una forma avanzata di assistenti AI in AI-School. Invece di una conversazione libera senza una struttura fissa, l’utente segue una sequenza definita di passaggi — guidata dall’AI. Questo rende possibile automatizzare processi complessi e multi-step, come un’intera lezione dall’inizio alla fine.

Che cos’è un assistente di workflow?​

Un assistente di workflow consiste in un workflow visivo di nodi (nodes) collegati da frecce (edges). Ogni nodo esegue un compito specifico, come:

  • Inizio / Fine — il punto di partenza e il punto finale del workflow
  • Valuta — analizza il contesto e salva informazioni strutturate nella memoria
  • Condizione — valuta un’espressione e indirizza il flusso nella direzione corretta
  • LLM — richiama un modello linguistico per un compito specifico (opzionale: attende l’input dell’utente)
  • Approvazione — pone una domanda sì/no e indirizza il flusso in base alla risposta
  • Collega — collega i percorsi senza un compito AI o un output visibile, utile per mantenere ordinato un workflow
  • Subagent - esegue lo stesso compito in parallelo per più elementi, per esempio uno studente per ogni round di correzione

Il workflow salva automaticamente il proprio stato dopo ogni passaggio. Quando l’utente inserisce un input, il workflow riprende esattamente da dove si era interrotto.

Creare un assistente di workflow​

Apri Assistenti e scegli la scheda Assistenti di workflow. Fai clic sulla scheda in alto su Nuovo workflow e scegli Crea o modifica workflow con AI, Workflow vuoto, workflow n8n oppure una delle preset. In Avvio rapido puoi avviare subito una preset o scegliere Usa come modello.

Puoi anche convertire un tuo assistente: nel menu della scheda dell’assistente scegli Apri come workflow. Otterrai una nuova bozza non condivisa; l’assistente originale resterà disponibile. Controlla e testa i passaggi proposti prima di pubblicare.

Gli assistenti di workflow, come quelli normali, possono essere condivisi con gruppi e colleghi, anche dall’editor con il pulsante Condividi nella barra degli strumenti. Quando li condividi con i colleghi, AI-School può inviare automaticamente una notifica via e-mail così che i destinatari sappiano che l’assistente di workflow è disponibile.

Avviare un workflow n8n​

Oltre agli assistenti di workflow guidati dall’AI, AI-School può anche avviare un workflow n8n tramite un webhook. Un workflow n8n non apre una chat: senza campi il webhook viene richiamato direttamente, con campi viene prima aperto un modulo. Gli amministratori lo creano tramite Assistenti → Assistenti di workflow → Nuovo workflow → workflow n8n.

Leggi la spiegazione completa nella pagina workflow n8n.

Impostazioni generali​

Durante la creazione o modifica di un workflow imposti le impostazioni generali tramite il pannello delle impostazioni. Queste impostazioni valgono per l’intero workflow:

  • Modello: Il modello AI utilizzato da tutti i passaggi. Scegli un solo modello per tutto il workflow.
  • Tools: Quali strumenti sono disponibili nel workflow (ad es. Registrazione, Cerca SLO, Cerca su Internet). Gli strumenti attivati sono disponibili per tutti i passaggi LLM, a meno che tu non li disattivi per singolo passaggio.
  • Server MCP: Collegamenti esterni disponibili nel workflow.
  • Documenti: File che i passaggi LLM possono consultare.
  • Immagini: Immagini che i passaggi LLM possono usare.

Puoi anche impostare se l’utente può aggiungere autonomamente file o immagini durante la chat.

File nei moduli del workflow​

Un workflow può chiedere all’utente di fornire file, ad esempio un compito, un modello di correzione o un elaborato consegnato da uno studente. In una richiesta di file l’utente può:

  • caricare un nuovo file
  • scegliere un file esistente da Gestione file
  • determinare per ogni richiesta quale file appartiene a quale parte

I nuovi file vengono prima elaborati. Il workflow può proseguire in modo affidabile solo quando l’elaborazione è completata. Se una richiesta di file obbligatoria è ancora in corso o è fallita, l’utente deve attendere oppure scegliere/caricare di nuovo il file.

I file aggiunti tramite il modulo del workflow diventano disponibili come file dell’assistente per quella chat. Non vengono selezionati automaticamente come normali file della chat.

Impostazioni per singolo passaggio​

In ogni passaggio LLM puoi disattivare strumenti, file e immagini abilitati globalmente per quel passaggio specifico. Questo ti offre un controllo preciso su quali risorse siano disponibili in ciascun passaggio. A livello di passaggio non puoi aggiungere nulla che non sia già abilitato globalmente.

L’editor del workflow mostra un diagramma di flusso visivo con nodi e connessioni

Usare una preset

Per la maggior parte degli utenti, una preset è il miglior punto di partenza. Puoi poi adattarla alle tue esigenze.

Esempio: l’assistente Lezione​

L’assistente Lezione è una preset pronta all’uso, progettata appositamente per l’istruzione. Guida l’utente dall’inizio alla fine di una lezione completa: dalla definizione dell’argomento e del livello, agli obiettivi di apprendimento e alla spiegazione, fino agli esercizi e a un riepilogo finale.

Panoramica del workflow​

L’assistente Lezione è composto dai seguenti passaggi (nodi), in ordine:

Spiegazione passo per passo​

1. Inizio​

Il workflow si avvia non appena l’utente apre la chat e invia il suo primo messaggio.


2. Triage: Argomento della lezione (nodo valuta)​

Cosa fa? L’AI analizza il messaggio dell’utente e cerca di determinare:

  • Argomento — di cosa tratta la lezione? (ad es. "legge della leva")
  • Livello — base, intermedio o avanzato?
  • Info sufficienti? — c’è abbastanza contesto per definire subito gli obiettivi di apprendimento?

Questo risultato viene salvato nella memoria del workflow.


3. Info sufficienti? (nodo condizione)​

Se ci sono informazioni sufficienti (voldoende_info = true), il workflow va direttamente a Definire gli obiettivi di apprendimento.

Se le informazioni mancano, il workflow va a Raccogliere informazioni.


4. Raccogliere informazioni (nodo LLM, in attesa di input)​

Cosa fa? L’AI pone all’utente domande mirate per individuare l’argomento e il livello desiderato. Non appena l’utente ha risposto, il flusso torna a Triage: Argomento della lezione per rivalutare.

Esempio di conversazione:

🤖 "Che bello averti qui! Per aiutarti al meglio, ti faccio un paio di domande brevi: 1. Su quale argomento vuoi una lezione? 2. A che livello sei? (base / intermedio / avanzato)"

👤 "2° anno havo fisica, legge della leva"

Dopo questa risposta, il triage rivaluta e determina: voldoende_info = true.


5. Definire gli obiettivi di apprendimento (nodo LLM)​

Cosa fa? L’AI prepara un elenco numerato di massimo 4 o 5 obiettivi di apprendimento concreti e misurabili per l’argomento e il livello indicati.

Esempio di output:

Obiettivi di apprendimento per Legge della leva – 2° anno havo (intermedio):

  1. Sai formulare la legge della leva e spiegare la formula F₁ × r₁ = F₂ × r₂.
  2. Sai eseguire calcoli in cui determini forze sconosciute o lunghezze dei bracci.
  3. Sai applicare la legge della leva a esempi pratici (forbici, carriola, altalena).
  4. Sai spiegare la differenza tra una leva di primo, secondo e terzo genere.

6. Approvare gli obiettivi di apprendimento (nodo approvazione)​

Cosa fa? L’AI chiede all’utente se gli obiettivi di apprendimento proposti vanno bene e se la lezione può iniziare.

  • Sì → vai avanti con la lezione
  • No → torna a Definire gli obiettivi di apprendimento per riformularli

L’utente può visualizzare gli obiettivi di apprendimento nel menu a discesa nella chat.


7. Triage: Obiettivi di apprendimento (nodo valuta)​

Cosa fa? Dopo ogni ciclo di lezione, l’AI controlla se l’utente padroneggia tutti gli obiettivi di apprendimento. Si tratta di una valutazione rigorosa: l’utente deve dimostrare di comprendere ogni obiettivo.


8. Tutti gli obiettivi compresi? (nodo condizione)​

  • Sì → vai a Agente esercizi
  • No → vai a Agente lezione per il prossimo obiettivo di apprendimento

9. Agente lezione (nodo LLM, in attesa di input)​

Cosa fa? L’AI insegna l’argomento passo dopo passo, sulla base degli obiettivi di apprendimento definiti. Dopo ogni parte, l’AI pone una domanda di verifica della comprensione. Solo quando l’utente dimostra di aver compreso l’obiettivo, la lezione prosegue.

Dopo l’input dell’utente, il flusso torna a Triage: Obiettivi di apprendimento per valutare i progressi.

Esempio:

🤖 "Cominciamo con l’obiettivo 1: la legge della leva. Una leva è una barra rigida che ruota attorno a un punto di appoggio. La forza necessaria dipende dalla distanza dal punto di appoggio. La formula è:

F₁ × r₁ = F₂ × r₂

Sai spiegare cosa significano r₁ e r₂ in questa formula?"


10. Agente esercizi (nodo LLM, in attesa di input)​

Cosa fa? L’AI propone almeno una domanda di esercizio per ogni obiettivo di apprendimento. L’utente risponde alle domande, dopodiché il flusso passa a Agente feedback.


11. Agente feedback (nodo LLM, in attesa di input)​

Cosa fa? L’AI fornisce un feedback dettagliato e personale sugli esercizi svolti. Per ogni obiettivo di apprendimento si discute cosa è andato bene e dove è possibile migliorare. Il tono è onesto ma incoraggiante.


12. Concludere? (nodo approvazione)​

L’AI chiede se l’utente vuole concludere o esercitarsi ancora.

  • Sì → vai a Riepilogo
  • No → torna a Agente esercizi per un nuovo round

13. Riepilogo (nodo LLM)​

Cosa fa? L’AI fornisce un riepilogo chiaro di tutti i contenuti trattati, seguito da un feedback personale e motivante sulle prestazioni.


14. Fine​

Il workflow si conclude con un messaggio finale incoraggiante.

"Ottimo lavoro durante questa lezione e alla prossima!"


Conversazione di esempio completa​

Qui sotto trovi una conversazione di esempio abbreviata con l’assistente Lezione sulla legge della leva, 2° anno havo:

ChiMessaggio
👤 Utenteciao
🤖 Assistente LezioneChe bello averti qui! Su quale argomento vuoi una lezione e a che livello?
👤 Utente2° anno havo fisica, legge della leva
🤖 Assistente LezionePerfetto! Ho preparato 4 obiettivi di apprendimento. Vuoi iniziare la lezione con questi obiettivi?
👤 Utentesì
🤖 Assistente LezioneIniziamo con l’obiettivo 1: la legge della leva. (spiegazione + domanda di comprensione)
👤 Utente(risposta alla domanda di comprensione)
🤖 Assistente Lezione(proseguimento della lezione per obiettivo 2, 3, 4 ...)
🤖 Assistente LezioneHai completato tutti gli obiettivi di apprendimento! È ora degli esercizi...
👤 Utente(risposte alle domande di esercizio)
🤖 Assistente Lezione(feedback personale) Vuoi concludere o fare ancora qualche esercizio?
👤 Utenteconcludere
🤖 Assistente Lezione(riepilogo + chiusura motivante)

Visualizzare l’avanzamento​

Quando conversi con un assistente di workflow, puoi visualizzare l’avanzamento tramite il pulsante Workflow a destra dell’input della chat. Facendo clic su questo pulsante si apre un pannello con:

  • Tutti i passaggi del workflow (i nodi di condizione e nota non vengono mostrati)
  • Lo stato di ogni passaggio:
    • ⬜ Attesa: Non ancora raggiunto
    • 🔄 Attivo: In esecuzione
    • ✅ Completato: Terminato con successo
    • ⏸️ In attesa di input: In attesa di una risposta dell’utente
    • ⏭️ Saltato: Non eseguito (ad es. per via di una condizione)
    • ❌ Errore: Si è verificato un errore

Creare un nodo di triage​

Un nodo valuta (nodo di triage) estrae informazioni dalla conversazione e le salva nella memoria del workflow. I nodi di condizione possono poi leggere questi valori per indirizzare il flusso nella direzione corretta.

Configurazione​

  1. Aggiungi un nodo Valuta al workflow.
  2. Scrivi un system prompt che descriva cosa l’AI deve analizzare e quali conclusioni deve trarre.
  3. Definisci lo schema di output con i campi:
    • Nome campo: La chiave con cui richiamare il valore in seguito (ad es. voldoende_info, niveau, route).
    • Tipo: string (testo), number (numero), boolean (sì/no) o enum (scelta tra valori fissi). Con enum indica i valori consentiti separati da virgole.
  4. Imposta il num. max. iterazioni per evitare che il nodo continui a girare senza limiti.

Valori di memoria​

I valori salvati sono accessibili con il prefisso state. nei nodi di condizione, per esempio state.voldoende_info o state.niveau.

Configurare un nodo di condizione​

Un nodo di condizione valuta espressioni basate sulla memoria del workflow e indirizza il flusso verso il passaggio successivo corretto.

Branch​

Un nodo di condizione ha uno o più branch:

  • Se (if): La prima condizione valutata.
  • Altrimenti se (else-if): Condizioni aggiuntive opzionali.
  • Altrimenti (else): Il percorso predefinito se nessuna condizione è vera.

Scrivere espressioni​

Le espressioni si scrivono in CEL (Common Expression Language):

Comportamento desideratoEspressione
Il campo è truestate.voldoende_info == true
Il campo ha un valore fissostate.niveau == "gevorderd"
Confronto numericostate.score > 7
Più condizionistate.niveau == "basis" && state.score < 5

Impostare le connessioni​

Disegna dal nodo di condizione connessioni separate per ogni branch verso il nodo successivo corretto. L’editor mostra un’uscita distinta sul nodo per ciascun branch.

Usare un nodo di collegamento​

Un nodo di collegamento non esegue alcun compito AI. Il nodo passa semplicemente il workflow al passaggio successivo. Usa questo nodo quando vuoi unire in modo ordinato più percorsi o quando hai bisogno di un passaggio tecnico intermedio nel diagramma di flusso.

Esempi pratici:

  • collegare un percorso che salta gli script al passaggio in cui vengono scelte le immagini
  • far convergere più percorsi di approvazione nello stesso passaggio successivo
  • rendere un workflow lungo più leggibile senza usare un nodo nota come punto di collegamento

Un nodo di collegamento deve avere almeno una connessione in ingresso e una in uscita. Il nodo non viene mostrato come passaggio di contenuto separato nell’avanzamento del workflow.

Usare un nodo subagent​

Un nodo subagent è pensato per compiti che devono essere eseguiti più volte nello stesso modo. Il nodo riceve un elenco di elementi dalla memoria del workflow e avvia per ciascun elemento un’esecuzione separata con un contesto isolato.

Applicazioni pratiche:

  • correggere un compito per ogni studente
  • creare un’analisi per ogni documento
  • generare un riepilogo per ogni modulo compilato
  • registrare un rapporto distinto per ogni sezione

Configurazione​

  1. Assicurati che un precedente nodo di valutazione salvi un elenco di elementi nella memoria del workflow, ad esempio leerlingen_json.
  2. Aggiungi un nodo Subagent.
  3. Imposta l’origine degli elementi.
  4. Imposta eventualmente un campo etichetta, in modo che l’avanzamento sia riconoscibile.
  5. Imposta il numero massimo di esecuzioni parallele.
  6. Indica sotto quale chiave di memoria devono essere salvati i risultati.

Il contesto del subagent contiene sempre solo l’elemento che viene elaborato in quel momento. Fai quindi in modo che il prompt faccia riferimento esplicitamente all’elemento corrente ed evita che l’AI elabori più elementi contemporaneamente.

Registrazione nei workflow​

Lo strumento Registrazione è particolarmente utile nei workflow. Con esso l’AI può salvare automaticamente risultati intermedi o finali come documenti modificabili nel pannello laterale.

Impostazione​

  1. Attiva lo strumento Registrazione tramite le impostazioni generali del workflow.
  2. Aggiungi nel system prompt del passaggio LLM desiderato un’istruzione per registrare determinati contenuti. Attiva lo strumento per quel passaggio (oppure lascialo attivo globalmente).

Esempio​

In un passaggio sugli obiettivi di apprendimento puoi scrivere nel system prompt:

"Definisci gli obiettivi di apprendimento per l’argomento e il livello indicati. Registra poi immediatamente gli obiettivi con lo strumento Registrazione, con il titolo 'Obiettivi di apprendimento'."

L’utente può visualizzare i documenti registrati tramite il pulsante Registrazione (📄) nella barra degli strumenti della chat.

Ripristinare una conversazione​

Se sei nel mezzo di una lezione e vuoi tornare a un punto precedente della conversazione, puoi farlo tramite il pulsante di ripristino (l’icona della cronologia) accanto a un messaggio precedente. Questo elimina tutti i messaggi successivi a quel punto e riprende il workflow da quel momento esatto.

Attenzione

Il ripristino è definitivo — i messaggi eliminati non sono più disponibili.

Modificare un workflow​

Come amministratore puoi aprire e modificare un workflow esistente nell’editor del workflow. Fai clic su un nodo per cambiarne la configurazione, aggiungi nuovi nodi tramite il menu del tasto destro oppure trascina le connessioni verso altri nodi.

Per un workflow completamente nuovo puoi partire da una tela vuota o da un’altra preset.

Creare o modificare un workflow con AI​

Discuta il tuo workflow con l’AI. Le modifiche valide appariranno nell’editor. Controlla e testa il risultato prima di salvarlo o pubblicarlo.