In qualità di tecnico MLOps, si convalidano i modelli ML di cui è stato eseguito l'onboarding in base ai requisiti relativi a sicurezza e privacy, nonché ai requisiti tecnici dell'organizzazione. È quindi possibile caricare i modelli in una raccolta di modelli dedicata in modo che possano essere utilizzati dagli sviluppatori delle applicazioni AI o dai tecnici MLOps per la distribuzione automatizzata basata su CI/CD dei runtime dei modelli.
Procedura
- Distribuire Deep Learning VM con Triton Inference Server e aprire una connessione SSH come vmware.
È possibile utilizzare uno dei workflow seguenti. In qualità di tecnico MLOps, è possibile distribuire direttamente un database da VMware Aria Automation. Oppure, richiedere la distribuzione della macchina virtuale all'amministratore del cloud o al tecninco DevOps.
Se il modello è ospitato in Hugging Face, è possibile installare l'utilità della riga di comando
huggingface-cli come parte dello script cloud-init e utilizzarla per scaricare i modelli con pesi aperti ospitati in Hugging Face Hub. Utilizzare il contrassegno
--local-dir
per scaricare il modello senza collegamenti simbolici, in modo che la CLI di
pais possa elaborarlo.
- Aggiungere il certificato dell'emittente del registro Harbor all'archivio di attendibilità del certificato in Deep Learning VM.
- Richiedere il certificato CA all'amministratore del registro Harbor.
- Caricare il certificato nella macchina virtuale, ad esempio utilizzando un client SCP (Secure Copy Protocol) nella workstation.
- Copiare il certificato nella directory /usr/local/share/ca-certificates e aggiungerlo all'archivio di attendibilità.
Ad esempio:
sudo cp my-harbor-issuing-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
- Per salvare le modifiche, riavviare il servizio Docker.
sudo systemctl restart docker
- Scaricare il modello che si intende convalidare in Deep Learning VM dal catalogo NVIDIA NGC, da Hugging Face o da un altro hub di modelli.
- Eseguire test di runtime in Deep Learning VM come sandbox.
- Convalidare l'integrità del modello controllando il codice hash dei file del modello.
- Analizzare i file del modello per cercare eventuali malware.
- Analizzare il modello per rilevare eventuali attacchi di serializzazione.
- Verificare che l'inferenza funzioni come previsto utilizzando Triton Inference Server.
- Valutare le prestazioni e la sicurezza del modello per il caso d'uso aziendale in questione.
Ad esempio, è possibile esaminare le richieste di inferenza per un comportamento dannoso ed eseguire test funzionali pratici.
- Accedere al registro Harbor utilizzando docker login.
docker login -u my_harbor_user_name my-harbor-repo-mycompany.com
- Dalla directory che contiene i file del modello, eseguire il push del modello nel progetto Harbor per l'organizzazione di destinazione.
Ad esempio, per caricare un modello bge-small-en-v1.5 di Beijing Academy of Artificial Intelligence (BAAI) in un archivio per gli sviluppatori di applicazioni AI:
cd ./baai/bge-small-en-v1.5
pais models push --modelName baai/bge-small-en-v1.5 --modelStore my-harbor-repo-mycompany.com/dev-models --tag approved
Se si esegue nuovamente il push nello stesso modelName, verranno create nuove revisioni del modello che possono essere contrassegnate in base alle proprie preferenze. A ogni revisione viene assegnato un digest univoco per mantenere l'integrità.
- Recuperare l'elenco dei modelli disponibili nella raccolta di modelli e verificare se il proprio modello è stato caricato.
pais models list --modelStore my-harbor-repo-mycompany.com/dev-models
Operazioni successive
Usando l'utilità della riga di comando
pais nelle istanze di Deep Learning VM, copiare i modelli tra le raccolte di modelli per renderli disponibili nelle organizzazioni o nelle aree funzionali.