<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Site-Server v@build.version@ (http://www.squarespace.com) on Thu, 09 Apr 2026 20:51:34 GMT
--><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://www.rssboard.org/media-rss" version="2.0"><channel><title>Articoli - Avvocati e Mac</title><link>https://avvocati-e-mac.it/blog/</link><lastBuildDate>Mon, 22 Dec 2025 09:35:42 +0000</lastBuildDate><language>it-IT</language><generator>Site-Server v@build.version@ (http://www.squarespace.com)</generator><description><![CDATA[<p>Blog aggiornato pi&ugrave; o meno settimanalmente con articoli e guide pratiche relative all'utilizzo del Mac per l'avvocato. In alcuni casi soprattutto quando l'argomento &egrave; di carattere pi&ugrave; generale (ad esempio PCT o la sicurezza per gli avvocati online) gli articoli potranno essere utili anche per gli utenti Windows.</p>]]></description><item><title>Assistenti IA a Riga di Comando nel Mondo Legale: Una Guida Pratica (OfficeHour)</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 22 Dec 2025 10:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/assistenti-ia-a-riga-di-comando-nel-mondo-legale-una-guida-pratica-officehour</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:694910eea500f4196e4e35c9</guid><description><![CDATA[In questo articolo scritto dall’IA e basato su quanto mostrato nella mia 
OfficeHour del 19/12/25 ti parlo in dettaglio degli assistenti IA a riga di 
comando e del loro utilizzo nel mondo legale.

Leggi tutto…]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<center>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen src="https://www.youtube.com/embed/AaRmBA9GCFs?si=kOSRx-2-3Ytrkhdr&amp;wmode=opaque" width="560" data-embed="true" frameborder="0" title="YouTube video player" height="315"></iframe>
</center><blockquote>
<p>Questo “articolo” è stato scritto utilizzando la trascrizione della OfficeHour e lievemente rivisto da me. La mia idea è quella di dare anche un articolo da leggere a chi non si vuole vedere l'oretta di OfficeHour. Buona lettura.</p>
</blockquote><p>Se ti stai chiedendo come l'intelligenza artificiale possa davvero trasformare il tuo lavoro quotidiano da avvocato, lascia che ti introduca a un mondo che forse ancora non conosci: quello degli assistenti IA a riga di comando. In questo articolo ti mostro come utilizzare questi strumenti potenti per creare un flusso di lavoro che ti permetta di lavorare in modo più efficiente, organizzato e produttivo.</p><p>Gli <strong>assistenti IA a riga di comando</strong> rappresentano un'evoluzione importante rispetto alle semplici chat online che probabilmente già conosci. Non si tratta solo di fare domande e ricevere risposte: questi sistemi possono interagire direttamente con i tuoi file, ricordare il contesto dei tuoi progetti, e diventare veri e propri collaboratori digitali che ti aiutano a gestire attività complesse.</p><h2>1. Cosa sono gli assistenti ia a riga di comando e perché dovresti usarli</h2><p>Prima di addentrarci nei dettagli tecnici, è importante capire cosa intendiamo quando parliamo di "assistenti IA a riga di comando" e perché potrebbero fare la differenza nel tuo lavoro quotidiano.</p><p>Quando pensiamo all'intelligenza artificiale, la maggior parte di noi immagina interfacce web come ChatGPT o Claude: apri il browser, scrivi una domanda, ricevi una risposta. Questi strumenti sono certamente utili, ma hanno dei limiti significativi nel contesto professionale. Non possono accedere direttamente ai tuoi file, non mantengono memoria del tuo lavoro tra una sessione e l'altra, e soprattutto richiedono di caricare documenti su server esterni.</p><p>Gli assistenti IA a riga di comando funzionano in modo diverso. Si tratta di programmi che esegui direttamente sul tuo computer, attraverso il <a href="https://support.apple.com/guide/terminal/welcome/mac">Terminale</a> (quella finestra nera con il testo bianco che forse hai intravisto qualche volta sul tuo Mac). Questi strumenti possono leggere e scrivere file nella cartella in cui stai lavorando, ricordare conversazioni precedenti attraverso un sistema di sessioni (che vedremo oltre).</p><p>La capacità di questi sistemi di integrarsi completamente nel tuo flusso di lavoro, leggendo materiali di riferimento e scrivendo bozze direttamente nelle cartelle del tuo progetto, trasforma l'IA da semplice strumento di consultazione a vero e proprio assistente di studio.</p><h2>2. Il Setup Iniziale: Installare e Configurare Gemini CLI</h2><p>Partiamo dalle basi pratiche. Per utilizzare questi assistenti devi innanzitutto installarli sul tuo computer. In questo articolo mi concentro su <a href="https://geminicli.com/">Gemini CLI</a>, lo strumento a riga di comando sviluppato da Google per interagire con i modelli Gemini. Ho scelto Gemini CLI per questa dimostrazione per due motivi principali: </p><ol>
<li>attualmente offre un taglio gratuito molto generoso, e </li>
<li>supporta finestre di contesto enormi (fino a un milione di token), il che significa che può gestire contemporaneamente grandi quantità di documenti e informazioni.</li>
</ol><p>L'installazione su Mac avviene attraverso <a href="https://brew.sh/">Homebrew</a>, un gestore di pacchetti che semplifica enormemente l'installazione di software da riga di comando. <a href="https://avvocati-e-mac.it/blog/2019/8/14/scaricare-tutti-o-quasi-i-programmi-da-installare-fuori-dallappstore-con-homebrew-cask">Se non hai ancora Homebrew installato, è il momento di farlo</a>: è uno strumento indispensabile per chi vuole sfruttare appieno le potenzialità del proprio Mac.</p><p>Una volta che hai Homebrew pronto, installare Gemini CLI è semplicissimo. Apri il Terminale e digita il comando <code>brew install gemini-cli</code>. Il sistema scaricherà e installerà tutto il necessario. Per verificare che l'installazione sia andata a buon fine, puoi semplicemente digitare <code>gemini</code> e premere invio: se tutto è andato come doveva, vedrai comparire l'interfaccia dell'assistente.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png" data-image-dimensions="1978x1372" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=1000w" width="1978" height="1372" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c5d3e2e-fe10-4fba-975a-9b5accb908be/SCR-20251222-jjjw.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Un aspetto importante da considerare è che questi strumenti vengono aggiornati frequentemente, con nuove funzionalità e miglioramenti. Per aggiornare Gemini CLI alla versione più recente, utilizzi sempre Homebrew con il comando <code>brew upgrade gemini-cli</code>. Durante la dimostrazione che ho effettuato, per esempio, il sistema mi ha avvisato che era disponibile una nuova versione e l'ho aggiornata in tempo reale, passando dalla versione precedente alla 0.213, insieme all'aggiornamento di OpenCode da 164 a 169.</p><h2>3. Lavorare in Modalità Sicura: La Sandbox</h2><p>Una delle prime cose che devi configurare quando inizi a utilizzare Gemini CLI è la modalità di esecuzione. <strong>Per impostazione predefinita, questi assistenti potrebbero avere accesso a tutto il tuo sistema</strong>, il che rappresenta un rischio non indifferente. Immagina cosa potrebbe succedere se l'IA, interpretando male un comando, iniziasse a modificare o cancellare file importanti in altre cartelle del tuo computer.</p><p>Per questo motivo, Gemini CLI offre una modalità "sandbox" (letteralmente "scatola di sabbia"), che limita l'accesso dell'assistente alla sola cartella di lavoro in cui ti trovi. Quando avvii Gemini CLI con il flag <code>-s</code>, attivi questa protezione. Il comando completo diventa quindi <code>gemini -s</code>, e l'assistente ti informerà che sta utilizzando il sandbox di sistema (nel caso di macOS, fa riferimento al <a href="https://theapplewiki.com/wiki/Dev:Seatbelt">seabelt di Apple, il sistema di sicurezza integrato</a>).</p><p>Questa precauzione è particolarmente importante nel contesto legale. Lavorando su cartelle di progetto specifiche, con la modalità sandbox attiva, puoi essere certo che l'IA non andrà a leggere o modificare documenti in altre parti del tuo sistema. È una barriera di sicurezza che ti permette di sperimentare e lavorare con maggiore tranquillità.</p><p>Prima di avviare l'assistente, assicurati sempre di trovarti nella cartella corretta. Nel Terminale, puoi spostarti tra le cartelle usando il comando <code>cd</code> (change directory). Un trucchetto molto utile su Mac è quello di digitare <code>cd</code> seguito da uno spazio, e poi trascinare la cartella desiderata dalla finestra del Finder direttamente nel Terminale con la <a href="https://www.macsolutionsplus.com/reveal-mac-window-proxy-icons-permanently-with-this-setting/">proxy icon</a>: il sistema inserirà automaticamente il percorso completo della cartella, evitandoti di doverlo digitare manualmente.</p><h2>4. Il Cuore del Sistema: File di Configurazione e Contesto</h2><p>La vera potenza degli <em>assistenti IA a riga di comando</em> emerge quando li configuri correttamente con <em>system prompt</em> che definiscono come devono comportarsi. Invece di dover spiegare ogni volta all'IA cosa deve fare e come, puoi creare un file di configurazione che viene letto automaticamente a ogni avvio.</p><p>Nel caso di Gemini CLI, questo file si chiama <code>gemini.md</code> e viene posizionato nella cartella di lavoro del tuo progetto. Si tratta di un semplice file markdown che contiene le istruzioni permanenti per l'assistente. Puoi pensarlo come a un "manuale di comportamento" che l'IA consulta prima di iniziare a lavorare.</p><p>Nel file di configurazione puoi specificare molti aspetti del funzionamento dell'assistente. Per esempio, puoi descrivere qual è l'obiettivo del progetto su cui stai lavorando, indicare dove si trovano i materiali di riferimento a cui l'IA dovrebbe attingere, definire lo stile di scrittura da utilizzare, e stabilire procedure specifiche per determinate attività. Nel mio caso, quando lavoro alla preparazione di un corso sull'intelligenza artificiale per avvocati, il file di configurazione contiene la descrizione del progetto, i riferimenti a tutte le cartelle con i materiali di studio, e le regole per gestire le sessioni di lavoro e la creazione delle <em>todo list</em>.</p><p>Una caratteristica fondamentale è che questo file deve essere sincronizzato tra diversi sistemi se vuoi mantenere coerenza. Per esempio, se utilizzi sia Gemini CLI che <a href="https://claude.com/product/claude-code">Claude Code</a>, <a href="https://opencode.ai/">OpenCode</a> o altri assistenti, dovrai avere copie identiche del file di configurazione (chiamate rispettivamente <code>gemini.md</code>, <code>claude.md</code>, <code>agents.md</code>) per garantire che tutti gli assistenti si comportino allo stesso modo. Nel mio workflow, ho configurato il sistema in modo che ogni volta che modifico uno di questi file, gli altri vengono automaticamente aggiornati dall’LLM di turno.</p><p>Il file di configurazione può essere scritto sia in italiano che in inglese. Personalmente preferisco l'inglese per le istruzioni tecniche, perché è la lingua "nativa" dei modelli linguistici e garantisce maggiore precisione nell'interpretazione. Tuttavia, per sezioni dove inserisco dialoghi o informazioni specifiche in italiano, non c'è problema: i modelli moderni gestiscono benissimo il code-switching tra lingue diverse.</p><h2>5. Materiali di Riferimento: Costruire la Base di Conoscenza</h2><p>Uno dei concetti più importanti quando lavori con assistenti IA a riga di comando è quello di "contesto". Come probabilmente sai già, altrimenti ne ho parlato in <a href="https://avvocati-e-mac.it/blog/2025/12/9/differenze-tra-strumenti-ia-generalisti-e-specialistici">questo articolo</a> e <a href="https://avvocati-e-mac.it/blog/2025/3/26/primo-caso-giudiziario-noto-di-avvocato-che-cita-giurisprudenza-inventata-da-chatgpt">questo articolo</a>, i modelli linguistici tendono ad "allucinare" quando non hanno informazioni sufficienti su un argomento, inventando di sana pianta sentenze, articoli di legge o riferimenti che non esistono.</p><p>La soluzione (parziale) a questo problema è fornire all'IA tutti i materiali necessari per lavorare correttamente. Questo approccio si chiama RAG (Retrieval Augmented Generation) e consiste nel dare all'intelligenza artificiale accesso a documenti specifici da cui può estrarre informazioni verificate invece di doverle generare dalla propria "memoria" pre-addestrata.</p><p>Nel contesto degli assistenti a riga di comando, implementare il RAG (una sorta di…) è sorprendentemente semplice: basta creare una cartella dedicata ai materiali di riferimento e indicarla nel file di configurazione. Nel mio workflow, ho una cartella chiamata "materiali di riferimento" che contiene decine di documenti: trascrizioni di podcast, articoli salvati dal web, video di YouTube convertiti in testo, ricerche effettuate con Perplexity, e materiale prodotto da me stesso.</p><p>Quando l'assistente riceve una richiesta, può automaticamente consultare tutti questi file per trovare informazioni pertinenti. Questo è particolarmente potente nel contesto legale. Immagina di avere una cartella con tutte le sentenze rilevanti per un certo tipo di causa, articoli dottrinali, e note preparatorie: l'assistente potrà attingere a tutto questo materiale verificato invece di rischiare di inventare riferimenti inesistenti.</p><p>La raccolta di questi materiali richiede tempo e organizzazione, ma è un investimento che ripaga enormemente. Nel mio caso, quando trovo un video interessante su YouTube riguardo un argomento che sto studiando, utilizzo l'intelligenza artificiale per estrarre la trascrizione e convertirla in un articolo strutturato in markdown. Questo articolo viene poi salvato nella cartella dei materiali di riferimento, diventando una fonte che l'assistente potrà consultare in futuro. Lo stesso vale per articoli web interessanti: usando strumenti come il <a href="https://obsidian.md/clipper">web clipper di Obsidian</a>, posso salvare rapidamente contenuti che poi diventeranno parte della base di conoscenza del progetto.</p><h2>6. Il Sistema delle Sessioni: Memoria Persistente del Tuo Lavoro</h2><p>Una delle differenze più significative tra lavorare con una chat web e utilizzare un assistente a riga di comando è il concetto di sessioni. Quando usi ChatGPT o strumenti simili, ogni conversazione è essenzialmente isolata: puoi tornare a una chat precedente, ma il contesto si perde progressivamente e devi spesso ripetere informazioni.</p><p>Gli assistenti IA a riga di comando risolvono questo problema attraverso le sessioni. Ogni volta che lavori con l'assistente, viene automaticamente creato un file di sessione che registra l'intera conversazione, le decisioni prese, e lo stato del progetto. Questi file vengono salvati nella cartella di lavoro, tipicamente in una sottocartella dedicata, con un nome che include la data.</p><p>La bellezza di questo sistema è che puoi interrompere il lavoro in qualsiasi momento e riprenderlo esattamente da dove l'avevi lasciato, anche giorni dopo. Quando riavvii l'assistente, il sistema legge automaticamente l'ultima sessione e "sa" esattamente a che punto eravate rimasti. Nel mio caso, ho configurato l'assistente in modo che alla semplice parola "ciao" vada a leggere l'ultima sessione, il file to-do del progetto, e mi dia un riassunto completo dello stato dei lavori con i prossimi passi da compiere.</p><p>Questo approccio risolve brillantemente uno dei <strong>problemi più comuni</strong> nel lavoro con l'<strong>IA</strong>: la <strong>perdita di contesto</strong>. Quando lavori su un progetto complesso per giorni o settimane, avere questa memoria persistente significa che l'assistente diventa veramente un collaboratore che "ricorda" tutto quello che avete fatto insieme. Non devi più preoccuparti di ricostruire il contesto ogni volta che riprendi a lavorare.</p><p><strong>Le sessioni sono anche preziose come documentazione</strong>. Puoi sempre tornare indietro e rivedere esattamente cosa è stato discusso, quali decisioni sono state prese, e come il progetto è evoluto nel tempo. Questo è particolarmente utile nel contesto legale, dove la tracciabilità delle decisioni e del processo di lavoro può essere importante.</p><h2>7. Gestione Automatica delle Attività: To-Do List e Workflow</h2><p>Un altro aspetto rivoluzionario di questi sistemi è la capacità di gestire automaticamente le liste di attività da svolgere. Invece di dover mantenere manualmente un elenco di cose da fare, puoi delegare questo compito all'assistente stesso, che terrà traccia di cosa è stato completato e cosa resta da fare.</p><p>Nel mio workflow, ho un file chiamato <code>todo.md</code> che l'assistente aggiorna automaticamente. Questo file contiene tutte le attività relative al progetto, organizzate in modo strutturato. Quando completo una lezione o una sezione del corso, l'assistente segna automaticamente quell'elemento come completato. Quando emergono nuove attività da svolgere, vengono aggiunte alla lista.</p><p>La cosa interessante è che questo non è un semplice elenco statico. Il file to-do può contenere collegamenti ad altri file del progetto, note su cosa manca da fare per ogni attività, e persino suddivisioni in sottosezioni per attività più complesse. L'assistente può consultare questo file per capire autonomamente su cosa dovrebbe concentrarsi successivamente.</p><p>Questo sistema trasforma l'assistente IA in un vero project manager digitale. Invece di dovergli dire ogni volta cosa fare, lui sa già qual è il prossimo passo logico nel progetto. Tu mantieni il controllo strategico, decidendo quali attività devono avere priorità, ma la gestione operativa della lista e il tracciamento dello stato di avanzamento sono completamente automatizzati.</p><h2>8. Workflow di Revisione: Il Metodo dell'Autocritica</h2><p>Un aspetto fondamentale quando si lavora con l'intelligenza artificiale è non fidarsi mai ciecamente del primo output generato. I modelli linguistici, per quanto potenti, possono commettere errori, avere imprecisioni, o semplicemente non cogliere alcune sfumature importanti. Per questo motivo, ho implementato nel mio sistema un workflow di revisione automatica basato sul concetto di "adversarial self-critique" (autocritica avversariale).</p><p>Il principio è semplice ma efficace: <strong>dopo che l'assistente ha generato una prima bozza di contenuto, un secondo passaggio analizza criticamente quel contenuto cercando specificamente punti deboli, errori logici, informazioni mancanti o affermazioni che potrebbero essere imprecise.</strong> Questo secondo passaggio non è semplicemente una rilettura, ma un vero tentativo di confutare e migliorare quanto scritto.</p><p>Nel contesto del <em>legal prompting</em>, questo approccio ricorda molto il metodo che utilizziamo naturalmente quando prepariamo un atto: scriviamo la prima versione, poi la rileggiamo con occhio critico cercando di smontare i nostri stessi argomenti per verificarne la solidità. L'intelligenza artificiale può fare qualcosa di simile, ma in modo strutturato e sistematico.</p><p>Quando l'assistente completa una bozza, gli chiedo esplicitamente di assumere il ruolo di critico e di cercare problemi nel testo appena creato. In base ai risultati di questa analisi critica, viene generata una lista di modifiche da apportare, che l'assistente poi implementa producendo una versione migliorata del documento. Questo processo può anche essere iterato più volte se necessario.</p><p>Ho scoperto questa tecnica attraverso una ricerca su Twitter (ora X) e l'ho poi approfondita usando <a href="https://www.perplexity.ai/">Perplexity</a>. Il risultato è stato così interessante che l'ho integrato direttamente nel mio workflow standard. La qualità dei testi prodotti con questo metodo di doppia revisione è notevolmente superiore rispetto a quella che ottengo con una semplice generazione diretta.</p><h2>9. Integrazione con Altri Strumenti: gli spazi di Perplexity</h2><p>Gli assistenti IA a riga di comando non devono necessariamente lavorare in isolamento. Nel mio workflow, li integro strettamente con altri strumenti di intelligenza artificiale, in particolare <a href="https://avvocati-e-mac.it/blog/2025/7/10/scrittura-aumentata-con-lintelligenza-artificiale">Perplexity</a> per le ricerche approfondite.</p><p>Perplexity è eccellente per fare ricerche su Internet con l'aiuto dell'IA, fornendo risposte con citazioni verificabili. Utilizzo gli <a href="https://www.perplexity.ai/help-center/en/articles/10352961-what-are-spaces">spazi di Perplexity</a> per creare ambienti di ricerca dedicati a specifici argomenti. Per esempio, ho uno <em>Space</em> dedicato alla preparazione del corso sull'intelligenza artificiale per avvocati, dove conduco tutte le ricerche preliminari su argomenti che devo approfondire.</p><p>Il workflow è questo: quando incontro un argomento che voglio esplorare meglio, apro il mio Space dedicato in Perplexity e faccio le domande necessarie. L'IA di Perplexity cerca informazioni su Internet, le organizza, e mi fornisce una sintesi con le fonti. A questo punto, applico anche qui la tecnica dell'autocritica: chiedo a Perplexity di criticare le proprie conclusioni e di cercare controargomentazioni. Questo secondo passaggio spesso rivela limiti o imprecisioni nella prima risposta.</p><p>Una volta completata la ricerca, salvo il risultato come documento markdown e lo inserisco nella cartella dei materiali di riferimento del mio progetto. Da quel momento, l'assistente a riga di comando potrà accedere a quelle informazioni ogni volta che lavoriamo insieme. In questo modo, creo un flusso continuo tra ricerca online (Perplexity), documentazione (file markdown), e produzione di contenuti (assistente IA a riga di comando).</p><p>Questo approccio ibrido sfrutta i punti di forza di ogni strumento: Perplexity eccelle nelle ricerche su Internet con citazioni verificabili, mentre gli assistenti a riga di comando sono superiori nel lavorare con file locali, mantenere il contesto, e produrre documenti strutturati. La chiave è farli collaborare attraverso un sistema di file condivisi.</p><h2>10. Orari e Limiti: Ottimizzare l'Uso dei Servizi Gratuiti</h2><p>Un aspetto pratico importante quando si utilizzano servizi IA gratuiti è comprenderne i limiti e ottimizzare l'utilizzo per evitare di incorrere in blocchi o rallentamenti. Nel caso di Gemini CLI con account gratuito, ho scoperto che ci sono momenti della giornata migliori di altri per lavorare.</p><p>I servizi di Google AI tendono ad avere meno carico durante le ore notturne negli Stati Uniti, che corrispondono alla mattina in Italia. Più specificamente, dalle 6:00 alle 13:00 ora italiana c'è generalmente meno traffico sui server, e questo si traduce in risposte più rapide e minori probabilità di incorrere in limitazioni di rate. Ho scelto di fare la dimostrazione in questa fascia oraria proprio per questo motivo.</p><p>Un altro elemento da considerare è che i limiti di utilizzo per gli account gratuiti si resettano giornalmente. Nel caso di Gemini, questo reset avviene alle 9:00 del mattino ora italiana. Questo significa che se hai esaurito i tuoi token giornalieri lavorando il giorno precedente, alle 9:00 del mattino successivo avrai di nuovo a disposizione la quota completa. Pianificare le attività più intensive tenendo conto di questo reset può fare la differenza tra poter completare un lavoro o doversi fermare a metà.</p><p>Durante la dimostrazione pratica che ho effettuato, ho incontrato proprio questo tipo di limite: dopo aver lavorato per un po' con il modello Gemini 3 Pro, il sistema mi ha avvisato che c'era alta richiesta e non poteva processare ulteriori richieste. In questi casi, ho due opzioni: o aspettare che il carico diminuisca, oppure passare a un modello diverso. Ho scelto la seconda strada, switchando da Gemini 3 Pro a Gemini 2.5 Pro, che è leggermente meno potente ma era disponibile.</p><p>Gemini CLI ti permette di cambiare modello facilmente attraverso i comandi slash. Digitando <code>/model</code>, puoi vedere tutti i modelli disponibili e selezionare quello che preferisci. Nel mio caso, ho accesso anche ai modelli sperimentali perché ho fatto richiesta specifica a Google per il programma di early access. Se utilizzi solo i modelli standard, potresti avere meno opzioni ma anche meno rischi di incorrere in limitazioni.</p><h2>11. Comandi e Prompt Avanzati: Riferimenti ai File</h2><p>Una delle funzionalità più potenti degli assistenti a riga di comando è la possibilità di fare riferimento diretto a file e cartelle nei tuoi prompt. Invece di dover copiare e incollare contenuti, puoi semplicemente indicare all'assistente dove trovare le informazioni che gli servono.</p><p>In Gemini CLI, questo si fa usando la chiocciola seguita dal nome del file o della cartella. Per esempio, se voglio che l'assistente analizzi tutti i materiali nella mia cartella di riferimento, scrivo <code>@materiali di riferimento</code> nel prompt. Il sistema caricherà automaticamente tutti i file in quella cartella (fino ai limiti di contesto del modello) e li userà per rispondere alla mia richiesta.</p><p>Questo meccanismo è incredibilmente pratico quando lavori su progetti complessi con molti documenti. Invece di dover dire all'assistente "vai a leggere questo file, poi quest'altro, poi quest'altro ancora", puoi semplicemente fare riferimento a una cartella intera. L'assistente leggerà tutto il contenuto disponibile e lo utilizzerà come base per il suo lavoro.</p><p>Nel mio caso, quando chiedo all'assistente di sviluppare una nuova lezione del corso, scrivo qualcosa come: "Sviluppa la lezione 5 usando i contenuti in @materiali riferimento". L'assistente andrà a leggere tutti i 40-50 file presenti in quella cartella, estrapolerà le informazioni rilevanti per la lezione 5, e genererà una prima bozza strutturata. Tutto questo senza che io debba specificare singolarmente quali file consultare.</p><p>Ovviamente, più materiale dai all'assistente, più tempo impiegherà a processarlo. Durante la mia dimostrazione, quando ho chiesto di analizzare l'intera cartella dei materiali di riferimento, l'operazione ha richiesto diversi minuti. Ma il risultato è stato una bozza che teneva conto di tutte le fonti disponibili, con riferimenti specifici a quali documenti erano stati consultati.</p><h2>12. Il Paradigma del "Dirigere, Non Eseguire"</h2><p>Tutto questo sistema si basa su un cambio di mentalità fondamentale nel modo in cui approcciamo il lavoro con l'intelligenza artificiale. Non si tratta più di "fare il lavoro" tu stesso, ma di "dirigere il lavoro" che l'IA esegue per tuo conto.</p><p>Questo concetto, che ho trovato in diverse ricerche e che ho integrato nel mio corso, è particolarmente rilevante per gli avvocati. Tradizionalmente, il nostro valore professionale è sempre stato legato alla capacità di eseguire personalmente attività specialistiche: scrivere atti, fare ricerche, analizzare documenti. Con l'avvento dell'intelligenza artificiale, parte di queste attività esecutive può essere delegata, e il nostro valore si sposta verso capacità di ordine superiore: definire la strategia, verificare la qualità del lavoro, esercitare il giudizio professionale.</p><p>Nel contesto degli assistenti a riga di comando, questo si traduce nel creare sistemi che lavorano autonomamente seguendo le tue indicazioni. Tu definisci l'obiettivo (nel file di configurazione), fornisci i materiali necessari (nella cartella di riferimento), imposti il workflow (attraverso le istruzioni per le sessioni), e poi lasci che l'assistente faccia il lavoro pesante di generazione della prima bozza.</p><p>Il tuo ruolo diventa quello di supervisore esperto: verifichi che i materiali di riferimento siano completi e accurati, controlli che le bozze generate siano corrette e pertinenti, e affini progressivamente il sistema attraverso feedback. Ma l'attività esecutiva di base - leggere decine di documenti, estrarre informazioni rilevanti, organizzarle in una struttura coerente, scrivere una prima bozza - la fa l'IA.</p><p>Questo non significa che il lavoro diventi più facile o che richieda meno competenza. Al contrario, dirigere efficacemente un assistente IA richiede una comprensione profonda sia del dominio legale sia del funzionamento dell'intelligenza artificiale. Devi sapere quali informazioni sono necessarie, come strutturare il contesto, come formulare richieste efficaci, e soprattutto come verificare criticamente gli output. Ma una volta che hai sviluppato queste competenze, la produttività aumenta in modo significativo.</p><h2>13. Sicurezza e Riservatezza: Considerazioni Pratiche</h2><p>Quando si parla di utilizzare intelligenza artificiale nel contesto legale, la <strong>questione della sicurezza e della riservatezza dei dati è assolutamente centrale</strong>. Gli assistenti IA a riga di comando offrono vantaggi significativi in questo senso rispetto alle soluzioni cloud, ma richiedono comunque attenzione e configurazione appropriata.</p><p>Quando l'assistente legge un file per rispondere a una domanda, il testo di quel file viene inviato all'API del servizio (Google nel caso di Gemini).</p><p>Tuttavia, è importante capire che <strong>anche con gli assistenti IA a riga di comando</strong>, se utilizzi modelli online (come Gemini, Claude, GPT) <strong>stai comunque inviando dati a server esterni</strong>. La differenza rispetto alle chat web è che hai controllo molto maggiore su cosa viene inviato e quando. Ma il rischio zero esiste solo con modelli completamente locali che tuttavia, mentre scrivo, non hanno le capacità sufficienti –&nbsp;a meno di avere computer dedicati che costano 10 se non centinaia di migliaia di euro.</p><p>Per questo motivo, quando lavori su materiale realmente riservato - atti che contengono dati sensibili dei clienti, strategie processuali, informazioni confidenziali - la best practice è anonimizzare completamente i documenti prima di farli processare da modelli online. L'anonimizzazione non significa semplicemente togliere i nomi: significa sostituire tutti i riferimenti identificativi con pseudonimi generici, e verificare che nessun elemento del testo permetta di risalire all'identità delle persone coinvolte.</p><p>Nel mio workflow, quando devo far analizzare un atto reale, utilizzo pseudonimi semplici come "Parte A", "Parte B", "Società X", e così via. L'intelligenza artificiale non ha bisogno dei nomi reali per analizzare la struttura logica di un atto o suggerire miglioramenti. Una volta ottenuta la bozza revisionata, posso facilmente sostituire gli pseudonimi con i nomi reali usando le funzioni di trova e sostituisci del mio editor di testo.</p><h2>14. Costi e Sostenibilità del Sistema</h2><p>Un aspetto che rende questi sistemi particolarmente attraenti è la sostenibilità economica. A differenza dei costosi abbonamenti a software specializzati per il mondo legale, gli assistenti a riga di comando possono essere utilizzati con costi molto contenuti o addirittura gratuitamente, almeno per volumi di lavoro moderati.</p><p>Gemini CLI, per esempio, offre un tier gratuito che per molti utilizzi professionali è più che sufficiente. Durante una sessione di lavoro di un'ora, come quella che ho documentato, ho consumato circa 2 milioni di token in input e generato 22.000 token in output. Tutto questo è rientrato nei limiti gratuiti, anche se ho dovuto gestire alcuni momenti di alta richiesta passando a modelli meno caricati.</p><p>Esiste anche la possibilità di utilizzare servizi come OpenRouter, che permettono di pagare solo per l'utilizzo effettivo senza abbonamenti mensili. In questo caso, i costi sono davvero minimi: una sessione di lavoro intensa può costare pochi centesimi di dollaro. Questo modello è particolarmente conveniente se l'utilizzo è sporadico o se vuoi testare diversi modelli senza impegnarti in abbonamenti multipli.</p><p>La vera spesa, se decidi di andare verso soluzioni completamente locali per massimizzare la privacy, è nell'hardware. Modelli locali potenti richiedono computer con molta RAM e buone capacità di calcolo. Un Mac Studio con configurazione adeguata può costare diverse migliaia di euro.</p><h2>In conclusione</h2><p>Gli assistenti IA a riga di comando rappresentano un'evoluzione significativa nel modo in cui possiamo utilizzare l'intelligenza artificiale nel lavoro legale. Rispetto alle semplici chat web, offrono controllo maggiore, integrazione più profonda con il tuo workflow, e capacità di mantenere contesto e memoria tra sessioni di lavoro. La curva di apprendimento iniziale può sembrare ripida, soprattutto se non hai familiarità con il Terminale e gli strumenti a riga di comando, ma l'investimento vale assolutamente la pena.</p><p>Inizia con esperimenti su progetti non critici, familiarizza con i concetti base, e progressivamente integra questi strumenti nel tuo lavoro quotidiano. Mantieni sempre un occhio critico sugli output generati, verifica attentamente i risultati, e non dimenticare mai le questioni di riservatezza quando lavori con dati sensibili. Ma se applicati correttamente, questi sistemi possono davvero trasformare la tua produttività e permetterti di concentrarti sugli aspetti più qualificanti del lavoro legale, delegando all'IA le attività esecutive ripetitive.</p><p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>.<br>Ti avvertirò dei nuovi articoli che pubblico (oltre ai <a href="https://www.avvocati-e-mac.it/podcast">podcast</a> e video su <a href="https://www.youtube.com/c/AvvocatieMac">YouTube</a>) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho trovato interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9c681a77-8feb-4efc-a79d-8f28a26261de/2025-12-19+OfficeHour.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Assistenti IA a Riga di Comando nel Mondo Legale: Una Guida Pratica (OfficeHour)</media:title></media:content></item><item><title>Ho fatto scrivere un atto di costituzione in appello dall’IA…</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Thu, 11 Dec 2025 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/12/11/ho-fatto-scrivere-un-atto-di-costituzione-in-appello-dallia</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:6937e98fd895414c5eb721be</guid><description><![CDATA[In questo video ti mostro un flusso di lavoro utilizzato con gli assistenti 
IA da riga di comando per creare in “autonomia“ un atto.

Leggi e guarda tutto…]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Nella <a href="https://avvocati-e-mac.it/podcast/69">puntata 69 del mio podcast Compendium</a> ti ho parlato degli assistenti IA a riga di comando e del fatto che  li stavo testando.</p><p>Oggi, in questo video, ti presento un primissimo risultato positivo.</p>

  
    <center>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen src="https://www.youtube.com/embed/hEy1zYUWcSE?si=DFKMQ2zrJH_Ay_p-" width="560" frameborder="0" title="YouTube video player" height="315"></iframe>
</center>
  

<h2>1. Alcune considerazioni</h2>
<p>A scanso di equivoci segnalo che, seppur l’atto è di una causa vera, la costituzione in appello reale non l’ho fatta scrivere all’IA (anche se ho utilizzato alcune ricerche per scriverlo).</p>
<p>Quello che ti ho mostrato in video è una <strong>prova di concetto</strong> di un sistema (ancora da rifinire) per automatizzare nella maggior parte possibile la creazione di un atto con l’ausilio dell’IA.</p>
<p>Secondariamente LLM che mostro è ancora Gemini 2.5 e non la versione 3 (a cui non ho ancora accesso via Gemini-CLI).</p>
<h3>1.1 Gli LLM non sono ancora in grado di scrivere da zero un atto</h3>
<p>Quello che ti ho mostrato nel video è un flusso avanzato di lavoro che riprende il mio modo di lavorare e, più in generale, il modo di lavorare di un avvocato e lo traspone in un flusso di lavoro possibile per gli LLM.</p>
<p>È un esempio di c.d. <strong>context engineering</strong>: ho creato dei prompt specifici per ogni singola fase ed ogni fase ha creato il contenuto (contesto) per quella successiva.</p>
<p>Fatte queste premesse il risultato ottenuto, seppure corretto, non è perfetto.</p>
<p>Prendilo come un atto scritto da un praticante.</p>
<p>Altra considerazione da tenere presente è che l’LLM ha correttamente controbattuto alla tesi avversaria, ma non si è spinto oltre (come ho fatto invece io nell’atto reale). </p>
<p>I limiti sono ancora evidenti.</p>
<h3>1.2 Flusso di lavoro utilizzabile da qualsiasi assistente IA a riga di comando</h3>
<p>Anche se nel video ho mostrato l’utilizzo di <a href="https://geminicli.com">Gemini-CLI</a>, questo flusso di lavoro funziona con qualsiasi sistema; quindi anche <a href="https://claudecode.io">Claude Code</a> e <a href="https://opencode.ai">OpenCode</a>.</p>
<p>Attualmente non ho ancora deciso qual’è il migliore (forse non ne esiste uno migliore) e mi sto tenendo aperta la strada per utilizzarli tutti e 3.</p>
<p>Nel caso di <em>Gemini-CLI</em> ho potuto svolgere il flusso di lavoro direttamente con la <strong>versione gratuita</strong>; se sei interessato a sperimentare, ti consiglio ti usare Gemini-CLI, basta un account Google e, mentre scrivo, la prova gratuita è molto generosa.</p>
<h3>1.3 Situazione semplice</h3>
<p>Altra considerazione da tenere presente è che la vicenda, a livello giuridico, era relativamente semplice. Questo ha sicuramente aiutato Gemini a risolvere in modo corretto il lavoro. </p>
<p>Inoltre ho usato la sentenza e l’atto d’appello (opportunamente anonimizzati) e nessun altro documento. Questo per due motivi:</p>
<ol>
<li>Mi ha reso la vita più semplice (per l’esperimento) in quanto ho dovuto anonimizzare solo 2 documenti;</li>
<li>I dati fattuali e le principali argomentazioni giuridiche erano facilmente desumibili dai 2 documenti, questo ha ovviamente semplificato il compito all’LLM.</li>
</ol>
<p>Appena avrò tempo farò altri esperimenti con casi più complessi ma come ti dicevo quello che ti ho mostrato è una prova del sistema e del fatto che funzioni. Ho già in mente varie migliorie ed aggiunte.</p>
<h2>2. Lo script “auto-configurante”</h2>
<p>La cosa di cui sono più orgoglioso è lo script di auto-configurazione del sistema, che ho fatto creare sempre da un LLM.</p>
<p>Creare e progettare il sistema nel suo complesso infatti era la cosa più difficile e tediosa ed in questo modo con un semplice comando a terminale è possibile avere tutti i prompt configurati correttamente e nelle apposite cartelle. Se sei interessato a testarlo <a href="https://www.icloud.com/iclouddrive/0a8aJiNb8f4_DSYNHMd-urTJg#install_agents_v3">QUI</a> trovi il link per scaricare l’ultima versione.</p>
<h3>2.1 Dovute avvertenze</h3>
<p>Se ti cimenti nei test, tuttavia, alcune parole di avvertimento.</p>
<p><strong>Questi sistemi lavorano direttamente sul tuo computer</strong>: questo significa che da una parte sono molto comodi ma, dall’altra, significa che <strong>possono</strong> (quantomeno potenzialmente) <strong>leggere tutti i documenti sul tuo computer e potenzialmente cancellare i file presenti</strong>.</p>
<p>Io ho usato Gemini-CLI con la modalità c.d. <em>sandbox</em>, che vincola il sistema alla cartella in cui è stato lanciato, usa il comando:</p>
<pre><code>gemini -s</code></pre>
<h2>In conclusione</h2>
<p>Spero di averti incuriosito con questo video e relativo articolo. Attualmente è ancora tutto un esperimento ma, per quel che ho potuto fare fino ad ora, i risultato sono molto promettenti.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>.<br>Ti avvertirò dei nuovi articoli che pubblico (oltre ai <a href="https://www.avvocati-e-mac.it/podcast">podcast</a> e video su <a href="https://www.youtube.com/c/AvvocatieMac">YouTube</a>) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho trovato interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/62f49bf8-2fe1-41e8-98aa-dafd36fd2ee5/Ho+fatto+scrivere+un+atto+di+costituzione+in+appello+dall%E2%80%99IA.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Ho fatto scrivere un atto di costituzione in appello dall’IA…</media:title></media:content></item><item><title>Differenze tra strumenti IA generalisti e specialistici</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Tue, 09 Dec 2025 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/12/9/differenze-tra-strumenti-ia-generalisti-e-specialistici</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:6936e537d73e7b4e7a16ec37</guid><description><![CDATA[In questo articolo ti parlo della differenza tra LLM generalisti e 
specialistici e ti parlo di BuddaLaw, uno strumento specialistico fatto da 
un avvocato per gli avvocati.

Leggi tutto…]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Su <em>Avvocati e Mac</em>, in questo ultimo anno e mezzo,  ho sempre parlato di strumenti di Intelligenza Artificiale generalisti e li ho presi in prestito per il mondo legale.</p><p>ChatGPT, Claude, Gemini e lo stesso Perplexity sono strumenti di IA generalisti: li puoi usare nel mondo legale come in qualsiasi altro contesto (con le dovute accortezze).</p><p>Oggi però ti voglio parlare dell’emergente mondo di <strong>soluzioni specializzate per il diritto</strong>.</p><h2>1. Dovute premesse</h2><p>Da appassionato di informatica mi sono sempre cimentato nel comprendere ed approfondire l’utilizzo degli LLM e su queste pagine ho documentato parte dei miei sforzi e di quanto sono riuscito a fare.<br>Imparare a comprendere gli strumenti è importante per poterli utilizzare nel miglior modo possibile.</p><p>Tuttavia capisco chi voglia utilizzare gli LLM senza troppi pensieri ma con un minimo di sicurezza. </p><p>Lo ricordo sempre, tuttavia, i Modelli Linguistici di Grandi Dimensioni sono degli <strong>strumenti non deterministici</strong> ovvero alla medesima domanda non ti forniranno mai la medesima risposta.</p><p>Secondariamente, essendo degli <strong>strumenti statistici di completamento di un testo</strong>, sono proni ad inventare le proprie risposte (il termine tecnico, ma forviante, è <em>allucinazione</em>). </p><p>Il testo che generano quindi è verosimile ma non “vero”.</p><p><strong>Nel mondo giuridico questo è un evidente problema</strong> e le cronache prima estere e poi anche nazionali sono piene di casi giudiziari in cui gli avvocati hanno scritto memorie citando precedenti inesistenti (a dir il vero pare che anche magistrati lo abbiano fatto).</p><p>Se sei curioso ti segnalo <a href="https://www.damiencharlotin.com/hallucinations/">questo sito</a> in cui sono stati raccolti i tanti episodi a livello mondiale.</p><h2>2. Gli strumenti IA specializzati nel mondo giuridico</h2><p>Proprio per mitigare questo problema (non è possibile ridurre a zero le <em>allucinazioni</em>), nel campo giuridico sono iniziate a comparire soluzioni specializzate.</p><h3>2.1 Come funzionano gli strumenti specializzati?</h3><p>Nel mondo giuridico, per ovviare ai problemi delle soluzioni generaliste, si è optato per creare soluzioni <em>ad hoc</em>.</p><p>Il segreto di queste soluzioni è utilizzare quella che in gergo tecnico viene chiamata <strong>RAG</strong> (<em>Retrival Augmented Generation</em>): la generazione di testo aumentata tramite ricerca di informazioni pertinenti che vengono passate assieme al prompt alla domanda fatta all’LLM.</p><p>Nel mondo giuridico la RAG viene fatta <strong>passando i provvedimenti giurisprudenziali pertinenti alla domanda dell’utente</strong>, ovvero utilizzando le banche dati giuridiche.</p><p>Non è mia intenzione approfondire troppo l’argomento ma, grazie alla capacità di valutare la somiglianza di testo (utilizzando gli <a href="https://www.alessiopomaro.it/embeddings-cosa-sono-esempi/">embeddings</a>) a fronte di una domanda è possibile ricercare testi similari. Utilizzando un database di provvedimenti è possibile trovare quelli più pertinenti alla domanda e conseguentemente utilizzarli per rispondere alla domanda stessa.</p><p>In questo modo si ottengono due risultati positivi:</p><ol>
<li>Le risposte degli LLM sono più centrate e “vere”;</li>
<li>È possibile reperire riferimenti giurisprudenziali corretti.</li>
</ol><p>Dietro le quinte (se il lavoro è fatto bene) il sistema è più complesso di quello che ti ho raccontato ma ciò non cambia il principio di base di funzionamento che è quello che in termini semplici ti ho spiegato.</p><h2>3. Le mie perplessità</h2><p>Se a livello teorico quest’approccio è il migliore, nella pratica mi ha sempre lasciato perplesso.</p><p>Infatti l’implementazione del sistema di RAG è lasciato ad un soggetto terzo (ai suoi sviluppatori software) e questo può portare a problemi.</p><p>Se il sistema di RAG non è ben pensato o i modelli non sono utilizzati correttamente allora il sistema funzionerà male.</p><p>Nel corso di questo anno e mezzo ho visto le varie banche dati giuridiche implementare l’utilizzo dell’IA da tutte le parti ma, le poche volte che ho approfondito, i risultati erano a dir tanto mediocri (a fronte di un significativo aumento del prezzo del “servizio”).</p><p>Secondariamente l’utilizzo di questi sistemi pre-confezionati, se da una parte è molto comodo per l’utente (ammesso e non concesso che funzionino correttamente), dall’altra parte rende trasparente il funzionamento del sistema creando degli analfabeti informatici.</p><p>È per questo motivo che ritengo importante imparare i rudimenti dell’utilizzo degli LLM da parte dei professionisti; solo in questo modo, a prescindere dallo strumento utilizzato, si potranno avere buoni risultati.</p><h2>4. BuddaLaw</h2>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png" data-image-dimensions="2198x1396" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=1000w" width="2198" height="1396" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/735d8667-7b92-47b1-b70f-3ddab2b99394/buddalaw.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Esempio di interfaccia di BuddaLaw]</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Visto che però voglio essere positivo, dopo aver “demolito” gli strumenti specialistici di IA legale, ti voglio presentare un prodotto che trovo fatto bene: <a href="https://www.buddalaw.com">BuddaLaw</a>.</p>
<h3>4.1 Alcune premesse ed avvertenze</h3>
<p>Questo strumento lo sviluppa un caro amico per cui posso essere considerato “di parte”, credo tuttavia che, a prescindere dal legame di amicizia e conoscenza, abbia delle caratteristiche interessanti che ti potrebbero interessare.</p>
<p>Fatte queste dovute premesse ti segnalo quelli che per me sono due motivi di eccellenza di <em>BuddaLaw</em>.</p>
<h3>4.2 Sviluppato da un avvocato</h3>
<p>Lo sviluppatore principale e “mente” del progetto è il collega <strong>avv. Roberto Alma</strong>.</p>
<p>Roberto oltre ad essere avvocato è un appassionato di informatica e recentemente, proprio a fronte della passione, si è laureato in informatica.</p>
<p>Roberto unisce i due mondi, quello legale e quello informatico, cosa più unica che rara in questo contesto dove raramente le competenze informatiche e di programmazione sono slegate da quelle della comprensione delle esigenze della professione legale.</p>
<p>In aggiunta a ciò (per quel che conta) grazie all’amicizia con Roberto ho potuto veder crescere il software e testarlo in vari contesti. Ho il polso della situazione e testato il sistema.</p>
<h3>4.3 Opzione a consumo anziché in abbonamento</h3>
<p>Un'altra <strong>caratteristica interessante di BuddaLaw</strong> è che il suo utilizzo è <strong>a consumo e non in abbonamento</strong>.</p>
<p>A fronte delle richieste fatte consuma N crediti. In questo modo più lo usi e più paghi ma se lo usi solo saltuariamente i costi saranno ridotti e l’investimento iniziale può essere di qualche decina di Euro.</p>
<h3>4.4 Banca dati non solo per l’IA ma anche consultabile dall’utente</h3>
<p>Da ultimo, la banca dati che utilizzano gli LLM per fare la RAG è consultabile anche dall’utente, con il vantaggio della <strong>ricerca semantica</strong>.</p>
<p>La “ricerca semantica” con LLM è un modo di cercare informazioni che non si basa solo sulle parole esatte che digiti, ma sul significato di ciò che chiedi, così da trovarti documenti giuridici rilevanti anche se usano sinonimi, parafrasi o formulazioni diverse dalle tue. È particolarmente utile in ambito legale perché riduce il rischio di perdere casi, norme o clausole importanti solo perché sono scritti con un lessico differente.</p>
<h2>5. Prova gratuita e maggiori crediti con il mio link</h2>
<p>Se ti ho incuriosito, ho un’altra buona notizia per te, puoi <strong>provarlo gratuitamente</strong>. Dopo esserti registrato, infatti, ti verranno <em>regalati 10 crediti</em> iniziali per i test.</p>
<p>Inoltre i <strong>lettori di <em>Avvocati e Mac</em></strong>, usando <a href="https://platform.buddalaw.com/#/signup?invitation_code=avvemac">QUESTO LINK</a> per registrarsi, possono ricevere <strong>30 crediti</strong> ed aver modo di provale in modo più approfondito.</p>
<h4>5.1 Futuri articoli</h4>
<p>Mi riprometto, nei prossimi mesi, di raccontarti più in dettaglio il funzionamento di <a href="https://www.buddalaw.com">BuddaLaw</a> con esempi di utilizzi pratici; il software infatti non offre solo ricerche giurisprudenziali aumentate con IA ma molto, molto, altro ancora… </p>
<h2>In conclusione</h2>
<p>Questo articolo è introduttivo, conto nei prossimi mesi di parlarti più in dettaglio di BuddaLaw e di come poterlo utilizzare nella tua attività professionale.</p>
<p>In futuro spero anche ti poter parlare di altri strumenti IA specializzati; una volta testati in modo approfondito. </p>
<p>Se sei uno sviluppatore ed hai sviluppato uno strumento IA specializzato, sono interessato a testare la tua soluzione: contattami.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>.<br>Ti avvertirò dei nuovi articoli che pubblico (oltre ai <a href="https://www.avvocati-e-mac.it/podcast">podcast</a> e video su <a href="https://www.youtube.com/c/AvvocatieMac">YouTube</a>) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho trovato interessanti.</p>
<p><strong>P.S.</strong> Il link a BuddaLaw è un <strong>referral</strong>: ovvero se e quando deciderai di acquistare dei crediti, senza costi aggiuntivi per te, verranno riconosciuti dei crediti anche a me.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2f76ad7b-37a1-47de-a2d8-b68d7659b7d3/Differenze+tra+strumenti+IA+generalisti+e+specialistici.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Differenze tra strumenti IA generalisti e specialistici</media:title></media:content></item><item><title>Le mie prime impressioni su MiniMax-M2</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 10 Nov 2025 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/11/10/le-mie-prime-impressioni-su-minimax-m2</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:6910eae31540ff4da9e278ab</guid><description><![CDATA[In questo articolo ti parlo dei miei esperimenti con MiniMax-M2 con gli 
assistenti di programmazione AI per la riga di comando.

Leggi tutto…]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<h1>Le mie prime impressioni su MiniMax-M2</h1><p>Recentemente ho iniziato a testare vari modelli di LLM “cinesi”. Sto infatti iniziando ad utilizzare gli assistenti di programmazione AI per la riga di comando, non per scrivere codice ma per fare ricerche giuridiche e scrivere atti. Ho in programma di parlarne sia nel podcast che qui su Avvocati e Mac.</p><p>Oggi però mi voglio soffermare sul nuovo Minimax-M2 che ho utilizzato intensamente negli ultimi giorni.</p><p>Conto che l’articolo sia relativamente breve.</p><h2>1. Perché ho intenzione di fare questo tipo di articolo</h2><p>Facendo i miei esperimenti con gli assistenti di programmazione AI per la riga di comando, mi sono reso conto di due cose:</p><ol>
<li>Quando si usano le API dei fornitori si fa prestissimo a consumare una infinità di tokens (la “moneta” degli LLM) e come gli abbonamenti (io attualmente ho quello mensile di Perplexity.ai) ti ingannino facendoti pensare che gli LLM costino poco;</li>
<li>Penso che nel prossimo futuro o gli abbonamenti scompariranno o si alzeranno notevolmente di costo – la maggior parte dei fornitori di LLM lavora infatti sottocosto.</li>
</ol><p>In quest'ottica da survaivalista ritengo sia importante testare soluzioni di LLM meno blasonate ma con costi più sensati.</p><p>Attualmente gli LLM cinesi, essendo anche “open-source”, sono tra le soluzioni più interessanti e competitive.</p><p>Essendo open, poi, la fornitura dei servizi (se per caso hai dei problemi con i server cinesi) può essere svolta anche da soggetti terzi.</p><h2>2. Avvertenze necessarie</h2><p>Come tutti gli LLM online (siano essi americani, cinesi o francesi –&nbsp;non scordiamoci del buon Mistral) tutte le conversazione che intratteniamo via chat o via terminale finiscono sui server del fornitore del servizio.</p><p>Se quindi vuoi utilizzare tali strumenti per lavoro assicurati di aver attentamente anonimizzato i documenti a cui può avere potenzialmente accesso l’LLM.</p><h2>3. MiniMax-M2</h2><blockquote>
<p><a href="https://minimax-m2.org">MiniMax-M2</a> è un potente modello di intelligenza artificiale MoE (Mixture of Experts) del parametro 230B progettato specificamente per la codifica e i flussi di lavoro degli agenti intelligenti. Con la sua enorme finestra di contesto 204K e le eccezionali capacità di programmazione, offre prestazioni di livello aziendale mantenendo l'efficienza dei costi. Rilasciato con licenza Apache 2.0, è completamente open source e pronto per l'uso commerciale.</p>
</blockquote><p>Questo recita la pagina di presentazione dell’LLM.</p><p>Per i non tecnici MiniMax-M2 è un modello da 230 miliardi di parametri ma con la tecnologia denominata <em>Mixture of Experts</em> durante l’inferenza utilizza solamente 10 miliardi di parametri. Questo gli permette di essere piuttosto veloce (in base all’hardware su cui gira). È comunque necessario un hardware professionale, ovvero GPU di grossa capacità in una server farm.  I punti di eccellenza però sono le <strong>capacità di codifica</strong> e c.d. <strong>agentiche</strong>, ovvero caratteristiche che permettono di far utilizzare degli strumenti (tool) all’LLM per svolgere attività.</p><p>Proprio queste due caratteristiche fanno spiccare questo modello perché si posiziona nel segmento di <a href="https://claude.ai/">Claude</a>, i modelli di <a href="https://www.anthropic.com/">Anthropic</a>.</p><p>Ho scelto di testarlo proprio per queste caratteristiche.</p><h2>4. I miei test con MiniMax-M2</h2><p>Sono rimasto molto colpito da questo LLM.</p><p>L’ho infatti utilizzato sia con <a href="https://opencode.ai/">OpenCode</a> che con <a href="https://claude.com/product/claude-code">Claude Code</a> (o meglio <a href="https://github.com/musistudio/claude-code-router">Claude Code Router</a> – maggiori informazioni in futuri articoli).</p><h3>4.1 Claude Code e MiniMax-M2</h3><p>Di seguito ti mostro una schermata di Claude Code a cui (surrettiziamente) ho agganciato MiniMax-M2.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png" data-image-dimensions="1874x2042" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=1000w" width="1874" height="2042" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/3171f6c8-dc31-4063-8c8f-2866063f2b74/01-Claude_Code_con_MiniMax-M2.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Claude Code utilizzando il router per MiniMax-M2</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>In questo caso specifico, ho chiesto a Claude Code di estrapolare dal file in Markdown creato da una mia mappa mentale di <a href="https://avvocati-e-mac.it/podcast">Compendium</a> di estrapolare i link presenti ed organizzarli secondo un preciso schema.</p>
<p>Claude Code, attraverso MiniMax-M2, ha letto il file, ha estrapolato i link e generato un nuovo file in markdown.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png" data-image-dimensions="1874x2042" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=1000w" width="1874" height="2042" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f22ab23c-3fc5-46c9-a3d2-dd1649838509/02-Claude_Code_con_MiniMax-M2.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Richiesta di salvare il file creato nella cartella</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come si vede dall’immagine soprastante, fatto ciò mi ha chiesto di salvare il file.</p>
<p>Quest’esempio è banale, mostra le capacità pratiche e quelle agentiche di MiniMax-M2. In aggiunta a ciò dimostra che può tranquillamente sostituire Claude sotto la scocca di Claude Code.</p>
<h3>4.2 Ricerche giuridiche</h3>
<p>Ma MiniMax-M2 non si è fermato a questo. Nell’immagine sottostante è mostrato un passaggio della creazione di una comparsa di costituzione in appello (solo un test per ora) fatto sempre attraverso MiniMax-M2 e <a href="https://opencode.ai/">OpenCode</a> (come mostrato al <strong>punto 1</strong>).</p>
<p>Come si vede, oltre ad aver letto i file presenti, è andato online a ricercare le informazioni necessarie per redigere il documento (<strong>punto 2</strong>), in particolare degli esempi di comparsa e <a href="https://avvocati-e-mac.it/blog/2024/4/4/oh-de-4-aprile-scrivere-documenti-giuridici-in-modo-chiaro">come scrivere in modo chiaro di Bryan Garner</a>.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png" data-image-dimensions="3548x3186" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=1000w" width="3548" height="3186" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fa78bda9-2174-4cd4-92ce-b5ac0f665081/03-OpenCode_e_MiniMax-M2.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Passaggio del flusso di lavoro con MiniMax-M2 e OpenCode</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>4.3 Le mie attuali conclusioni</h3>
<p>Tirando le somme, per l’uso che ne ho fatto in questi giorni, MiniMax-M2 si è dimostrato un ottimo LLM che, a livello di capacità, non mi ha fatto rimpiangere la mancanza di Sonnet 4.5. </p>
<h2>5. Sui costi</h2>
<p>E visto che l’ho paragonato svariate volte a Sonnet mi pare anche giusto fare una comparazione dal punto di vista economico (anche se io, visto che attualmente è presente in versione gratuita, ho testato MiniMax-M2 gratuitamente).</p>
<p>Di seguito ti mostro una tabelle rappresentativa dei costi (per milioni di tokens) tra Minimax M2 e Sonnet 4.5 di Anthropic.</p>
<p>Modello Token Input (1M) Token Output (1M) Lunghezza contesto Sonnet 4.5 $3,00 $15,00 200.000 - 1M Minimax M2 $0,15 $0,45 - $0,60 197.000 </p>
<p>Come si vede i costi sono decisamente differenti.</p>
<h2>In conclusione</h2>
<p>Il mondo degli LLM è in continuo fermento e la battaglia tra America e Cina è sempre più agguerrita. I risultati, per gli utenti finali, si fanno vedere e le capacità dei nuovi modelli cinesi nonché l’efficienza a livelli di costi ne sono un chiaro risultato.</p>
<p>Se si vogliono utilizzare assistenti di programmazione AI per la riga di comando (come è mia intenzione fare) porter far riferimento a modelli potenti ma dai costi sopportabili è un grosso punto di forza (nei miei test di creazione dell’atto di costituzione in appello ho consumato 7,68 milioni di tokens!)</p>
<p>Visto il tema nuovo, mi piacerebbe avere un tuo <em>feedback</em> sul punto. Puoi lasciare un commento qui sotto (Safari fa le bizze con SquareSpace, ti pre-avverto), o mandarmi una email (leggo tutte le email, ma non sempre riesco a rispondere a tutti).</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>.<br>Ti avvertirò dei nuovi articoli che pubblico (oltre ai <a href="https://www.avvocati-e-mac.it/podcast">podcast</a> e video su <a href="https://www.youtube.com/c/AvvocatieMac">YouTube</a>) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho trovato interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ebcd455e-3171-4875-b162-42b6052bca2f/Le+mie+prime+impressioni+su+MiniMax+M2.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Le mie prime impressioni su MiniMax-M2</media:title></media:content></item><item><title>App Calendario di Apple: come visualizzare la settimana con più o meno giorni di 7</title><category>automazione</category><category>Organizzazione ufficio</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 03 Nov 2025 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/10/30/app-calendario-di-apple-come-visualizzare-la-settimana-con-pi-o-meno-giorni-di-7</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:690313a79bd45c08cebf032b</guid><description><![CDATA[In questo breve articolo ti spiego come aumentare in Calendario di Apple la 
visualizzazione dei giorni della settimana oltre a 7.

Leggi tutto…]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Oggi ti propongo un breve articolo su un trucco che ho imparato da <a href="http://macsparky.com/">David Sparks</a>, in particolare dalla sua <a href="https://learn.macsparky.com/p/aps-essential-sales">ultima Field Guide sulle applicazioni Apple</a>: come modificare il numero di giorni nella visuale settimanale dell’app <a href="https://support.apple.com/it-it/guide/calendar/welcome/mac">Calendario di Apple</a>.</p><p>Questo trucco <strong>funziona solo su macOS</strong>, non funziona su iOS ed iPadOS.</p><h2>1. Un po di storia…</h2><p>Ero un utilizzatore professionale di <a href="https://flexibits.com/fantastical">Fantastical</a>, tuttavia l’aumento di costi dell’abbonamento annuale e la presenza di funzioni che non utilizzavo (ma giustificavano il costo) mi ha fatto decidere di passare alle applicazione offerte di base da Apple. Ne ho parlato più in dettaglio nella <a href="https://avvocati-e-mac.it/podcast/57">puntata di n.57 di Compendium</a>, a cui ti rimando.</p><p>Da sempre la mia visualizzazione standard del calendario è quella settimanale così da poter vedere a colpo d’occhio gli impegni futuri e poter organizzarmi al meglio.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png" data-image-dimensions="1439x891" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=1000w" width="1439" height="891" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8831fcef-79ee-46ea-aa62-3fd9101403b5/01-Calendario_visualizzazione_settimanale.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Calendario in modalità settimanale</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Una delle funzioni che ho sempre amato di <em>Fantastical</em> è quella che permette di modificare la quantità di giorni nella visualizzazione settimanale. Questo mi permetteva di pianificare in modo più lungimirante e sempre con il medesimo colpo d’occhio.</p>
<p>Oggi, in particolare, mi trovavo a sentirne la mancanza posto che l’app Calendario risiede stabilmente aperta sul mio schermo secondario (ho parlato del mio attuale set-up <a href="https://avvocati-e-mac.it/blog/2018/9/3/il-mio-nuovo-imac-27-pollici">iMac 27" 5k</a> e MacMini M4 con schermo verticale nella <a href="https://avvocati-e-mac.it/podcast/63">puntata n. 63 di Compendium</a>).</p>
<h2>2. Come visualizzare più di 7 giorni in Calendario</h2>
<p>Il trucco condiviso da David è piuttosto semplice.</p>
<p>Basta aprire il <a href="https://support.apple.com/it-ch/guide/terminal/pht23b129fed/mac">Terminale</a> e digitare il seguente comando:</p>
<pre><code>defaults write com.apple.iCal n\ days\ of\ week 14</code></pre>
<p>Basta modificare il numero finale (dei giorni della settimana) e si otterrà un risultato simile al seguente.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png" data-image-dimensions="1439x891" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=1000w" width="1439" height="891" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/54816aaa-c674-41bd-a27f-fdb1fb6b3fb4/02-Calendario_visualizzazione_a_14_giorni.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Calendario visualizzazione settimanale di 14 giorni</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>L’articolo sarebbe finito qui, se nonché trovo molto scomodo dover aprire l’app Terminale, copia incollare il comando ed eventualmente modificarlo se vuoi tornare alla visualizzazione a 7 giorni o, come faccio spesso, a 10 giorni.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png" data-image-dimensions="1439x891" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=1000w" width="1439" height="891" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b85c9d6d-3dfc-4e49-97e8-b18d34987c83/03-Calendario_visualizzazione_a_10_giorni.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di Calendario con visualizzazione 10 giorni</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>3. Automatizzare la modifica della visualizzazione dei giorni</h2>
<p>In <em>Fantastical</em> è presente la possibilità di modificare la visualizzazione dei giorni manualmente nelle preferenze; non troppo comodo ma comunque sempre meglio che niente…</p>
<p>Ci ho pensato su un po' e mi sono accorto che era possibile automatizzare la differente visualizzazione sia con <a href="https://support.apple.com/it-it/guide/shortcuts/welcome/ios">Comandi Rapidi</a> che con <a href="https://www.keyboardmaestro.com/main/">Keyboard Maestro</a>.</p>
<h3>3.1 Comandi rapidi</h3>
<p>Automatizzare l’operazione con Comandi Rapidi è molto semplice: basta utilizzare l’azione “Esegui script di Shell” come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png" data-image-dimensions="780x351" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=1000w" width="780" height="351" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a07467b2-6a4f-4877-9e96-3e5a162f8ff5/04-comandi_rapidi_esegui_script_di_shell.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Comando rapido base per gestire l’automazione</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Visto che l’appetito vien mangiando, mi è parso utile creare una automazione più avanzata per scegliere tra le varie modalità (7, 10 e 14 giorni).</p>
<p><a href="https://www.icloud.com/shortcuts/684910fb4b604b69af4a7e983dae6d9c">Qui</a> la puoi scaricare.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png" data-image-dimensions="1439x1461" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=1000w" width="1439" height="1461" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/78f1d24d-ad40-402d-85ea-c71737b2eb52/05-comando_rapido_per_scegliere_tra_7_10_e_14_giorni.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Comando rapido che permette di scegliere tra 7, 10 e 14 giorni</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Nella sostanza ho usato una azione Scegli da menù ed impostato 3 differenti ipotesi: 7, 10 e 14 (ovviamente sono modificabili a piacimento).</p>
<p>Poi per ogni ipotesi ho inserito l’azione Esegui script di shell che ti ho mostrato prima, modificando conformemente il numero all’ipotesi indicata.</p>
<p>Eseguendo questo comando rapido ti si presenterà la seguente finestra di scelta:</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png" data-image-dimensions="512x369" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=1000w" width="512" height="369" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cdd513c-e6a1-40b9-8b60-2fb6d6135286/06-scelta_che_si_presenta_a_utente.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di scelta proposta all’utente</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>In base alla scelta svolta il Calendario si modificherà di conseguenza.</p>
<h3>3.2 Keyboard Maestro ed automazione remota con lo Stream Deck</h3>
<p>Non tutti hanno <a href="https://www.keyboardmaestro.com/main/">Keyboard Maestro</a> ma è uno strumento eccezionale per automatizzare il proprio Mac.</p>
<p>Nel mio caso specifico poi, grazie a Keyboard Maestro, ho potuto automatizzare la visualizzazione dell’app Calendario sul MacMini M4 direttamente dal iMac 27".</p>
<p>Come ho fatto? Keyboard Maestro e lo <a href="https://www.elgato.com/it/it/explorer/products/stream-deck/">Stream Deck</a>.</p>
<p>Ho acquistato lo Stream Deck a Natale 2023 e lo uso da allora sia per gestire le mie dirette streaming (lo scopo per cui è nato questo strumento originariamente) sia per automatizzare svariate attività prima solo sul mio iMac ed ora anche sul MacMini M4.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg" data-image-dimensions="640x480" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=1000w" width="640" height="480" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0dc22cf5-6f93-45d8-a5cc-011b4c24ef69/07-_il_mio_strem_deck.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Il mio Stream Deck</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>In estrema sintesi lo Stream Deck è un piccolo schermo capacitivo sul quale sono stati montati dei tasti. Questo fa si che, grazie al software che lo gestisce e deve essere installato sul proprio Mac, è possibile avere vari tasti personalizzati (come si vede bene nell’immagine soprastante) e che alla loro pressione svolgono specifiche operazioni.</p>
<p>Io ho la versione a 15 tasti ma ne esistono da 32, 6 o anche da 8 ma con manopole per svolgere altri compiti.</p>
<p>Usando lo Stream Deck e Keyboard Maestro ho potuto creare della automazioni che pilotano il mio MacMini M4. Non entrerò nel dettaglio specifico ma se c’è interesse posso fare un articolo dedicato a come uso lo Stream Deck quotidianamente per semplificarmi la vita e velocizzare il lavoro.</p>
<p>Venendo a Keyboard Maestro la macro è relativamente semplice (un po' come il comando rapido iniziale del punto precedente).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png" data-image-dimensions="1439x891" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=1000w" width="1439" height="891" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8756ae2e-b122-4211-b906-a6a05644492d/08-Keyboard_Maestro_per_StreamDeck.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>La macro di Keyboard Maestro per modificare la visualizzazione dei giorni in Calendario</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>L’azione che ho usato in Keyboard Maestro è l’equivalente di quella di Comandi Rapidi, ovvero Execute Shell Script (esegui uno script di shell) – come mostrato al <strong>punto 3</strong> dell’immagine soprastante.</p>
<p>La particolarità è che, come Trigger ovvero come interruttore per far scattare la macro ho utilizzato la funzione “remote web trigger“. Questa funzione è una novità relativamente recente di Keyboard Maestro. Nella sostanza è possibile far partire la macro grazie ad un c.d. webhook, ovvero visitando un pagina web (di fatto è un server di Keyboard Maestro).</p>
<p>Ho quindi creato 3 differenti macro (come mostrato nel <strong>punto 2</strong> dell’immagine soprastante).</p>
<p>Piccola nota: Ho deciso di raggruppare queste macro in un gruppo apposta denominato come Remote MacMini M4 Calendario ed utilizzando l’icona del Calendario per rendere più facile l’organizzazione (<strong>punto 1</strong> immagine soprastante).</p>
<p>Lato Stream Deck, invece, ho dovuto semplicemente creare gli idonei tasti (<strong>punto 1</strong> immagine sottostante), utilizzando l’azione “Website” (<strong>punto 3</strong>) che permette di aprire uno specifico sito o URL. Nel caso mio specifico nella configurazione dell’azione (<strong>punto 2</strong>) ho impostato la spunta “Get request in background” che permette di non aprire direttamente la pagina ma esegue la richiesta, appunto, in background attivando la macro di Keyboard Maestro.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png" data-image-dimensions="1280x1103" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=1000w" width="1280" height="1103" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c07cb997-9b7e-43ba-9814-f624a51e49ea/09-aprire_una_pagina_web_con_lo_stream_deck.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Interfaccia del software di Elgato per lo Stream Deck</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Nel sostanza premendo uno dei 3 tasti che ho programmato posso modificare l’aspetto dell’app Calendario sul mio MacMini M4 direttamente dall’iMac.</p>
<h2>In conclusione</h2>
<p>Articolo molto semplice ma spero che ti abbia mostrato cosa è possibile fare con le automazioni ed anche le varie possibilità che software o strumenti differenti ti permettono di fare, in particolare come lo Stream Deck possa essere anche un ottimo strumento di automazione.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7413e1af-ebd9-436c-a915-fb06cf5039ea/App+Calendario+di+Apple+-+come+visualizzare+la+settimana+con+pi%C3%B9+o+meno+giorni+di+7.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">App Calendario di Apple: come visualizzare la settimana con più o meno giorni di 7</media:title></media:content></item><item><title>Registrazione mio intervento: Intelligenza artificiale ed il suo utilizzo nell’attività forense – esempi pratici</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Tue, 30 Sep 2025 10:33:19 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/9/30/registrazione-mio-intervento-intelligenza-artificiale-ed-il-suo-utilizzo-nellattivit-forense-esempi-pratici</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:68dbb1f5511d7a18523acaba</guid><description><![CDATA[Pubblico la registrazione del mio intervento al convegno organizzato 
dall’Ordine di Reggio Emilia il 26 Settembre 2025 in aula 5 presso il 
Tribunale di Reggio Emilia.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg" data-image-dimensions="1280x720" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=1000w" width="1280" height="720" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>È con piacere che pubblico il mio intervento in <strong>Aula 5 del Tribunale di Reggio Emilia</strong> sull’argomento in oggetto ed organizzato <a href="https://www.ordineforense.re.it/formazione/corsi-ordine/evento-intelligenza-artificiale-ed-il-suo-utilizzo-nellattivita-forense-26-settembre-2025/" tabindex="0">dall’Ordine degli Avvocati di Reggio Emilia</a>.</p>

  
    <center><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen src="https://www.youtube.com/embed/3EJaSK6k0Oo?si=4JhjSyZv0BbS7BoK" width="560" frameborder="0" title="YouTube video player" height="315"></iframe></center>
  

<p>Ho inserito i <strong>capitoli</strong> per permetterti di muoverti velocemente all’interno del video che è di un’ora e mezza circa.</p>


<h2>1. Link per scaricare le slides del mio intervento</h2>
<p><a href="https://www.icloud.com/iclouddrive/0c3c3N4PDJEhE-ZqU-e80fWXQ#COA_RE_-_IA_esempi_pratici">Qui</a> puoi scaricare le slides del convegno, ho inserito i link alle varie cose di cui ho parlato per tuo eventuali approfondimenti.</p><h2>2. Alcune curiosità sulla registrazione video (per i curiosi)</h2><p>La registrazione è stata fatta mentre presentavo e dal medesimo computer (un MacBook Air M4) da cui gestivo la presentazione. Ho utilizzato <a href="https://obsproject.com">OBS</a> e la webcam del mio MacBook Air.
Qua e là ci sono delle sbavature (in particolare perdita di fotogrammi della webcam) ma spero le perdonerai a fronte delle condizioni particolari.</p><p>Alcune domande si sentono male perché ho attivato la <a href="https://support.apple.com/it-it/101993">modalità isolamento vocale di Apple</a>per evitare che la mia voce rimbombasse a causa dei microfoni dell’aula; l’audio è stato catturato con i microfoni del MacBook Air.</p><h2>In conclusione</h2><p>Spero che questo “esperimento” ti piaccia e, se avrò feedback positivi, cercherò di implementarlo anche per altri miei interventi dal vivo.</p><p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d34b7b14-9f32-449c-8068-ba045d099774/maxresdefault.jpg?format=1500w" medium="image" isDefault="true" width="1280" height="720"><media:title type="plain">Registrazione mio intervento: Intelligenza artificiale ed il suo utilizzo nell’attività forense – esempi pratici</media:title></media:content></item><item><title>PCT: Numerazione automatica dei documenti allegati con Comandi Rapidi</title><category>automazione</category><category>digitalizzazione</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 29 Sep 2025 07:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/9/29/pct-numerazione-automatica-dei-documenti-allegati-con-comandi-rapidi</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:68d951bc48048a2aeb3d451f</guid><description><![CDATA[In questo articolo rivedo le automazioni fatte con Comandi Rapidi che ho 
creato per il Processo Civile Telematico che mi semplificano e velocizzano 
la numerazione dei documenti allegati, in particolare la nuova variante che 
mi permette di numerare dei documenti indicando il numero di partenza.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Recentemente mi sono trovato nella necessità di numerare dei documenti allegati ad un deposito telematico civile partendo da un numero specifico, poiché avevo già depositato N documenti nel deposito precedente.</p>
<p>Ho creato la mia <a href="https://avvocati-e-mac.it/blog/2016/2/9/pct-numerazione-automatica-degli-allegati-della-busta-telematica-con-automator">prima automazione per numerare i documenti allegati ad un deposito telematico</a> nel 2016 con Automator e, recentemente, l’ho ricreata con <a href="https://support.apple.com/it-it/guide/shortcuts/welcome/ios">Comandi Rapidi</a> ma non ho mai inserito la possibilità di far partire la numerazione da un numero arbitrario.</p>
<p>Qualche giorno fa ho deciso di risolvere il problema ed ho aggiornato il comando rapido che oggi ti spiego.</p>
<p>Puoi scaricare i due comandi rapidi da:</p>
<ul>
<li><a href="https://www.icloud.com/shortcuts/9c924c8f0a5348dd95299cf83503f5d5">Qui</a>: per il comando che numera i documenti anche da un numero specificato dall’utente;</li>
<li><a href="https://www.icloud.com/shortcuts/7636ad455a5c4848bd947150afb5ba46">Qui</a>: per togliere i numeri.</li>
</ul>
<h2>1. Un po’ di storia…</h2>
<p>Nei depositi telematici civili è possibile allegare, assieme al c.d. atto principale, degli allegati.</p>
<p>Secondo le regole del <em>Processo Civile Telematico</em> e, più in generale, delle disposizioni del Codice di Procedura Civile (<a href="https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:regio.decreto:1941-12-18;1368:1~art36">art. 36 disp. att. c.p.c</a>) “gli atti sono inseriti nel fascicolo in ordine cronologico”.</p>
<p>Oggi i documenti o allegati sono file e modificare il nome del file per anteporre una numerazione è tedioso oltre che potenziale possibilità di errore.</p>
<p>Fu così che iniziando a sperimentare con le automazioni su macOS ho scoperto <a href="https://avvocati-e-mac.it/blog/2016/2/9/pct-numerazione-automatica-degli-allegati-della-busta-telematica-con-automator">Automator e la possibilità di creare in modo semplice ed interattivo un elenco di documenti</a>.</p>
<p>Seppur con macOS 26 Tahoe è stata <em>aggiornata l’icona di Automator</em> non ci sono buone speranze che questa applicazione figlia di <a href="https://en.wikipedia.org/wiki/Sal_Soghoian">Sal Soghoian</a> veda aggiornamenti.</p>
<p>Comandi Rapidi invece, pur nelle strane modalità di Apple, è qui per restare ed è multi-piattaforma (con una serie di asterischi) e nel nostro caso il comando rapido che ho creato funziona sia su Mac che su iPhone e iPad (non come azione rapida ma come condivisione).</p>
<h2>2. Ricreare l’automazione in Comandi Rapidi ma fare qualcosa di più</h2>
<p>Ho parlato dei 2 comandi rapidi per numerare e togliere la numerazione in un <a href="https://avvocati-e-mac.it/blog/2022/12/5/comandi-rapidi-per-automatizzare-la-creazione-dei-link-ai-documenti">OfficeHour di fine 2022</a> ma poi me ne sono un po’ scordato. Ho deciso quindi di rimediare con questo articolo.</p>
<p>Il comando di numerazione è relativamente semplice.</p>
<p>L’ho strutturato come una <strong>Azione Rapida</strong>, ovvero una serie di azioni che si possono eseguire all’interno del Finder selezionando uno o più file, premendo il tasto destro e, nel menù contestuale, selezionando l’opzione Azioni Rapide.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png" data-image-dimensions="1464x1320" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=1000w" width="1464" height="1320" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a88b3656-5625-488a-af78-30d33a4eb909/01-azioni-rapide.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di come si vede nel Finder un’azione rapida</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Abitualmente, sono abilitate le Azioni Rapide di sistema, ma in Comandi Rapidi è possibile implementarne di nuove.</p>
<p>Per fare ciò è necessario, quando creiamo un nuovo comando rapido, andare dei “Dettagli del comando” (punto 1 dell’immagine sottostante) e, alla voce Dettagli (punto 2), spuntare la voce “Usa come azione rapida” e “Finder” per vederla all’interno del gestore di documenti di macOS.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png" data-image-dimensions="1982x908" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=1000w" width="1982" height="908" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/a98334da-bb5b-446f-af27-cba04f8ba072/02-comando-rapido-come-azione-rapida.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Dettagli del comando in Comandi Rapidi</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>2.1 Comando rapido per la numerazione degli allegati</h3>
<p>Vediamo quindi come ho costruito il comando base per la numerazione.</p>
<p>Anzitutto, per poter funzionare come Azione Rapida il comando deve poter ricevere i file selezionati nel Finder (punto 1 verde dell’immagine sottostante) e questo lo abbiamo già abilitato nel punto precedente.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png" data-image-dimensions="1638x2480" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=1000w" width="1638" height="2480" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1bb93c91-1a25-4d4b-85c7-3e25f40e7d3e/03-numerazione-documenti-incrementale.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Comando rapido per numerare i documenti</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Qui mi interessa sottolineare che, come buona prassi, è opportuno ridurre al minimo necessario i file che può accettare un’azione, infatti solo le azioni rapide pertinenti ad un determinato file verranno mostrate nel menù contestuale.</p>
<p>Per tale ragione io abitualmente de-seleziono tutte le opzioni (punto 1 rosso immagine sottostante) e seleziono solo le fonti pertinenti (punto 2 rosso).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png" data-image-dimensions="532x834" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=1000w" width="532" height="834" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/490a328d-8ec6-42dc-8a5f-64e920290daf/04-file-da-ricevere.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Scelta del contesto in cui l’Azione Rapida verrà attivata</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Altra importante considerazione è che i file passati al comando sono in ordine di selezione nel Finder. Quindi su può selezionare dal primo all’ultimo file tenendo premuto il tasto ⇧ (shift) e cliccando sul primo ed ultimo file, ovvero selezionare uno ad uno, in uno specifico ordine, tenendo premuto il tasto ⌘ (command o comando in italiano).<br>Il mio suggerimento, posto che spesso i file da numerare non sono già in ordine progressivo, è quello di usare la seconda opzione.</p>
<p>Tornando al comando rapido a questo punto ho inserito un commento che spiega quel che fa il comando rapido o (quando lo sto creando mi serve da canovaccio per crearlo).</p>
<p>Il comando è relativamente semplice: è un loop (punto 2 verde), ovvero fa la stessa cosa per tutti i file selezionati nel Finder.</p>
<p>All’interno del loop ci sono una serie di azioni che antepongono la dicitura “doc-01”, “doc-02” etc… ad ogni file. </p>
<p>Unica particolarità è che mentre per i numeri maggiori di 10 ci sono cifre, per i numeri inferiori a 10 prima del numero ad una cifra faccio anteporre uno 0 per arrivare alle 2 cifre e mantenere anche all’interno della cartella dove sono collocati i file l’ordine secondo la numerazione. In difetto ti troverai con 1, 12, 13… e poi 2, 21, 22… etc. </p>
<p>Per fare questo ho inserito due semplici verifiche condizionali (azione SE): se l’indice di ripetizione del loop è inferiori o uguale a 9, antepone il numero 0 al numero della ripetizione, altrimenti non fa nulla (punto 3 e 4 verde).</p>
<p>In questo modo creo per ogni file una variabile denominata “Testo da anteporre”.</p>
<p>A questo punto utilizzo un azione “Sostituisci testo” per estrapolare il nome del file dal percorso completo che Comandi Rapidi ha catturato all’inizio quando gli sono stati passati i file selezionati nel Finder.</p>
<p>Qui è necessaria una <strong>nota</strong>.</p>
<p>Da ormai svariato tempo c’è un <strong>bug di Comandi Rapidi</strong> per cui, per i file, non è possibile catturare solo il nome come variabile magica. Io uso la funzione Sostituisci testo (che è di fatto una <a href="https://it.wikipedia.org/wiki/Espressione_regolare">Espressione Regolare</a>) per estrapolare il nome del file. Fastidioso ma una volta che lo si sa è semplice e si può riciclare.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg" data-image-dimensions="2424x1336" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=1000w" width="2424" height="1336" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9a8396f9-78bf-47fa-be5b-d0a1df63ce12/05-esempio-visuale-regex.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio visuale di cosa fa la regex nell’app Patterns</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>A questo punto all’interno di un’azione testo compongo il nuovo nome del file, anteponendo il “Testo da anteporre” al nome del file (seconda azione punto 5 verde).</p>
<p>A conclusione del loop uso un azione “Rinomina” per rinominare il file (l’Elemento di ripetizione) con il nuovo nome; ed il loop continua fino all’esaurimento dei file selezionati.</p>
<p><strong>Ultima nota</strong>: questo comando rapido, rispetto all’automazione di Automator non sostituisce gli spazio bianchi all’interno del nome del file con un trattino (-) o una sottolineatura bassa (_) ma si potrebbe fare tranquillamente con l’azione “Sostituisci testo”.</p>
<h3>2.2 Togliere la numerazione</h3>
<p>Mentre preparavo la OfficeHour per far vedere la numerazione dei file mi sono reso conto di una cosa particolarmente fastidiosa … dovevo togliere i testo anteposto a mano!</p>
<p>A prescindere dal fatto che per registrare il video l’ho fatto svariate volte e diventava decisamente tedioso, può capitare che, per orrore, si selezioni uno o più file sbagliati nel Finder o, successivamente occorra mettere un differente documento tra quelli già numerati. Il modo più semplice è togliere doc-01 e così via in un colpo solo. È questo che fa il comando che vedremo ora.</p>
<p>Il nuovo comando è fatto in maniera simile al precedente, quindi, mi soffermo solo su due cose.</p>
<p>Come mostrato al punto 1 dell’immagine sottostante per utilizzare una regex nell’azione Sostituisci testo occorre spuntare la voce Espressione regolare altrimenti non si otterrà il risultato sperato.</p>
<p>Il punto 2, invece, mostra l’espressione regolare per togliere il “doc-01” e così via.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png" data-image-dimensions="1248x1436" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=1000w" width="1248" height="1436" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f5086515-75f0-4816-902e-f65a7b531356/06-togli-doc-01.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Comando rapido per togliere la numerazione dei documenti</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Di seguito ti mostro cosa fa l’espressione regolare sempre con l’app Patterns.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg" data-image-dimensions="2424x1336" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=1000w" width="2424" height="1336" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11c5e970-4cc2-456c-a47b-31a7a3e0f2fc/07-regex-di-sostituzione.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Il funzionamento dell’espressione regolare per togliere i numeri anteposti</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>È necessario notare che, se si modifica il modello che si antepone occorre modificare l’espressione regolare di conseguenza perché così come formulata l’espressione “cattura” solo la parola “doc” seguita da uno o più numeri ed uno spazio.</p>
<h2>3. Il comando rapido migliorato</h2>
<p>Compreso il funzionamento di base è abbastanza semplice quel che ho fatto con il nuovo comando rapido.</p>
<p>Ho inserito come prima cosa una "Scelta da menù”, di modo che l’utente possa scegliere se usare il comando base di numerazione ovvero utilizzare quello per numerare partendo da uno specifico numero (parte azzurra dell’immagine sottostante).</p>
<p>Ho poi creato un differente ma simile loop per la seconda e nuova opzione (parte rossa dell’immagine sottostante).</p>
<p>La particolarità di questo loop è che, come mostrato al punto 1 rosso, verrà richiesto all’utente di scegliere un numero da cui partire; poi questo numero viene aggiunto all’indice di ripetizione: quindi se si inserisce come numero di partenza 10, il primo documento verrà rinominato doc-11 e così via.</p>
<p>Siccome l’utente può decidere in modo arbitrario il numero ho lasciato la logica SE… ALTRIMENTI nell’ipotesi che il numero di partenza sia inferiore o uguale a nove.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png" data-image-dimensions="1206x5438" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=1000w" width="1206" height="5438" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/99ee0760-fbfc-47c3-b8ab-034b714395a6/08-nuovo-comando-numerazione.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Comando rapido con scelta sulla numerazione</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>In conclusione</h2>
<p>Era da un po' di tempo che non scrivevo di Comandi Rapidi per l’utilizzo nella professione. Nei prossimi mesi (tempo permettendo) mi riprometto di condividere con te nuovi comandi rapidi che ho creato nell’ultimo periodo per semplificarmi la vita.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/93a0335b-fca0-45e3-8dec-1705ca750ae1/PCT+-+Comandi+Rapidi+automazione+numerazione+documenti+allegati.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">PCT: Numerazione automatica dei documenti allegati con Comandi Rapidi</media:title></media:content></item><item><title>10 anni di Avvocati e Mac</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Thu, 18 Sep 2025 07:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/9/18/10-anni-di-avvocati-e-mac</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:68cac05e8326354b92e2e2a7</guid><description><![CDATA[In questo articolo “celebrativo” ne approfitto per guardare ai 10 anni di 
Avvocati e Mac e di come e cosa è cambiato in 10 anni.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Immagine generata con IA (e le candeline sono sbagliate 😜)</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Articolo celebrativo… ma ogni 10 anni ci può stare!</p>
<p>Sì, sono passati proprio oggi 10 anni dalla prima volta che ho scritto un articolo su Avvocati e Mac. Una decade è sicuramente un periodo importante e quindi per “celebrare” questa pietra miliare ho pensato di fare un po' il punto.</p>
<h2>Il mio percorso</h2>
<p>Avvocati e Mac è nato scimmiottando tanti altri siti legati al mondo tech in salsa Apple, con la particolarità di portare il mio punto di vista da professionista che usa quotidianamente la tecnologia per il lavoro (e non solo) di tutti i giorni.</p>
<p>Quando ho iniziato a scrivere eravamo nel boom del Processo Civile Telematico e questo mi ha stimolato (anche allo sprone del mio mentore <em>Maurizio Sala</em>) a fare qualcosa di più rispetto a semplicemente adottare questo nuovo modo di lavorare. È così che a fine 2014 ho iniziato a mettere mano al modo in cui lavoravo da tempo (sono avvocato dal 2005) ed ho iniziato seriamente a digitalizzare il mio ufficio.</p>
<p>La curiosità e la passione (ho scoperto di amare profondamente tutto ciò che mi permette di organizzare meglio il lavoro) mi hanno portato verso lidi inusuali: sono passato da scrivere con <a href="https://avvocati-e-mac.it/blog/2017/3/23/aggiornato-larticolo-su-come-creare-in-un-atto-telematico-i-link-ai-documenti-allegati">LibreOffice</a> (l’alternativa open di Microsoft Word) ad usare <a href="https://avvocati-e-mac.it/blog/2016/3/15/introduzione-a-scrivener">Scrivener</a> per poi <a href="https://avvocati-e-mac.it/blog/2019/4/5/come-scrivere-un-atto-telematico-avanzato-in-markdown">passare al Markdown</a> (il testo semplice che utilizzo anche per scrivere questi articoli) ed infine ho <a href="https://avvocati-e-mac.it/blog/2021/8/23/scrivere-atti-telematici-avanzati-in-latex-parte-i">iniziato ad usare LaTeX </a>che mi ha aperto il mondo di scrivere atti e contratti giuridici in modo programmatico.</p>
<p>Nel mentre ho anche approfondito come digitare il testo in modo più efficiente e meglio utilizzando <a href="https://it.wikipedia.org/wiki/Vim_(editor_di_testo)">Vim</a> ed i suoi movimenti ed azioni e la mia tastiera meccanica programmabile (<a href="https://ultimatehackingkeyboard.com/">Ultimate Hacking Keyboard</a> v.1).</p>
<p>Negli ultimi 2 anni, poi, mi sono gettato (inizialmente con molte perplessità) nel magico mondo dell’intelligenza artificiale, in particolare dei <a href="https://it.wikipedia.org/wiki/Modello_linguistico_di_grandi_dimensioni">Modelli Linguistici di Grandi Dimensioni</a>, gli LLM (Large Language Model).</p>
<p>Dal 2006 sono un utente appassionato Apple; il mio <strong>primo Mac</strong> è stato un <strong>MacMini Intel</strong> della prima ora, <strong>oggi</strong> (da pochi mesi mentre scrivo) ho <strong>finito il passaggio a Apple Silicon</strong> ed “abbandonato” (quasi) i Mac Intel. Se sono ancora un felice utente Apple ho scoperto ed iniziato ad utilizzare tantissimi software open-source ed ho imparato ad amare ed utilizzare strumenti open per lavorare (tra le tante cose ho una istanza di <a href="https://www.overleaf.com/">Overleaf</a> che utilizzo quotidianamente per <a href="https://avvocati-e-mac.it/blog/2023/10/12/webinar-per-la-creazione-atti-telematici-avanzati-in-modo-semplice-con-overleaf">scrivere i miei atti in LaTeX</a>).</p>
<p>Mi ritengo ancora una “smanettone” non avendo una competenza informatica completa ed imparando qua e là a gestore VM (Virtual Machine) in Linux e lottando quotidianamente con la gestione della rete; ho però capito l’<strong>importanza ed i benefici di avere una infarinatura informatica per svolgere quotidianamente il mio lavoro</strong> in modo semplice ed efficiente.</p>
<h2>Automazioni: le mie migliori amiche</h2>
<p>In particolare ho imparato a conoscere ed amare le automazioni. <a href="https://avvocati-e-mac.it/blog/tag/keyboard+maestro">Keyboard Maestro</a>, <a href="https://avvocati-e-mac.it/blog/tag/hazel">Hazel</a>, <a href="https://avvocati-e-mac.it/blog/tag/Comandi+Rapidi">Comandi Rapidi</a>, <a href="https://avvocati-e-mac.it/blog/2021/8/23/scrivere-atti-telematici-avanzati-in-latex-parte-i">LaTeX</a> ed ora anche gli LLM sono strumenti che mi permettono di semplificare il mio flusso di lavoro quotidiano, standardizzandolo e permettendomi di concentrarmi sugli aspetti “elevati” della professione.</p>
<p>La digitalizzazione del mio ufficio non sarebbe stata possibile senza le automazioni e, nel tempo, anche la scrittura degli atti (per la sua parte ripetitiva) mi richiederebbe maggior tempo se non avessi automatizzato la creazione dei link ai documenti, o la generazione degli atti (ad esempio con la creazione automatica dei conteggi di un precetto o decreto ingiuntivo) o l’utilizzo di variabili per semplificarmi l’inserimento dei dati negli atti e contratti.</p>
<h2>10 anni intensi a livello personale</h2>
<p>In questi 10 anni a livello personale è successo un po' di tutto, nel bene e nel male: ho perso i miei genitori (a 9 anni l’uno dall’altro) e visto crescere mio figlio da infante ad adolescente; ho cambiato 3 volte il mio ufficio ed ora lavoro prevalentemente da casa; casa che pure ho cambiato; ho scoperto anche di odiare i traslochi, avendone fatti pure troppi!</p>
<p>Una delle cose che mi hanno più scaldato il cuore sono state le persone che ho conosciuto grazie al sito. Con alcune di loro ho condiviso passini ed alcuni ora li chiamo amici e li sento quotidianamente. Menzione d’onore (non volendo sminuire gli altri) per <strong>Roberto Marin</strong>, con cui ho fatto tante belle cose assieme, e <strong>Lucio Bragagnolo</strong>, che con il suo punto di vista sempre nuovo e stimolante è uno pungolo continuo a ragionare, approfondire e non fermarsi alla prima apparenza.</p>
<p>Alcuni amici, purtroppo, non ci sono più: un pensiero va all’amico, collega e mentore <strong>Maurizio Sala</strong> che tanto mi ha dato e proprio grazie al suo spunto e stimolo mi sono imbarcato in questa avventura. Ricordo ancora, nel corso di un convegno in cui eravamo co-relatori, come un suo spunto mi ha fatto decidere di approfondire la digitalizzazione dello studio ed a cascata tutto quel che è successo dopo.</p>
<h2>Di podcast ed altro</h2>
<p>L’ho sempre detto: Avvocati e Mac non esisterebbe senza <a href="https://www.macsparky.com/about/">David Sparks</a>, <strong>Katie Floyd</strong> e <a href="https://www.relay.fm/mpu">Mac Power Users</a>. </p>
<p>Dopo anni di gestazione e tentativi più o meno riusciti, è con piacere che posso dire di portare avanti un podcast da anni (prima con <a href="https://www.spreaker.com/podcast/a2--6519470">A2</a> ed ora con<a href="https://www.avvocati-e-mac.it/podcas/"> Compendium</a>). Con mio stupore, nell’ultimo periodo sono più produttivo con il podcast che con gli articoli ma conto di porre rimedio a questa “mancanza”.</p>
<h2>Importanza di scrivere in pubblico</h2>
<p>Questo sito è stato ed è il diario dei miei esperimenti tecnologici negli ultimi 10 anni di vita ed è anche il modo in cui sono cresciuto.</p>
<p>Molti sottovalutano i vantaggi di “scrivere” e più in generale produrre in pubblico. Se da una parte può sembrare un’attività narcisistica, fatto con costanza e umiltà è un ottimo modo per cresce e, articolo dopo articolo, podcast dopo podcast, tracciare un percorso nel tempo e, a volte, influenzare la vita di altre anime affini.</p>
<h2>Unico rimorso: non essere ancora passato a Hugo</h2>
<p>Chiudo con l’unico mio rimorso attuale: non essere riuscito a passare ad Hugo prima di questo “anniversario”.</p>
<p>Può sembrare un po' ridicolo ma a causa del fatto che non mi sono segnato esattamente come avevo già creato siti con Hugo, non sono riuscito ancora a passare Compendium (che ha solo una sessantina di puntate) ad <a href="https://gohugo.io/">Hugo</a> (il sito locale funziona ma non sono riuscito a trasportarli a quello online 😓) e, quindi, non mi ci sono messo con Avvocati e Mac che ha più di 300 articoli e non so quante immagini da traghettare al nuovo sistema.</p>
<p>Spero in questo undicesimo anno di riuscire finalmente a metterci mano seriamente.</p>
<h2>In conclusione</h2>
<p>Come dicevo questo è un articolo celebrativo ed un po' più personale dei miei soliti articoli, ma una volta ogni 10 anni direi che ci può stare. Credo comunque nell’utilità, ogni tanto, di guardare indietro e vedere la strada fatta oltre all’utilità di ricordare che <a href="https://amzn.to/3IblOrK">fare le cose in pubblico</a>, anche se può far paura inizialmente, sia un modo molto interessante di cresce ed incontrare nuove persone ed opportunità.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b9cad22-1c90-4c8e-8c56-557e78920a60/10+anni+di+avvocati+e+mac.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">10 anni di Avvocati e Mac</media:title></media:content></item><item><title>macOS 26 Tahoe: considerazioni a caldo</title><dc:creator>Filippo Strozzi</dc:creator><pubDate>Tue, 16 Sep 2025 07:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/9/16/macos-26-tahoe-considerazioni-a-caldo</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:68c81eefbe7344204e85d4d4</guid><description><![CDATA[Ho testato negli scorsi mesi la beta di macOS 26 Tahoe ed oggi ti parlo 
delle cose interessanti, per avvocati e non.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<h1>macOS 26 Tahoe: considerazioni a caldo</h1><p>Come ogni anno ho testato le varie beta di Apple in attesa dell’uscita ufficiale che, quest’anno, comprende tutti i sistemi operativi (iOS, iPadOS, macOS e visionOS). In questo articolo mi soffermerò come al solito sugli aspetti più legati al mondo legale con il nuovo sistema operativo di Apple per i Mac.</p><h3>0. Le mie disavventure …</h3><p>Solitamente mi lancio a testare le beta di Apple a Luglio, quando esce la beta pubblica, la versione per i temerari che non sono sviluppatori …</p><p>Quest’anno tuttavia ho fatto un doppio azzardo:</p><ol>
<li>Ho voluto installare dal c.d. <a href="https://developer.apple.com/it/support/install-beta/">Developer Beta</a>, quella che esce appena subito dopo il keynote di Apple il 9 Giugno;</li>
<li>Pensando solo di scaricarla per installarla su un disco esterno … ho inavvertitamente installato la Developer Beta sul mio nuovo MacBook Air M4 😅</li>
</ol><h2>1. macOS 26 Tahoe ed i processi telematici</h2><h3>1.1 I processi telematici</h3><p>Prendile con le dovute pinze, perché ho aggiornato il mio OS da Sequoia a Tahoe e quindi avevo alcune configurazioni già fatte, ma per ora anche con la <em>Developer beta</em> di macOS 26 non ci sono stati problemi con il PCT.</p><p>Di seguito trovi le prime catture schermo che ho fatto il 10 di Giugno</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png" data-image-dimensions="3412x1872" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=1000w" width="3412" height="1872" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/25966508-6cf2-4456-9d3b-38a452f5f1c5/01-certificati-safari.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di login sul portale pst.giustizia.it</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  













































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png" data-image-dimensions="586x546" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=1000w" width="586" height="546" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4b316dd2-0de1-4845-bf47-fde0e27e3ae7/02-safari-pct.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di inserimento del PIN in Safari</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  













































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png" data-image-dimensions="2280x1750" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=1000w" width="2280" height="1750" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/71e56ad3-44a6-471a-9af9-bfd231c1e426/03-login-pst.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Login completato – vedi il benvenuto con il mio codice fiscale – nel pst.giustizia.it</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>1.2 SLpct</h3>
<p>Spronato anche dall’amico Stefano Baldoni ho controllato che anche SLpct funzionasse a dovere.</p>
<p>Come si vede dall’immagine sottostante, SLpct si installa <a href="https://avvocati-e-mac.it/blog/2023/3/19/installazione-di-slpct-su-macos-ventura?rq=SLpct">come al solito</a> su macOS …</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg" data-image-dimensions="3006x1796" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=1000w" width="3006" height="1796" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cfee970-2d08-4c0c-9df8-89b3dfb2389f/04-SLpct-tahoe.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>SLpct aperto in macOS Tahoe</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>… ed i documento vengono firmati senza problemi.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png" data-image-dimensions="2302x1690" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=1000w" width="2302" height="1690" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fd8f1cac-9e10-4faf-8318-ddc3ad47e3b5/05-SLpct-firma.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Schermata di SLpct di firma di atto e datiatto.xml</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>2. Le cose veramente interessanti</h2>
<p>Ma perché mi sono azzardato a testare così presto macOS 26 sul mio MacBook Air, ti potrai giustamente chiedere?</p>
<p>Il vero motivo non era di testare i Processi Telematici … ero curioso di vedere cosa era possibile fare con <em>Apple Intelligence</em> e <a href="https://support.apple.com/it-it/guide/shortcuts/welcome/ios">Comandi Rapidi</a> ed approfondire le nuove funzionalità di <a href="https://support.apple.com/it-it/guide/imac/apd10f8d1038/mac">Spotlight</a>.</p>
<h3>2.1 Apple Intelligence utilizzabile anche dagli utenti con Comandi Rapidi</h3>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png" data-image-dimensions="602x1412" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=1000w" width="602" height="1412" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddc27b2-60a1-4062-a1b1-ae5f9df67ae1/06-comandi-rapidi-azioni-AI.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Varie azioni di Apple Intelligence in Comandi Rapidi</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>La prima “grossa” novità di questo WWDC 2025 è la possibilità da parte di sviluppatore (e smanettoni, nel mio caso) di avere accesso ad <em>Apple Intelligence</em>.</p>
<p>Gli sviluppatori (programmando) avranno un accesso piuttosto profondo ma anche chi ama usare <em>Comandi Rapidi</em> potrà in parte divertirsi.</p>
<p>Qui sotto ti mostro le nuove azione di <em>Apple Intelligence</em> per Comandi Rapidi.</p>
<p>La maggior parte delle azione è auto-esplicativa, quella che mi ha stupito (positivamente) è stata l’azione “Usa modello”.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png" data-image-dimensions="558x1410" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=1000w" width="558" height="1410" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/181373d6-7555-41c6-872a-b84529109adb/07-azione-usa-modello.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Immagine che mostra le informazioni sull’azione Usa Modelli</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come si legge nella descrizione questa azione permette di utilizza sia il modello locale di Apple Intelligence sia <a href="https://security.apple.com/blog/private-cloud-compute/">Private Cloud Compute</a> che finalmente può essere testato da tutti!</p>
<p>Non è come sempre <em>tutto oro quel che luccica</em>, però.</p>
<p>Attualmente la finestra di contesto sia del modello sul dispositivo che quello online di Apple è di 4092 token … piuttosto poco.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg" data-image-dimensions="814x1280" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=1000w" width="814" height="1280" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ea14583-9ce9-4ba2-9de2-796dfb336556/07bis-finestra-modello-locale.jpg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di errore avuto con un testo di 5505 parole con l’azione Usa modello di Comandi Rapidi</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>È anche un peccato perché altre azioni, come quella “Riassumi il testo” paiono poter gestire dei testi di grosse dimensioni, come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png" data-image-dimensions="1512x1540" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=1000w" width="1512" height="1540" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9040fed5-4dfb-4396-88b7-a612a1b2fffb/08-azione-riassumi.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Comandi Rapidi: azione riassumi</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come mostrato nell’immagine soprastante grazie ad <em>Apple Intelligence</em> ho riassunto il testo di quasi 7600 parole del un mio podcast (la <a href="https://www.avvocati-e-mac.it/podcast/58">puntata 58</a> sul legal prompting) in pochi secondi.</p>
<p>Se te lo domandi i risultati non sono paragonabili a quelli di <em>NotebookLM</em> ma è un confronto impari: quello locale di Apple è un modello da 3B di parametri che non è paragonabile a Gemini.</p>
<p>L’altra cosa che mi ha stupito, sul fronte dei riassunti ed in generale dei modelli locali di <em>Apple Intelligence</em>, è che parlano bene l’italiano; circostanza questa da non dare per scontata.</p>
<p>Concludo questa parte segnalando una importante avvertenza: oltre on-device e private cloud compute, è presente l’opzione di utilizzare <strong>chatGPT</strong> (da quel che ho letto online la versione 4 e non la 5 – allo stato). Per chi lavora nel settore legale tuttavia questa opzione, sicuramente migliore a livello di risultati, è però sconsigliata se si utilizzano documenti o informazioni riservate.</p>
<h3>2.2 Trascrizione locale con Comandi Rapidi</h3>
<p>Altra aspetto interessante, ma su cui mi dilungherò poco qui, è la nuova azione di Comandi Rapidi che permette la trascrizione dell’audio. Ho già parlato in dettaglio in <a href="https://avvocati-e-mac.it/blog/2025/7/10/scrittura-aumentata-con-lintelligenza-artificiale">questo articolo</a> (punto 3) dei potenziali usi della trascrizione da audio a testo, ho anche in programma di scrivere un articolo più approfondito al riguardo ed ho già registrato la <a href="https://www.avvocati-e-mac.it/podcast/64">puntata 64 di Compendium</a> (che uscirà a fine mese) sul tema.</p>
<p>Qui mi interessa sottolineare come grazie ad Apple esiste una soluzione chiavi in mano e relativamente semplice per fare queste cose e, credo, non vada sottovalutata come possibile opzione.</p>
<h3>2.3 Spotlight rivisitato e migliorato</h3>
<p>Concludo, non per importanza, con <strong>Spotlight</strong>.</p>
<p>Per chi non lo sapesse <em>Spotlight</em> è uno strumento molto flessibile di macOS che tutti gli utenti dovrebbero conoscere; <a href="https://support.apple.com/it-it/guide/mac-help/mchlp1008/mac">qui</a> trovi le informazioni principali di quello che puoi fare usando la scorciatoia a tastiera <strong>⌘ + SPAZIO</strong>. </p>
<p>Personalmente, da smanettone, l’ho abbandonato da tempo ed attribuito a <a href="https://www.obdev.at/launchbar">Launchbar</a> il <strong>⌘ + SPAZIO</strong>. C’è invece chi usa <a href="https://www.alfredapp.com">Alfred</a> e (i più alla moda) <a href="https://www.raycast.com/">Raycast</a>.</p>
<p>Quest’anno tuttavia <em>Spotlight</em> potrebbe riprendere (non credo, allo stato) il <strong>⌘ + SPAZIO</strong>. </p>
<p>Apple, infatti, un po' a sorpresa ha introdotto svariate funzioni molto interessanti per <em>Spotlight</em>. Come con tutti i launcher è difficile spiegare a parole ma <a href="https://9to5mac.com/2025/06/10/macos-26-spotlight-gets-actions-clipboard-manager-custom-shortcuts/">ti rinvio a questo articolo in italiano</a> con alcuni video esplicativi.</p>
<p>Io ci ho giocato un po', testando inserimento automatico di Promemoria e, seppur non super intuitivo, ha sicuramente delle potenzialità.</p>
<p>La cosa più interessante è che, se gli sviluppatori implementeranno nei loro programmi <a href="https://developer.apple.com/documentation/appintents/">App intent</a>, questi potranno essere integrati direttamente in <em>Spotlight</em> ampliando a dismisura le capacità di questo sistema.</p>
<p>Io per ora continuo a volare usando la sola tastiera con <a href="https://www.obdev.at/launchbar">Launchbar</a> …</p>
<h2>In conclusione</h2>
<p>Come sempre il mio suggerimento è di attendere un minimo ad aggiornare all’ultimo sistema operativo di Apple. Ad ogni buon conto suggerisco sempre di eseguire un backup del sistema prima di aggiornare e, possibilmente, aggiornare solo una delle macchine con cui si lavora; sconsiglio caldamente di aggiornare per chi ha solo una macchina di lavoro e, in caso di problemi, si troverebbe in emergenza se il sistema non funzionasse più correttamente. </p>
<p>Non credo ci siano funzioni “che ti cambiano la vita” ma sicuramente c’è un miglioramento nella qualità della vita quotidiana.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto, sentito o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b45fd35c-3046-4bfa-b6c9-184594a90813/macOS+26+Tahoe+-+considerazioni+a+caldo.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">macOS 26 Tahoe: considerazioni a caldo</media:title></media:content></item><item><title>Partecipazione podcast: SNAP 316 “Strumenti imperfetti”</title><category>News</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 28 Jul 2025 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/7/28/partecipazione-podcast-snap-316-strumenti-imperfetti</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:688718e3acf2e4715c93eaac</guid><description><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c0a29494-442e-43c5-870d-0f9525ad77b3/Partecipazione+podcast+-SNAP+316+%E2%80%9CStrumenti+imperfetti%E2%80%9D.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Solo per segnalarti che ho fatto due chiacchiere con l’amico <a href="https://marchdotnet.wordpress.com">Roberto Marin</a> sul suo podcast <a href="https://www.spreaker.com/podcast/snap-architettura-imperfetta--2949759">SNAP: architettura imperfetta</a> un podcast del network <a href="https://runtimeradio.com">RunTime Radio</a>.</p>
<p><a href="https://www.spreaker.com/episode/strumenti-imperfetti-apple-ai-procreate-316--67100193">Qui trovi la puntata 316</a> dove abbiamo chiacchierato di Apple (ho registrato la mia parte su iPad con iPadOS 26 beta), del mio set-up di Intelligenza Artificiale e di tanto altro … insomma è stata una chiacchierata non solo per architetti.</p>
<iframe src="https://widget.spreaker.com/player?episode_id=67100193&amp;theme=light&amp;chapters-image=true" width="100%" frameborder="0" data-preserve-html-node="true" title="Strumenti Imperfetti - Apple AI Procreate | 316" height="200px"></iframe>]]></description></item><item><title>Scrittura “aumentata” con l’Intelligenza Artificiale</title><category>Intelligenza Artificiale</category><category>automazione</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Thu, 10 Jul 2025 13:45:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/7/10/scrittura-aumentata-con-lintelligenza-artificiale</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:686f7bc391c389332e968555</guid><description><![CDATA[In questo articolo ti mostro come è possibile utilizzare l’IA per dettare 
un testo, farlo riconoscere e generare una prima bozza su cui poi lavorare.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Recentemente mi sono imbattuto in <a href="https://sixcolors.com/post/2025/05/whisper-is-an-ai-powered-jet-engine-for-writing/">questo articolo di Six Colors</a>.</p><p>L’autore, John Birmingham, racconta come ha utilizzato <a href="https://github.com/openai/whisper">Whisper</a> e gli LLM per velocizzare la propria scrittura dettando il testo di un romanzo, facendolo “sbobinare” da Whisper e poi correggerlo e renderlo “presentabile” con un Modello Linguistico di grandi dimensioni (LLM).</p><p>Visto che il 10 Luglio 2025 devo tenere un intervento, come relatore, in un convegno a Reggio Calabria organizzato dall’A.N.F. locale e dall’Ordine ho voluto fare un rapido test di questa metodologia di lavoro.</p><h2>1. Premessa: Aumentare la tua voce</h2><p>L’approccio interessante di questo metodo ed il motivo per cui mi ha incuriosito è che utilizza i punti forti dei due sistemi di intelligenza artificiali utilizzati.</p><h3>1.2 Whisper per convertire audio in testo</h3><p>Whisper è un ottimo strumento per convertire l’audio in testo; oltre alla semplice “sbobinatura” il modello aggiunge la punteggiatura.</p><p>Personalmente, ormai da mesi, utilizzo <a href="https://ulti.media/transcriber/">Transcriber</a>, l’app dell’amico Alex Raccuglia, per trascrivere tutte le puntate del mio <a href="https://www.avvocati-e-mac.it/podcast">podcast Compendium</a>. La versione <em>Large 3</em> funziona decisamente bene nel riconoscere il testo in italiano. Come sempre il riconoscimento del testo non è perfetto al 100%.</p><p>Nell’immagine che segue ti mostro la trascrizione della parte iniziale della <a href="https://www.avvocati-e-mac.it/podcast/56">puntata 56 di Compendium</a>.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png" data-image-dimensions="1838x1378" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=1000w" width="1838" height="1378" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba837919-f1d2-436d-9c4c-ebf67526081a/01-test-ep-56.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di testo trascritto dal file MP3 del mio podcast</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>1.3 LLM per creare una prima bozza</h3>
<p>I Large Language Model (LLM) sono strumenti linguistici ottimi per revisionare e correggere un testo. In particolare se, invece di chiedergli di creare da zero un testo, gli passi un testo già creato le c.d. “allucinazioni” sono minime e, visto che gli LLM sono “esperti” dei linguaggi, sono anche ottimi strumenti per revisionare un testo; soprattutto un testo “parlato” che deve essere reso “leggibile”.</p>
<p>Utilizzando quindi questa capacità degli LLM è possibile passargli il testo della trascrizione e convertirlo in una prima bozza scritta.</p>
<p>Ovviamente il risultato sarà una prima bozza e poi dovrà essere revisionata ed ottimizzata con un lavoro manuale ed umano ma, per chi ama dettare, è sicuramente una manna dal cielo a livello di efficienza e relativa semplicità.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png" data-image-dimensions="1524x1040" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=1000w" width="1524" height="1040" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b4939a46-ff44-4d6c-b185-f16dad00ef96/02-conversione-testo-in-articolo.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di come la trascrizione del podcast è stata “convertita” in articolo da Gemini</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>1.4 Aumentare la tua voce</h3>
<p>Questo metodo, quindi, non demanda all’IA il ragionamento o la scrittura, è la tua voce ed il tuo pensiero lo scritto finale, ma utilizza l’IA per creare una prima bozza ben scritta (formalmente) e ti permette di dettare e ragionare a voce alta.</p>
<p>Tra l’altro registrare la propria voce oggi giorno è qualcosa di molto semplice visto che, a prescindere da personaggi – come il sottoscritto – che hanno la loro attrezzatura professionale per registrare la voce, tutti dispongono di uno smartphone e, così facendo, chiunque è in grado di registrare la propria voce.</p>
<h2>2. Avvertenza 🚨</h2>
<p>Io non ho mai usato in modo estensivo la dettatura vocale e, invece, amo scrivere con la tastiera, <strong>non ho</strong> quindi <strong>modo di testare in concreto questo metodo in un contesto legale</strong>; tuttavia, il modo più semplice che ho trovato per fare delle <strong>prove</strong> è stato <strong>usando le trascrizioni dei miei podcast</strong>, che già avevo sotto mano, e che, come vedrai nel proseguo dell’articolo, hanno dato risultati iniziali di buona qualità.</p>
<h2>3. Trascrizione audio locale ed utilizzo di LLM online nel mondo legale</h2>
<p>La cosa interessante di questo metodo è che Whisper funziona in locale (richiede o una scheda grafica dedicata, se sei su Windows o Linux, o un Apple Silicon se sei su Mac) ed è open-source.</p>
<p>Per i temerari quindi è possibile scaricarlo e farlo andare a riga di comando. Per i meno temerari si può far affidamento su applicazioni a pagamento, come <a href="https://goodsnooze.gumroad.com/l/macwhisper">MacWhisper</a> o <a href="https://ulti.media/transcriber/">Transcriber</a>, o aspettare macOS 26 / iOS 26 / iPadOS 26 (presumibilmente a Settembre 2025), in cui, tra le varie cose, c’è un azione di Comandi Rapidi che esegue la trascrizione di un file audio.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png" data-image-dimensions="1684x1538" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=1000w" width="1684" height="1538" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/9b057215-29e9-438f-96fb-0afc33f2d214/03-trascrizione-compendium-comandi-rapidi.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di comando rapido su macOS 26 Tahoe di trascrizione di un mio podcast</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  













































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg" data-image-dimensions="1179x2556" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=1000w" width="1179" height="2556" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2082d012-0c28-41b9-9aea-37a8b79ccef1/04-memo-vocali-trascrizione.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Opzione di trascrizione Memo Vocali sul mio iPhone 16 con Apple Intelligence</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>L’amico <a href="https://marchdotnet.wordpress.com">Roberto Marin</a> mi ha fatto notare che, già su macOS Sequoia, è possibile trascrivere i <a href="https://support.apple.com/it-it/guide/voice-memos/welcome/mac">Memo Vocali</a> (attivando Apple Intelligence) così come su iOS 18 o iPadOS 18.</p>
<h3>3.1 Metodi di revisione con IA</h3>
<p>Quale che sia il metodo con cui hai fatto la trascrizione ora viene il momento di passarla ad un LLM.</p>
<p>Ho fatto vari esperimenti e ti suggerisco <strong>2 differenti opzioni</strong>.</p>
<p>La <strong>prima</strong>, che vedremo in questo punto, è la soluzione che ho implementato subito ed a costo zero: <strong>utilizzare NotebookLM</strong> di Google.</p>
<p>Siccome avevo già caricato in <a href="http://notebooklm.google.com/">NotebookLM</a> le trascrizioni dei miei podcast, perché lo utilizzo per fare le sinossi di ogni puntata, mi è venuto facile fare i primi test con questa soluzione gratuita.</p>
<p>I vantaggi di questo strumento sono le enormi capacità di contesto (le puntate dei miei podcast sono lunghe dai 30 minuti all’ora) e la possibilità di generare grosse quantità di testo.</p>
<p>Giusto come metrica, la puntata 56 ha generato una trascrizione di circa 5.500 parole e, conseguentemente la conversione in “articolo” o testo scritto è arrivato a generare circa 5.200 parole.</p>
<p>Queste dimensioni richiedono l’utilizzo di LLM con grosse finestre di contesto (Gemini – l’LLM sotto la scocca di NotebookLM) riesce a gestire contesti di 1 milione di tokens (circa 600 mila parole).</p>
<h3>3.2 Il prompt</h3>
<p>Per i miei esperimenti iniziali ho copiato quanto proposto da John Birmingham approntando alcune (minime) modifiche. Non essendo l’audio stato registrato per essere convertito in un articolo ho dovuto aggiustare il tiro dell’LLM con il prompt.</p>
<blockquote>
<p>Mi chiamo Filippo Strozzi. Ho registrato questo post sul blog usando un'intelligenza artificiale di riconoscimento vocale, quindi vaga un po' ed è pieno di errori di trascrizione e artefatti. Puoi ripulirlo mantenendoti il più vicino possibile al tono e al contenuto previsto? Formatta il documento in markdown, dividendo l’articolo in titoli e sottotitoli, seguendo il cambio degli argomenti. I titoli ed i sottotitoli devono essere intriganti e spiegare in modo chiaro il contenuto di quella sezione del testo.</p>
</blockquote>
<p>In coda all’articolo trovi la trascrizione rielaborata da NotebookLM e, se vuoi, puoi confrontarla con l’audio della puntata che trovi <a href="https://www.avvocati-e-mac.it/podcast/56">qui</a>.</p>
<h3>3.3 Test con svariati LLM: il secondo metodo</h3>
<p>Il <strong>secondo metodo</strong> è simile al primo ma con alcune variazioni.</p>
<p>Ho fatto ulteriori test (per curiosità intellettuale) sia con LLM locali che con altri LLM online.</p>
<p>In questi casi il modo più semplice è quello di inserire la trascrizione in un tag XML e poi aggiungere il prompt che ti ho mostrato sopra.</p>
<p>Il tag XML che abitualmente uso è il seguente:</p>
<pre><code>&lt;documento&gt;

… testo che si vuole passare all’LLM …

&lt;/documento&gt;</code></pre>
<p>Quella che ti ho mostrato, infatti, è la modalità più semplice per creare una sorta RAG fatta in casa senza componenti aggiuntivi (la RAG solitamente si usa per testi più lunghi da cui si estrapolano i passaggi rilevanti per la domanda).<br>Ovviamente <strong>in base al testo da revisionare occorre una finestra di contesto maggiore o minore</strong>. Per la trascrizione del podcast, purtroppo, i modelli locali che ho testato non davano buoni risultati.<br>Infatti abitualmente questi modelli restituiscono, nella migliore delle ipotesi, risposte tra le 500 e le 700 parole che, per testi lunghi non è sufficiente. Giusto solo come informazione: abitualmente vengono dette circa 100 parole al minuto quindi con gli LLM locali si possono ottenere revisioni soddisfacenti per registrazioni di massimo 5 minuti. Non molto direi …</p>
<p>Occorre, quindi, utilizzare LLM online. Io ho fatto qualche test e devo dire che <strong>non avuto buoni risultati con chatGPT 4o e Sonnet 3.5</strong> mentre con Sonnet 3.7 e Gemini Flash 2.5 sì.</p>
<h2>4. Suggerimenti per l’uso nel mondo legale</h2>
<p>Ora, fino a questo punto, ti ho parlato di convertire un podcast in una sorta di articolo … ma per il mondo legale?</p>
<p>Sì, credo che una prima bozza sia realizzabile anche per il mondo legale; tuttavia <strong>ci vogliono alcune accortezze</strong>.</p>
<p>Anzitutto, posto che la prima stesura deve per forza di cose passare da LLM online ti suggerisco, se devi inserire dei nomi nell’atto che vuoi dettare, di <strong>utilizzare degli pseudonimi</strong>. </p>
<p>In particolare, posto che in ogni caso <em>i cognomi o nomi di aziende non sempre vengono trascritti correttamente</em>, ti consiglio di <strong>usare delle parole semplice come pseudonimi</strong>. Ad esempio potresti utilizzare: Lupo, Volpe, Orso, Tigre e Leone e segnando a parte le corrispondenze con i nomi reali.</p>
<p>Una volta che l’LLM ti restituirà la prima bozza potrai copiarla nel tuo programma di video scrittura o editing preferito e <strong>sostituire questi pseudonimi</strong> (che difficilmente comparirebbero in un atto legale) con i nomi reali delle parti utilizzando le basilari <strong>funzioni di trova e sostituisci</strong> nel testo, che qualsiasi programma di video scrittura possiede.</p>
<h3>4.1 Dare indicazioni specifiche all’LLM per la formattazione del documento</h3>
<p>Un’altra cosa da tenere presente è che, visto la particolarità del mondo legale, può venir comodo dare indicazioni specifiche all’LLM di come formattare correttamente una citazione giurisprudenziale o, caso molto frequente, la citazione di documenti.</p>
<p>Un possibile prompt parziale potrebbe essere questo: <code>quando dico “documento 1” tu sostituiscilo con “(doc. 1)</code>.</p>
<p>Per pura curiosità, mentre finivo di scrivere questo articolo, ho “dettato” al microfono un mio atto e fatto qualche veloce esperimento. I risultati preliminare (e frettolosi) sono stati positivi ma non tali da condividerli qui.</p>
<h2>5. Costi</h2>
<p>A chiusura di tutto ti voglio segnalare che, anche a livello di costi, l’utilizzo di LLM online non è particolarmente dispendioso.</p>
<p>Se infatti utilizzando NotebookLM (allo stato) non ci sono spese (se si utilizza la versione gratuita) anche utilizzando LLM come Claude Sonnet o chatGPT i costi sono relativamente irrisori.</p>
<p>ChatGPT 4o, che mi ha dato i risultati peggiori, è stato il più costoso con 0,187 $.</p>
<p>Di seguito ti mostro i miei consumi in <a href="https://openrouter.ai">OpenRouter</a>.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png" data-image-dimensions="728x578" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=1000w" width="728" height="578" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e634441-9dd8-4882-87a9-f22fcbbe19ae/05-open-router-costi.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di costi per le 2/3 generazioni che ho fatto attraverso OpenRouter</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>OpenRouter è un interessante piattaforma che rivende servizi IA conto terzi e che mi permette di utilizzare differenti servizi solo per l’utilizzo che ne voglio fare, evitando i costosi (ed inutili) abbonamenti mensili a quel provider piuttosto che a quell’altro.</p>
<h2>In conclusione</h2>
<p>Quest’articolo è nato in modo abbastanza estemporaneo, l’ho scritto velocemente, ed in ragione di approfondimenti che ho fatto per una lezione che terrò / ho tenuto a Reggio Calabria.</p>
<p>Credo tuttavia che questo approccio sia molto promettente nel suo utilizzo generale così come nel più specifico ambito giuridico.</p>
<p>Personalmente sto ragionando di ottimizzare questo metodo ed implementare il sistema per poter proporre i contenuti audio e video che genero su differenti piattaforme riducendo in modo sensibile il tempo che devo dedicare alla conversione da un medium audio/video allo scritto.</p>
<p>Di seguito ti lascio il testo generato da NotebookLM della <a href="https://www.avvocati-e-mac.it/podcast/56">puntata 56</a>. Più avanti conto di creare con questo metodo 2 articoli sul legal prompting, revisionando però la prima bozza generata dall’IA.</p>

<hr /><h1>Il Legal Prompting Sotto la Lente</h1>
<p>Benvenuto e benvenuta, sono Filippo Strozzi e stai ascoltando Avvocati e Mac Compendium. Compendium è un podcast in cui condivido le mie esperienze quotidiane con la tecnologia, in particolare quella Apple.</p>
<p>Questa è la puntata 56, nella quale ti parlerò delle mie prime approfondite ricerche sull'argomento del legal prompting. Oggi, non ci saranno comunicazioni di servizio, anche perché questa puntata è stata registrata con largo anticipo rispetto alla sua pubblicazione, presumibilmente intorno agli inizi di giugno.</p>
<h2>Legal Prompting: Un'Indagine Necessaria</h2>
<p>È da tempo che, da diverse parti, mi sono state richieste informazioni, e alla fine anch'io mi sono incuriosito su ciò che viene definito legal prompting. Dato che in Italia esistono alcuni corsi relativamente costosi, e poiché ero interessato ad approfondire l'argomento, anche per capire se valesse la pena proporre un corso in futuro, questa e le prossime puntate di Compendium saranno dedicate a questo tema, avendone già preparata un'altra che sarà più ricca di contenuti.</p>
<h2>Oltre le Superfici: La Mia Ricerca sul Legal Prompting</h2>
<p>Questa è una puntata introduttiva sull'argomento, ma la mia intenzione è quella di condurre una ricerca approfondita su internet, soprattutto nel mondo anglosassone, dove molte persone, inclusi io stesso, traggono abitualmente ispirazione. Per chi segue la diretta o la differita su YouTube, in questo momento sto mostrando un primo screenshot del mio taccuino su Notebook LM, dove sto progressivamente raccogliendo documenti, video, articoli e altro materiale, proprio per elaborare ciò che verrà.</p>
<p>Non so ancora cosa ne uscirà, sono ancora nella fase di studio e decisione. Oggi, in questa puntata, ci concentreremo su che cos'è il legal prompting e se questa tipologia di approccio al prompting per i Modelli Linguistici di Grandi Dimensioni (LLM) abbia effettivamente un senso logico.</p>
<h2>Decodificare il Legal Prompting: L'Arte di Interrogare l'IA per il Diritto</h2>
<p>La domanda principale è: che cos'è il legal prompting?</p>
<p><strong>Legal prompting</strong>, o "Prompt Engineering Legale", si riferisce al processo di creazione e ottimizzazione di istruzioni, ovvero prompt, da fornire a sistemi di intelligenza artificiale, in particolare agli LLM come ChatGPT e altri simili, al fine di ottenere risposte pertinenti, accurate e utili per l'attività legale.</p>
<h2>Al Confine tra Diritto e Intelligenza Artificiale: Peculiarità del Legal Prompting</h2>
<p>Il primo interrogativo che mi sono posto è se il legal prompting abbia senso e quali differenze ci siano tra esso e il normale prompt engineering, che è sostanzialmente la stessa cosa, ma in un ambito più generico. Nella pratica, almeno dai miei approfondimenti, le regole dell'uno si applicano prevalentemente anche all'altro, quindi a mio parere le differenze sono effettivamente poche, se non l'aspetto specifico del dominio legale.</p>
<h3>Il Gap tra Common Law e Civil Law: Una Sfida per gli LLM</h3>
<p>Sull'aspetto specifico del dominio legale, lo ripeterò all'infinito: ci sono due problemi molto significativi. In primo luogo, gli LLM non conoscono il diritto civile italiano; anche se ci sono alcune differenze, ho notato, ad esempio, che Gemma3 di Google conosce qualcosa del diritto italiano, quindi parte del materiale di training ha incluso elementi del codice civile e di procedura civile italiano. Tuttavia, questa conoscenza è frammentaria, quindi è necessaria molta cautela. Il problema principale è che gli LLM non conoscono "di diritto" il nostro sistema, e se lo conoscono, è prevalentemente il diritto di Common Law, che è differente dal nostro (Civil Law). Sebbene alcuni istituti fondamentali siano simili in entrambi i sistemi, il Common Law si basa sul principio del precedente, mentre il Civil Law si fonda sul principio della norma e quindi del codice o della legge. Questa è già una problematica piuttosto rilevante.</p>
<p>Inoltre, gli LLM non comprendono il "legalese" italiano, e quindi una serie di parole e di linguaggio specifico del diritto legale italiano li confonde. Personalmente, ritengo che sia più utile imparare il cosiddetto legal prompting, ovvero in generale come formulare correttamente le domande agli LLM, piuttosto che intraprendere una formazione verticale specifica sul mondo legale. Ad oggi, non ho mai affrontato qualcosa di verticale sul mondo legale, eppure riesco a far funzionare abbastanza bene gli LLM. Ovviamente, si può sempre migliorare, ma la mia impressione personale attuale è questa: per fare un buon prompt engineering, e quindi anche un buon legal prompting, <strong>è necessario conoscere e capire come funzionano gli LLM</strong>.</p>
<h3>L'Evoluzione Costante: Perché l'Aggiornamento è Fondamentale</h3>
<p>Ritengo che sia fondamentale mettere mano all'informatica, perché finché non si inizia a interagire con questi sistemi, a capire come funzionano e a fare dei test, è impossibile imparare. Io ho giocato con questi sistemi per circa un anno e ora sto iniziando a ottenere risultati utili nel mondo del lavoro. L'altro aspetto è che questo settore è attualmente di grande attualità e, soprattutto, in continua evoluzione, quindi è essenziale tenersi sempre aggiornati. Ho acquistato un Mac Studio circa un anno fa, prima della Pasqua dell'anno scorso. Un anno fa, con il Mac Studio riuscivo a fare determinate cose; oggi, a distanza di un anno, con la stessa macchina e senza aver modificato nulla di significativo (forse ho imparato un paio di trucchi per ottimizzare, ma in percentuali irrisorie), il mio Mac Studio riesce a fare cose che un anno fa non era in grado di fare. Questo non perché io sia particolarmente bravo o perché il Mac Studio sia magicamente migliorato, ma perché i modelli open source che attualmente girano sul Mac Studio hanno capacità che prima non avevano, e tutto questo è avvenuto in un solo anno. Lo stesso vale, ovviamente, per i modelli online di grandi dimensioni, anzi forse a maggior ragione. Dal mio punto di vista, essendo questa una materia in piena evoluzione, il mio suggerimento è quello di adottare un approccio che definisco "olistico", che prediligo in questo frangente. Adesso analizzeremo le mie principali perplessità sull'argomento.</p>
<h2>Il Dilemma della Riservatezza: Perché Usare LLM Online è Rischioso</h2>
<p>Innanzitutto, ciò che ho notato nel panorama italiano e non solo, è che moltissimi utilizzano i modelli online per il legal prompting. Qui, a mio avviso, si presentano due problemi significativi. Il primo è legato alla <strong>riservatezza e alla segretezza dei documenti</strong>. Per rendere questi strumenti utili nel mondo legale, è ovvio che bisogna caricare i documenti e porre domande nelle chat di questi LLM. Il problema è che non si sa come vengano gestiti i dati che si caricano. Ti darò due esempi recentissimi di situazioni che mi lasciano perplesso (non perché le funzioni non siano interessanti, ma perché dimostrano quanto possa essere pericoloso fidarsi di questi soggetti e caricare documenti non nostri, ma dei clienti).</p>
<h3>Chat GPT e la Memoria delle Conversazioni: Una Lama a Doppio Taglio</h3>
<p>Il primo esempio è una cosa molto interessante che ha fatto Cloud for Education. In questo sistema, pensato per l'educazione, sono stati condotti studi anonimizzati delle chat per osservare come gli studenti (e non solo) utilizzano Cloud in ambito educativo. Questo, però, cosa significa? Significa che, a prescindere da tutto, hanno potuto estrapolare tutte le chat di una determinata fascia di soggetti, che hanno dovuto identificare in qualche modo, e le hanno potute analizzare statisticamente. Per fare ciò, ovviamente, significa che avevano accesso a tutte le chat. Anthropic ha dichiarato di averlo fatto in modo anonimizzato, ma la questione è sempre la stessa: non si sa sinceramente cosa possano fare e cosa facciano effettivamente questi sistemi, gestiti da soggetti terzi.</p>
<p>Una seconda novità, di cui ti parlo per rifletterci insieme, è la cosiddetta "memoria di Chat GPT". In sostanza, una delle nuove funzionalità introdotte a metà aprile 2025 da OpenAI è la possibilità per Chat GPT di conoscere le <code>n</code> chat precedenti avute, e quindi di fornire potenzialmente risposte più mirate, proprio in virtù del fatto che Chat GPT "conosce" le conversazioni passate. Queste conversazioni passate diventano una sorta di storico a cui Chat GPT può attingere per "conoscerti" meglio e fornirti maggiori informazioni su te stesso.</p>
<p>Probabilmente nella newsletter di questo mese ho incluso un articolo o un link a un articolo in cui uno scrittore ha interrogato Chat GPT su questo, e l'IA gli ha fornito i temi principali di cui l'autore aveva dialogato con essa. Questa è anche una funzionalità utile, ma d'altra parte è ovviamente anche inquietante. Ancora di più, se utilizzi questi strumenti per lavoro, quindi con materiale che dovrebbe essere riservato e segreto, possono sorgere dei problemi. Anche perché, come sempre, gli account non sono sicuri al 100%, e quindi potrebbe esserci chi accede con le tue credenziali e riesce, in maniera abbastanza semplice a questo punto, a conoscere di cosa hai parlato con Chat GPT nel passato, e quindi anche eventuali informazioni riservate dei clienti. In sintesi, il sistema dei modelli online è oggettivamente rischiosissimo per me. Infatti, come prassi, ho dato priorità all'utilizzo dei modelli offline.</p>
<h2>L'Efficacia del Prompting: Online vs. Offline</h2>
<p>Il secondo punto critico, almeno dal mio punto di vista, per l'utilizzo degli LLM online nel legal prompting, è che questi ultimi sono diventati relativamente intelligenti. Questo significa che, se è vero che con gli LLM locali utilizzare un prompt specifico e con determinate caratteristiche aiuta e può ottimizzare le risposte, per gli LLM online (come Chat GPT, Cloud, Gemini e così via), questa necessità si riduce, salvo un livello base di prompt engineering. Proprio perché questi strumenti, sia per i parametri molto elevati sia per i modelli addestrati con la "catena di pensiero", rielaborano in parte il prompt ricevuto e ragionano su di esso, abitualmente, a meno che non sia formulato un prompt completamente inefficace, <strong>non richiedono prompt particolarmente complicati</strong>.</p>
<p>Recentemente, ad esempio, mi interessava fare una cosa particolare, di cui parlerò nella puntata successiva a questa. Ho trovato online un prompt enorme, credo 20-25 righe, per realizzare l'operazione. Ho provato a utilizzarlo, ma non mi dava risultati eccellenti; l'ho semplificato molto e alla fine ho ottenuto il risultato desiderato. Nel mio caso specifico, era più un problema legato alla trascrizione del video e quindi la sintesi necessitava di una buona base dati, ma alla fine con un prompt di 3-4 righe dove ho specificato cosa volessi che facesse, Gemini non ha avuto problemi a darmi un buon risultato, o comunque il risultato che mi aspettavo. Ovviamente, come al solito, sono sempre necessari dei piccoli ritocchi; non si può prendere la risposta di un LLM e usarla direttamente.</p>
<h2>Le Insidie dell'Intelligenza Artificiale nel Diritto: Allucinazioni e Mancanza di Conoscenza Specifica</h2>
<p>L'altra considerazione è che, a mio parere, c'è un limite a ciò che si può fare con il semplice prompting, e vi sono svariati limiti. Il limite più grande è quello delle cosiddette <strong>allucinazioni</strong>. Ora, ci sono casi anche italiani di cronaca recente, come la sentenza del Tribunale delle Imprese di Firenze, dove un collega ha sostanzialmente redatto una memoria citando giurisprudenza inesistente, perché generata da Chat GPT. Una cosa simile era già capitata negli Stati Uniti, probabilmente circa un anno fa, il caso più noto è quello dell'avvocato di New York.</p>
<p>Le allucinazioni fanno parte del sistema: in sostanza, quando l'LLM non ha una risposta adeguata nella sua "conoscenza", <strong>genera testo</strong>. Genera testo in modo che la risposta sia verosimile, quindi la citazione sembra una citazione di una sentenza vera della Cassazione, ma poi, se la si verifica, non esiste, o peggio ancora, esiste ma non dice ciò che dovrebbe, perché l'IA se l'è inventato. Ricordo ancora, all'inizio, quando giocavamo, chiedevo informazioni su articoli di Avvocati e Mac, e mi forniva link a articoli che sapevo benissimo non esistevano, perché non li avevo mai scritti.</p>
<p>Questo è effettivamente uno dei grandi problemi, e l'altro problema significativo è che gli LLM non conoscono il diritto italiano, in particolare il linguaggio legale italiano. Per questo, dal mio punto di vista, qualsiasi attività legale seria <strong>necessita comunque di un intervento di RAG (Retrieval Augmented Generation)</strong>. Tu fornisci all'LLM informazioni sul diritto italiano, sia direttamente nel prompt sia attraverso documenti veri e propri. Con il RAG, il livello di allucinazione diminuisce notevolmente, anche se non si elimina completamente. Una volta che hai "alimentato" l'IA con le informazioni necessarie, i risultati iniziano a essere abbastanza pertinenti, anche se è sempre necessario prestare attenzione e una revisione è sempre doverosa.</p>
<h3>Il Ruolo Cruciale del RAG: Alimentare l'IA con la Conoscenza Giuridica</h3>
<p>Giusto per farti un esempio, mentre cercavo, ho trovato vari articoli (che puoi trovare facilmente, anche perché non c'è molto sul legal prompting in italiano). Voglio presentarti un prompt che, pur essendo scritto bene, presenta un problema. Per chi sta guardando la diretta, la parte che mi interessa di più è quella in cui si specifica nel prompt cosa l'IA deve fare: "analizza attentamente il testo che ti fornirò, effettua una revisione completa che comprenda" e segue un elenco di cose. Nell'elenco c'è "segnalazione e correzione di eventuali criticità giuridiche, ad esempio riferimenti normativi errati, formulazioni giuridiche, lacune motivazionali". Sulle lacune motivazionali, forse l'LLM potrebbe anche arrivarci, ma sui riferimenti normativi errati e sulle formulazioni giuridiche, è evidente che se dai questo prompt in pasto a un modello come Chat GPT e simili, senza avergli fornito altre informazioni, il rischio che ti dia risultati non corretti è elevato proprio perché non conosce il diritto. Presumere che un LLM online conosca le criticità giuridiche è oggettivamente un grave azzardo, e i rischi che generi qualcosa di falso o non vero sono elevati.</p>
<h3>Strumenti Professionali: Un Compromesso per l'Affidabilità</h3>
<p>In secondo luogo, in questo caso specifico, l'obiettivo era una revisione di una costituzione di parte civile in un processo penale. Questo significa che la correzione a cui mirava questo prompt era di un atto giuridico. Presumibilmente, caricavi l'intero atto con i nomi delle parti e quant'altro, oppure dovresti caricare l'atto senza i nomi delle parti, anonimizzando tutto, facendo quindi un doppio lavoro per poi reintegrarlo. Questo è ovviamente un problema. Se io facessi una cosa del genere, personalmente avrei delle perplessità sul buon esito; anzi, una soluzione di questo tipo tende a portare a risultati negativi per quanto abbiamo detto prima.</p>
<p>Inoltre, poiché gli LLM non conoscono il diritto italiano ed è necessaria l'integrazione di RAG, in quest'ottica forse la via migliore è quella di cercare di utilizzare strumenti professionali. Strumenti professionali che, nella sostanza, non amo, proprio perché sono sistemi chiusi e quindi non sai esattamente cosa abbiano fatto e da quali basi dati stiano acquisendo le informazioni. Però, in questo caso, almeno hanno le banche dati giuridiche da cui estrapolano informazioni, e quindi tendenzialmente dovrebbero riuscire a fornirti risultati migliori.</p>
<h2>I Modelli Linguistici Locali: Vantaggi di Sicurezza, Sfide Tecniche e di Costo</h2>
<p>Infine, consideriamo anche questo: io sostengo molto l'utilizzo degli LLM locali. Gli LLM locali hanno una serie di vantaggi perché puoi fornirgli in pasto ciò che vuoi, ma non uscendo dalla tua rete internet e non stabilendo collegamenti online, non ci sono problemi relativi alla possibilità che i dati che fornisci all'LLM escano dal tuo ufficio.</p>
<h3>Prestazioni e Finestra di Contesto: I Limiti dell'Hardware</h3>
<p>I problemi sono vari, almeno dalla mia esperienza personale. Innanzitutto, <strong>la potenza di calcolo è limitata</strong>. Come ti dicevo, ho il mio Mac Studio con 32 GB di RAM, dotato di 24 GPU e così via. Sì, riesco a fare delle cose, anche in ambito legale, ma ho dei vincoli. E anche se, come ti dicevo all'inizio della puntata, questo computer nel complesso riesce a fare cose che un anno fa non riusciva a fare, ha comunque dei limiti notevoli che io conosco. Per restituirmi, ad esempio, una sintesi di una sentenza della Cassazione, i modelli buoni che mi danno ottimi risultati impiegano 3-4 minuti. Quindi, non è un'operazione così rapida. Ho mostrato in vari articoli le ricerche che ho fatto fare online a questi sistemi, e per ottenere una prima bozza di ricerca, hanno impiegato anche decine di minuti. Quindi, questo è un limite significativo.</p>
<p>Il secondo limite è la <strong>finestra di contesto</strong>. Ne abbiamo parlato nelle puntate precedenti, ma semplificando molto rapidamente, è la memoria operativa dell'LLM. Se posso dargli, per esempio, l'intero codice di procedura civile, difficilmente un LLM, soprattutto locale, riesce a caricarlo interamente nella memoria operativa e quindi a trovare tutte le norme di riferimento. Anche qui è necessaria una RAG. Sono riuscito a farlo perché ho caricato anche il codice civile all'interno di un LLM, e i risultati, come dicevo forse in puntate precedenti, non sono stati affatto male, anche se non ottimali. È però necessario utilizzare una RAG, e se voglio semplicemente fornire un blocco di testo da cui l'IA possa imparare a fare cose, comunque non riesco ad andare oltre i 10.000 token circa su questo computer che ha 32 GB di RAM. Ovviamente, più RAM si ha, più contesto si riesce a inserire, ma questo inizia a impattare sulle risorse hardware. E anche se utilizzo la tecnologia Apple, e anche se rispetto alla tecnologia dei PC normali ha un rapporto costo-prestazioni inferiore, un Mac Studio M4 base costa circa 4000 euro. Un Mac Studio M3 Ultra con 512 GB di RAM (quindi con un contesto considerevole e una quantità di credo 80 GPU) ha un costo intorno ai 12.000 euro. Quindi, sono investimenti che non sono alla portata di tutti e sono scarsamente abbordabili per molti.</p>
<h3>Scalabilità e Competenze: Le Barriere all'Adozione Diffusa</h3>
<p>Inoltre, l'altro grosso problema di queste soluzioni è la <strong>scalabilità</strong>. Finché ci sono solo io a utilizzare il mio Mac Studio (che ho pagato molto meno, comprandolo usato), o eventualmente un familiare o un collaboratore, e non effettuiamo ricerche contemporaneamente, allora ce la caviamo bene. Il cosiddetto "downtime", quando nessuno lo utilizza, è elevato e quindi è più probabile che non ci sia conflitto. Tuttavia, una macchina di questo genere in uno studio di 5-6-7-8 avvocati sarebbe limitata, proprio perché il rischio di fare ricerche in contemporanea e di bloccare le risorse è alto. Ovviamente, se una ricerca utilizza il 100% del sistema, chi vuole fare un'altra ricerca non ci riesce o viene rallentato a livelli notevoli.</p>
<p>Infine, l'ultima considerazione da fare è che, pur apprezzando molto tutta questa tecnologia, non è per tutti. Molte persone non hanno la volontà o il tempo di investire risorse per imparare, per "giocare", per valutare quale sia la soluzione migliore. Quindi, è necessaria una certa <strong>competenza tecnica</strong>. Ho imparato a utilizzare Docker, ho imparato a utilizzare una serie di sistemi; bisogna capire come funziona il sistema "sotto il cofano" altrimenti non si riesce a farlo.</p>
<h2>Consulenze Professionali: Il Mio Supporto alla Digitalizzazione e all'AI nel Diritto</h2>
<p>Un piccolo spazio che chiamiamo pubblicitario: recentemente un amico notaio mi ha chiesto una consulenza per approfondire l'utilizzo dell'intelligenza artificiale nella sua attività lavorativa, per chiarire i rischi, le potenzialità e, in generale, per non rimanere indietro. Se non lo sai, te lo dico: sono disponibile per consulenze sulla digitalizzazione e l'implementazione di IA negli studi professionali. Come sempre, la formazione di Avvocati e Mac sarà gratuita e aperta, come la stai ascoltando. Ma se sei interessato o hai necessità di approfondimenti specifici e personalizzati, puoi affidarmi una consulenza professionale per formazione uno-a-uno (per ora solo in videoconferenza) o per piccoli gruppi di persona, o per studiare ed elaborare flussi di lavoro ottimizzati per te. Nel caso, usa la mia email professionale, facilmente reperibile sia sull'albo online dell'Ordine degli Avvocati di Reggio Emilia a cui appartengo, sia direttamente sull'Albo Generale del CNF. Prima o poi, anche se è ancora presto, ho in programma di aggiungere un modulo specifico sul mio sito professionale, <a href="http://www.studialegaleastrozzi.it">www.studialegaleastrozzi.it</a>. Chiusa la parentesi pubblicitaria.</p>
<h2>Il Senso del Legal Prompting e gli Strumenti per Iniziare</h2>
<p>Il legal prompting ha sostanzialmente un suo senso logico, almeno da quanto ho analizzato io, per gli LLM locali. Ha senso perché gli LLM locali sono un po' meno sofisticati di quelli online, e inoltre permette di lavorare con documenti riservati o segreti dei propri clienti, ma ovviamente <strong>necessita di una RAG</strong>. Apro e chiudo una parentesi: ho parlato nella puntata 55 di strumenti per lavorare con Apple Silicon in maniera abbastanza semplice per tutti. Te li ricito, ma ti rimando alla puntata 55 per una descrizione più approfondita di cosa fanno e perché alcune cose mi piacciono e altre meno.</p>
<h3>Strumenti Consigliati per Sfruttare l'AI sul Tuo Mac</h3>
<p>I tre strumenti che consiglio, in ordine di difficoltà (dal meno difficile al più difficile/performante), sono:</p>
<ul>
<li><strong>Misty</strong>: il primo, che in sostanza ti offre un ambiente unico e funzionale anche per fare RAG.</li>
<li><strong>NZing LLM</strong>: che non apprezzo tantissimo.</li>
<li><strong>LLM Studio</strong>: che ho dimenticato di inserire nella scheda, ma ora lo aggiungo.</li>
<li>E infine, quello che utilizzo io (anche se non specificato, si intende il più avanzato tra quelli che permettono di operare in modo efficace).</li>
</ul>
<h2>L'Intelligenza Artificiale al Servizio del Legale: Applicazioni e Prospettive</h2>
<p>Un'altra cosa da tenere ben presente, anche per valutare quanto valga la pena approfondire il legal prompting, è che la cosa più interessante nel mondo legale è la cosiddetta <strong>distillazione o riassunto</strong>. Ovvero, l'attività di fornire documenti agli LLM e ottenere un riassunto o persino estrapolare le informazioni rilevanti per l'utente, senza dover consultare un documento di grandi dimensioni. Anche qui, in base alla tipologia di documento, può valere la pena utilizzare strumenti online o offline. Gli LLM locali hanno comunque dei limiti sulla dimensione del documento, quindi se c'è molto testo è sicuramente meglio utilizzare gli LLM online, a meno che i documenti non siano riservati.</p>
<p>Abitualmente, se devo studiare una normativa particolarmente complessa o che si interfacci con altre normative, o addirittura normativa con articoli e giurisprudenza, utilizzo Notebook LM, ma comunque utilizzo un LLM online, sostanzialmente perché in quel caso posso fornire una quantità enorme di documenti, tanto non sono riservati e quindi non mi interessa caricarli. Anche lì, le domande che faccio sono più che altro legate all'estrapolazione di conoscenza da questi documenti. Invece, se devo analizzare documenti dei clienti, allora con i limiti del caso, utilizzando eventualmente il RAG, posso utilizzare gli LLM locali.</p>
<p>I documenti adatti agli LLM online, come dicevo, sono ad esempio:</p>
<ul>
<li>sentenze e provvedimenti giudiziari</li>
<li>leggi o testi simili</li>
<li>manuali e testi giuridici</li>
<li>condizioni generali anche di contratti reperibili online (es. un contratto delle condizioni generali di una polizza assicurativa, solitamente un PDF di 30-40 pagine, può essere comodo scaricarlo e farlo elaborare all'LLM per le ricerche).</li>
</ul>
<h3>Dal Riassunto all'Albero Decisionale: Ottimizzare l'Analisi Documentale</h3>
<p>Una cosa che pochi conoscono ma che, a mio avviso, è utilissima, e che anzi nella prossima puntata probabilmente andremo a vedere più in dettaglio, è la <strong>conversione in formati e strutture dati differenti</strong>. Questo sistema permette di fare cose anche relativamente avanzate. L'esempio che ti faccio oggi è quello di "predigerire" contenuti di documenti complessi. Nel caso specifico, ne parlerò più in dettaglio, ma questa è una cosa molto interessante secondo me: ciò che sto mostrando a video è il cosiddetto <strong>albero decisionale</strong>. In sostanza, ho fornito in pasto una sentenza della Cassazione all'LLM (credo fosse Notebook LM in questo caso, ma funziona sia in locale che online). Cosa succede? Richiedendo di generare un albero decisionale, l'LLM estrapola l'intero sistema e crea una specie di flowchart, cioè una rappresentazione grafica di ciò che è stato fatto in quella sentenza. Quindi, ti pone la domanda e ti fornisce informazioni utili, generalizzando da un certo punto di vista, ad esempio: "il decreto non si sofferma su questo scenario" o "valutare l'efficacia dell'effettiva esecuzione del rapporto di lavoro". Ti rimando all'immagine online che è ben visibile a schermo per spiegare il funzionamento di questi sistemi.</p>
<p>La possibilità di estrapolare informazioni da un documento e di strutturarle in varie maniere è notevole. L'albero decisionale è forse la cosa più avanzata, e infatti mi ha positivamente stupito nelle fonti che ho trovato. Un altro modo molto interessante di fare queste cose è, per esempio, quello di estrapolare informazioni e strutturarle come <strong>tabella</strong>, rendendo così il documento più facile da visualizzare.</p>
<p>Un altro argomento utile per il legal prompting è la <strong>ricerca giuridica</strong>, che può essere sia aumentata (ho tenuto un'Office Hour il 17 aprile 2025 proprio sull'argomento, dove ho mostrato quasi tutto, quindi non mi dilungherò ulteriormente) sia online. Nel senso che gli LLM possono essere impiegati online per condurre ricerche sul materiale presente su internet. Con dei limiti, in estrema sintesi, ma per esempio una prima bozza con eventuale ricerca delle fonti online, da approfondire in seguito, è molto utile. E anche qui, ti lascerò nelle note dell'episodio il link a un mio articolo su come fare specificamente queste cose.</p>
<p>Può essere interessante anche il discorso della <strong>revisione</strong>. Abbiamo visto all'inizio il prompt che presentava alcuni rischi. Ovviamente, con maggiori precauzioni in questi casi, personalmente negli atti giuridici utilizzerei gli LLM solo localmente. Se proprio si vogliono utilizzare gli LLM online, che effettivamente da un certo punto di vista sono più performanti, allora conviene fare quella che si chiama <strong>pseudonimizzazione dei documenti</strong>. Va bene caricare il documento come è stato scritto, ma si utilizzano sempre appellativi come "l'appellante", "l'appellato", "il ricorrente", "l'attore", "il convenuto", in modo che i dati non siano chiari. Anche qui, però, ci sarebbe sempre da fare un lavoro certosino di controllo, oppure si vanno a togliere tutti i nominativi e tutti i riferimenti che possono individuare i soggetti. Quindi, anche questa attività richiede, in questi termini, lavoro di preparazione. Estemporaneamente, si potrebbe immaginare di utilizzare gli LLM locali per cercare di anonimizzare un documento in automatico, per poi passare il testo anonimizzato all'LLM online e a quel punto farlo elaborare ulteriormente. Insomma, si possono anche individuare sistemi ibridi.</p>
<h3>L'IA come "Cassa di Risonanza" e Strumento di Brainstorming</h3>
<p>L'ultima cosa che ritengo molto utile, e su cui non molti riflettono, è quella di utilizzare l'LLM come una <strong>cassa di risonanza</strong>. Utilizzare l'LLM per ragionare sui documenti, per formulare ipotesi differenti anche di strategie, anche ipotesi negative (come dicevo nella mia Office Hour), o per valutare contro-argomenti. Questo perché, spesso, l'attività del legale è anche un'attività abbastanza solitaria; c'è poco modo e tempo di confrontarsi con altri. L'LLM, anche qui, personalmente utilizzerei un LLM locale, può avere un suo senso logico utilizzarlo come un assistente virtuale con cui confrontarsi. Non perché ci dia nuovi punti di vista, ma proprio per approfondire il nostro punto di vista e per avere un punto di vista "contrario", ottenendo così un risultato migliore.</p>
<p>Infine, anche per fare una sorta di <strong>brainstorming virtuale</strong>. Per esempio, uno dei modi, a mio parere, molto utili è quello di chiedergli di generare <code>n</code> ipotesi o <code>n</code> idee su un determinato argomento. In questo modo, magari se ne fanno generare 10 o 15. Raramente l'LLM ha spunti di intuito genuino, ma nella quantità c'è la possibilità che alcune di queste ipotesi ti permettano di avere quello spunto in più che poi ti consente di fare ulteriori ricerche, esperimenti e così via.</p>
<h3>Legal Prompting: Una Strategia Integrata per il Futuro del Diritto</h3>
<p>Siamo giunti alla fine. Come sempre, ti segnalo che il legal prompting è una delle strategie, a mio parere, da conoscere. Non è l'unica strategia, e fermarsi solo a quella è un po' limitante; anzi, rischia di darti una visione abbastanza errata di come utilizzare gli LLM. In una futura puntata, perché probabilmente ci sarà una puntata intermedia con un argomento totalmente differente (non posso parlare sempre e solo di intelligenza artificiale), approfondirò le regole di base del prompt engineering. Queste regole, a mio avviso, sono necessarie da conoscere e diventano utili nel quadro generale di tutto quello che ti ho raccontato fino ad adesso. Ovvero, inserendo il prompt engineering come una delle cose da sapere, uno dei "trucchi" da avere a portata di mano per gestire l'attività legale coadiuvata e "aumentata", come mi piace chiamarla, con l'intelligenza artificiale.</p>
<h3>Resta Connesso con Avvocati e Mac</h3>
<p>Come sempre, se ti è piaciuto quello che hai ascoltato, ti propongo di iscriverti alla newsletter. Ogni mese invio un link e il link ad articoli che ho trovato interessanti che ho raccolto nel corso del mese. Ti avviso per ogni nuovo podcast, ogni nuovo articolo o eventualmente video. Come sempre, qui trovi le note dell'episodio con tutti i link e riferimenti, inclusa la sinossi generata dall'intelligenza artificiale di questa puntata, sul sito <a href="https://www.avocati-e-mac.it/podcast/56">https://www.avocati-e-mac.it/podcast/56</a>. Alla prossima!</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8910cdd9-8aa7-4bbb-9c9c-0c04d7636281/Scrittura+aumentata+con+Intelligenza+Artificiale.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Scrittura “aumentata” con l’Intelligenza Artificiale</media:title></media:content></item><item><title>17 Aprile 2025: Ricerche giurisprudenziali “aumentate” con IA</title><category>Intelligenza Artificiale</category><category>automazione</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 14 Apr 2025 07:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/4/14/17-aprile-2025-ricerche-giurisprudenziali-aumentate-con-ia</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:67fb7a5047580c00d3f8c26d</guid><description><![CDATA[Nella OfficeHour del 17/04/2025 alle ore 14:30 ti parlerò di come ho 
utilizzato NotebookLM per velocizzare una ricerca giurisprudenziale su 
sentenze estratte della Banca Dati del Merito (gratuita ed aperta a tutti), 
velocizzando di molto il mio flusso di lavoro.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<h1>OfficeHour: Ricerche giurisprudenziali “aumentate” grazie all'IA</h1>
<p>È con piacere che ti comunico la ripresa delle <a href="https://www.avvocati-e-mac.it/blog/2022/11/14/aggiornamento-canale-youtube-ed-office-hour">OfficeHour</a>. Le <em>OfficeHour</em> sono una via di mezzo tra un webinar ed un articolo. Ti parlo, per un'oretta, di qualcosa che ho fatto / scoperto facendo un approfondimento.</p>
<p>Il 17 Aprile in diretta, o nei giorni successivi in differita, ti parlerò di come ho usato la <a href="https://bdp.giustizia.it/">Banca Dati del Merito</a> estrapolare un tot di sentenze potenzialmente legate al mio caso specifico e <a href="https://notebooklm.google.com">NotebookLM</a> per esaminarle velocemente ed estrapolarne la conoscenza per me rilevante.</p>
<p><a href="https://youtube.com/live/0JBKDEN4570?feature=share">Qui</a>, trovi il link alla diretta su YouTube e sotto trovi incorporato il video quando sarà stato registrato.</p>


  
    <center>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen src="https://www.youtube.com/embed/0JBKDEN4570?si=OGGXfgGcJTmID1eL" width="560" frameborder="0" title="YouTube video player" height="315"></iframe>
</center>
  

<p>Come sempre, se ti è piaciuto quel che hai letto, ascoltato o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>.<br>Ti avvertirò dei nuovi articoli che pubblico (oltre ai <a href="https://www.avvocati-e-mac.it/podcast">podcast</a> e video su <a href="https://www.youtube.com/c/AvvocatieMac">YouTube</a>) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho trovato interessanti.</p>
<h2>Sinossi dell’OfficeHour</h2>
<p>Generata dalla trascrizione del video e usando NotebookLM (molto meta 😜).</p>
<h2>Capitolo 1: L'approccio all'Intelligenza Artificiale nell'attività professionale</h2>
<ul>
<li><strong>Filippo Strozzi</strong> introduce l'argomento della puntata: le <strong>ricerche giuridiche potenziate dall'intelligenza artificiale</strong>, in particolare con l'ausilio di <strong>Notebook LM</strong>.</li>
<li>L'obiettivo principale della puntata è esplorare l'utilità pratica dell'intelligenza artificiale nel lavoro quotidiano, basandosi sull'esperienza diretta del relatore.</li>
<li>Viene sottolineato come l'approccio sia sperimentale, volto a comprendere concretamente i vantaggi e i limiti dell'IA nell'attività professionale.</li>
<li>La filosofia del relatore riguardo all'IA è orientata all'utilizzo di strumenti personali e alla comprensione del loro funzionamento interno, diffidando delle "black box" di prodotti commerciali spesso costosi e con una visione limitata.</li>
<li>L'intelligenza artificiale viene paragonata a un <strong>praticante che svolge una ricerca preliminare</strong>, utile per velocizzare il lavoro successivo di verifica e approfondimento.</li>
<li>Viene evidenziata l'importanza di effettuare <strong>ricerche negative</strong> per bilanciare i risultati ottenuti con l'IA e di <strong>verificare sempre le fonti</strong> per evitare errori, come citazioni inventate.</li>
</ul>
<h2>Capitolo 2: Il caso pratico: ricerca di giurisprudenza specifica</h2>
<ul>
<li>L'episodio presenta un <strong>caso pratico di ricerca giuridica</strong> per un cliente, incentrato sul diritto, senza rivelare dati sensibili.</li>
<li>La ricerca era mirata a trovare un "ago nel pagliaio", ovvero <strong>giurisprudenza specifica</strong> su una situazione particolare e con caratteristiche uniche: un <strong>contratto di agenzia con tentata vendita</strong>.</li>
<li>Il relatore spiega di essere riuscito a trovare giurisprudenza pertinente, sottolineando come questo sia stato un <strong>caso di successo</strong>, ma anche potenzialmente fortuito, poiché dipendeva dall'esistenza di precedenti sul caso specifico.</li>
<li>Viene descritta l'evoluzione delle ricerche giuridiche, passando dai libri e repertori cartacei alle banche dati online.</li>
<li>Si discute dell'importanza di conoscere e utilizzare le <strong>banche dati giuridiche gratuite</strong>, come la <strong>Banca Dati del Merito</strong> (contenente i provvedimenti delle corti di merito italiane dal 2016) e Tal Giure (per la giurisprudenza di Cassazione).</li>
<li>Vengono illustrati i vantaggi della Banca Dati del Merito, come la sua ampiezza e l'aggiornamento quasi in tempo reale dei provvedimenti.</li>
<li>Vengono anche evidenziati i limiti della Banca Dati del Merito, come la mancanza di massimazione ufficiale e la necessità di "spulciare" un gran numero di provvedimenti.</li>
</ul>
<h2>Capitolo 3: La strategia della "pesca a strascico" e l'intervento dell'Intelligenza Artificiale</h2>
<ul>
<li>Viene introdotta la strategia definita "<strong>pesca a strascico</strong>", consistente nell'effettuare ricerche ampie per raccogliere un vasto numero di sentenze potenzialmente rilevanti.</li>
<li>A seguito di questa prima fase, si è reso necessario l'intervento dell'<strong>intelligenza artificiale per effettuare una scrematura</strong> e individuare i provvedimenti più pertinenti.</li>
<li>Viene descritto il processo di ricerca nella Banca Dati del Merito, utilizzando parole chiave come "agenzia" e "tentata vendita", e il successivo affinamento della ricerca includendo la "controversia in materia di lavoro".</li>
<li>Dopo aver scaricato un numero significativo di sentenze (circa 30-40), si è passati all'utilizzo di <strong>Notebook LM</strong> per l'analisi.</li>
</ul>
<h2>Capitolo 4: Utilizzo di Notebook LM per l'analisi giurisprudenziale</h2>
<ul>
<li>Viene presentata <strong>Notebook LM</strong> come uno strumento gratuito (nella sua versione base attuale) di Google, basato su Gemini, con una <strong>vasta finestra di contesto</strong>.</li>
<li>Le funzionalità principali di Notebook LM includono la gestione e l'approfondimento della conoscenza tramite l'analisi di documenti caricati (PDF, TXT, Markdown, audio).</li>
<li>Viene sottolineata la capacità di Notebook LM di <strong>distillare informazioni da documenti di grandi dimensioni</strong> e di rispondere a domande specifiche basandosi sul contenuto delle fonti.</li>
<li>Il relatore descrive il processo di caricamento delle sentenze in Notebook LM come "fonti" o "origini".</li>
<li>Viene illustrato come, dopo aver caricato le sentenze, sia possibile <strong>interagire con i documenti tramite la chat</strong>, ponendo domande specifiche.</li>
<li>Un "<strong>trucco</strong>" utilizzato consiste nel <strong>selezionare singole fonti</strong> per dialogare specificamente con il contenuto di una determinata sentenza, anziché interrogare tutte le fonti contemporaneamente.</li>
<li>Viene mostrato il <strong>prompt</strong> utilizzato per estrapolare informazioni chiave dalle sentenze, focalizzandosi sul riconoscimento o meno di un contratto di agenzia con tentata vendita rispetto a un contratto di lavoro subordinato.</li>
<li>Vengono presentati i <strong>risultati ottenuti da Notebook LM</strong>, evidenziando la capacità di sintetizzare le informazioni in modo strutturato e di fornire riferimenti precisi ai passaggi rilevanti del testo originale.</li>
<li>La possibilità di <strong>salvare i risultati come "note"</strong> all'interno di Notebook LM viene menzionata.</li>
</ul>
<h2>Capitolo 5: Risultati, verifiche e considerazioni finali</h2>
<ul>
<li>Viene condivisa l'esperienza positiva del caso di specie, dove Notebook LM ha contribuito a individuare <strong>sentenze favorevoli</strong> alla tesi del relatore, inclusa una pronuncia della Cassazione che ha confermato l'orientamento della Corte d'Appello.</li>
<li>Si riconosce che il risultato ottenuto è stato un successo, ma non necessariamente replicabile in ogni situazione.</li>
<li>È stato effettuato un <strong>test successivo</strong> chiedendo a Notebook LM di identificare autonomamente le sentenze pro e contro, ottenendo risultati sorprendentemente accurati.</li>
<li>Tuttavia, viene sottolineata l'importanza di <strong>non fidarsi ciecamente</strong> dell'IA e di effettuare sempre verifiche, poiché in alcuni casi le risposte possono essere errate o fuorvianti.</li>
<li>La necessità di <strong>testare e comprendere i limiti degli strumenti di IA</strong> viene ribadita come fondamentale per un utilizzo consapevole ed efficace.</li>
<li>In conclusione, l'intelligenza artificiale, utilizzata con attenzione e metodo, si rivela uno <strong>strumento utile per ottimizzare la ricerca giuridica</strong>, consentendo di ottenere risultati che potrebbero essere difficilmente raggiungibili con i soli metodi tradizionali o con le banche dati a pagamento.</li>
<li>Viene evidenziato come l'evoluzione rapida di questi strumenti richieda un <strong>aggiornamento e una sperimentazione costanti</strong> per sfruttarne appieno le potenzialità.</li>
</ul>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/980c3e97-387e-4a60-8c3a-05c4f0656372/OfficeHour+17+Aprile+2025.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">17 Aprile 2025: Ricerche giurisprudenziali “aumentate” con IA</media:title></media:content></item><item><title>Creare preventivi da avvocato velocemente con NotebookLM</title><category>Intelligenza Artificiale</category><category>automazione</category><category>Organizzazione ufficio</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Tue, 08 Apr 2025 07:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/4/8/creare-preventivi-da-avvocato-velocemente-con-notebooklm</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:67f25d97c02de16016d5306a</guid><description><![CDATA[In questo articolo ti mostro come ho usato NotebookLM (ovvero 
l’intelligenza artificiale) per creare velocemente preventivi da avvocato 
utilizzando il D.M. n.55/2014.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Anni fa mi ero dedicato ad un progetto per creare un’applicazione web per fare preventivi, che poi non ha avuto sbocchi reali.</p><p>Come tutte le opere “incompiute” mi è rimasto il pallino e recentemente mi sono divertito a provare ad ottenere un risultato simile con l’intelligenza artificiale.</p><p>In questo articolo eviterò di raccontare le svariate iterazioni, con più o meno soddisfazioni, o i vari problemi e ti parlerò della soluzione a <em>costo zero</em> che ho trovato: NotebookLM.</p><p>Del mio sistema per fare preventivi ne ho già accennato in anteprima sulla mia <a href="https://us12.campaign-archive.com/?u=d5cc1dd818aaf16276c0c20d6&amp;id=1b8f3becf9">newsletter di febbraio</a> ma oggi voglio andare più nel dettaglio e spiegarti tutti i dettagli.</p><h2>0. Il problema del preventivo</h2><p>Come avvocato e professionista una delle prime cose che capita, prima di ricevere un incarico, è di fare un preventivo.</p><p>È anche una delle attività più tediose che mi trovo a fare ed è <a href="https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:legge:2012-12-31;247~art13">espressamente prevista dalla legge</a>.</p><p>Col tempo ho sviluppato degli automatismi per rendere questa attività meno tediosa e più utile; ad esempio ho un modello di preventivo dove inserisco già tutte le clausole contrattuali “standard” così che, una volta in cui il cliente abbia accettato il preventivo sottoscrivendolo, io ho una maggior tutela e so già quale ricavo posso aspettarmi da una determinata posizione.</p><p>Ciò detto mi occorre sempre aprire la versione aggiornata del <a href="https://www.normattiva.it/uri-res/N2Ls?urn:nir:ministero.giustizia:decreto:2014-03-10;55">D.M. N.55/2014</a> e cercare la tabella relativa, prendere le singole voci, sommarle e ragionare sull’aumento o diminuzione di alcune voci in base alla complessità o semplicità della vicenda.</p><p>Inoltre, altra cosa altamente tediosa, devo guardare le eventuali spese ipotizzabili.</p><p>E se invece fosse possibile chiederlo ad un LLM e ricevere rapidamente una risposta?</p><h2>1. La versione base di NotebookLM gratuita</h2><p>Se ascolti il mio <a href="https://www.avvocati-e-mac.it/podcast">podcast Compendium</a> saprai che negli ultimi mesi sto “abusando” di <a href="https://notebooklm.google.com/">NotebookLM</a> di Google.</p><p><strong>NotebookLM</strong> nasce come sistema RAG (Retrival-Augmented Generation) per “dialogare” con documenti in vario formato (PDF, file di testo, pagine web, video su Youtube, audio) con svariate funzioni.</p><p>La cosa interessante di questo servizio di Google è che lo si può utilizzare gratuitamente (fino a 100 notebook e 50 documenti a notebook) oltre che a pagamento (con limiti maggiori).</p><p>Per le mie attuali necessità la versione gratuita è più che sufficiente. Inoltre mi permette di utilizzare Gemini come LLM sottostante, con l’ulteriore vantaggio di avere la sua finestra di contesto enorme, fino a 1 Milione di tokens.</p><h3>1.1 Precauzioni da utilizzare</h3><p>Come sempre devo darti una nota di avvertimento.</p><p><strong>I documenti che carichi su <em>NotebookLM</em> non devono essere riservati o segreti</strong>. Per cui non ti consiglio di inserire informazioni o documenti provenienti dal tuo cliente ma di utilizzare <em>NotebookLM</em> per generare velocemente una bozza di preventivo da poi, eventualmente, copiare sul computer e personalizzare.</p><p>Secondariamente, ma non a livello di importanza, ti ricordo che gli LLM tendono ad inventarsi le cose (sono sistemi di generazione statistica del testo), c.d. allucinazioni, per cui è <strong>fondamentale controllare sempre i risultati dell’LLM</strong> anche quando si fa una RAG, come nel caso di NotebookLM.</p><h2>2. Il procedimento</h2>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg" data-image-dimensions="3462x2384" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=1000w" width="3462" height="2384" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1c357e5d-1630-4534-a648-151f2cc2a1e4/01-notebookLM-schermata-di-apertura.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di pagina di accesso a NotebookLM con i vari taccuini</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Il procedimento per aver un preventivo è relativamente semplice:</p>
<ul>
<li>Caricare il D.M. n. 55/2014 in NotebookLM come nuova fonte (punto 1);</li>
<li>Utilizzare la chat per richiedere il preventivo (punto 2).</li>
</ul>
<p>Come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg" data-image-dimensions="3462x2384" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=1000w" width="3462" height="2384" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6fb9dbdf-de83-4b03-8f08-d8b76c139659/02-notebookLM-caricare-una-fonte.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di caricamento fonte e chat in NotebookLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Ci sono tuttavia alcuni problemi / zone di attrito che ti voglio segnalare.</p>
<p>Anzitutto, utilizzando questo semplice metodo, controllare la bontà della risposta di Gemini è più complesso, come si vede nell’immagine sottostante.</p>
<p>Per controllare infatti la fonte, in NotebookLM, basta cliccare sulla nota a fianco della voce (nel caso del mio esempio, come mostrato al punto 1 dell’immagine sottostante).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png" data-image-dimensions="3352x1950" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=1000w" width="3352" height="1950" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c5eb939-d291-4ed8-b98e-36c6412ecefe/03-notebookLM-DM-55-2014-come-PDF.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di controllo del preventivo con il D.M. n.55/2014 come PDF</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Quando si carica un PDF in NotebookLM (punto 2), tuttavia, questo viene convertito in un file di testo semplice e si perde la formattazione (soprattutto) delle tabelle che, nel nostro caso, sono la fonte della “conoscenza” che ci interessa poter verificare facilmente (come si vede al punto 3 dell’immagine soprastante).</p>
<h2>3. Convertire il PDF del D.M 55/2014 in markdown</h2>
<p>Vediamo quindi come renderci la vita più semplice e, contemporaneamente, ottenere risultati migliori.</p>
<p>Come ti dicevo Gemini e gli LLM in generale utilizzano sotto la scocca il testo semplice ed in particolare il markdown.</p>
<p>I PDF, seppur un ottimo strumento per condividere testo formattato ed impaginato, non sono altrettanto utili da dare in pasto direttamente agli LLM ed anzi presentano un problema perché estrarre il testo dal PDF crea artefatti e non è un’operazione lineare.</p>
<p>Nel mondo open-source legato all’intelligenza artificiale sono stati sviluppati vari progetti per ottimizzare l’estrazione del testo dai PDF e non solo (anche file .docx, .pptx etc …).</p>
<p>Nel nostro caso ti segnalo 2 progetti che ho testato e ritengo molto interessanti: </p>
<ul>
<li><a href="https://github.com/dsrdatta/docling_v2">Docling</a> e</li>
<li><a href="https://github.com/VikParuchuri/marker">Marker</a>.</li>
</ul>
<p>Nella sostanza questi progetti, il primo sviluppato da IBM ed il secondo da una singola persona, si occupano di <strong>convertire nel miglior modo un PDF in markdown</strong> di modo che gli LLM lo possano digerire ed utilizzare al massimo.</p>
<p>In particolare, per quel che ci interessa qui, permettono di convertire le tabelle del D.M. N.55/2014 in tabelle correttamente formattate in markdown.</p>
<p>Questo, oltre che a rendere più facile digerire i dati ad LLM meno potenti rispetto a Gemini (ad esempio modelli locali), nel nostro caso permette di visualizzare e verificare facilmente se Gemini ha correttamente individuato la voce della tabella corretta ed il relativo scaglione di riferimento.</p>
<p>Nell’immagine sottostante ti mostro il cambiamento che si ottiene in NotebookLM passandogli il D.M. n.55/2014 convertito in Markdown.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png" data-image-dimensions="3358x1940" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=1000w" width="3358" height="1940" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/671afc76-7127-45d5-82b4-f97ebefe9d69/04-esempio-verifica-con-DM-markdown.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di preventivo e verifica di controllo</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>In questo articolo, per motivi di spazio, non è mia intenzione spiegarti come installare l’uno o l’altro programma ma nella documentazione dei progetti è spiegato e, se ti interessa avere una interfaccia grafica, ti suggerisco di utilizzare <em>Marker</em>.</p>
<p>Io personalmente utilizzo la versione CLI (Command Line Interface), a riga di comando.</p>
<p>Ti segnalo tuttavia il comando base da utilizzare con <code>docling</code> perché non è così scontato:</p>
<pre><code>docling input.pdf --image-export-mode placeholder</code></pre>
<p>dove occorre modificare <code>ìnput.pdf</code> con il nome del file che si vuole convertire. La parte finale del comando serve a specificare di inserire, se sono presenti immagini nel PDF, un segnaposto invece che l’immagine stessa convertita in base64.</p>
<p>Se non vuoi preoccuparti della conversione del D.M. n.55/2014, <a href="https://www.icloud.com/iclouddrive/005EgYxXRe8JLWuQa7xU0K98A#DM_10-03-14_55_testo_coord_mod_2022_mod_rev1">qui</a> lo trovi già convertito in markdown.</p>
<h2>4. Aggiungere il Testo Unico sulle Spese di Giustizia</h2>
<p>Ultimo tocco finale, ma la tua fantasia e le tue necessità sono il limite, è possibile inserire tra le fonti anche il <a href="https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:2024-11-14;175">Testo Unico sulle spese di Giustizia</a>.</p>
<p>In questo modo, oltre ad aver il preventivo dell’attività è possibile (ma i risultati non sono sempre perfetti) avere anche i conteggi per il Contributo unificato. </p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png" data-image-dimensions="1832x1176" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=1000w" width="1832" height="1176" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/738c836c-a11f-4e92-82a9-81566605a3aa/05-notebookLM-spese-di-giustizia.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di inserimento anche delle spese di giustizia del Contributo Unificato</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Di seguito ti mostro un esempio di risultato finale.</p>
<p>NotebookLM non solo mi ha fatto il preventivo ma ha anche fatto i conti.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png" data-image-dimensions="2162x2302" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=1000w" width="2162" height="2302" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/eeac331e-7804-4f11-a5df-e6529ec24d19/06-esempio-preventivo.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di semplice preventivo generato da NotebookLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come si può vedere le voci sono corrette.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png" data-image-dimensions="1548x1246" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=1000w" width="1548" height="1246" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1cc3e04c-58ce-485e-a14b-97375b8def47/07-controllo-voci.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di controllo dei compensi</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>5. Potenziali ulteriori sviluppi e migliorie</h2>
<p>Per il futuro mi riprometto di fare qualcosa di più e, se possibile, far generare già un preventivo con tutte le clausole contrattuali e le variabili LaTeX per poi poterlo completare offline con i dati del (potenziale) cliente. Ma non ci ho ancora messo mano in modo serie e, credo, possa interessare di meno.</p>
<h2>6. Considerazioni finali</h2>
<p>Quello che ti ho descritto è un processo che si può utilizzare in altri contesti: immaginalo per esempio su un menù di ristorante o su catalogo con prezzi, giusto per fare degli esempi.</p>
<p>È ovvio che se invece i dati sono riservati la cosa si complica un pochino. Personalmente ho fatto un po' di esperimenti ma, rispetto a modelli blasonati come Gemini, chatGPT o DeepSeek R1, i modelli locali fanno più fatica a estrapolare correttamente i dati dalle tabelle in markdown anche creando dei prompt specifici anche se <a href="https://ollama.com/library/qwq">QWQ</a> è riuscito a darmi dei buoni risultati.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png" data-image-dimensions="2196x1718" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=1000w" width="2196" height="1718" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c497f55c-7b0f-41af-b5c4-4ebbb7fc538d/08-Open-WebUI-QWQ-preventivo.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di “preventivo” fatto con QWQ in locale</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Attualmente però i risultati sono inferiori a quelli che può produrre NotebookLM. Infatti, oltre a non avere un modo così intuitivo per controllare il preventivo (io per mostrarti che la risposta era corretta ho dovuto aprire il PDF del D.M. n. 55/2014) i tempi per restituire la “semplice” risposta mostrata nell’immagine soprastante sono elevati: più di 2 minuti.</p>
<p>Da ultimo, lo sottolineo di nuovo, non è tutto oro quel che luccica. Ti ho fatto vedere degli esempi di successo ma il sistema non è perfetto al 100% e non sempre le risposte erano corrette. Sicuramente è un sistema che velocizza molto l’interazione per creare un preventivo ma, allo stato, non è un sistema completamente sicuro ed automatico per farlo.</p>
<h2>In conclusione</h2>
<p>Spero con questo articolo di averti dato uno spunto per sperimentare con gli LLM. Non credo che questi sistemi siano ancora pronti per la produzione ma iniziano ad essere un ottimo aiuto per semplificare e velocizzare alcuni aspetti dell’attività professionale.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4723e0f4-f7b0-465d-807e-cd8a0ba90610/Creare+preventivi+da+avvocato+velocemente+con+NotebookLM.002.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Creare preventivi da avvocato velocemente con NotebookLM</media:title></media:content></item><item><title>Ricerche giuridiche online con IA? Iniziano ad essere possibili</title><category>Intelligenza Artificiale</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Thu, 03 Apr 2025 07:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/4/2/ricerche-giuridiche-online-con-ia-iniziano-ad-essere-possibili</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:67ed395161d3395c58b24f15</guid><description><![CDATA[Questo articolo è uno dei primi di una serie dedicata ai miei esperimenti 
dell’utilizzo dell’intelligenza artificiale per lavorare concretamente. In 
questo articolo ti mostro i risultati ottenuti con Open WebUI e SearXNG per 
fare ricerche giuridiche online con gli LLM (in particolare con QWQ).

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Gioco con l’intelligenza artificiale sulla piattaforma Apple da ormai un anno.
Sono cambiate tantissime cose in questo periodo di tempo e se, all’inizio, ero scettico sulle possibilità concrete di utilizzo degli LLM nel mondo legale italiano ora vedo le cose in modo un po’ diverso. In questo articolo ti voglio parlare delle mie ultime scoperte e del perché ritengo che le cose stiano cambiando e molto in fretta.</p><h2>1. Il mio pensiero fino a poco tempo fa …</h2><p>Gli <em>LLM</em>, i modelli linguistici di grandi dimensioni, mi hanno sempre affascinato. Mi sono però reso conto fin da subito che il loro utilizzo nel mondo legale italiano era ed è molto difficile.</p><p>Per i non avvezzi gli LLM sono dei sistemi di predizione del testo (della prossima “parola”). Sono stati addestrati su un numero di parole enorme e grazie a ciò riescono a creare testo verosimile.<br>Tuttavia, siccome la maggior parte dei modelli è stato creato nel mondo anglofono (e più di recente nel mondo cinese), <strong>l’italiano non è mai stata una delle lingue parlate dagli LLM</strong>. Piccola eccezione va fatta per i modelli di <em>MistralIA</em>, società francese e quindi europea, che tra le altre cose ha sempre avuto un occhio di riguardo alle lingue europee come l’italiano e che, allo stato, è la mia scelta preferita per generare testo in italiano.<br>Oltre al problema generale dell’italiano c’è un ulteriore problema specifico, <strong>il linguaggio legale non è “italiano standard”</strong> ma è c.d. <em>legalese</em>.<br>Secondariamente, ma non a livello di importanza, posto che gli <strong>LLM</strong> sono prevalentemente <strong>anglofoni</strong> e <strong>sono stati istruiti anche sul diritto di <em>common law</em></strong> (al contrario del diritto italiano che è di <em>civil law</em>) istituti giuridici noti agli LLM anglofoni possono essere confusi con quelli italiani creando ulteriori problemi.</p><p>Da ultimo gli LLM “conoscono” informazioni solo fino alla data del loro addestramento che, nella maggior parte dei casi, è almeno 6/9 mesi prima del loro rilascio ufficiale.</p><h2>2. RAG: rendere “intelligenti” gli LLM</h2><p>Da sempre quindi ho ritenuto e ritengo che <strong>gli LLM da soli non possano essere usati per l’attività legale</strong> se non uniti all’utilizzo di RAG.<br>Questo acronimo sta per <strong>Retrieval-Augmented Generation</strong> ovvero, tradotto in modo molto libero, “generazione di testo aumentata grazie al contesto”. Ho fatto un <a href="https://www.avvocati-e-mac.it/podcast/50">approfondimento nel mio podcast</a> a cui ti rimando, qui basti sapere che attraverso la <strong>RAG</strong> oltre alla domanda (c.d. prompt) si aggiunge del testo (il contesto) di modo che l’LLM “conosca” le informazioni necessarie per dare una risposta corretta.</p><p>Questo significa dare sentenze, articoli giuridici e altri documenti, agli LLM per poter ottenere risposte più corrette (ma si parla comunque e sempre di risposte generate attraverso testo statistico).</p><p>Era, ed in parte è, quindi necessaria un’attività umana e specialistica per far funzionare correttamente un LLM con la RAG perché se io inserisco documenti non pertinenti la risposta dell’LLM non sarà corretta o, ancora peggio, potrebbe solo sembrare corretta ma non esserlo nella realtà.</p><p>In quest’ottica l’<strong>utilizzo di LLM con RAG è relativamente limitato nel mondo legale</strong> perché senza una grossa base di conoscenza giuridica a monte, da qui pescare le informazioni, gli LLM sono inutili o addirittura controproducenti avendo la caratteristica di inventare testo quando non hanno le informazioni / risposte giuste.</p><p>Anche nel mondo italiano si stanno sviluppando aziende “specializzate” nel fornire servizi di LLM con database giuridici da cui questi possono pescare ma sono servizi che, se funzionano, sono costosi e comunque possono eventualmente solo affiancarsi al lavoro del legale.</p><h2>3. Due novità che possono cambiare tutto</h2><p>Questo è stato lo scenario recente dell’utilizzo degli LLM nel mondo giuridico italiano. 
Sono sicuramente <strong>strumenti utili in specifiche circostanze</strong>: revisione testo, analisi del sentimento, riassunto di testo e/o massimizzazione dei provvedimenti ma nulla di più.</p><p>Sono tuttavia di recente cambiate due cose che, unite, possono forse essere dei fattori di significativo cambiamento.</p><h3>3.1 Ricerche online avanzate con gli LLM</h3><p>Negli ultimi mesi OpenIA, Google e Perplexity (tra le tante) hanno rilasciato funzioni di ricerca online con l’utilizzo degli LLM.<br>In estrema sintesi tutti questi sistemi in base alla domanda dell’utente fanno una ricerca di fonti online e, prese quelle più rilevanti, generano una risposta utilizzando le fonti per alimentare la RAG.</p><p>In aggiunta a questo sistema base, nei mesi scorsi, è stata aggiunta la c.d. <em>deep research</em> o ricerca avanzata (come la chiama Perplexity in italiano).</p><p>Questa tipologia di ricerca sfrutta un sistema più avanzato ed in particolare i modelli linguistici di grandi dimensioni che “ragionano”.</p><h3>3.2 Gli LLM a chain of thought</h3><p>Nel panorama sempre in movimento degli LLM, l'ultima mossa è quella di implementare negli LLM la c.d. <em>chain of thought</em> traducibile come la catena di ragionamento; in sintesi gli LLM prima di dare la risposta definitiva “pensano” ovvero scrivono una risposta iniziale ponendosi delle domande e cercando di darsi delle risposte.<br>Già tempo addietro questo sistema, utilizzato direttamente nel prompt (con frasi del tipo: “Ragiona passo passo”), aveva mostrato una notevole efficacia; ora molti LLM hanno implementato questo sistema direttamente nella fase di fine-tuning quando si insegna all’LLM a rispondere ai prompt degli utenti.</p><p>Si è assistito negli ultimi mesi all’esplosione di questi “nuovi” LLM; per primo OpenIA con o1 e poi gli altri, da ultimo a livello di risultati mediatici, DeepSeek R1.</p><p>I modelli di ragionamento, generando una risposta molto lunga (il “pensiero” e la risposta effettiva) hanno tempi di risposta molto lenti e “consumano” molta energia e tokens.</p><p>Unendo quindi il ragionamento dell’LLM con le funzioni di ricerca online è possibile creare delle ricerche avanzate. In particolare LLM non genera solo una prima ricerca ma ponendosi domande e ragionando su quanto trovato esegue ulteriori ricerche generando risposte più complete e corrette (nella maggior parte dei casi, non è ancora una scienza perfetta quella degli LLM).</p><p>Di seguito ti mostro la catena di ragionamento fatta da Perplexity sul mio quesito.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png" data-image-dimensions="1586x7584" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=1000w" width="1586" height="7584" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d93280de-e5d9-497b-9c48-3d7554799fd1/01-perplexity-deep-research-ragionamento.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Di seguito ti lascio anche la risposta finale di Perplexity.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png" data-image-dimensions="1290x10029" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=1000w" width="1290" height="10029" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ff15e48a-4dfe-41b2-af88-c91b5447bc9e/01bis-perplexity_ricerca_avanzata.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Credo che i risultati parlino da soli. Seppur non ancora perfetti sicuramente sono molto migliori di quanto riuscivano a fare gli LLM precedentemente.</p>
<h2>4. Utilizzare strumenti in locale</h2>
<p>Premetto che non ci sarebbe necessità (per una ricerca giuridica) di lavorare in locale posto che, raramente, si fanno ricerche giuridiche con all’interno dati riservati. Ciò detto non è mia intenzione utilizzare le funzioni a pagamento di Perplexity o altri strumenti anche perché, visto la richiesta di molte risorse, tali strumenti hanno sia dei costi elevati sia dei limiti di utilizzo.</p>
<p>Quindi, con spirito di ricerca, ho provato a fare la stessa ricerca utilizzando LLM locali e strumenti open-source come <a href="https://www.avvocati-e-mac.it/blog/2024/5/5/ollama-come-avere-una-interfaccia-simile-a-chatgpt-con-open-webui?rq=open%20webui">Open WebUI</a>.</p>
<h3>4.1 Ricerca web con Open WebUI e SearXNG</h3>
<p>Fare ricerche online non è abitualmente possibile con gli LLM locali, questo perché ci sono svariati vincoli. La modalità più semplice con Open WebUI è utilizzare <a href="https://duckduckgo.com">DuckDuckGO</a> (motore di ricerca che uso quotidianamente per le mie ricerche online) ma che pone dei vincoli di utilizzo.</p>
<p>Ho scoperto invece il progetto open-source <a href="https://github.com/searxng/searxng">SearXNG</a> e, con un po' di peripezie, sono riuscito ad installarlo e configurarlo per l’utilizzo in connubio con Open WebUI.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg" data-image-dimensions="2418x1692" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=1000w" width="2418" height="1692" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cbb1a0a7-5055-4942-a4b1-e024150e53e2/02-searXNG.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>In questo articolo non andrò nel dettaglio sulla configurazione di Open WebUI per attingere alle ricerche di SearXNG, ma se c’è interesse posso approfondire in un futuro articolo / video.</p>
<p>Qui basti sapere che, grazie a <em>SearXNG</em> ho potuto dare la possibilità ai miei LLM locali di accedere ad una grossa quantità di informazioni online e, come ti mostrerò oltre, i risultati iniziali mi hanno stupito.</p>
<h3>4.2 LLM locale, ricerca online e catena di pensiero</h3>
<p>Qui mi interessa mostrarti i risultati del sistema.</p>
<p>Per avere un risultato paragonabile a quello di perplexity ho scelto di usare <a href="https://ollama.com/library/qwq">QWQ 32B Q4</a> di Alibaba. Mentre scrivo, è il miglior LLM con catena di pensiero che riesco a far girare sul mio <em>MacStudio M1 Max con 32Gb di RAM</em>.</p>
<p>Di QWQ ne ho parlato nella <a href="https://www.avvocati-e-mac.it/podcast/52">puntata 52 del mio podcast Compendium</a> che uscirà il 7 Aprile 2025.</p>
<p>Anzitutto ti mostro la risposta al mio primo prompt che, oggettivamente, aveva qualche problema.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png" data-image-dimensions="2340x2688" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=1000w" width="2340" height="2688" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6684c39f-b1a6-422d-8454-8e2697d2d001/03-risposta_di_qwq_primo_prompt_non_particolarmente_centrato.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Ha ricercato 60 fonti e ha risposto usandone 7. La risposta inoltre, seppur non rapida, ha richiesto “solo” 3 minuti.</p>
<p>Il problema principale della risposta (con il senno di poi) è la mia domanda … ho scritto amministratore senza dargli una qualificazione specifica per cui l’LLM ha “interpretato” come <em>amministratore di condominio</em> e così facendo ha in parte “allucinato” la risposta.</p>
<p>Nel secondo tentativo sono stato più chiaro ed il risultato è stato migliore.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png" data-image-dimensions="2944x2592" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=1000w" width="2944" height="2592" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/fdce53ce-1689-465b-b76c-b345ffff8c95/04-risposta_di_qwq-configurazione.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Qui, in particolare, mi sono fatto più “furbo” ed ho personalizzato il system prompt per ottenere una miglior risposta oltre che aumentato la finestra di contesto al massimo (10.000 tokens per il mio MacStudio) e ridotto la temperatura dell’LLM a 0,2 (la creatività dell’LLM nella risposta).</p>
<p>Se interessa questo è il <em>system prompt</em> che ho utilizzato:</p>
<blockquote>
<p>Sei un assistente legale italiano nel settore civile. Rispondi in modo preciso, puntale e chiaro alle domande che ti vengono poste. Esamina la fattispecie (il caso) che ti viene proposta ed individua le norme di riferimento e la giurisprudenza attinente, argomentando la tua risposta in base a tali risultati. Cita sempre i riferimenti alla normativa o alle massime giurisprudenziali. Se non sai una risposta di: non ho le informazioni per risponderti.</p>
</blockquote>
<p>Ti lascio, se sei curioso, anche l’intera conversazione con LLM, comprensiva della catena di pensiero (in inglese) che puoi scaricare da <a href="https://www.icloud.com/iclouddrive/056tLC7G34xyohGN0cUdZukZw#Ricerche_giuridiche_online_con_IA-conversazioni_con_LLM">qui</a>.</p>
<p><strong>Piccola nota</strong>: seppur QWQ non parli bene l’italiano, è stato addestrato prevalentemente in lingua inglese e cinese, ho notato che, dandogli in pasto le ricerche web (in italiano), i risultati delle risposte risultano abbastanza coerenti anche in italiano.</p>
<h2>5. Alcune considerazioni finali</h2>
<p>Ovviamente il sistema, seppur promettente, non è perfetto. Sicuramente non è equiparabile alle funzioni di <em>ricerca avanzata</em> che sfrutta un sistema più complesso.</p>
<p>Inoltre i tempi per eseguire la ricerca sono piuttosto lungi: dai miei esperimenti con il MacStudio ci ho impiegato dai 5 ai 10 minuti per ottenere una risposta.</p>
<p>Se non c’è una risposta su internet il sistema di ricerca non funziona o, peggio ancora, rischia di allucinare.<br>Nell’ultimo periodo però c’è molto diritto online con articoli e giurisprudenza, non è una cosa super professionale ed è potenzialmente foriera di errori ma le “basi” ci sono.</p>
<p>Io lo trovo utile come spunto e per tagliare gli angoli velocemente ma è comunque <strong>richiesta una conoscenza adeguata della materia per valutare e/o confermare le risposte degli LLM</strong>. <strong>Nelle mani di un soggetto inesperto</strong>, tuttavia, <strong>è un sistema pericoloso che può creare false aspettative</strong>.</p>
<p>Personalmente trovo comodo il fatto di avere una prima ricerca grezza su cui, poi, io posso fare gli opportuni approfondimenti anche utilizzando banche dati specialistiche e non disponibili direttamente online.</p>
<p>Infine ti sottolineo l’<strong>importanza del prompt</strong>, ovvero di come formulare la domanda.<br>Se ora è possibile utilizzare questi strumenti ci sono ancora vincoli legati alla natura e alle limitazioni degli LLM. L’uso attento di un prompt chiaro e descrittivo agevola notevolmente la ricerca avanzata ed un prompt mal fatto condanna a risultati di scarsa qualità.</p>
<h2>In conclusione</h2>
<p>Pur essendo ancora un territorio pieno di potenziali incognite l’unione di ricerca online ed LLM con catena di pensiero sta portando a risultati interessanti nel mondo giuridico italiano.</p>
<p>Esistono soluzioni più blasonate (che accedano a specifici database con le sentenze) ma sono rimasto stupito di cosa si riesca a fare anche con LLM locali.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f313dff6-507f-4fd4-857d-3159790ab614/Ricerche+giuridiche+online+con+IA%3F+Iniziano+ad+essere+possibili.002.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Ricerche giuridiche online con IA? Iniziano ad essere possibili</media:title></media:content></item><item><title>Primo caso giudiziario italiano (noto) di avvocato che cita giurisprudenza inventata da chatGPT</title><category>News</category><category>Intelligenza Artificiale</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Wed, 26 Mar 2025 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2025/3/26/primo-caso-giudiziario-noto-di-avvocato-che-cita-giurisprudenza-inventata-da-chatgpt</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:67e4280ed41fb9542b8caf20</guid><description><![CDATA[In questo breve articolo ti parlo del primo caso giudiziario italiano 
(noto) di avvocato che cita giurisprudenza inventata dagli LLM e di come ho 
recuperato il provvedimento dalla Banca Dati del Merito.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Non sono solito parlare di news giudiziarie su queste pagine, ma questa credo meriti per almeno 2 motivi: </p>
<ol>
<li>è il primo (ma non credo sarà l’ultimo) caso noto in Italia,</li>
<li>è un utile esempio di come non usare le IA.</li>
</ol>
<p>Un ulteriore buon motivo è che mi sono divertito a recuperare il provvedimento sulla Banca Dati del Merito e voglio condividere con te alcuni “trucchi” che ho usato.</p>
<h2>1. La storia</h2>
<p>Oggi, mentre scrivo questo articolo, è circolata su più fronti l’ordinanza del Tribunale di Firenze (sez. imprese) relativa al procedimento n. 11053/2024.</p>
<p>L’ordinanza tratta un problema che <a href="https://www.forbes.com/sites/mollybohannon/2023/06/08/lawyer-used-chatgpt-in-court-and-cited-fake-cases-a-judge-is-considering-sanctions/">era già capitato nella corti americane (in particolare nel distretto di New York)</a> dove un avvocato aveva citato precedenti inventati (o in gergo tecnico “allucinati”) da chatGPT.</p>
<p>La causa in oggetto era relativa ad un reclamo per l’inibitoria di un marchio avanti alla sezione imprese del Tribunale di Firenze.</p>
<p>All’udienza del 21/01/25 il reclamante lamentava che la giurisprudenza citata nella comparsa di risposta avversaria era inesistente. Seguiva uno scambio di memorie a tal fine autorizzate dal Tribunale e la “confessione” del difensore della resistente.</p>
<p>In particolare questi riferiva che:</p>
<blockquote>
<p>i riferimenti giurisprudenziali citati nell'atto sono stati il frutto della <strong>ricerca effettuata da una collaboratrice di studi mediante</strong>  lo strumento dell'intelligenza artificiale <strong>"ChatGPT"</strong> , del cui utilizzo <strong>il patrocinatore in mandato non era a conoscenza</strong>.</p>
</blockquote>
<p>Il copione, come si può ben vedere, è simile a quello americano.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png" data-image-dimensions="2002x2896" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=1000w" width="2002" height="2896" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/56393648-7e28-4bd5-b899-4f85b4ef8621/01-il_passaggio_fondamentale.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Pagina 10 dell’ordinanza</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Non è mio interesse soffermarmi sulle problematiche giuridiche affrontate nell’ordinanza (a livello processuale è andata bene al collega avventato) e lascio al lettore immaginare gli ulteriori problemi (anche deontologici) per il collega che, almeno da quanto ha affermato, non ha supervisionato l’attività del collaboratore.</p>
<p>Quel che mi interessa è ribadire un concetto.</p>
<h2>2. Gli LLM (chatGPT e suo simili) sono generatori di testo statistico</h2>
<p>Giova quindi ripeterlo … gli LLM sono dei sistemi di completamento del testo agli steroidi e, in quanto tali, inventano il testo (i puristi dell’Intelligenza Artificiale dicono che hanno le c.d. allucinazioni).</p>
<p>Il testo che creano pur essendo verosimile, perché sono le parole che statisticamente sono più probabili l’una rispetto all’altra, non è vero.</p>
<p>Quando l’LLM non “conosce” la risposta alla domanda fa quello per cui è “programmato”: inventa del testo verosimile.</p>
<h2>3. Modi per ridurre le allucinazioni</h2>
<p>Ne ho parlato approfonditamente nella <a href="https://www.avvocati-e-mac.it/podcast/50">puntata 50 del mio podcast a cui ti rimando</a> di come sia possibile ridurre (ma non al 100%) le allucinazioni con strumenti come la <strong>RAG</strong> (Retrived Augmented Generation).</p>
<p>Altro strumento utile per ridurre le allucinazioni è quello di fornire accesso ad internet agli LLM. Ovviamente anche questo “metodo” ha i suoi limiti posto che non c’è tutto su internet e “googlare” non è il modo migliore per dare un parere legale, una consulenza medica etc …</p>
<p>Ma l’unica vera soluzione alle “allucinazioni” è quella di revisionare attentamente tutto il testo che viene generato dagli LLM.</p>
<h2>4. Trovare il provvedimento sulla BDM (Banca Dati del Merito)</h2>
<p>La prima pubblicazione del provvedimento è stata fatta <a href="https://www.lanuovaproceduracivile.com/intelligenza-artificiale-chatgpt-produce-allucinazioni-sentenze-inesistenti-responsabilita-ex-art-96-c-p-c/">qui</a> ma la versione PDF scaricabile dal sito è oggettivamente illeggibile (ed inguardabile dal punto di vista tipografico).</p>
<p>Quindi, invece che lavorare 😓, mi sono messo alla ricerca della sentenza sulla <a href="https://bdp.giustizia.it">Banca Dati del Merito</a>.</p>
<p>Ho inizialmente fatto fatica a trovare il provvedimento (era citato in modo incompleto) ma con un po’ di accortezza sono riuscito a recuperarlo.</p>
<p>Inizialmente avevo utilizzato l’approccio di inserire la data e la sezione imprese ma il risultato me lo ha portato prendendo un pezzo del testo del provvedimento disponibile online e facendo una ricerca “generica”, come si vede nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png" data-image-dimensions="2046x1758" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=1000w" width="2046" height="1758" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c795dc3e-263e-490d-946f-ef36a34501f9/02-BDM_ricerca_per_parole.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Banca Dati del Merito</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come si vede nell’immagine sottostante la ricerca è andata a colpo sicuro.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png" data-image-dimensions="2032x1864" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=1000w" width="2032" height="1864" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8c59a97e-72a7-4ee9-bbad-48d737417ab4/03-BDM_risultati_ricerca.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Esempio di ricerca utilizzata</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>4.1 Banca Dati del Merito: alcune considerazioni estemporanee</h3>
<p>Devo dire che <strong>trovo veramente comodo questa banca dati</strong> gratuita, che ho imparato ad apprezzare ed utilizzare solo nell’ultimo periodo.<br>Come tutti gli strumenti richiede di imparare a padroneggiarla ma, una volta iniziata a conoscerla, può dare utilissimi spunti ed informazioni pressioni per chi, casomai, è indeciso sul se e come instaurare un procedimento davanti ad uno specifico tribunale o corte d’appello.</p>
<p>Secondariamente il sistema di anonimizzazzione dei provvedimenti è ancora piuttosto acerbo (ma un pelo migliorato dagli inizi dove addirittura oscurava tutte le date dei provvedimenti). Proprio per questo motivo non ho condiviso qui la sentenza (se non con alcuni stralci e per immagine), perché alcuni dati non sono stati anonimizzati correttamente.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png" data-image-dimensions="1898x1964" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=1000w" width="1898" height="1964" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5c2f025c-9f6e-4953-8e0a-538416ba0f24/04-parte_non_anonimizzata.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Esempio di un passaggio che, ovviamente qui anonimizzo</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>In conclusione</h2>
<p>Il caso in oggetto è una colorita vicenda legata all’emergente mondo dell’intelligenza artificiale e credo sia una storia da cui trarre un’utile morale: <strong>occorre utilizzare gli strumenti in modo consapevole e</strong>, per fare ciò, <strong>occorre conoscere a fondo gli strumenti soprattutto se sono tecnologici</strong>.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5c1c3dd-0048-41a1-b47a-b77d199ccaa7/Primo+caso+giudiziario+%28noto%29+di+avvocato+che+cita+giurisprudenza+inventa+da+chatGPT.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Primo caso giudiziario italiano (noto) di avvocato che cita giurisprudenza inventata da chatGPT</media:title></media:content></item><item><title>Dialogare in modo avanzato con un LLM locale con n8n</title><category>Intelligenza Artificiale</category><category>automazione</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 25 Nov 2024 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2024/11/24/dialogare-in-modo-avanzato-con-un-llm-locale-con-n8n</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:674351725dcc6d1de4866ed9</guid><description><![CDATA[In questo corposo articolo ti introduco al funzionamento di n8n ed alle sue 
potenzialità in campo di Intelligenza Artificiale. In particolare creeremo 
assieme un semplice flusso di lavoro per interrogare gli LLM locali di 
Ollama.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<h1>Dialogare in modo avanzato con un LLM locale con n8n</h1><p>In questo articolo vedremo le basi di utilizzo di <a href="https://n8n.io/">n8n</a> e come creare un rudimentale sistema di chat con <a href="https://ollama.com">Ollama</a>, ne approfitterò inoltre per mostrarti perché è interessate usare <em>n8n</em> in congiunzione con un LLM locale.</p><h2>0. Premesse</h2><p>Ti ho già parlato di <a href="https://n8n.io/">n8n</a> in <a href="https://www.avvocati-e-mac.it/blog/2024/11/2/introduzione-a-n8n">questo articolo</a> per cui, qui, non mi ripeto.</p><p>Oggi infine non ti spiego come è possibile installare n8n (è mia intenzione parlartene con calma in un futuro articolo se c'è interesse).</p><p>Quest’articolo può essere usato sia come <strong>guida introduttiva all’utilizzo di <em>n8n</em></strong> sia per imparare a <strong>creare un sistema rudimentale di chat con un LLM</strong> (large language model ovvero modello linguistico di grandi dimensioni). </p><h2>1. Creare un workflow (flusso di lavoro) in n8n</h2><p>In n8n si lavora con i  <strong>workflow</strong> ovvero <em>flussi di lavoro</em>.</p><p>Dall’interfaccia principale basta premere il tasto “Add workflow” (aggiungi flusso di lavoro), come mostrato al <strong>punto 1</strong> dell’immagine sottostante.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png" data-image-dimensions="3018x1966" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=1000w" width="3018" height="1966" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/656b8aa7-dc28-4cc2-b9a1-30430aa5d044/01-creare-workflow.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Interfaccia di n8n e pulsante per creare un nuovo workflow</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>2. Tutto parte da un trigger o interruttore</h2>
<p>Non è mia intenzione esaminare in dettaglio tutti i possibili <strong>trigger</strong> disponibili in n8n. Qui occorre però sapere che un <em>trigger</em> è un <strong>interruttore che fa scattare il flusso di lavoro (workflow) in n8n</strong>.</p>
<p>Prima di fare tutto ciò, però occorre <strong>dare un nome al nostro <em>workflow</em></strong> e ciò è possibile farlo andando a modificare il nome del workflow come mostrato al <strong>punto 1</strong> dell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png" data-image-dimensions="3018x1966" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=1000w" width="3018" height="1966" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/199178f0-d408-4c3b-92a2-b856b46dc021/02-trigger.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>I primi passi per la creazione di un nuovo workflow</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Ora siamo pronti a premere il vistoso pulsante a forma di è al centro dell’<em>editor dei workflow</em> sotto il quale c'è scritto “Add the first step…”, ovvero <em>aggiungi il primo passa</em>, come mostrato al <strong>punto 2</strong> dell’immagine soprastante.</p>
<p><strong>Per</strong> quanto riguarda <strong>gli LLM il trigger tipico è la chat</strong>, ovvero il <strong>punto 3</strong> dell’immagine soprastante: <strong>On chat messages</strong>.</p>
<p>Ti voglio far notare che in <em>n8n</em> il menù a destra è contestuale cioè ti offre in prima battuta i nodi (o azioni) più adatte al contesto scelto.</p>
<h2>3. Il nodo chat</h2>
<p>Abbiamo quindi aggiunto il nostro primo nodo. n8n infatti crea flussi di lavoro (anche complessi) con una dinamica da sinistra a destra e la concatenazione di nodi, ovvero azioni che deve svolgere il workflow.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png" data-image-dimensions="2792x1572" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=1000w" width="2792" height="1572" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/c726caab-e290-4421-8a7d-0cea59dcb01e/03-nodo-trigger-chat-LLM.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Il primo nodo: il trigger della chat per LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Ti troverai quindi nella situazione mostrata dall’immagine soprastante. Nota che <strong>i nodi <em>trigger</em> hanno accanto sul lavato sinistro un fulmine</strong>, come mostrato al <strong>punto 1</strong> dell’immagine soprastante.</p>
<p>Nel caso del nodo chat, poi, nella parte bassa dello schermo compare un nuovo <strong>pulsante</strong>, come mostrato al <strong>punto 2</strong>, che <strong>ti permette di accedere alla chat</strong>.</p>
<p>Infine, per continuare a <strong>creare il nostro flusso di lavoro</strong>, sarà sufficiente premere il tasto + alla destra del nodo chat (ed in generale di qualsiasi nodo in n8n) come mostrato nel <strong>punto 3</strong>.</p>
<p>Clicca quindi sul pulsante chat e comparirà la schermata mostrata nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png" data-image-dimensions="2644x1584" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=1000w" width="2644" height="1584" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/094b511b-c966-461c-aa2d-b74a70751e7e/04-esempio-chat.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di chat in n8n</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>4. Intelligenza Artificiale e n8n</h2>
<p>Come dicevo al nodo chat possiamo aggiungere diversi nodi ma il focus di questo articolo è sull’intelligenza artificiale (locale) con n8n.</p>
<p>Come dicevo basterà quindi premere il pulsante + a destra del nodo chat per avere il menù contestuale mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png" data-image-dimensions="2865x1658" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=1000w" width="2865" height="1658" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f02d3875-7476-48aa-b040-25e5bc7dcb91/05-IA-avanzata.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio del menù di scelta dei nodi: in particolare i nodi Advanced AI</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Scegli la voce “Advanced AI”, traducibile in IA avanzata … Sì, un po' altisonante ma, come vedremo poi, ci sono anche opzioni di utilizzo piuttosto avanzate in n8n per l’utilizzo degli LLM.</p>
<p>Cliccato sulla voce, ci troveremo in un sotto-menù come mostrato nell’immagine sottostante al <strong>punto 1</strong>.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png" data-image-dimensions="2484x1878" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=1000w" width="2484" height="1878" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/86dd08c3-222e-410e-910f-dbc33ae956f7/06-nodi-IA.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>I nodi principali di n8n legati all’utilizzo della IA</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>4.1 I nodi “principali” per gestire l’IA in n8n</h3>
<p>Non posso andare troppo nel dettaglio in questo articolo introduttivo ma credo sia utile fare una carrellata dei nodi “principali” presenti in n8n per la gestione delle IA.</p>
<p>Come si vede nell’immagine sottostante ci sono 9 opzioni:</p>
<ol>
<li><strong>AI Agent</strong>: che permette di <strong>creare agenti con n8n</strong>, farò una piccolo approfondimento nei punti seguenti sull’argomento agenti;</li>
<li><strong>OpenAI</strong>: che ovviamente permette di interfacciarsi con il noto LLM online ChatGPT,</li>
<li><strong>Basic LLM chain</strong>: che permette di <strong>creare una semplice interazione con un LLM</strong>, in questo articolo vedremo questo tipo di interazione e, in successivi, quelli più avanzati;</li>
<li><strong>Information Extractor</strong>: traducibile in <strong>estrattore di informazioni</strong> che permette, nella sostanza, di estrarre dati strutturati da un testo (giusto per fare un esempio legale: i dati delle parti da un contratto);</li>
<li><strong>Questione and Answer Chain</strong>: Domanda e risposta che permette di “dialogare” con i documenti;</li>
<li><strong>Sentiment Analysis</strong>: ovvero <strong>analisi del sentimento del testo</strong>;</li>
<li><strong>Summarization Chain</strong>: traducibile in <strong>creazione di riassunto</strong> che, come dice il nome del nodo, permette di riassumere testi anche di lunghe dimensioni (superando i limiti della finestra di contenuto tipica degli LLM);</li>
<li><strong>Text Classifier</strong>: ovvero <strong>classificatore di testo</strong> che permette di classificare il testo sottoposto;</li>
<li><strong>Other AI Nodes</strong>: traducibile in <strong>Altri nodi per l’IA</strong> che permette di accedere ad altre tipologie di nodi più specifici e complementare ai nodi “principali”.</li>
</ol>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png" data-image-dimensions="1088x1398" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=1000w" width="1088" height="1398" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/11ec14b2-d9c8-4254-958e-8b1eb3914f1a/07-nodi-IA-in-dettaglio.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>I nodi di n8n legati all’intelligenza artificiale</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come protrai aver notato, i nodi principali sono strumenti relativamente avanzati di utilizzo della IA.</p>
<p>Come mai n8n riesce a fare queste cose? </p>
<p>La risposta è semplice: utilizza sotto la scocca <a href="https://www.langchain.com">langchain</a>. <strong>Langchain</strong> è un framework che permette di creare flussi di lavoro relativamente complessi con gli LLM.</p>
<h3>4.2 Una parentesi: gli agenti</h3>
<p>Sintetizzando, un <em>Modello di Linguaggio di grandi dimensioni</em> (large language model abbreviato in LLM) è un semplice sistema di auto-completamento del testo agli steroidi che fornisce il testo statisticamente più probabile a fronte di una “domanda” anche detta in gergo tecnico <em>prompt</em>. </p>
<p>La peculiarità degli LLM è che queste capacità linguistiche possono essere sfruttate per “parlare ai programmi”.</p>
<p>Gli <strong>agenti</strong> sono proprio questo. Un sistema che permette, attraverso l’interazione da parte dell’utente in modo testuale di eseguire programmi. Ovviamente gli agenti, per eseguire programmi, vanno “programmati” ovvero <strong>gli vanno dati gli strumenti</strong>, in gergo tecnico i <strong>tools</strong>, per interagire col mondo esterno o altri programmi.<br>In n8n un tool di base è la <em>calcolatrice</em> (<a href="https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolcalculator/?utm_source=n8n_app&amp;utm_medium=node_settings_modal-credential_link&amp;utm_campaign=%40n8n%2Fn8n-nodes-langchain.toolCalculator">Calculator</a>) ovvero uno strumento che permette all’LLM di fare i conti correttamente (uno dei più grossi talloni di Achille dei modelli linguistici è che elaborando testo non riescono a fare di conto) oppure il nodo <a href="https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolwikipedia/?utm_source=n8n_app&amp;utm_medium=node_settings_modal-credential_link&amp;utm_campaign=%40n8n%2Fn8n-nodes-langchain.toolWikipedia">Wikipedia</a> che, come dice il nome, permette all’LLM di cercare informazioni su Wikipedia.</p>
<p>Giusto per fare un altro esempio anche il nodo di riassunzione è, in una certa maniera, un programma a se: infatti sotto la scocca il sistema funziona istruendo LLM a suddividere un testo di grosse dimensioni in testi più piccoli per riassumerli singolarmente e, poi, una volta fatti i mini riassunti dei testi, prendere questi pezzi di riassunto e creare un ulteriore riassunto dei riassunti. </p>
<p>Il grosso vantaggio di questo sistema è che, per l’utente finale, i passaggi così sono trasparenti.</p>
<h3>4.3 Gli altri nodi legati all’IA</h3>
<p>Pur non volendo entrare troppo in dettaglio mi pare opportuno fare un breve esame degli altri nodi, giusto per permetterti di avere un quadro generale e farti capire le potenzialità di utilizzare i modelli di linguaggio di grandi dimensioni con n8n.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png" data-image-dimensions="992x1688" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=1000w" width="992" height="1688" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/edc3a1c7-a82c-4f30-abf2-0569a1f79fce/08-altri-nodi-IA.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio degli altri nodi IA di n8n</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Mi soffermerò velocemente solo su alcuni nodi, come mostrato nell’immagine soprastante.</p>
<ol>
<li><strong>Document Loaders</strong>: ovvero <em>caricamento documenti</em>, questo menù porta alle varie opzioni per passare i documenti ad un LLM e quindi fare delle RAG (Retrived Aumented Generation) ovvero “dialogare con i documenti”;</li>
<li><strong>Memory</strong>: ovvero <em>memoria</em> qui sono contenuti i nodi che gestiscono il salvataggio ed utilizzo di testo per dare una sorta di memoria agli LLM;</li>
<li><strong>Text Splitters</strong>: ovvero <em>suddivisione del testo</em>, questi nodi permettono, in vari modi, di suddividere testi di grosse dimensioni in c.d. <em>chunck</em> ovvero bocconi per renderli “digeribili” dagli LLM nella loro finestra di contenuto;</li>
<li><strong>Tools</strong>: ovvero <em>attrezzi</em> sono i nodi pre-pronti (è possibile crearne di propri in n8n ma è un argomento avanzato che merita un articolo a parte) per dare degli strumenti di lavoro agli LLM;</li>
<li><strong>Embeddings</strong>: sono nodi che permettono di trasformare il testo in vettori e, una volta trasformato il testo, eseguire confronti da poi utilizzare ad esempio nelle RAG;</li>
<li><strong>Vector Stores</strong>: ovvero i <em>Gestori di vettori</em> i nodi che servono per gestire il testo trasformato in vettore.</li>
</ol>
<h2>5. Creare una catena base con LLM utilizzando Ollama</h2>
<p>Come ho già detto, oggi non è mia intenzione mettere troppa carne al fuoco, per cui mi soffermerò a spiegarti come sia possibile creare un flusso di lavoro base con n8n e gli LLM, in particolare quelli locali utilizzando <a href="http://ollama.com/">Ollama</a>.</p>
<p>Anzitutto, se vai a digitare nel campo di ricerca dei nodi, iniziando a scrivere <em>Ollama</em> usciranno i nodi relativi. Come si vede ne esistono 3: il modello base per ricevere risposte singole, il modello chat, che permette di “dialogare” con il modello ed infine la gestione degli Embedding attraverso Ollama.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png" data-image-dimensions="922x886" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=1000w" width="922" height="886" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4ca10bd1-5689-48aa-92b5-6c383ab5bbaf/09-nodi-Ollama.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio dei nodi dedicata ad Ollama</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>5.1 La catena di base dell’LLM</h3>
<p>Iniziamo quindi a creare il nostro primo workflow con n8n.</p>
<p>Dopo il modo chat, inseriamo il nodo <em>Basic LLM Chains</em> come mostrato nell’immagine sottostante. Questo nodo richiede un componente aggiuntivo ed infatti, nella parte destra del riquadro è mostrato un simbolo di allerta perché manca il modello. Premi quindi il tasto + sotto la voce <em>Model</em> come mostrato al punto 1.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png" data-image-dimensions="1714x970" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=1000w" width="1714" height="970" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7020fba5-6460-464a-be1d-49799b6a8f76/10-catena-base-LLM.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di catena base per un LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come già visto il menù contestuale di sinistra mostrerà le opzioni possibili e tu dovrai scegliere il modello base o quello per la chat, come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png" data-image-dimensions="2474x1892" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=1000w" width="2474" height="1892" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/570997f6-91e2-4558-a224-8b1ba425007a/11-ollama-model-e-chat.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Aggiungere Ollama come gestore di LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Una volta aggiunto il nodo di Ollama, essendo la prima volta, occorrerà configurarlo. Fai, quindi, doppio click sul nodo appena aggiunto e si aprirà il menù di configurazione come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png" data-image-dimensions="2616x1846" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=1000w" width="2616" height="1846" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5e3cb76b-668e-4554-b833-f6fa111fc74e/12-nodo-ollama-chat-model.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Il nodo di Ollama in dettaglio</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Alcune considerazioni introduttive su n8n. Quello che viene mostrato nell’immagine soprastante è la tipica finestra di configurazione.</p>
<p>Nella parte di sinistra (riquadro rosso di sinistra) è visibile se presente, l’input passato al nodo e, invece, ne riquadro segnato in rosso di destra l’output del nodo. Al centro sono presente i parametri (<em>Parameters</em> in inglese) di configurazione ed i <em>Settings</em> del nodo.</p>
<p>Nel caso di Ollama occorre: </p>
<ol>
<li>scegliere le credenziali con cui collegarsi;</li>
<li>una volta fatto ciò il modello da utilizzare per l’LLM</li>
<li>i parametri opzionali da applicare al modello.</li>
</ol>
<h3>5.2 Credenziali di Ollama</h3>
<p>Per impostare le credenziali occorre premere il pulsante a forma di matita (<strong>punto 1</strong> immagine sottostante) e scegliere la voce <em>Create New Credential</em> (<strong>punto 2</strong>). Come si vede nell’immagine sottostante io ho già configurato le mie credenziali di base.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png" data-image-dimensions="1116x863" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=1000w" width="1116" height="863" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7b969a40-e3f1-429c-9639-cf1370fd7b17/13-creare-nuove-credenziali.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di come inserire le credenziali per Ollama</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Un volta fatto ciò si aprirà la finestra di configurazione delle credenziali (in senso tecnico non sono vere credenziali ma i parametri per collegarsi alle API di Ollama).</p>
<p>Nell’immagine sottostante al <strong>punto 1</strong> viene mostrato il percorso base di Ollama (corretta se l’installazione di n8n è fatta sul medesimo computer su cui è installato Ollama) ed i riferimenti alla documentazione di n8n (<strong>punto 2</strong>).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png" data-image-dimensions="1896x644" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=1000w" width="1896" height="644" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7a27654d-7e9f-4cea-8a40-667b870288ca/14-nodo-ollama-inserire-credenziali.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Impostazioni Ollama account</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Nel mio caso, siccome Ollama è installato su un Mac differente da dove ho installato n8n [^1] ho inserito l’indirizzo ip del mio MacStudio (<strong>punto 1</strong> immagine sottostante).</p>
<p>Io ti suggerisco di modificare, premendo sull’icona della matita, il nome delle credenziali, come mostrato nel <strong>punto 2</strong>: nel mio caso ho indicato il nome del Mac su cui è installato Ollama per una più semplice individuazione.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png" data-image-dimensions="1796x630" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=1000w" width="1796" height="630" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6b41114e-13fa-47e1-84d2-18020d9f5641/15-personalizzazione-credenziali-ollama.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di personalizzazione delle credenziali di accesso ad Ollama</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Una volta fatto ciò è possibile schiacciare il tasto <em>Save</em> (salva, <strong>punto 1</strong> immagine sottostante) e, se tutto è andato a buon fine, verrà mostrato la scritta verde di avvenuta corretta connessione come mostrato nell’immagine qui sotto.</p>
<p>Premendo il pulsante rappresentato da un cestino (<strong>punto 2</strong>) è possibile cancellare le credenziali.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png" data-image-dimensions="1802x764" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=1000w" width="1802" height="764" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e92747af-b552-41f7-90e1-945dc0af3740/16-credenziali-ollama-salvataggio-e--connessione-ok.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Salvataggio credenziali di Ollama</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>5.3 Scegliere il modello di LLM</h3>
<p>Ora è possibile scegliere il modello da utilizzare. Come mostrato nell’immagine sottostante al <strong>punto 1</strong>, premendo la freccia che punta verso l’alto è possibile scegliere i tra i modelli installati in Ollama.</p>
<p>In <a href="https://www.avvocati-e-mac.it/blog/2024/4/21/video-installazione-e-primo-utilizzo-di-ollama">questo video</a> ho mostrato come installare Ollama ed i vari LLM.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png" data-image-dimensions="1314x1098" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=1000w" width="1314" height="1098" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/21649b8e-d632-400d-ba2d-3e4a4419b183/17-nodo-ollama-modelli-disponibili.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Modelli disponibili nella mia installazione di Ollama</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>5.4 Scegliere le opzioni del modello</h3>
<p>Seppur opzionale mi pare opportuno segnalarti l’importanza delle <strong>opzioni di configurazione del modello</strong>, presenti nel menù <em>Options</em> ed attivabili premendo il tasto <em>Add Option</em> (aggiungi opzione) come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png" data-image-dimensions="970x1306" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=1000w" width="970" height="1306" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/98386b98-02fc-48a9-816d-cd664de02846/18-nodo-ollama-opzioni.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Le possibili opzioni di personalizzazione del modello di LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Qui non mi è possibile entrare nel dettaglio di tutti i parametri configurabili (se vuoi approfondire <a href="https://github.com/ollama/ollama/blob/main/docs/modelfile.md#parameter">qui trovi la pagina relativa di Ollama</a>) ma ritengo opportuno esaminare almeno alcuni parametri fondamentali.</p>
<p>Il primo parametro (<strong>punto 1</strong>) è la <strong>temperatura del modello</strong> (temperature). Tendenzialmente varia da 0 a 2 e più il valore è alto più il modello di linguaggio sarà “creativo” e conseguentemente soggetto ad “allucinazioni”. Questo parametro quindi va ragionato in base al compito affidato e risultato che si vuole ottenere dal modello.</p>
<p>Il secondo parametro (<strong>punto 2</strong>) è la <strong>finestra di contesto del modello</strong> o <em>Context Lenght</em> del modello. Ollama di default utilizza per tutti i modello la finestra di contesto di 2048 tokens ovvero 2k. Questa finestra è piuttosto piccola ma se non si dispone di molta vRAM è corretta. Anche qui è opportuno configurare adeguatamente la finestra di contesto in base all’hardware a disposizione e al compito che deve svolgere l’LLM. Ad esempio una grossa finestra di contesto è utile se il <em>prompt</em> passato al modello è di grosse dimensioni.</p>
<p>Ultimo accenno va al <em>Output format</em> ovvero al <strong>formato della risposta</strong> dell’LLM (<strong>punto 3</strong>). Abitualmente va lasciato al valore <em>Default</em> ma se si vuolo “forzare” la risposta in formato JSON (una struttura dati compatibile con i nodi di n8n) e se supportato dall’LLM è qui che va configurato.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png" data-image-dimensions="820x1166" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=1000w" width="820" height="1166" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/6e7ecf05-1188-440f-a247-dd94f5d226c7/19-nodo-ollama-alcune-opzioni-utili.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Alcuni parametri opzionali di gestione del modello di LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>5.5 Ultimazione della creazione del nostro primo flusso di lavoro</h3>
<p>Ottimo, se ha seguito passo passo i punti che precedono, ti troverai davanti a quanto mostrato nell’immagine sottostante: il tuo workflow con IA in n8n.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png" data-image-dimensions="1162x678" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=1000w" width="1162" height="678" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d0e5df24-0b5a-41cc-ab97-53637c3012f6/20-LLM-Ollama-base.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Risultato finale di workflow base con Ollama e n8n</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Ora puoi premere il pulsante arancione chat e digitare una domanda nella chat come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png" data-image-dimensions="2160x1260" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=1000w" width="2160" height="1260" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8560945b-eb54-4ec6-89e8-2c008672311c/21-chat-LLM-pensa.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Chat con LLM: esempio</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come mostrato nell’immagine soprastante l’LLM inizierà a “pensare” la risposta.</p>
<p>Infine comparirà la risposta come mostrato nell’immagine qui sotto.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png" data-image-dimensions="2292x1492" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=1000w" width="2292" height="1492" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2eb824de-852e-4239-8a61-cfefffcb3ca9/22-ollama-LLM-chat-risposta-e-log.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Risposta in n8n di chat con LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Sul lato sinistro della chat (<strong>punto 1</strong>) verrà mostrata la <strong>risposta dell’LLM</strong> mentre sul lato destro (<strong>punto 2</strong>) verranno mostrati i <strong>passaggi eseguiti dall’LLM per giungere alla risposta</strong>. Questo potrebbe sembrarti poca cosa per il workflow che abbiamo appena creato ma, per flussi di lavoro più complessi, è molto utile per vedere se il funzionamento del workflow ha rispettato quanto avevamo previsto.</p>
<p>Se, infine, usciamo dalla chat noteremo che <strong>il flusso di lavoro ha generato un oggetto</strong> (item), come mostrato al <strong>punto 1</strong> dell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png" data-image-dimensions="1308x820" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=1000w" width="1308" height="820" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f46c1f73-e1fc-484c-ab91-593f36cd8baa/23-risposta-LLM-in-n8n.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Generazione di un oggetto in n8n</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Questo è il tipico comportamento di n8n: <strong>ogni nodo crea uno o più oggetto</strong> che, a loro volta, possono essere passati ad un nuovo nodo per ulteriori elaborazioni.</p>
<h2>6. Salviamo la risposta dell’LLM</h2>
<p>Per concludere, quindi, vediamo come salvare la risposta dell’LLM in un file RTF sul nostro Mac.</p>
<p>Come già visto premiamo sul tasto + alla destra del nodo <em>Basic LLM Chains</em>. Nel menù contestuale andiamo nella funzione ricerca e digitiamo <em>file</em>. Dovrebbe venir mostrata la voce <em>Convert to File</em>, clicchiamola e tra le opzioni scegliamo <em>Convert to RTF</em> (<strong>punto 1</strong> immagine sottostante).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png" data-image-dimensions="2484x1342" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=1000w" width="2484" height="1342" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7e5f185c-851f-429a-a6d6-4b564fd43176/24-espotare-chat-RTF.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di salvataggio del chat come file RTF</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Comparirà il nuovo nodo (<strong>punto 2</strong>), clicchiamoci sopra.</p>
<p>Siccome nel nodo precedente erano già presente un oggetto, il nodo Convert to File sarà popolato con svariati dati, come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png" data-image-dimensions="2840x896" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=1000w" width="2840" height="896" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0ddde146-9455-4e19-bafd-3d9890f1b363/25-input-output-esportare-a-RTF.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esame del nodo Convert to File</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Nella parte sinistra dedicata all’input, verrà mostrato quanto creato dai nodi precedenti (nel nostro caso solo la Basic LLM Chains) <strong>punto 1</strong>. Sotto di essa è mostrato il <strong>contenuto generato dal nodo</strong>, <strong>punto 2</strong>, e le <strong>varie modalità di visualizzazione</strong> (<strong>punto 3</strong>):</p>
<ul>
<li><em>Schema</em>, la visualizzazione più user friendly;</li>
<li><em>table</em>, ovvero tabella;</li>
<li><em>JSON</em>, la visualizzazione testuale con dati strutturati.</li>
</ul>
<p>Sul lato destro, una volta premuto il tasto <em>Test Step</em> (ovvero <strong>Testa il passaggio</strong>), mostra quale oggetto la voce Data (<strong>punto 4</strong>) con la descrizione del file, la possibilità di scaricarlo (<strong>punto 5</strong>) premendo il tasto Download e verificare l’esatta creazione del file RTF, ed infine la voce Binary (<strong>punto 6</strong>), ovvero file binario.</p>
<h3>6.1 Salviamo il file sul nostro Mac</h3>
<p>Siamo arrivati quasi alla fine ma <strong>questo passaggio è essenziale</strong> e, nei prossimi articoli, sarà la <strong>chiave</strong> di volta per <strong>creare flussi di lavoro locali</strong>.</p>
<p>Per creare una automazione efficace, infatti, occorre poter automatizzare il salvataggio dei documenti sul proprio computer.</p>
<p>Per vario tempo mi sono arrovellato su come fare ciò in n8n. Infatti n8n nasce per creare workflow utilizzando servizi online, come ad esempio GoogleDrive ed affini. Io, invece, non voglio che giri nulla sul cloud di altri ma solo sui miei computer.</p>
<p>La soluzione era banale, bastava solo trovarla!</p>
<p><strong>Su macOS è possibile <a href="https://support.apple.com/it-it/guide/mac-help/mchlp1066/mac">abilitare un server sFTP</a></strong> (in particolare in sFTP la “s” sta per <em>secure</em> ovvero sicuro) configurando l’accesso vis SSH al Mac (c.d. Login Remoto).</p>
<p>Fatto ciò, <strong>è possibile utilizzare il nodo FTP di n8n per salvare uno o più file in una cartella del nostro Mac</strong>. Vediamo in dettaglio come fare.</p>
<p>Il primo passo è quello di <strong>scegliere una cartella in cui salvare i file</strong> e <strong>copiarne il percorso</strong> (nel Finder abilitata la <em>barra del percorso</em> selezionale la cartella tenendo premuto ⌥ e copia, come mostrato nell’immagine sottostante, <strong>punto 1</strong>).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png" data-image-dimensions="1416x1114" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=1000w" width="1416" height="1114" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b5043bbb-76af-4bd4-ac9f-21befb8777e7/26-copiare-percorso-cartella.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di salvataggio negli appunti del percorso di una cartella</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Aggiungere il nodo FTP scegliendo il nodo <em>Upload a file</em> (<strong>carica un file</strong>).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png" data-image-dimensions="1840x1042" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=1000w" width="1840" height="1042" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/7eb3303c-a572-4c55-93e7-1d42dc75e5f9/27-aggiungere-nodo-sFTP-upload.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Nodo FTP di n8n</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Configura il nodo correttamente, inserendo le credenziali (<strong>punto 1</strong> immagine sottostante), controlla che la voce <em>Operation</em> (operazione) sia impostata su <em>Upload</em> (carica file), <strong>punto 2</strong>, ed infine inserisci, nel campo Path (percorso), il percorso completo alla cartella in cui si vuole salvare il documento (quello che hai salvato negli appunti di macOS al punto precedente per intenderci), facendo attenzione ad indicare anche il nome e l’estensione del file da salvare (<strong>punto 3</strong>).</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png" data-image-dimensions="1148x1048" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=1000w" width="1148" height="1048" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b2c0abc2-8341-476f-a367-de333e09fe87/28-configurazione-nodo-sFTP.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Configurazione del nodo sFTP</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Di seguito mostro la configurazione delle credenziali per salvare un documento sul mio MacMini M1, ovviamente tu devi configurarle per il tuo Mac.</p>
<p>Per l’host occorre inserire l’<strong>indirizzo IP del Mac</strong> o il nome di dominio locale, la <strong>porta SSH</strong> (abitualmente la 22) e le <strong>credenziali</strong>: Username (<strong>nome utente</strong>) e <strong>password</strong> del Mac (alternativamente è possibile usare una Privatekey – da configurare). </p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png" data-image-dimensions="2470x1560" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=1000w" width="2470" height="1560" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d3c5db48-59f8-4c54-b3a0-627b553d4a2a/29-configurazione-nodo-sFTP.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di mia configurazione delle credenziali sFTP per accedere al mio MacMini M1</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>E con questo abbiamo finito!</p>
<h2>In conclusione</h2>
<p>È stata un lungo articolo ma spero di averti introdotto sia all’uso di n8n ed in particolare alle sue funzioni di automazione con i modelli di grandi dimensioni locali, grazie ad Ollama.</p>
<p>Quello che ti ho mostrato è un flusso di lavoro relativamente semplice (ed inutile) ma in futuri articoli vedremo come utilizzare queste basi per creare flussi di lavoro più complessi.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>
<p>[^1]: A dir il vero n8n non è installato su un Mac ma su una macchina virtuale del mio server <a href="https://www.proxmox.com/en/">Proxmox</a> … ma questa è un’altra storia!</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/cad1ee73-cd19-4137-ae7a-ce88bb9aed6e/n8n+ed+IA+avanzata.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Dialogare in modo avanzato con un LLM locale con n8n</media:title></media:content></item><item><title>Creare un AppleScript da zero e senza sforzo con un LLM locale (Qwen2.5-coder)</title><category>automazione</category><category>Intelligenza Artificiale</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 18 Nov 2024 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2024/11/18/creare-un-applescript-da-zero-e-senza-sforzo-con-un-llm-locale-qwen25-coder</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:67399a22bff8cb54e583d37b</guid><description><![CDATA[In questo breve articolo ti mostro come, ho utilizzato l’Intelligenza 
Artificiale locale per farmi scrivere un AppleScript e risolvere un mio 
problema senza sapere una di come scrivere il codice.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Questo articolo nasce in modo abbastanza estemporaneo e discuterà dei vari argomenti in modo non dettagliato ma voglio parlartene subito.</p>
<h2>0. Le premesse ed alcune anticipazioni …</h2>
<p>Recentemente ho testato la <a href="https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.form/">funzione di modulo di n8n</a> che permette di creare una pagina web con campi compilabili (un modulo web, appunto).<br>Questa funzione è molto utile perché i dati compilati nel modulo, poi, possono essere utilizzati nel flusso di lavoro di <em>n8n</em> a piacimento permettendo infinite soluzioni.</p>
<p>Nel mio approccio autarchico ho fatto in modo di salvare tutto direttamente su mio Mac in un <a href="https://it.wikipedia.org/wiki/Comma-separated_values">file CSV</a>.<br>Dovevo infatti recuperare informazioni personali di vari soggetti e non volevo creare un database online, anche se <em>n8n</em> permette di interfacciarsi senza troppi problemi con sistemi come <a href="https://it.wikipedia.org/wiki/Google_Sheets">Goggle Sheet</a> o <a href="https://airtable.com/">AirTable</a> piuttosto che <a href="https://www.notion.so">Notion</a>. </p>
<p>Se la soluzione non si appoggia a strumenti online, tuttavia per ogni volta che il modulo viene compilato viene creato un novo file CSV sul mio Mac.</p>
<p>Qui di seguito ti mostro il semplice flusso di lavoro (workflow nel gergo di n8n) che ho creato. </p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png" data-image-dimensions="2946x1922" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=1000w" width="2946" height="1922" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/94d70857-acda-462e-bd22-966cff639ca6/01-form-n8n.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Esempio di workflow di n8n per creare un modulo web e salvare i contenuti sul mio Mac come file CSV</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>In futuri articoli (ne sto scrivendo alcuni) mi riprometto di mostrarti di più su <em>n8n</em> e su come lo sto utilizzando, per ora ti lascio questo piccolo assaggio.</p>
<p>Come dicevo, il sistema funziona ma mi trovo ad avere N file CVS con i dati di ogni singola persona che devo riunire in una unica lista … come fare per non farlo a mano?</p>
<p>Ho pensato ad un <a href="https://it.wikipedia.org/wiki/AppleScript">AppleScript</a> ma, prima di mettermi a cercare su internet nella speranza che qualcuno abbia avuto il mio medesimo problema e lo abbia risolto, ho pensato di rivolgermi all’IA.</p>
<h2>1. Qwen2.5-coder:32B</h2>
<p>Recentemente i ricercatori di Alibaba hanno reso disponibile <a href="https://ollama.com/library/qwen2.5-coder">Qwen2.5-coder</a>.</p>
<p>Vari commentatori hanno parlato della bontà di questo modello dedicato alla creazione di codice. Io lo avevo già scaricato qualche giorno addietro nell’ottica di testarlo alla prima occasione.</p>
<p>Grazie ai 32GB di RAM condivisa del mio MacStudio M1 ho potuto scaricare al versione più “grossa” del modello, quella 32B ovvero a 32 miliardi di parametri, quantizzata a 4bit (Q4).</p>
<h2>2. Chiedi e ti sarà dato</h2>
<p>Ho quindi aperto la mia istanza di <a href="https://www.avvocati-e-mac.it/blog/2024/5/5/ollama-come-avere-una-interfaccia-simile-a-chatgpt-con-open-webui">OpenWeb UI</a>, scelto il modello e scritto il prompt.</p>
<p>Non mi sono sforzato particolarmente nella creazione del prompt ed ho scritto:</p>
<pre><code>puoi scrivermi un Applescript che prende 2 file csv e li unisce? I file hanno le stesse colonne</code></pre>
<p>Obbediente, subito l’LLM mi ha dato un primo AppleScript. La cosa positiva è che, una volta copiato nello <a href="https://support.apple.com/it-it/guide/script-editor/welcome/mac">ScriptEditor</a> non mi ha dato errori nel primo controllo formale.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png" data-image-dimensions="2258x1998" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=1000w" width="2258" height="1998" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/45fc6b42-8dca-4388-a7a6-c95bcd5934b7/02-la-mia-semplice-domanda.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>La mia prima interazione</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Tuttavia la prima interazione richiedeva che io inserissi il percorse dei 2 file da unire, così, preso dall’entusiasmo ho aggiunto una seconda richiesta:</p><pre><code>i file vengono selezionati nel Finder e potrebbero essere più di due, riesci a modificare lo script in tal senso?</code></pre><p>Diligentemente <em>Qwen2.5-coder</em> ha modificato il codice in un batter d’occhio.</p><h3>2.1 Iniziano i problemi</h3><p>Faccio partire lo script (premendo il tasto <em>run</em> dell’editor) e mi si apre la finestra del Finder da cui selezionare i file CSV, grande! Li seleziono … e mi compare un errore … 😓</p><p>Non demordo e faccio la cosa più semplice … copio il testo dell’errore e lo do in pasto all’LLM.</p><pre><code>il tuo script mi da questo errore: error "Il file Macintosh 
HD:Users:filippostrozzi:Documents:scansioni:Test Applescript: 
file2.csv non è stato trovato." number -43 from 
"Macintosh HD:Users:filippostrozzi:Documents:scansioni:Test Applescript: file2.csv"</code></pre><p>Vado avanti così per un po', sto quasi per demordere ma vedo che le cose migliorano. L’LLM infatti inizia a creare uno script relativamente complesso che va anche a controllare gli eventuali errori (cosa per cui io non avrei mai avuto le capacità di fare).</p><p>Poi, dopo l’ultimo errore, quello mostrato qui sotto, eureka!</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png" data-image-dimensions="2236x1318" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=1000w" width="2236" height="1318" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2880d7a0-da9b-458e-8291-00fc14fd6fd6/03-errore-riportato.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Lo script iniziale non funziona …</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h3>2.2 Spiegazioni chiare</h3>
<p>Altra cosa che mi ha stupito positivamente è che l’LLM locale non solo ha creato lo script ma mi ha dato spiegazioni puntali e dettagliate di come utilizzarlo, vedi immagine sottostante, punti 1 e 2.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png" data-image-dimensions="2104x1068" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=1000w" width="2104" height="1068" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ef2b8329-c48e-4852-aa86-2a378d8b085b/04-lla-spiegazione-dello-script.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Spiegazione dello script e procedura di esecuzione</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>3. Il risultato finale</h2>
<p>Ed eccoci arrivati al lieto fine.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png" data-image-dimensions="2966x1016" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=1000w" width="2966" height="1016" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/44f70f44-0dfd-4059-b4ca-9215ce1cae30/05-eseguito-lo-script.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esecuzione dello script con successo</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Come mostrato nell’immagine soprastante (<strong>punto 1</strong>) i due file CSV sono stati riuniti correttamente in un nuovo e differente file, inoltre lo script mi ha pure detto, grazie ad una comoda interfaccia in italiano, che l’operazione è riuscita (<strong>punto 2</strong>).</p>
<p>Se sei curioso a <a href="https://avvocati-e-mac.it/s/00-tutta-la-conversazione.png">questo link</a> ti lascio la cattura schermo di tutte le interazioni che ho avuto con l’LLM per risolvere i vari problemi. Alla fine credo di averci messo circa una ventina di minuti tra interazione con l’LLM e test degli script.</p>
<h2>4. Alcune considerazioni</h2>
<p>Le automazioni che ho messo in pista in questo articolo non sono professionali. Ho dovuto/voluto trovare una soluzione tecnologica per un problema che avevo come rappresentante (neo-eletto 🎉😓) della classe di mio figlio.</p>
<p>Pur essendomi divertito (come al solito) a testare soluzioni, non avevo intenzione di perderci troppo tempo e, effettivamente, l’utilizzo dell’LLM (ma anche di n8n) mi ha semplificato di molto i compiti collaterali che, potenzialmente, potevano sottrarre tempo ad altre attività.</p>
<p>Avrei potuto creare un AppleScript io stesso? Probabilmente sì, non credo però nei tempi e con le modalità in cui lo ha fatto l’LLM.</p>
<p>Da questa piccola avventura quindi posso trarre la conclusione che, a volte, è utile e comodo delegare alcuni compiti specialisti agli LLM (soprattutto se parliamo di compiti informatici). Certo, avrei potuto imparare di più approfondendo il problema e, in un futuro, mi riprometto di farlo … ma per ora ho risolto velocemente un problema senza troppi sforzi.</p>
<p>La morale di questo articolo, tuttavia, è che anche tu puoi approfittare di questi strumenti usando soluzioni online o, come ho fatto io, locali.</p>
<h2>In conclusione</h2>
<p>Ammetto infatti che per ottenere questo risultato avrei potuto usare senza problemi LLM online come ChatGPT o Claude, questo script non conteneva dati sensibile di nessun tipo. Tuttavia avere la possibilità anche senza internet di poter fare una cosa simile (non lo si ricorda mai ma gli LLM online funzionano solo se funziona internet) e senza alcun tipo di spesa è stata una bella soddisfazione.</p>
<p>Oltre ha ciò ho anche imparato che certe volte la via veloce può essere utile, soprattutto se il compito non è ad alta priorità.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://avvocati-e-mac.it/s/00-tutta-la-conversazione.png">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ac73c2eb-edd0-4e65-bcfa-1202c84f72b2/Applescript+da+zero.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Creare un AppleScript da zero e senza sforzo con un LLM locale (Qwen2.5-coder)</media:title></media:content></item><item><title>Introduzione a n8n: automazione no-code per Intelligenza Artificiale</title><category>Intelligenza Artificiale</category><category>automazione</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 04 Nov 2024 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2024/11/2/introduzione-a-n8n</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:6726001c9674ba22c256a220</guid><description><![CDATA[In questo articolo ti parlo del perché sono interessato ad n8n e di alcune 
cose che ho già fatto con questo sistema di automazione in self-host.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>In questo ultimo periodo, tra le varie cose, sto giocando con <a href="https://n8n.io/">n8n</a> e mi pare giusto iniziare ad introdurlo qui per poi valutare (grazie anche al tuo feedback) se ha senso parlarne più in dettaglio.</p><h2>1. Che cos’è n8n?</h2><p>n8n è la versione open-source di servizi a pagamento come <a href="https://zapier.com">Zapier</a> <a href="https://www.make.com/en">Make</a> <a href="https://ifttt.com">IFTTT</a>. In estrema sintesi sono piattaforme web che si prefiggono di automatizzare e far dialogare differenti servizi web.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png" data-image-dimensions="1056x1280" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=1000w" width="1056" height="1280" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d6ac68f6-788e-4759-8dca-b64aff07d39e/01-n8n-pagina.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Pagina del sito di n8n</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Ad esempio: io usa Zapier (nella versione gratuita) per pubblicare un post su <em>LinkedIn</em> ogni volata che pubblico un articolo qui.</p>
<p>Questi strumenti, tuttavia, se utilizzati in modo massiccio diventano velocemente costosi.</p>
<p>Vengono volgarmente chiamati strumenti <strong>no-code</strong> perché promettono di interfacciarsi con le <a href="https://it.wikipedia.org/wiki/Application_programming_interface">API</a> di una pletora di servizi web senza la necessità di scrivere codice. Questo viene fatto attraverso <em>astrazioni</em> grazie ad una interfaccia web della specifica applicazione.</p>
<p>Personalmente trovo che gli <em>strumenti no-code</em> siano una bufala di marketing: sì, per flussi di lavoro molto semplici (come il mio sistema di pubblicazione degli articoli su LinkedIn) non è richiesta una conoscenza elevata ma appena vuoi creare qualcosa di più complesso e funzionale, le cose cambiano velocemente e sono richieste competenze più specifiche.</p>
<p>Ciò detto sono strumenti utili e, in parte, simili a <a href="https://support.apple.com/it-it/guide/shortcuts/welcome/ios">Comandi Rapidi</a> di Apple.</p>
<p>Recentemente n8n (probabilmente anche per rilanciarsi sul mercato) ha introdotto alcune interessanti funzioni legate alle IA ed in particolare la possibilità di interfacciarsi con Ollama e, quindi, LLM locali. </p>
<p>Era quindi scontato che iniziassi a giocarci ed approfondire.</p>
<h2>2. Un po' di storia</h2>
<p>L’amico <em>Alessandro</em> mi ha fatto conoscere n8n svariati anni fa. All’epoca l’interfaccia era ancora acerba e le mie capacità di creare un container e sperimentare con n8n non particolarmente evolute. </p>
<p>Tuttavia proprio perché ci vedevo possibili interessanti sviluppi avevo acquistato un libro (ebook a dir il vero) su come utilizzarlo. </p>
<p>Il libro si chiamava “Rapid Product Development with n8n” di Jason McFeetors e Tanay Pant (il creatore di n8n). Oggi il libro non è più in commercio perché obsoleto.</p>
<p>Fatte tutte queste premesse vediamo perché mi interessa (e potrebbe interessare anche a te) n8n.</p>
<h2>3. Cosa mi interessa di n8n?</h2>
<p>I motivi per il mio interesse in n8n sono svariati di seguito ti indico i punti fondamentali.</p>
<p>Anzitutto il mio scopo principale è quello di <strong>utilizzare il sistema internamente e con i miei dati non per interfacciarmi con servizi esterni</strong>. </p>
<p>Uno dei problemi maggiori che trovo nei servizi come Zapier e simili è che tutto deve risiedere nel web (ovvero su server di altri soggetti, su cui io non ho il minimo controllo).</p>
<p>Se questo approccio ha senso per la maggior parte delle persone, vista la mia attività non posso / voglio dare l’accesso ai miei dati e quelli dei miei clienti a soggetti di cui non posso avere la massima fiducia.</p>
<p>n8n può risiedere direttamente nella mia rete locale (o addirittura su di un singolo Mac) e questo è “impagabile” a livello di sicurezza.</p>
<p>Non solo, grazie l’accesso vis sFTP può accedere ai dati residenti sui miei Mac caricando, manipolando e scrivendo i file.</p>
<p>Secondariamente è un <strong>sistema di automazione</strong> e questo ovviamente mi attira. L’interfaccia è a blocchi e, anche se per flussi di lavoro complessi, non è proprio comodissima è in parte simile a quella di <em>Comandi Rapidi</em>: varie azioni o blocchi che possono essere concatenati per creare il tuo flusso di lavoro. Rispetto a <em>Comandi Rapidi</em> n8n si differenzia perché può gestire dei flussi condizionali in modo più semplice e visuale.</p>
<h3>3.1. Integrazione avanzata con IA ed in particolare LLM locali</h3>
<p>Se leggi le pagine di questo sito sai che nel corso del 2024 i miei maggiori sforzi sono stati dedicati alla IA, in particolare LLM, in locale.</p>
<p>n8n non solo si integra perfettamente con Ollama ma, sotto la scocca, utilizza LangChain un framework che permette di utilizzare gli LLM creando agenti e flussi di lavoro complessi.</p>
<p>Questa attualmente è la caratteristica di n8n che più mi interessa.</p>
<p>Gli LLM da soli infatti sono “stupidi”, ovvero non possono sapere nulla di più del materiale usato per il loro addestramento.<br>Per ovviare a questo enorme limite esistono vari trucchi il framework di <em>LangChain</em> permette ai programmatori di accedere a questi trucchi e funzionalità aggiuntive.</p>
<p>n8n permette di fare altrettanto ma in maniera grafica. </p>
<p>È quindi possibile attraverso n8n creare una memoria vettoriale delle chat con l’LLM, dialogare con i documenti e tant’altro senza dover sporcarsi troppo le mani con il codice.</p>
<p>Dal mio punto di vista vuol dire poter creare dei prototipi di flussi di lavoro con LLM locali relativamente complessi senza avere ancora tutte le capacità di scrivere il relativo codice.</p>
<h3>3.2 Manipolazione dei dati</h3>
<p>A ciò si aggiunga che una delle caratteristiche di base di n8n è la sua capacità di manipolare i dati. Ciò fa si che quanto inviato e/o generato dall’LLM può essere a sua volta manipolato.</p>
<p>Nel flusso di lavoro che segue ho estratto il testo di varie sentenze della cassazione, l’ho manipolato con n8n per ottimizzarlo togliendo le nuove righe e creando un blob di testo meglio digeribile dall’LLM, per poi passarlo ad un LLM ed estrarre le massime delle sentenze. Infine crea e salva un documento in cui sono contenute le massime estratte ed il testo del provvedimento.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png" data-image-dimensions="1280x809" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=1000w" width="1280" height="809" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/0978c872-6f5f-4655-a4fc-9d437138c6ee/02-esempio-automazione-massimazione-sentenze.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class=""><em>Esempio di automazioni con LLM</em></p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<p>Questo è un primissimo esperimento che ho fatto (se c'è interesse non ho problemi a condividerlo nel dettaglio) ma mostra le potenzialità del sistema.</p>
<h3>3.3 Possibilità di interfacciarsi con Comandi Rapidi</h3>
<p>Altro punto che mi ha fatto apprezzare n8n è la possibilità di utilizzarlo in congiunzione con <em>Comandi Rapidi</em>. Ti ho già mostrato <a href="https://www.avvocati-e-mac.it/blog/2024/9/29/comandi-rapidi-ed-ollama-le-basi">come è possibile interfacciare Comandi Rapidi con delle API in particolare quelle di Ollama</a>, qui tuttavia il sistema è ancora più semplice.</p>
<p>Come si vede nel breve video (meno di 3 minuti) qui sotto, ho creato rapidamente una interfaccia tra n8n e Comandi Rapidi per l’utilizzo di un LLM locale.</p>






  <iframe scrolling="no" allowfullscreen src="//www.youtube.com/embed/5aoxcAhfjlA?wmode=opaque" width="854" frameborder="0" height="480"></iframe>

<p>Grazie alle funzioni di <em>Comandi Rapidi</em> puoi far leggere il testo direttamente a Siri. Basta aggiungere l’azione <em>Leggi testo</em>.</p>
<h3>3.4 Costi limitati</h3>
<p>n8n, rispetto ad altri servizi è relativamente economico.</p>
<p>Non è mia intenzione entrare qui in dettaglio ma esiste la versione c.d. <em>self-hosted</em>, ovvero installata su proprio hardware o su hardware in affitto (server web), in cui non si hanno costi per i workflow azionati e si hanno workflow infiniti. Esiste una versione di <a href="https://app.n8n.cloud/login">n8n cloud</a> in cui invece <a href="https://n8n.io/pricing/">si paga in base all’utilizzo</a>.</p>
<h3>3.5 Possibilità di “rubare” i workflow di altri</h3>
<p>Da ultimo, ma non per importanza, n8n ha una enorme <a href="https://n8n.io/workflows/">collezione di template</a> di flussi di lavoro.</p>
<p>Questo significa che, anche se non sei super esperto, puoi utilizzare flussi di lavoro creati da altri e/o modificarli per le tue esigenze. Un po' come con <em>Comandi Rapidi</em> e la gallery.</p>
<h2>4. Un discorso sulla licenza di n8n e sul modello di business</h2>
<p>n8n, come dicevo, è un software open-source ma con un un asterisco.</p>
<p>Infatti rispetto ad altri sviluppatori open-source quelli di n8n hanno “inventato” la <em>licenza fair-code</em>.</p>
<p><a href="https://docs.n8n.io/sustainable-use-license/">Qui</a> trovi in dettaglio la licenza spiegata.</p>
<p>Per quel che ci interessa riporto i casi in cui occorre pagare n8n anche se lo si utilizza in self-hosting.</p>
<blockquote>
<p>La nostra licenza limita l’uso a "scopi commerciali interni". In pratica questo significa che tutto l’uso è consentito a meno che non si stia vendendo un prodotto, un servizio o un modulo in cui il valore deriva interamente o sostanzialmente dalla funzionalità n8n.</p>
</blockquote>
<p>Il modello di business di n8n è quindi quello di vendere il servizio cloud e, in caso di grossi business, ottenere ricavi da servizi di terzi che si basino prevalentemente su n8n.</p>
<p>Per quanto ci riguarda quindi sicuramente possiamo giocare con il servizio self-hosted e, ma qui ti consiglio di approfondire, creare servizi ad uso interno anche per lo studio legale.</p>
<h2>In conclusione</h2>
<p>Spero che questa <strong>iniziale carrellata di n8n</strong> ti sia piaciuta e possa spingerti ad approfondire. Come sempre amo ricevere il feedback e, visto che è un argomento nuovo su queste pagine, sapere se ti possono interessare ulteriori approfondimenti.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/jpeg" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f6b16111-034e-41dd-b55b-af1ee9cb7fa6/Introduzione+a+n8n.001.jpeg?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Introduzione a n8n: automazione no-code per Intelligenza Artificiale</media:title></media:content></item><item><title>MacMini M4: pensieri a caldo</title><category>News</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Thu, 31 Oct 2024 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2024/10/31/macmini-m4-pensieri-a-caldo</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:672332dc5ee2753c5c4e536e</guid><description><![CDATA[In questo breve articolo di commento alle novità hardware Apple, ragiono 
sul passato, presente e futuro dei MacMini, con particolare riguardo 
all’utilizzo nel mondo delle IA locali.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Abitualmente non tratto delle news, soprattuto hardware, ma per il nuovo MacMini farò un’eccezione.</p><h2>1. La mia storia con i MacMini</h2><p>Premetto che amo il MacMini.
Il mio primo Mac è stato il MacMini Intel nel 2006. Nel corso del tempo ho collezionato un’infinità di MacMini e vari li uso ancora.</p><p>Da sempre il MacMini è stato il Mac poco costoso che permetteva di entrare nel mondo Apple. Nel tempo, per me, è diventato un sistema per gestire <em>headless</em> server, gestione file, stampanti e tanto altro.</p><p>Il grosso vantaggio del MacMini è sempre stata la piccola dimensione, la silenziosità ed il fatto di poterlo mettere ovunque.</p><h2>2. La mia situazione attuale</h2><p>Il mio MacMini M1 (usato) è da ormai qualche anno il mio server per <a href="https://syncthing.net/">Syncthing</a>, la gestione del Processo Civile Telematico con i depositi attraverso <a href="https://www.slpct.it/">SLpct</a>, backup <a href="https://support.apple.com/it-it/104984">TimeMachine</a> e, per un primissimo periodo, <a href="https://www.avvocati-e-mac.it/blog/2024/3/3/lintegrazione-dellintelligenza-artificiale-in-uno-studio-legale-usando-un-macmini-m1-vantaggi-e-sfide">server per le IA</a>.
Lavora <em>headless</em> e mi ci connetto in remoto via <a href="https://support.apple.com/it-it/guide/mac-help/mh14066/15.0/mac/15.0">Condivisione Schermo</a>.</p><p>Se ti interessa io uso <a href="https://amzn.to/4f3BXL0">questi dongle HDMI</a> per simulare lo schermo e poter vedere in alta definizione dalla <em>Condivisione Schermo</em>.</p><h2>3. MacMini base</h2><p>Con l’avvento di <a href="https://www.apple.com/it/newsroom/2024/10/apple-intelligence-is-available-today-on-iphone-ipad-and-mac/">Apple Intelligence</a> (in Italia si parla di Aprile 2025) tutti i Mac con chip M4 sono dotati di 16 Gb di RAM. 
Questo rende veramente <strong>interessante il MacMini</strong> c.d. <em>entry level</em> con un costo di <strong>€ 729,00</strong> che, presumibilmente, più avanti nel tempo potrà scendere su siti com Amazon. 
Unica grossa <strong>pecca</strong> di questo modello è il taglio dell'SSD interno che è di soli 256GB, insufficienti per qualsiasi cosa. Certo con le 3 thunderbolts 4 si può aggiungere spazio di archiviazione ma i rischi di saturare velocemente l'SSD sono notevoli su si vuole giocare con l'IA.</p><h2>4. MacMini Pro: il top</h2><p>Con circa 2.600 € si può avere una macchina molto potente e pensata per l’IA e non solo.</p><p>64GB di RAM permettono di far girare modelli molto interessanti ed avere una finestra di contesto generosa.</p><p>Segnalo che con la versione Pro del MacMini c’è un <em>aumento del 75% del pass-trough</em> molto utile per gli LLM ed aumentano i core di GPU. L’SSD non è il top (solo 512GB) ma sufficienti per un’attività normale.</p><h2>5. In attesa di saperne di più</h2><p>I nuovi MacMini verranno consegnati dal 8/11 (mentre scrivo sono in pre-ordine). Sono curioso di capire come sarà la gestione termica di questo cubetto di 13x13 cm e, soprattutto, i suoi consumi energetici.</p><p>Se le performance termiche fossero giuste (la riduzione di spazio mi fa preoccupare) ed i consumi fossero bassi (come è tipico dei MacMini) si dimostrerebbe un'interessante dispositivo per server macOS ed IA.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png" data-image-dimensions="3284x1664" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=1000w" width="3284" height="1664" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/f273b217-b831-4765-b071-553b795f3d9c/SCR-20241031-iczz.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
          
          <figcaption class="image-caption-wrapper">
            <p class="">Configurazione interna MacMini M4 e flusso dell’aria per il raffreddamento (Fonte Apple)</p>
          </figcaption>
        
      
        </figure>
      

    
  


  


<h2>In conclusione</h2><p>Apple non aggiornava il MacMini a livello di forme da 14 anni e per molto tempo lo ha snobbato. Spero e credo che possa esserci un buon accoglienza per questo nuovo Mini e che le aspettative siano confermate. Io rimarrò Comunque sempre un fan del MacMini.</p><p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/png" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/22259cb9-7cf8-4cef-ab88-cfcb7e274de2/MacMini+M4+considerazioni+a+caldo.001.png?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">MacMini M4: pensieri a caldo</media:title></media:content></item><item><title>Installazione di Stirling PDF: ottimizzazione dimensioni PDF e loro OCR</title><category>digitalizzazione</category><dc:creator>Filippo Strozzi</dc:creator><pubDate>Mon, 28 Oct 2024 08:00:00 +0000</pubDate><link>https://avvocati-e-mac.it/blog/2024/10/24/installazione-stirling-pdf</link><guid isPermaLink="false">55b2626fe4b0bfab95304b93:55b26518e4b05fd0faf1a0f9:671a4d59e1141251a8d8c2af</guid><description><![CDATA[In questo articolo ti mostro come installare Stirling PDF per fare OCR 
(riconoscimento ottico dei caratteri) ed ottimizzare i PDF in modo gratuito 
grazie a questo software open-source.

Leggi tutto …]]></description><content:encoded><![CDATA[<figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png" data-image-dimensions="1920x1080" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=1000w" width="1920" height="1080" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Questo articolo nasce dalla richiesta dell’amico <a href="https://slpct.wordpress.com">Stefano Baldoni</a> di una utility per comprimere (ottimizzare) i PDF per macOS.</p><p>Da tempo conosco ed uso <a href="https://github.com/Stirling-Tools/Stirling-PDF">Stirling PDF</a> e credo possa essere una ottima soluzione per gli utenti Mac ma anche quelli Windows. Sì, questo articolo potrà essere usato anche dagli utenti Microsoft.</p><p>In questo articolo ti mostrerò come installare la applicazione web e come installare l’OCR, il riconoscimento ottico dei caratteri, in italiano.</p><p>In un futuro articolo, invece, ti mostrerò come utilizzare le tante funzioni di <em>Stirling PDF</em>.</p><h2>1. Cos'è Stirling PDF?</h2><p>Come recita il sito del progetto:</p><blockquote>
<p>Questo è un robusto strumento di manipolazione PDF basato sul web ospitato localmente che utilizza Docker. Consente di eseguire varie operazioni sui file PDF, tra cui divisione, fusione, conversione, riorganizzazione, aggiunta di immagini, rotazione, compressione e altro ancora. Questa applicazione Web ospitata localmente si è evoluta per comprendere una serie completa di funzionalità, che rispondono a tutti i tuoi requisiti PDF.</p>
</blockquote><blockquote>
<p>Stirling PDF non avvia alcuna chiamata in uscita per scopi di registrazione o tracciamento.</p>
</blockquote><blockquote>
<p>Tutti i file e i PDF esistono esclusivamente sul lato client, risiedono nella memoria del server solo durante l'esecuzione dell'attività o risiedono temporaneamente in un file esclusivamente per l'esecuzione dell'attività. Qualsiasi file scaricato dall'utente sarà stato eliminato dal server a quel punto.</p>
</blockquote><p><em>Stirling PDF</em> ha il vantaggio di essere una applicazione web, semplice da usare, con interfaccia in italiano e la possibilità di fare moltissime operazioni sui PDF senza richiedere l’utilizzo della <em>riga di comando</em> e altre <em>magie informatiche</em>.</p><h2>2. Installazione Docker</h2><p>Come avrai intuito leggendo la descrizione del progetto, <em>Stirling PDF</em> è un’applicazione web che utilizza <a href="https://it.wikipedia.org/wiki/Docker">Docker</a> per installarla sul tuo computer.</p><p>Se ho mostrato nel video articolo di come installare <a href="https://www.avvocati-e-mac.it/blog/2024/5/5/ollama-come-avere-una-interfaccia-simile-a-chatgpt-con-open-webui">OpenWeb UI</a> i passaggi per installare la versione Desktop di Docker su macOS, non l’ho mai fatto in un articolo e ne approfitto per rimediare.</p><h3>2.1 Installazione come DMG</h3><p>Se vuoi installa su macOS <strong>Docker Desktop</strong> è sufficiente andare sul sito di Docker e <a href="https://docs.docker.com/desktop/install/mac-install/">scaricare la versione per il tuo sistema</a>, come mostrano nell’immagine sottostante.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png" data-image-dimensions="3202x1854" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=1000w" width="3202" height="1854" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/5f7b88e6-8640-4949-b839-35ed68ce71c4/00-scaricare-docker-desktop.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Stesso discorso vale per Windows ma, in questo caso, devi andare a <a href="https://docs.docker.com/desktop/install/windows-install/">questa pagina web</a>.</p>
<p>Do per scontato che tu sappia installare una applicazione in macOS o Windows.</p>
<p><em>Docker Desktop</em> è un <a href="https://it.wikipedia.org/wiki/Electron_(framework)">app Electron</a> … con tutti i suoi vantaggi e svantaggi.</p>
<h3>2.2 Installazione con HomeBrew</h3>
<p>Se ami come me la gestione della applicazioni via <a href="https://brew.sh/it/">HomeBrew</a> apri il terminale e digita il seguente comando:</p>
<pre><code>brew install --cask docker</code></pre>
<p>Ho spiegato come installare <em>HomeBrew</em> sul tuo Mac in <a href="https://www.avvocati-e-mac.it/blog/2020/6/19/youtube-installazione-homebrew-pandoc-e-mactex-su-macos">questo video</a>.</p>
<h3>2.3 Risultato finale</h3>
<p>Se tutto è andato a buon fine ti troverai in una situazione simile a quella mostrata qui sotto, ovvero con l’applicazione Desktop di Docker installata ed, nel mio caso, aperta. Unica differenza, rispetto a quello che vedi nell’immagine sottostante è che tu non dovresti avere altri container attivi.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg" data-image-dimensions="2934x1758" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=1000w" width="2934" height="1758" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/8b23e072-30a4-4c66-a45e-d0f41075b2a6/01-docker-desktop.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<h3>2.4 Nota finale</h3>
<p>Segnalo per chi fosse più smanettone (come il sottoscritto) che esiste un ulteriore modo di installare Docker: a riga di comando dal terminale.</p>
<p>Questa è la soluzione che uso abitualmente (su una macchina virtuale Linux dedicata a questo). La desktop app ha il vantaggio di essere facile da utilizzare e gestire ma, essendo Electron, ha dei limiti tecnici.</p>
<p>In tal caso ti suggerisco di installare <a href="https://github.com/portainer/portainer">Porteiner</a> per avere una interfaccia web e gestire i container di docker.</p>
<p>Per i non esperti ritengo più adatta la Docker Desktop app ma, visto che Valerio mi ha giustamente fatto notare che io faccio le guide per cose che poi non uso tutti i giorni, mi sembra giusto spiegarti il motivo ed indicarti l‘alternativa. Per quel che ci interessa fare oggi sarebbe troppo complesso e, in molti casi, inutile.</p>
<p>Avere una macchina dedicata ai container docker, infatti, è utile se vuoi accedervi in rete locale o da remoto esigenza mia, ma non di tutti.</p>
<h2>3. Installazione di Stirling PDF</h2>
<p>Veniamo quindi all’installazione sul nostro computer di Stirling PDF.</p>
<h3>3.1 Docker compose</h3>
<p>Questa è la parte più “informatica” dell’articolo. Sarà infatti necessario utilizzare il <a href="https://support.apple.com/it-it/guide/terminal/welcome/mac">Terminale</a> (o <a href="https://it.wikipedia.org/wiki/PowerShell">Powershell di Windows</a>) per dare il comando di generazione del container di Stirling PDF.</p>
<p>Prima tuttavia dobbiamo fare alcune cose.</p>
<p>Anzitutto scegli una cartella (io per motivi dimostrativi l’ho messa all’interno di quella dei Download ma tu scegli quella che preferisci) ed al suo interno creiamo una cartella denominata <code>stirling-PDF</code>. Il nome è arbitrario ma credo sia utile sapere cosa contiene.</p>
<p>Entriamoci dentro e, con un qualsiasi editor di testo (<a href="https://support.apple.com/it-it/guide/textedit/txted6a660ee/mac">TextEdit</a> su macOS o <a href="https://it.wikipedia.org/wiki/Blocco_note">NotePad</a> su Windows vanno benissimo) e creiamo un file denominato <code>compose.yaml</code>. Io personalmente utilizzo Vim, ma <em>de gustibus</em> …</p>
<p>Copia il seguente YAML:</p>
<pre><code>services:
  stirling-pdf:
    container_name: Stirling-PDF
    image: frooodle/s-pdf:latest
    deploy:
      resources:
        limits:
          memory: 4G
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:8080/api/v1/info/status | grep -q 'UP' &amp;&amp; curl -fL http://localhost:8080/ | grep -qv 'Please sign in'"]
      interval: 5s
      timeout: 10s
      retries: 16
    ports:
      - "8080:8080" # puoi modificare la porta di sinistra, non quella di destra
    volumes:
      - ./traingData:/usr/share/tessdata:rw
      - ./config:/configs:rw
      - ./logs:/logs:rw
    environment:
      DOCKER_ENABLE_SECURITY: "false"
      SECURITY_ENABLELOGIN: "false"
      LANGS: "en_US,it_IT"
      SYSTEM_DEFAULTLOCALE: it-IT # lingua dell’interfaccia
      UI_HOMEDESCRIPTION: Stirling-PDF
      UI_APPNAMENAVBAR: Stirling-PDF
      SYSTEM_MAXFILESIZE: "100"
      METRICS_ENABLED: "false"
      SYSTEM_GOOGLEVISIBILITY: "false"
    restart: on-failure:5</code></pre>
<p>Questo testo è la configurazione (in lingua italiana) di Stirling PDF che ho preparato per te. Non ha senso addentrarsi troppo nel suo esame perché richiederebbe troppo tempo e, probabilmente, non ti interessa. Semplicemente fidati ho fatto svariati test prima di scrivere questa guida.</p>
<p>Segnalo solo che <strong>questa configurazione è pensato per uso interno e sul proprio computer</strong> non per la gestione in rete interna o, dio non voglia, su internet. </p>
<p>Per gestire autenticazioni, utenti, e sicurezza sono richieste capacità che io non ho e comunque l’articolo diventerebbe fin troppo lungo.</p>
<p>Benissimo, una volta creato il file e copiato il testo soprastante arriviamo alla parte del terminale.</p>
<p>Aprilo, naviga fino alla cartella in cui è contenuti il <code>compose.yaml</code>.</p>
<p>Su Mac così come su Windows puoi utilizzare il comando <code>cd</code>come mostrato qui sotto (è un esempio legato alla mia configurazione):</p>
<pre><code>cd ~/Downloads/stirling-PDF</code></pre>
<p>Ora digita il seguente comando:</p>
<pre><code>docker compose up -d</code></pre>
<p>Il comando <code>docker compose</code>permette di leggere il file <code>compose.yaml</code> e la configurazione in esso contenuta. L’opzione <code>-d</code>permette di lanciare il tutto in background e non nel terminale.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png" data-image-dimensions="1896x352" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=1000w" width="1896" height="352" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/d5cdf4fe-a521-475f-a8f3-1a0e0bf61808/02-docker-compose.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Se non ci sono problemi, vedrai qualcosa di simile a quanto mostrato nell’immagine sottostante. Nella sostanza verrà scaricata l’immagine del container di <em>Stirling PDF</em>.</p>











































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg" data-image-dimensions="2044x1526" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=1000w" width="2044" height="1526" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2e4ef98e-642a-4031-8cb4-0f2038e9575d/03-donwload-immagine.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Alla fine dell’operazione ti troverai in una situazione simile alla seguente.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg" data-image-dimensions="2044x1526" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=1000w" width="2044" height="1526" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/26bcf986-b6bc-4b21-83cf-e32f84d2eded/04-immagine-scaricata.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Lato Docker Desktop invece vedrai che il container di Stirling PDF è presente e si è avviato.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg" data-image-dimensions="2934x1758" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=1000w" width="2934" height="1758" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ae387c65-060a-43ea-90eb-f4b8a4fcccfb/05-containter-partito.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Se cliccherai sul link indicato dal <strong>punto 1</strong>, ti si aprirà (in locale) l’applicazione web di Stirling PDF nel browser di sistema come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg" data-image-dimensions="2682x2244" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=1000w" width="2682" height="2244" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/4887f97e-cf67-4724-931c-8d8ce1c3d373/06-pagina-web-stirling-pdf.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Bravo! Sei riuscito ad installare con successo Stirling PDF. Non abbiamo ancora finito però … </p>
<h3>3.2 Installazione lingua italiana OCR</h3>
<p>Come spesso capita nel mondo anglofono-centrico, l’immagine docker di <em>Stirling PDF</em> è dotata (anche per motivi di ingombro) solo del sistema per l’OCR dei documenti in lingua inglese.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png" data-image-dimensions="1974x1970" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=1000w" width="1974" height="1970" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ec2a1a0e-6b2a-4db6-b648-33e3d873d225/07-OCR-solo-in-inglese.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Per gli italiani quindi, una volta fatta l’installazione base, occorre un ulteriore passo, che vedremo qui assieme.</p>
<p>Anzitutto dopo aver scaricato l’immagine ed avviato il container scoprirai che nella cartella designata non ci sarà più solo il <code>compose.yaml</code>ma anche altri file e cartelle.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg" data-image-dimensions="1670x1070" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=1000w" width="1670" height="1070" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/b47da8cb-b250-4f17-8e94-a71437c743e6/08bis-cartelle-applicazione.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>A noi interessa la cartella <code>traingData</code>, come mostrato nell’immagine sottostante. Qui infatti dovremo caricare il modello per l’OCR in lingua italiana.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg" data-image-dimensions="1670x1070" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=1000w" width="1670" height="1070" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/850bb3fc-f172-40ee-80bd-fad63a7a7947/08-cartella-OCR.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p><a href="https://github.com/tesseract-ocr/tessdata/blob/main/ita.traineddata">Segui questo link</a> che, nel momento in cui scrivo, permette di arrivare direttamente al modello in lingua italiana.</p>
<p>Ti si aprirà la pagina mostrata nell’immagine sottostante, qui dovrai premere il pulsante per il download del modello in italiano, come mostrato al <strong>punto 1</strong> dell’immagine.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png" data-image-dimensions="2244x1206" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=1000w" width="2244" height="1206" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/ba3ffa59-b924-4c50-999f-9452fdd2a2d0/09-scaricare-OCR-italiano.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Utilizzando <em>Safari</em>, ma per altri browser sarà più o meno simile, scaricherà nella cartella di Download il file che ci serve.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png" data-image-dimensions="2388x1014" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=1000w" width="2388" height="1014" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/2dc64c84-990a-40d2-8c88-ef10a633199b/10-download-eseguito.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Ora trascina il file denominato <code>ita.traineddata</code> nella cartella <code>traingData</code>, non cancellare nulla all’interno di questa cartella.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png" data-image-dimensions="1514x896" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=1000w" width="1514" height="896" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/65985a7a-6008-4e42-b9d4-ccd5222812cc/11-recupero-ocr.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Ti dovrai trovare in una soluzione simile a quanto mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg" data-image-dimensions="1670x1070" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=1000w" width="1670" height="1070" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e7a300f2-4bb7-4467-b0dc-554af81760ef/12-salvataggio-traingData.jpeg?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Ora, se torni alla pagina di <em>Stirling PDF</em> per eseguire l’OCR troverai anche la possibilità di farlo in italiano come mostrato nell’immagine sottostante.</p>












































  

    
  
    

      

      
        <figure class="
              sqs-block-image-figure
              intrinsic
            "
        >
          
        
        

        
          
            
          
            
                
                
                
                
                
                
                
                <img data-stretch="false" data-image="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png" data-image-dimensions="2038x964" data-image-focal-point="0.5,0.5" alt="" data-load="false" elementtiming="system-image-block" src="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=1000w" width="2038" height="964" sizes="(max-width: 640px) 100vw, (max-width: 767px) 100vw, 100vw" onload="this.classList.add(&quot;loaded&quot;)" srcset="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=100w 100w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=300w 300w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=500w 500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=750w 750w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=1000w 1000w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=1500w 1500w, https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/1fa6d24c-a930-43a3-99d6-6a0d170de4c9/13-attivazione-OCR-italiano.png?format=2500w 2500w" loading="lazy" decoding="async" data-loader="sqs">

            
          
        
          
        

        
      
        </figure>
      

    
  


  


<p>Nel prossimo articolo ti mostrerò alcune funzioni di <em>Stirling PDF</em> in particolare come ridurre le dimensioni del PDF e farne l’OCR, ti sprono tuttavia a provare fin da subito le varie possibilità che ti apre questa web app. </p>
<h2>In conclusione</h2>
<p>In questo articolo abbiamo visto cos’è e come installare la web applicazione <em>Stirling PDF</em>.</p>
<p>In particolare, per farlo, abbiamo usato <em>Docker Desktop</em>. I container, seppur uno strumento relativamente avanzato, sono molto utili per la gestione di tante applicazioni web open-source e credo sia utile saperlo maneggiare un minimo.</p>
<p>Come sempre, se ti è piaciuto quel che hai letto o visto e non l’hai già fatto, ti suggerisco di iscriverti alla mia <a href="https://www.avvocati-e-mac.it/mailinglist">newsletter</a>. Ti avvertirò dei nuovi articoli che pubblico (oltre ai podcast e video su YouTube) e, mensilmente, ti segnalerò articoli che ho raccolto nel corso del mese ed ho ritenuto interessanti.</p>]]></content:encoded><media:content type="image/png" url="https://images.squarespace-cdn.com/content/v1/55b2626fe4b0bfab95304b93/e5356b14-0b90-4452-a7ca-40b8225351c4/installazione+Stirling+PDF+-+ottimizzazione+PDF+ed+OCR.001.png?format=1500w" medium="image" isDefault="true" width="1500" height="844"><media:title type="plain">Installazione di Stirling PDF: ottimizzazione dimensioni PDF e loro OCR</media:title></media:content></item></channel></rss>