Costruire un Assistente di Laboratorio AI

Ari Mahpour
|  Creato: April 8, 2024

Immagina un assistente di laboratorio che possa prendere appunti per te, controllare le tue apparecchiature di laboratorio, tracciare i tuoi dati e analizzare tutti i tuoi risultati in una volta sola. Questo concetto esiste da, praticamente, sempre. La novità in questo campo è che nessun essere umano svolgerà le attività menzionate - lo farà l'IA. In questo articolo andremo a esaminare una tecnologia rivoluzionaria che ci dà il potere di sfruttare un assistente di laboratorio gestito da IA usando solo il nostro smartphone e un Raspberry Pi.

Applicazioni Pratiche

Piuttosto che mostrare prima l'implementazione, diamo un'occhiata alle applicazioni pratiche del nostro assistente di laboratorio IA. Una sfida comune che affronto è l'accensione di una nuova scheda. Sono costantemente impegnato a sondare diverse parti di una scheda con una mano, a regolare il mio oscilloscopio con un'altra e poi a cercare di accendere e spegnere anche la mia alimentazione (per osservare la corrente di inrush o altre caratteristiche di accensione). Aggiungi a ciò il compito di attivare un carico elettronico DC, e rapidamente ti trovi a corto di mani. Nello scenario migliore potresti avere un partner per aiutarti a mettere in funzione una scheda. Se sei da solo, gestire tutti questi compiti può essere piuttosto fastidioso.

Cosa succederebbe se avessimo un modo per dare istruzioni al nostro assistente IA per alimentare o abilitare i nostri strumenti in sequenza?

Accensione dell'alimentatore

Figura 1: Richiesta di impostare e accendere il mio alimentatore usando il linguaggio naturale

Portiamolo un passo avanti e vediamo se può acquisire dati per noi

Lettura dell'alimentatore

Figura 2: Lettura di tensione e corrente dall'alimentatore

Usando l'interprete di codice (noto anche come Analisi Dati Avanzata), possiamo sfruttare le librerie di visualizzazione per tracciare i dati che abbiamo acquisito dagli strumenti senza nemmeno alzare un dito.

Richiesta di tracciamento

Figura 3: Richiesta di tracciamento

Codice di tracciamento e risultati

Figura 4: Codice di tracciamento e risultati

Ora che hai visto alcuni esempi, vediamo come funziona tutto questo.

Come Funziona

In Come Costruire un'azione GPT Personalizzata per Comunicare con il Tuo Hardware, abbiamo messo insieme un'applicazione molto semplice che attiva un LED connesso a un Raspberry Pi usando richieste in linguaggio naturale a ChatGPT. In Retrofitting Strumenti da Laboratorio con Capacità IoT Utilizzando l'Intelligenza Artificiale Generativa, abbiamo costruito un servizio web intorno ai nostri strumenti in modo che possano essere controllati via internet. Prenderemo i concetti da entrambi gli articoli e li uniremo insieme per creare il nostro assistente di laboratorio AI.

In linea di principio, il nostro approccio riflette quello dell'articolo precedente ma con una complessità aggiunta. Il Large Language Model, in questo caso il motore GPT 4 di ChatGPT, non cambia. L'unico aggiornamento a ChatGPT è un documento OpenAPI modificato che fornisce dettagli su quale funzionalità sto fornendo per l'azione GPT personalizzata. Ad esempio, piuttosto che dargli semplicemente un endpoint di base come "attivare un LED" o "ottenere un numero generato casualmente dal mio server", lo istruisco a "abilitare l'uscita sull'alimentatore DP832". Tutte queste istruzioni possono essere trovate nel file openapi.yaml all'interno del repository.

Proprio come abbiamo fatto in Come Costruire un'azione GPT Personalizzata per Comunicare con il Tuo Hardware, avremo bisogno del nostro certificato SSL, del file openapi.yaml, dei file di configurazione Nginx e di tutti i nostri file Docker per costruire l'applicazione completa. La configurazione di Nginx cambia leggermente perché ora abbiamo più applicazioni web che funzionano indipendentemente l'una dall'altra. Ho configurato le rotte per ognuna separatamente invece di eseguire un unico monolite. Potresti raggrupparle in un'unica applicazione web se lo desideri. Il Dockerfile e Docker Compose sono un po' più complicati perché stiamo costruendo un'immagine base e poi la personalizziamo due volte per ogni singola applicazione web. Tutti i dettagli possono essere trovati nel repository.

Il repository è stato configurato per funzionare subito dopo l'installazione di Docker e aver seguito il README per configurare il tuo certificato e sostituire alcuni file con il nome del tuo dominio. Per semplicità, eseguirlo su un Raspberry Pi (o un altro box Linux leggero) darà i migliori risultati. Diamo un'occhiata a un ultimo esempio che dimostra davvero la potenza dell'AI in combinazione con il controllo degli strumenti da laboratorio.

Un Assistente Sofisticato

Ora che abbiamo messo insieme tutto il nostro ecosistema possiamo iniziare a dare al nostro assistente compiti più complessi come questo:
Ho collegato direttamente il mio alimentatore al mio carico elettronico DC. Voglio esaminare la perdita nei cavi tra i due strumenti. Ecco i passaggi che devi seguire per ottenere queste informazioni:

1.  Imposta l'alimentatore a 5V a 1A

2. Accendi l'alimentatore

3. Imposta il carico elettronico DC in modalità di controllo corrente e abilitalo

4. Misura la tensione dell'alimentatore (e conserva questa per dopo)

5. Misura la tensione del carico elettronico DC (e conserva questa per dopo)

6. Imposta la corrente di affondamento del carico elettronico DC a 0.1A

7. Ripeti i passaggi 4-6 per i seguenti valori di corrente di affondamento: 0.5A,  0.9A

8. Crea un grafico con il numero di esecuzione sull'asse X. La tensione dell'alimentatore e la tensione del carico elettronico DC dovrebbero essere linee separate sull'asse Y.

Nota: L'unica risposta che voglio da te è un riassunto in una linea dell'analisi e la visualizzazione del grafico che mi fornirai.

Il risultato:

Risposta finale

Figura 5: Risposta finale

Come potete vedere, non si limita solo a eseguire una serie di operazioni per noi, ma può anche tracciare e analizzare i risultati per noi. Questo non è il solito "robot didattico" che abbiamo osservato in passato - questo è qualcosa di molto più grande.

Conclusione

In questo articolo abbiamo dimostrato alcune delle capacità del nostro assistente di laboratorio AI e abbiamo esaminato alcuni dei componenti necessari per assemblarlo. Il repository contiene tutto ciò di cui hai bisogno per iniziare, in aggiunta ai tutorial precedenti, come Come Costruire un'azione GPT Personalizzata per Comunicare con il Tuo Hardware e l'Aggiunta di Capacità IoT agli Strumenti di Laboratorio Utilizzando l'AI Generativa, su cui si basa questo. Questo progetto rivela il potere trasformativo dell'AI e come sfruttarlo all'interno di un laboratorio. In che modo l'AI sta trasformando il tuo laboratorio? Prova a eseguire questo progetto di esempio (o una sua variante) e condividi i tuoi pensieri su cosa ha funzionato e cosa no.

Tutto il codice sorgente utilizzato in questo progetto può essere trovato su: https://gitlab.com/ai-examples/instrument-controllables.

Sull'Autore

Sull'Autore

Ari è un ingegnere con una solida esperienza nei campi di progettazione, produzione, collaudo e integrazione di sistemi elettrici, meccanici e software. Ama riunire gli ingegneri addetti alla progettazione, alla verifica e al collaudo e farli lavorare insieme come un'unità affiatata.

Risorse correlate

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.