Table des matières
Qu'est-ce que Docker ?
Qu'est-ce qu'AWS Lambda ?
Qu'est-ce qu'AWS ECR ?
Installez AWS CLI
Déploiement d'une fonction Lambda à l'aide de Docker
output
Maison Périphériques technologiques IA Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

Apr 12, 2023 pm 12:43 PM
docker 机器学习 无服务器

Dans ce didacticiel, nous vous guiderons tout au long du processus de packaging de votre modèle ML en tant que conteneur Docker et de son déploiement sur AWS Lambda, un service informatique sans serveur.

À la fin de ce didacticiel, vous disposerez d'un modèle ML fonctionnel qui peut être appelé via l'API, et vous comprendrez mieux comment déployer des modèles ML sur le cloud. Que vous soyez ingénieur en apprentissage automatique, data scientist ou développeur, ce didacticiel est conçu pour être accessible à toute personne ayant une compréhension de base du ML et de Docker. Alors commençons !

Qu'est-ce que Docker ?

Docker est un outil conçu pour faciliter la création, le déploiement et l'exécution d'applications à l'aide de conteneurs. Les conteneurs permettent aux développeurs de regrouper une application avec tous les éléments dont elle a besoin, tels que des bibliothèques et autres dépendances, et de l'envoyer sous la forme d'un seul package. En utilisant des conteneurs, les développeurs peuvent garantir que leurs applications s'exécuteront sur n'importe quelle autre machine, quels que soient les paramètres personnalisés de la machine qui peuvent différer de la machine utilisée pour écrire et tester le code. Docker fournit un moyen de regrouper les applications et leurs dépendances dans des conteneurs légers et portables qui peuvent être facilement déplacés d'un environnement à un autre. Cela facilite la création d'environnements de développement, de test et de production cohérents et le déploiement d'applications plus rapidement et de manière plus fiable. Installez Docker à partir d'ici : https://docs.docker.com/get-docker/.

Qu'est-ce qu'AWS Lambda ?

Amazon Web Services (AWS) Lambda est une plate-forme informatique sans serveur qui exécute du code en réponse aux événements et gère automatiquement les ressources informatiques sous-jacentes pour vous. Il s'agit d'un service fourni par AWS qui permet aux développeurs d'exécuter leur code dans le cloud sans avoir à se soucier de l'infrastructure requise pour exécuter le code. AWS Lambda met automatiquement à l'échelle votre application en réponse au trafic de requêtes entrantes, et vous ne payez que pour le temps de calcul que vous consommez. Cela en fait un choix attrayant pour la création et l’exécution de microservices, le traitement de données en temps réel et les applications basées sur les événements.

Qu'est-ce qu'AWS ECR ?

Amazon Web Services (AWS) Elastic Container Registry (ECR) est un registre de conteneurs Docker entièrement géré qui permet aux développeurs de stocker, gérer et déployer facilement des images de conteneurs Docker. Il s'agit d'un service sécurisé et évolutif qui permet aux développeurs de stocker et de gérer des images Docker dans le cloud AWS et de les déployer facilement sur Amazon Elastic Container Service (ECS) ou d'autres plateformes d'orchestration de conteneurs basées sur le cloud. ECR s'intègre à d'autres services AWS, tels qu'Amazon ECS et Amazon EKS, et fournit une prise en charge native de l'interface de ligne de commande (CLI) Docker. Cela facilite l'utilisation des commandes Docker familières pour pousser et extraire des images Docker d'ECR et automatiser le processus de création, de test et de déploiement d'applications conteneurisées.

Installez AWS CLI

Utilisez-le pour installer AWS CLI sur votre système. Obtenez l'ID de clé d'accès AWS et la clé d'accès secrète AWS en créant un utilisateur IAM dans votre compte AWS. Après l'installation, exécutez la commande suivante pour configurer votre AWS CLI et insérez les champs requis.

aws configure
Copier après la connexion

Déploiement d'une fonction Lambda à l'aide de Docker

Nous déploierons le modèle de clip OpenAI dans ce tutoriel pour vectoriser le texte d'entrée. La fonction Lambda nécessite Amazon Linux 2 dans un conteneur Docker, nous utilisons donc
public.ecr.aws/lambda/python:3.8. De plus, comme Lambda dispose d'un système de fichiers en lecture seule, il ne nous permet pas de télécharger des modèles en interne, nous devons donc les télécharger et les copier lors de la création de l'image.

Récupérez le code fonctionnel à partir d'ici et extrayez-le.

Changez le répertoire de travail où se trouve le Dockerfile et exécutez la commande suivante :

docker build -t lambda_image .
Copier après la connexion

Nous avons maintenant l'image prête à être déployée sur Lambda. Pour le vérifier localement, exécutez la commande :

docker run -p 9000:8080 lambda_image
Copier après la connexion

Pour le vérifier, envoyez-lui une requête curl et il devrait renvoyer un vecteur de texte d'entrée :

curl -XPOST "http://localhost:9000/2015-03-31/functions/function/invocations" -d '{"text": "This is a test for text encoding"}'
Copier après la connexion

output

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

Déployez d'abord l'image sur Lambda, nous en avons besoin pour être poussé vers ECR, alors connectez-vous au compte AWS et créez l'entrepôt lambda_image dans ECR. Après avoir créé le référentiel, accédez au référentiel créé et vous verrez l'option de commande view push, cliquez dessus et vous obtiendrez la commande pour pousser l'image vers le référentiel.

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

Exécutez maintenant la première commande pour authentifier votre client Docker à l'aide de l'AWS CLI.

Nous avons déjà créé l'image Docker, alors sautez la deuxième étape et exécutez la troisième commande pour baliser l'image créée.

运行最后一条命令将镜像推送到 ECR 中。运行后你会看到界面是这样的:

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

推送完成后,您将在 ECR 的存储库中看到带有“:latest”标签的图像。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

复制图像的 URI。我们在创建 Lambda 函数时需要它。

现在转到 Lambda 函数并单击“创建函数”选项。我们正在从图像创建一个函数,因此选择容器图像的选项。添加函数名称并粘贴我们从 ECR 复制的 URI,或者您也可以浏览图像。选择architecture x84_64,最后点击create_image选项。

构建 Lambda 函数可能需要一些时间,请耐心等待。执行成功后,你会看到如下界面:

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

Lambda 函数默认有 3 秒的超时限制和 128 MB 的 RAM,所以我们需要增加它,否则它会抛出错误。为此,请转到配置选项卡并单击“编辑”。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

现在将超时设置为 5-10 分钟(最大限制为 15 分钟)并将 RAM 设置为 2-3 GB,然后单击保存按钮。更新 Lambda 函数的配置需要一些时间。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

更新更改后,该功能就可以进行测试了。要测试 lambda 函数,请转到“测试”选项卡并将键值添加到事件 JSON 中作为文本:“这是文本编码测试。” 然后点击测试按钮。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

由于我们是第一次执行 Lambda 函数,因此执行可能需要一些时间。成功执行后,您将在执行日志中看到输入文本的向量。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

现在我们的 Lambda 函数已部署并正常工作。要通过 API 访问它,我们需要创建一个函数 URL。

要为 Lambda 函数创建 URL,请转到 Configuration 选项卡并选择 Function URL 选项。然后单击创建函数 URL 选项。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

现在,保留身份验证 None 并单击 Save。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

该过程完成后,您将获得用于通过 API 访问 Lambda 函数的 URL。以下是使用 API 访问 Lambda 函数的示例 Python 代码:

import requests function_url = ""url = f"{function_url}?text=this is test text" payload={}headers = {} response = requests.request("GET", url, headers=headers, data=payload) print(response.text)
Copier après la connexion

成功执行代码后,您将获得输入文本的向量。

Comment déployer des modèles d'apprentissage automatique sur AWS Lambda à l'aide de Docker

所以这是一个如何使用 Docker 在 AWS Lambda 上部署 ML 模型的示例。如果您有任何疑问,请告诉我们。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Cet article vous amènera à comprendre SHAP : explication du modèle pour l'apprentissage automatique Cet article vous amènera à comprendre SHAP : explication du modèle pour l'apprentissage automatique Jun 01, 2024 am 10:58 AM

Dans les domaines de l’apprentissage automatique et de la science des données, l’interprétabilité des modèles a toujours été au centre des préoccupations des chercheurs et des praticiens. Avec l'application généralisée de modèles complexes tels que l'apprentissage profond et les méthodes d'ensemble, la compréhension du processus décisionnel du modèle est devenue particulièrement importante. Explainable AI|XAI contribue à renforcer la confiance dans les modèles d'apprentissage automatique en augmentant la transparence du modèle. L'amélioration de la transparence des modèles peut être obtenue grâce à des méthodes telles que l'utilisation généralisée de plusieurs modèles complexes, ainsi que les processus décisionnels utilisés pour expliquer les modèles. Ces méthodes incluent l'analyse de l'importance des caractéristiques, l'estimation de l'intervalle de prédiction du modèle, les algorithmes d'interprétabilité locale, etc. L'analyse de l'importance des fonctionnalités peut expliquer le processus de prise de décision du modèle en évaluant le degré d'influence du modèle sur les fonctionnalités d'entrée. Estimation de l’intervalle de prédiction du modèle

Implémentation d'algorithmes d'apprentissage automatique en C++ : défis et solutions courants Implémentation d'algorithmes d'apprentissage automatique en C++ : défis et solutions courants Jun 03, 2024 pm 01:25 PM

Les défis courants rencontrés par les algorithmes d'apprentissage automatique en C++ incluent la gestion de la mémoire, le multithread, l'optimisation des performances et la maintenabilité. Les solutions incluent l'utilisation de pointeurs intelligents, de bibliothèques de threads modernes, d'instructions SIMD et de bibliothèques tierces, ainsi que le respect des directives de style de codage et l'utilisation d'outils d'automatisation. Des cas pratiques montrent comment utiliser la bibliothèque Eigen pour implémenter des algorithmes de régression linéaire, gérer efficacement la mémoire et utiliser des opérations matricielles hautes performances.

IA explicable : Expliquer les modèles IA/ML complexes IA explicable : Expliquer les modèles IA/ML complexes Jun 03, 2024 pm 10:08 PM

Traducteur | Revu par Li Rui | Chonglou Les modèles d'intelligence artificielle (IA) et d'apprentissage automatique (ML) deviennent aujourd'hui de plus en plus complexes, et le résultat produit par ces modèles est une boîte noire – impossible à expliquer aux parties prenantes. L'IA explicable (XAI) vise à résoudre ce problème en permettant aux parties prenantes de comprendre comment fonctionnent ces modèles, en s'assurant qu'elles comprennent comment ces modèles prennent réellement des décisions et en garantissant la transparence des systèmes d'IA, la confiance et la responsabilité pour résoudre ce problème. Cet article explore diverses techniques d'intelligence artificielle explicable (XAI) pour illustrer leurs principes sous-jacents. Plusieurs raisons pour lesquelles l’IA explicable est cruciale Confiance et transparence : pour que les systèmes d’IA soient largement acceptés et fiables, les utilisateurs doivent comprendre comment les décisions sont prises

Cinq écoles d'apprentissage automatique que vous ne connaissez pas Cinq écoles d'apprentissage automatique que vous ne connaissez pas Jun 05, 2024 pm 08:51 PM

L'apprentissage automatique est une branche importante de l'intelligence artificielle qui donne aux ordinateurs la possibilité d'apprendre à partir de données et d'améliorer leurs capacités sans être explicitement programmés. L'apprentissage automatique a un large éventail d'applications dans divers domaines, de la reconnaissance d'images et du traitement du langage naturel aux systèmes de recommandation et à la détection des fraudes, et il change notre façon de vivre. Il existe de nombreuses méthodes et théories différentes dans le domaine de l'apprentissage automatique, parmi lesquelles les cinq méthodes les plus influentes sont appelées les « Cinq écoles d'apprentissage automatique ». Les cinq grandes écoles sont l’école symbolique, l’école connexionniste, l’école évolutionniste, l’école bayésienne et l’école analogique. 1. Le symbolisme, également connu sous le nom de symbolisme, met l'accent sur l'utilisation de symboles pour le raisonnement logique et l'expression des connaissances. Cette école de pensée estime que l'apprentissage est un processus de déduction inversée, à travers les connaissances existantes.

Enseignement du nœud PI: Qu'est-ce qu'un nœud PI? Comment installer et configurer le nœud PI? Enseignement du nœud PI: Qu'est-ce qu'un nœud PI? Comment installer et configurer le nœud PI? Mar 05, 2025 pm 05:57 PM

Explication détaillée et guide d'installation pour les nœuds de pignon Cet article introduira l'écosystème de pignon en détail - nœuds PI, un rôle clé dans l'écosystème de pignon et fournir des étapes complètes pour l'installation et la configuration. Après le lancement du réseau de test de la blockchain pèse, les nœuds PI sont devenus une partie importante de nombreux pionniers participant activement aux tests, se préparant à la prochaine version du réseau principal. Si vous ne connaissez pas encore Pinetwork, veuillez vous référer à ce qu'est Picoin? Quel est le prix de l'inscription? PI Utilisation, exploitation minière et sécurité. Qu'est-ce que Pinetwork? Le projet Pinetwork a commencé en 2019 et possède sa pièce exclusive de crypto-monnaie PI. Le projet vise à en créer un que tout le monde peut participer

Flash Attention est-il stable ? Meta et Harvard ont constaté que les écarts de poids de leur modèle fluctuaient de plusieurs ordres de grandeur. Flash Attention est-il stable ? Meta et Harvard ont constaté que les écarts de poids de leur modèle fluctuaient de plusieurs ordres de grandeur. May 30, 2024 pm 01:24 PM

MetaFAIR s'est associé à Harvard pour fournir un nouveau cadre de recherche permettant d'optimiser le biais de données généré lors de l'apprentissage automatique à grande échelle. On sait que la formation de grands modèles de langage prend souvent des mois et utilise des centaines, voire des milliers de GPU. En prenant comme exemple le modèle LLaMA270B, sa formation nécessite un total de 1 720 320 heures GPU. La formation de grands modèles présente des défis systémiques uniques en raison de l’ampleur et de la complexité de ces charges de travail. Récemment, de nombreuses institutions ont signalé une instabilité dans le processus de formation lors de la formation des modèles d'IA générative SOTA. Elles apparaissent généralement sous la forme de pics de pertes. Par exemple, le modèle PaLM de Google a connu jusqu'à 20 pics de pertes au cours du processus de formation. Le biais numérique est à l'origine de cette imprécision de la formation,

Apprentissage automatique en C++ : un guide pour la mise en œuvre d'algorithmes d'apprentissage automatique courants en C++ Apprentissage automatique en C++ : un guide pour la mise en œuvre d'algorithmes d'apprentissage automatique courants en C++ Jun 03, 2024 pm 07:33 PM

En C++, la mise en œuvre d'algorithmes d'apprentissage automatique comprend : Régression linéaire : utilisée pour prédire des variables continues. Les étapes comprennent le chargement des données, le calcul des poids et des biais, la mise à jour des paramètres et la prédiction. Régression logistique : utilisée pour prédire des variables discrètes. Le processus est similaire à la régression linéaire, mais utilise la fonction sigmoïde pour la prédiction. Machine à vecteurs de support : un puissant algorithme de classification et de régression qui implique le calcul de vecteurs de support et la prédiction d'étiquettes.

Comment installer Deepseek Comment installer Deepseek Feb 19, 2025 pm 05:48 PM

Il existe de nombreuses façons d'installer Deepseek, notamment: Compiler à partir de Source (pour les développeurs expérimentés) en utilisant des packages précompilés (pour les utilisateurs de Windows) à l'aide de conteneurs Docker (pour le plus pratique, pas besoin de s'inquiéter de la compatibilité), quelle que soit la méthode que vous choisissez, veuillez lire Les documents officiels documentent soigneusement et les préparent pleinement à éviter des problèmes inutiles.

See all articles