Glossaire

L'informatique sans serveur

Découvrez comment l'informatique sans serveur révolutionne l'IA/ML grâce à l'évolutivité, la rentabilité et le déploiement rapide. Construisez plus intelligemment et plus rapidement dès aujourd'hui !

L'informatique sans serveur est un modèle d'exécution de l'informatique en nuage dans lequel le fournisseur d'informatique en nuage gère dynamiquement l'allocation et le provisionnement des serveurs. Les développeurs peuvent écrire et déployer du code en tant que fonctions individuelles sans avoir à gérer l'infrastructure sous-jacente comme les systèmes d'exploitation ou le matériel du serveur. Bien que les serveurs soient toujours utilisés, leur gestion est complètement abstraite, ce qui permet aux équipes de se concentrer sur la construction de la logique de l'application. Cela est particulièrement avantageux pour itérer rapidement sur des projets d'intelligence artificielle (IA) et d'apprentissage automatique (ML), permettant des cycles de développement plus rapides et une utilisation efficace des ressources.

Comprendre l'architecture sans serveur

Dans une configuration sans serveur, les applications sont souvent structurées comme une collection de fonctions indépendantes déclenchées par des événements spécifiques. Ce modèle est communément appelé Function as a Service (FaaS). Les événements peuvent être des requêtes HTTP (comme des appels API), des modifications de base de données, des téléchargements de fichiers vers le stockage en nuage ou des messages provenant d'un système de file d'attente. Lorsqu'un événement se produit, le fournisseur de services en nuage alloue automatiquement les ressources informatiques nécessaires à l'exécution de la fonction correspondante. Une fois l'exécution terminée, ces ressources sont réduites, souvent jusqu'à zéro s'il n'y a pas de demandes en attente. Cette approche de mise à l'échelle automatique en fonction des événements diffère considérablement des architectures traditionnelles où les serveurs fonctionnent en continu, ce qui peut entraîner des ressources inutilisées et des coûts d'exploitation plus élevés. Elle s'aligne bien sur les exigences variables de nombreux cas d'utilisation de l'IA.

Avantages de l'IA et de la ML

L'informatique sans serveur offre des avantages convaincants pour les charges de travail d'IA et de ML, qui ont fréquemment des demandes de calcul variables :

  • Évolutivité automatique : gère les charges imprévisibles de manière transparente. Par exemple, un moteur d'inférence servant des prédictions peut connaître des pics soudains de demandes. Les plateformes sans serveur mettent automatiquement à l'échelle les instances de fonction vers le haut ou vers le bas pour répondre à la demande sans intervention manuelle, ce qui garantit des performances constantes. Ceci est crucial pour les applications nécessitant une inférence en temps réel.
  • Rentabilité : Fonctionne sur la base d'un paiement à l'utilisation. Vous n'êtes généralement facturé que pour le temps de calcul réel consommé par vos fonctions, à la milliseconde près. Cela élimine les coûts associés à la capacité inactive des serveurs, ce qui rend cette solution économique pour des tâches telles que l'entraînement périodique de modèles ou des travaux de traitement de données peu fréquents. Découvrez les avantages des économies d'échelle.
  • Des cycles de développement plus rapides : La gestion de l'infrastructure est supprimée. Les développeurs peuvent se concentrer uniquement sur l'écriture de code pour des tâches spécifiques telles que le prétraitement des données, l'extraction des caractéristiques ou l'exécution de la logique de prédiction. Cela accélère le développement et le déploiement, facilitant une expérimentation plus rapide de différents modèles ou stratégies de réglage des hyperparamètres(guide Ultralytics).
  • Opérations simplifiées : Réduction des frais généraux d'exploitation. Les tâches telles que la mise à jour des systèmes d'exploitation, la gestion de la capacité des serveurs et la garantie de la haute disponibilité sont prises en charge par le fournisseur de cloud, ce qui libère des ressources pour les tâches principales de ML. En savoir plus sur les opérations d'apprentissage automatique (MLOps).

Applications concrètes de l'IA/ML

Les architectures sans serveur sont bien adaptées à diverses tâches d'IA/ML :

  1. Analyse d'images et de vidéos : Considérons une application effectuant la détection d'objets sur des images téléchargées par l'utilisateur à l'aide d'un modèle YOLO d'Ultralytics. Un événement de téléchargement vers le stockage en nuage (comme Amazon S3 ou Google Cloud Storage) déclenche une fonction sans serveur. Cette fonction charge l'image, exécute le modèle YOLO pour la détection, effectue éventuellement une segmentation de l'image et stocke les résultats (par exemple, boîtes de délimitation, étiquettes de classe) dans une base de données ou les renvoie via une API. Le système s'adapte automatiquement au nombre de téléchargements sans nécessiter de serveurs préprovisionnés. Ce modèle est utile dans des applications allant de la modération de contenu à l'analyse d'images médicales. Voir les solutions Ultralytics pour plus d'exemples.
  2. Backends de chatbot : De nombreux chatbots alimentés par de grands modèles de langage (LLM) utilisent des fonctions sans serveur pour traiter les messages entrants des utilisateurs. Chaque message déclenche une fonction qui traite le texte, interagit avec l'API LLM (comme GPT-4), effectue les actions nécessaires (par exemple, recherche dans la base de données via la recherche vectorielle) et renvoie une réponse. Le modèle de paiement à la demande est idéal pour les chatbots dont l'utilisation est fluctuante. Explorer les concepts du traitement du langage naturel (NLP).

Concepts sans serveur et concepts connexes

Il est important de distinguer l'informatique sans serveur des technologies connexes :

  • Cloud Computing vs. Serverless : L'informatique en nuage est la fourniture générale de services informatiques sur l'internet. Sans serveur est un modèle d'exécution spécifique au sein de l'informatique en nuage qui met l'accent sur la gestion automatique des ressources et les fonctions basées sur les événements (FaaS), en faisant abstraction de la gestion des serveurs. D'autres modèles d'informatique en nuage, tels que l'infrastructure en tant que service (IaaS), exigent toujours des utilisateurs qu'ils gèrent des machines virtuelles.
  • Conteneurisation vs. sans serveur : Les outils de conteneurisation comme Docker empaquettent les applications et leurs dépendances. Les plateformes d'orchestration comme Kubernetes automatisent le déploiement, la mise à l'échelle et la gestion de ces conteneurs. Bien que Kubernetes réduise la charge opérationnelle par rapport à la gestion du métal nu ou des machines virtuelles, vous devez toujours gérer l'infrastructure de cluster sous-jacente. Les plateformes sans serveur font abstraction de cette couche ; vous ne gérez que le code de la fonction. Voir comment utiliser Docker avec Ultralytics.
  • Edge Computing vs. Serverless : L'Edge Computing consiste à traiter les données localement sur des appareils proches de la source de données ("edge") afin de réduire la latence et l'utilisation de la bande passante. L'informatique sans serveur exécute généralement des fonctions dans des centres de données centralisés dans le cloud. Bien que distincts, ils peuvent être complémentaires ; un appareil d'IA périphérique (comme un appareil fonctionnant avec NVIDIA Jetson) peut effectuer un traitement ou un filtrage initial, puis déclencher une fonction sans serveur dans le cloud pour une analyse ou une agrégation plus complexe. En savoir plus sur les caméras de sécurité alimentées par l'IA qui combinent souvent le traitement en périphérie et dans le nuage.

Les principales plateformes sans serveur comprennent AWS Lambda, Google Cloud Functions et Azure Functions. Ces services fournissent l'infrastructure nécessaire pour construire et exécuter efficacement des applications AI/ML sans serveur, en s'intégrant souvent à d'autres services cloud pour le stockage, les bases de données et la messagerie. Des plateformes comme Ultralytics HUB peuvent rationaliser davantage le déploiement et la gestion des modèles au sein de diverses architectures, y compris les configurations sans serveur(explorer les docs HUB).

Rejoindre la communauté Ultralytics

Rejoignez l'avenir de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

S'inscrire
Lien copié dans le presse-papiers