introduzione
Ho sempre pensato che anche il miglior progetto al mondo non abbia molto valore se le persone non possono utilizzarlo. Ecco perché è molto importante imparare come distribuire i modelli di Machine Learning. In questo articolo ci concentriamo sulla distribuzione di un modello linguistico di piccole dimensioni, Tiny-Llama, su un’istanza AWS chiamata EC2.
Elenco degli strumenti che ho utilizzato per questo progetto:
- Nota profonda: è un notebook basato su cloud, ottimo per progetti collaborativi di data science, ottimo per la prototipazione
- API veloce: un framework web per la creazione di API con Python
- AWSEC2: è un servizio Web che fornisce una notevole capacità di elaborazione nel cloud
- Nginx: è un server HTTP e proxy inverso. Lo uso per connettere il server FastAPI ad AWS
- GitHub: GitHub è un servizio di hosting per progetti software
- Abbracciare il viso: è una piattaforma per ospitare e collaborare su modelli, set di dati e applicazioni illimitati.
A proposito di Piccolo Lama
TinyLlama-1.1B è un progetto che mira a pre-addestrare un lama da 1,1 miliardi su 3 trilioni di token. Utilizza la stessa architettura di Lama2 .
I grandi modelli linguistici odierni hanno capacità impressionanti ma sono estremamente costosi in termini di hardware. In molti settori disponiamo di hardware limitato: pensate agli smartphone o ai satelliti. Quindi c’è molta ricerca sulla creazione di modelli più piccoli in modo che possano essere implementati all’avanguardia.
Ecco un elenco dei modelli “piccoli” che stanno prendendo piede:
- VLM mobile (multimodale)
- Phi-2
- Ossidiana (multimodale)
Fonte: towardsdatascience.com