Home Apple Creare opere d’arte con il machine learning, ora ottimizzato per i dispositivi...

Creare opere d’arte con il machine learning, ora ottimizzato per i dispositivi Apple

Il team Machine Learning Research di Apple ha rilasciato le ottimizzazioni di Core ML per Stable Diffusion in macOS 13.1 e iOS 16.2 (attualmente in beta), insieme al codice per consentire agli sviluppatori di iniziare a implementare sui dispositivi Apple Silicon.

Stable Diffusion è un modello di intelligenza artificiale text-to-image, rilasciato da Stability AI, che mira a consentire alle persone di creare opere d’arte in pochi secondi. Si tratta – ha spiegato Stability AI – di un’innovazione in termini di velocità e qualità, che può essere eseguita su GPU consumer.

Core ML è invece il framework di Apple progettato per consentire agli sviluppatori di integrare il machine learning nelle proprie app per iOS, iPadOS e macOS.

Dal suo debutto pubblico nell’agosto del 2022 – ha sottolineato il team Machine Learning Research di Apple –, Stable Diffusion è stato adottato da una vivace community di artisti, sviluppatori e appassionati, permettendo la creazione di contenuti visivi sorprendenti con un semplice input testuale. In risposta, la community ha costruito in poche settimane un vasto ecosistema di estensioni e strumenti attorno a questa tecnologia di base.

Esistono già metodi per personalizzare Stable Diffusion, per estenderlo a lingue diverse dall’inglese e altro ancora, grazie a progetti open source.

Oltre alla generazione di immagini a partire da brani di testo, gli sviluppatori stanno scoprendo altri usi creativi di Stable Diffusion, come l’editing di immagini, l’in-painting, l’out-painting, la super-risoluzione, il trasferimento di stili e persino la generazione di palette di colori. Con il crescente numero di applicazioni di Stable Diffusion, è importante garantire che gli sviluppatori possano sfruttare questa tecnologia in modo efficace per creare applicazioni che i creativi possano utilizzare ovunque.

machine learning apple

Una delle questioni fondamentali per Stable Diffusion in qualsiasi applicazione – spiega il team Machine Learning Research di Apple – è dove il modello viene eseguito. Ci sono diversi motivi per cui l’implementazione on-device di Stable Diffusion in un’app è preferibile a un approccio basato su server. In primo luogo, afferma il team Apple, la privacy dell’utente finale è protetta perché i dati forniti dall’utente come input al modello rimangono sul dispositivo dell’utente.

In secondo luogo, dopo il download iniziale, gli utenti non hanno bisogno di una connessione a Internet per utilizzare il modello. Infine, il deployment locale di questo modello consente agli sviluppatori di ridurre o eliminare i costi legati ai server.

Arrivare a un risultato convincente con Stable Diffusion può richiedere molto tempo e iterazioni, quindi una sfida fondamentale per il deployment on-device del modello è assicurarsi che possa generare risultati abbastanza velocemente sul dispositivo. Ciò richiede l’esecuzione di una pipeline complessa che comprende 4 diverse reti neurali per un totale di circa 1.275 miliardi di parametri.

Chi è interessato a saperne di più su come il team ha ottimizzato un modello di queste dimensioni e complessità per essere eseguito su Apple Neural Engine può consultare il precedente post del team intitolato Deploying Transformers on the Apple Neural Engine. I principi di ottimizzazione descritti in quell’articolo sono generalizzabili a Stable Diffusion, nonostante sia 19 volte più grande del modello studiato nell’articolo precedente.

L’ottimizzazione di Core ML per Stable Diffusion e la semplificazione della conversione dei modelli rendono più facile per gli sviluppatori incorporare questa tecnologia nelle loro applicazioni in un modo rispettoso della privacy ed economicamente fattibile, ottenendo al contempo migliori prestazioni su Apple Silicon.

Questa release – ha sottolineato il team Apple – comprende un package Python per convertire i modelli di Stable Diffusion da PyTorch a Core ML utilizzando diffusers e coremltools, nonché un package Swift per il deployment dei modelli.

Per iniziare, è possibile visitare il repository del codice Core ML Stable Diffusion su GitHub, per istruzioni dettagliate su benchmarking e deployment.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato sulle novità tecnologiche
css.php