Le cadre d'apprentissage en profondeur pour prétraiter, finetune et déployer des modèles d'IA.
Modèles de déploiement du nouveau déploiement? Découvrez LitServe, la foudre Pytorch pour le service de modèle
Démarrage rapide • Exemples • Pytorch Lightning • Tissu • Lightning Ai • Communauté • Docs
Pytorch Lightning: Train et déployer Pytorch à grande échelle.
Tissu de foudre: contrôle expert.
La foudre vous donne un contrôle granulaire sur la quantité d'abstraction que vous souhaitez ajouter sur Pytorch.
Installer la foudre:
PIP installe la foudre
pip install lightning ['extra']
conda installer la foudre -c conda-forge
Installez la future version de la source
PIP installe https://github.com/lightning-ai/lightning/archive/refs/heads/release/stable.zip -u
Installez tous les soirs à partir de la source (aucune garantie)
pip install https://github.com/lightning-ai/lightning/archive/refs/heads/master.zip -u
ou de tester PYPI
pip install -iu https://test.pypi.org/simple/ pytorch-lightning
Définissez le flux de travail de formation. Voici un exemple de jouet (explorez de vrais exemples):
# main.py #! PIP Installer TorchVisionImport Torch, torch.nn as nn, torch.utils.data comme données, torchvision as tv, torch.nn.functional comme un illustre fou comme l # ---------------- ---------------- # Étape 1: Définissez un Lightningmodule # -------------------------- ------ # Un LightningModule (sous-classe NN.Module) définit un système complet * # # (IE: un LLM, un modèle de diffusion, un autoencoder ou un classificateur d'image simple) .Class Litautoencoder (L.lightningmodule): Def __init __ ( self): super () .__ init __ () self.Encoder = nn.Sesential (nn.linear (28 * 28, 128), nn.relu (), nn.linear (128, 3)) self.decoder = nn. Séquentiel (nn.linear (3, 128), nn.relu (), nn.linear (128, 28 * 28)) def en avant (self, x): # in Lightning, en avant définit la prédiction / actions inférentielsEmbedding = self. Encodeur (x) Retour EmbeddingDef Training_step (self, lot, batch_idx): # Training_step définit la boucle de train. Il est indépendant de ForwardX, _ = Batchx = x.view (x.size (0), -1) z = self.encoder (x) x_hat = self.decoder (z) perte = f.mse_loss (x_hat, x) self.log ("Train_loss", perte) return lossdef configure_optimizers (self): optimizer = torch.optim.adam (self.Parameters (), lr = 1e-3) Retour Optimizer # ---------- --------- # Étape 2: Définir les données # ------------------- DataSet = tv.datasets.mnist (".", Télécharger = true . : Train # ------------------- Autoencoder = Litautoencoder () Trainer = L.Trainer () Trainer.Fit (Autoencoder, Data.Dataloader (Train), Data.Dataloader (val))
Exécutez le modèle sur votre terminal
PIP installe TorchVision python main.py
Pytorch Lightning est juste organisé Pytorch - Lightning Disentangles Pytorch Code pour découpler la science de l'ingénierie.
La communauté de Lightning est maintenue par
Plus de 10 contributeurs principaux qui sont tous un mélange d'ingénieurs professionnels, de chercheurs et de doctorats. étudiants des meilleurs laboratoires AI.
800+ contributeurs communautaires.
Vous voulez nous aider à construire la foudre et à réduire le passe-partout pour des milliers de chercheurs? Apprenez à faire votre première contribution ici
La foudre fait également partie de l'écosystème Pytorch qui nécessite que les projets aient des tests, une documentation et un support solides.
Si vous avez des questions, veuillez:
Lisez les documents.
Rechercher dans les discussions existantes ou ajouter une nouvelle question
Rejoignez notre discorde.
OSX (plusieurs versions Python) | |||
Windows (plusieurs versions Python) |