À propos du projet
Cog est un outil open-source qui regroupe les modèles d'apprentissage automatique dans des conteneurs Docker standard et prêts pour la production. Il cible la difficulté courante de déployer les modèles ML en production en éliminant le besoin d'écrire manuellement des Dockerfiles et de gérer la compatibilité des dépendances.
Capacités clés décrites dans le README :
- Génération d'images Docker à partir d'un simple fichier de configuration cog.yaml, appliquant les meilleures pratiques telles que les images de base Nvidia, la mise en cache efficace des dépendances, l'installation de versions spécifiques de Python et des valeurs par défaut sensées pour les variables d'environnement.
- Gestion automatique de la compatibilité CUDA, cuDNN, PyTorch, TensorFlow et des versions de Python, évitant la gestion manuelle de la matrice de versions.
- Définition des entrées et sorties du modèle à l'aide de types Python standard via l'interface BaseRunner (méthodes setup et run), avec Cog générant un schéma OpenAPI et validant les entrées et sorties.
- Serveur d'inférence HTTP automatique : les types de modèles génèrent dynamiquement une API RESTful HTTP servie par un serveur haute performance Rust/Axum.
- Commandes CLI : cog run (exécuter un modèle avec des entrées), cog build (construire une image Docker déployable) et cog serve (combiner la construction et le service sur un port local).
- Flexibilité de déploiement : les images Docker construites s'exécutent partout où les images Docker s'exécutent, y compris sur une infrastructure auto-hébergée ou Replicate.
- Support de plateformes : macOS, Linux et Windows 11 via WSL 2. Nécessite Docker (et Buildx lors de l'utilisation de Docker Engine au lieu de Docker Desktop).
- Installation via Homebrew, un script d'installation, un téléchargement manuel du binaire ou dans une image Docker.
L'outil est positionné comme un moyen pour les chercheurs de déployer des modèles en production sans connaissances approfondies en ingénierie Docker ou infrastructure, et est créé par l'équipe derrière Replicate.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.