Skip to content

AkiliAi/rustytorch

Repository files navigation

RustyTorch

À propos

RustyTorch est une bibliothèque de Machine Learning en Rust qui vise à combiner la familiarité de l'API PyTorch avec les avantages de Rust : performance, sécurité mémoire et concurrence sûre. Ce projet est conçu pour les chercheurs et développeurs qui souhaitent exploiter la puissance de Rust tout en conservant la simplicité et la flexibilité qui a rendu PyTorch si populaire.

Caractéristiques

  • 🔢 Tenseurs performants - Opérations tensorielles optimisées avec support SIMD et multithreading
  • 🧮 Différentiation automatique - Système complet de différentiation automatique pour l'entraînement de modèles
  • 🧠 API de réseau neuronal intuitive - Création de réseaux neuronaux similaire à PyTorch
  • 🚀 Optimiseurs avancés - SGD, Adam, AdamW et autres optimiseurs
  • 🦀 Idiomatique Rust - Tire parti des fonctionnalités de Rust comme le système de types, la gestion d'erreurs et les traits
  • 🔍 Vérification à la compilation - Vérification des dimensions tensorielle à la compilation quand possible
  • 🔌 Extensible - Architecture modulaire et facile à étendre

État du projet

RustyTorch est actuellement en phase de développement actif. Les API peuvent changer pendant que nous travaillons à stabiliser la bibliothèque.

Architecture

RustyTorch est organisé en plusieurs crates Cargo pour maximiser la modularité et la maintenabilité :

  • rustytorch - Crate principal (façade)
  • rustytorch-tensor - Module de tenseurs
  • rustytorch-autograd - Différentiation automatique
  • rustytorch-nn - Couches de réseau neuronal
  • rustytorch-optim - Optimiseurs
  • Et plus encore...

Roadmap

  • Conception de l'architecture
  • Module de tenseurs de base
  • Autograd (différentiation automatique)
  • Couches neuronales fondamentales
  • Optimiseurs
  • Fonctions de perte
  • Support CUDA
  • Modèles préentraînés
  • Bindings Python

Consultez notre roadmap détaillée pour plus d'informations.

Contribution

Les contributions sont les bienvenues ! Veuillez consulter CONTRIBUTING.md pour les directives sur la façon de contribuer au projet.

Licence

RustyTorch est distribué sous les termes d'une double licence - soit sous la licence MIT ou la licence Apache 2.0 au choix.

Remerciements

RustyTorch s'inspire de plusieurs projets existants :


Construit avec ❤️ par la communauté Rust ML

About

Rustytorch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages