Τα μοντέλα μηχανικής μάθησης (ML) δεν λειτουργούν μεμονωμένα. Για να προσφέρουν αξία, πρέπει να ενσωματωθούν σε υπάρχοντα συστήματα παραγωγής και υποδομές, κάτι που απαιτεί να λαμβάνεται υπόψη ολόκληρος ο κύκλος ζωής του ML κατά τη διάρκεια του σχεδιασμού και της ανάπτυξης. Οι λειτουργίες ML, γνωστές ως MLOps, εστιάζουν στον εξορθολογισμό, την αυτοματοποίηση και την παρακολούθηση μοντέλων ML καθ' όλη τη διάρκεια του κύκλου ζωής τους. Η οικοδόμηση ενός ισχυρού αγωγού MLOps απαιτεί διαλειτουργική συνεργασία. Οι επιστήμονες δεδομένων, οι μηχανικοί ML, το προσωπικό IT και οι ομάδες DevOps πρέπει να συνεργαστούν για να λειτουργήσουν μοντέλα από την έρευνα έως την ανάπτυξη και τη συντήρηση. Με τις σωστές διαδικασίες και εργαλεία, τα MLOps επιτρέπουν στους οργανισμούς να υιοθετούν αξιόπιστα και αποτελεσματικά την ML σε όλες τις ομάδες τους.
Αν και οι απαιτήσεις συνεχούς ενοποίησης και συνεχούς παράδοσης (CI/CD) μπορεί να είναι μοναδικές και να αντικατοπτρίζουν τις ανάγκες κάθε οργανισμού, η κλιμάκωση των πρακτικών MLOps σε ομάδες μπορεί να απλοποιηθεί χρησιμοποιώντας διαχειριζόμενες ενορχηστρώσεις και εργαλεία που μπορούν να επιταχύνουν τη διαδικασία ανάπτυξης και να αφαιρέσουν την αδιαφοροποίητη άρση βαρέων βαρών .
Amazon SageMaker MLOps είναι μια σουίτα χαρακτηριστικών που περιλαμβάνει Έργα Amazon SageMaker (CI/CD), Αγωγοί Amazon SageMaker και Μητρώο μοντέλων Amazon SageMaker.
Αγωγοί SageMaker επιτρέπει την απλή δημιουργία και διαχείριση ροών εργασιών ML, ενώ προσφέρει επίσης δυνατότητες αποθήκευσης και επαναχρησιμοποίησης για βήματα ροής εργασιών. ο Μητρώο μοντέλων SageMaker συγκεντρώνει την παρακολούθηση μοντέλων, απλοποιώντας την ανάπτυξη του μοντέλου. SageMaker Projects εισάγει πρακτικές CI/CD στην ML, συμπεριλαμβανομένης της ισοτιμίας περιβάλλοντος, του ελέγχου εκδόσεων, της δοκιμής και της αυτοματοποίησης. Αυτό επιτρέπει τη γρήγορη εγκατάσταση του CI/CD στο περιβάλλον ML σας, διευκολύνοντας την αποτελεσματική επεκτασιμότητα σε όλη την επιχείρησή σας.
Η ενσωματωμένη πρότυπα του έργου παρέχονται από Amazon Sage Maker περιλαμβάνουν ενσωμάτωση με ορισμένα εργαλεία τρίτων, όπως το Jenkins για ενορχήστρωση και το GitHub για τον έλεγχο πηγών, και πολλά χρησιμοποιούν εγγενή εργαλεία CI/CD του AWS, όπως AWS CodeCommit, Αγωγός κώδικα AWS, να AWS CodeBuild. Σε πολλά σενάρια, ωστόσο, οι πελάτες θα ήθελαν να ενσωματώσουν το SageMaker Pipelines με άλλα υπάρχοντα εργαλεία CI/CD και, ως εκ τούτου, να δημιουργήσουν τα προσαρμοσμένα πρότυπα έργων τους.
Σε αυτήν την ανάρτηση, σας δείχνουμε μια βήμα προς βήμα υλοποίηση για να επιτύχετε τα ακόλουθα:
- Δημιουργήστε ένα προσαρμοσμένο πρότυπο έργου SageMaker MLOps που ενσωματώνεται με το GitHub και το GitHub Actions
- Κάντε διαθέσιμα τα προσαρμοσμένα πρότυπα έργων σας στο Στούντιο Amazon SageMaker για την ομάδα επιστήμης δεδομένων σας με παροχή με ένα κλικ
Επισκόπηση λύσεων
Σε αυτή την ανάρτηση, κατασκευάζουμε την ακόλουθη αρχιτεκτονική. Δημιουργούμε έναν αυτοματοποιημένο σχεδιασμό κατασκευής μοντέλων που περιλαμβάνει βήματα για προετοιμασία δεδομένων, εκπαίδευση μοντέλων, αξιολόγηση μοντέλου και καταχώριση του εκπαιδευμένου μοντέλου στο Μητρώο Μοντέλων του SageMaker. Το προκύπτον εκπαιδευμένο μοντέλο ML στη συνέχεια αναπτύσσεται από το Μητρώο Μοντέλων του SageMaker σε περιβάλλοντα σταδιοποίησης και παραγωγής κατόπιν μη αυτόματης έγκρισης.
Ας εμβαθύνουμε στα στοιχεία αυτής της αρχιτεκτονικής για να κατανοήσουμε την πλήρη διαμόρφωση.
Ενέργειες GitHub και GitHub
Το GitHub είναι μια διαδικτυακή πλατφόρμα που παρέχει έλεγχο έκδοσης και διαχείριση πηγαίου κώδικα χρησιμοποιώντας το Git. Επιτρέπει στις ομάδες να συνεργάζονται σε έργα ανάπτυξης λογισμικού, να παρακολουθούν αλλαγές και να διαχειρίζονται αποθετήρια κώδικα. Το GitHub χρησιμεύει ως μια κεντρική τοποθεσία για την αποθήκευση, την έκδοση και τη διαχείριση της βάσης του κώδικα ML. Αυτό διασφαλίζει ότι η βάση του κώδικα ML και οι διοχετεύσεις σας έχουν εκδοθεί, τεκμηριωθεί και είναι προσβάσιμα από τα μέλη της ομάδας.
Ενέργειες GitHub είναι ένα ισχυρό εργαλείο αυτοματισμού στο οικοσύστημα GitHub. Σας επιτρέπει να δημιουργείτε προσαρμοσμένες ροές εργασίας που αυτοματοποιούν τις διαδικασίες του κύκλου ζωής ανάπτυξης λογισμικού, όπως η κατασκευή, η δοκιμή και η ανάπτυξη κώδικα. Μπορείτε να δημιουργήσετε ροές εργασίας που βασίζονται σε συμβάντα που ενεργοποιούνται από συγκεκριμένα συμβάντα, όπως όταν ο κώδικας προωθείται σε ένα χώρο αποθήκευσης ή δημιουργείται ένα αίτημα έλξης. Κατά την υλοποίηση MLOps, μπορείτε να χρησιμοποιήσετε τις ενέργειες GitHub για να αυτοματοποιήσετε διάφορα στάδια του αγωγού ML, όπως:
- Επικύρωση και προεπεξεργασία δεδομένων
- Πρότυπη εκπαίδευση και αξιολόγηση
- Ανάπτυξη και παρακολούθηση μοντέλου
- CI/CD για μοντέλα ML
Με το GitHub Actions, μπορείτε να βελτιστοποιήσετε τις ροές εργασίας ML και να διασφαλίσετε ότι τα μοντέλα σας κατασκευάζονται, δοκιμάζονται και αναπτύσσονται με συνέπεια, οδηγώντας σε πιο αποτελεσματικές και αξιόπιστες αναπτύξεις ML.
Στις ακόλουθες ενότητες, ξεκινάμε ρυθμίζοντας τις προϋποθέσεις που σχετίζονται με ορισμένα από τα στοιχεία που χρησιμοποιούμε ως μέρος αυτής της αρχιτεκτονικής:
- AWS CloudFormation - AWS CloudFormation εκκινεί την ανάπτυξη του μοντέλου και καθορίζει τα τελικά σημεία του SageMaker μετά την ενεργοποίηση του αγωγού ανάπτυξης μοντέλου με την έγκριση του εκπαιδευμένου μοντέλου.
- Σύνδεση AWS CodeStar - Χρησιμοποιούμε AWS CodeStar για να δημιουργήσετε έναν σύνδεσμο με το αποθετήριο GitHub και να το χρησιμοποιήσετε ως ενσωμάτωση αποθήκης κώδικα με πόρους AWS, όπως το SageMaker Studio.
- Amazon EventBridge - Amazon EventBridge παρακολουθεί όλες τις τροποποιήσεις στο μητρώο μοντέλων. Διατηρεί επίσης έναν κανόνα που ζητά από τη συνάρτηση Lambda να αναπτύξει τη σωλήνωση μοντέλου όταν η κατάσταση της έκδοσης του πακέτου μοντέλου αλλάζει από
PendingManualApproval
προς τηνApproved
εντός του μητρώου μοντέλων. - AWS Lambda – Χρησιμοποιούμε ένα AWS Lambda λειτουργία για την εκκίνηση της ροής εργασίας ανάπτυξης μοντέλου στο GitHub Actions μετά την εγγραφή ενός νέου μοντέλου στο μητρώο μοντέλου.
- Amazon Sage Maker – Διαμορφώνουμε τα ακόλουθα στοιχεία SageMaker:
- Αγωγός - Αυτό το στοιχείο αποτελείται από ένα κατευθυνόμενο ακυκλικό γράφημα (DAG) που μας βοηθά να δημιουργήσουμε την αυτοματοποιημένη ροή εργασίας ML για τα στάδια προετοιμασίας δεδομένων, εκπαίδευσης μοντέλων και αξιολόγησης μοντέλων. Το μητρώο μοντέλων διατηρεί αρχεία με τις εκδόσεις του μοντέλου, τα σχετικά τεχνουργήματα, τη γενεαλογία και τα μεταδεδομένα. Δημιουργείται μια ομάδα πακέτων μοντέλων που φιλοξενεί όλες τις σχετικές εκδόσεις μοντέλων. Το μητρώο μοντέλου είναι επίσης υπεύθυνο για τη διαχείριση της κατάστασης έγκρισης της έκδοσης μοντέλου για μετέπειτα ανάπτυξη.
- Τελικό σημείο – Αυτό το στοιχείο ρυθμίζει δύο τελικά σημεία HTTPS σε πραγματικό χρόνο για συμπεράσματα. Η διαμόρφωση φιλοξενίας μπορεί να προσαρμοστεί, για παράδειγμα, για μετασχηματισμό παρτίδας ή ασύγχρονο συμπέρασμα. Το τελικό σημείο σταδίου δημιουργείται όταν η διοχέτευση ανάπτυξης μοντέλου ενεργοποιείται με την έγκριση του εκπαιδευμένου μοντέλου από το Μητρώο Μοντέλων SageMaker. Αυτό το τελικό σημείο χρησιμοποιείται για την επικύρωση του αναπτυγμένου μοντέλου διασφαλίζοντας ότι παρέχει προβλέψεις που ικανοποιούν τα πρότυπα ακρίβειας. Όταν το μοντέλο προετοιμάζεται για ανάπτυξη παραγωγής, ένα τελικό σημείο παραγωγής αναπτύσσεται από ένα στάδιο μη αυτόματης έγκρισης στη ροή εργασιών GitHub Actions.
- Κωδικός αποθετηρίου – Αυτό δημιουργεί ένα αποθετήριο Git ως πόρο στον λογαριασμό σας στο SageMaker. Χρησιμοποιώντας τα υπάρχοντα δεδομένα από το αποθετήριο κώδικα GitHub που εισάγετε κατά τη δημιουργία του έργου SageMaker, δημιουργείται μια συσχέτιση με το ίδιο αποθετήριο στο SageMaker όταν ξεκινάτε το έργο. Αυτό ουσιαστικά σχηματίζει έναν σύνδεσμο με ένα αποθετήριο GitHub στο SageMaker, επιτρέποντας διαδραστικές ενέργειες (έλξη/ώθηση) με το αποθετήριο σας.
- Μητρώο μοντέλων – Αυτό παρακολουθεί τις διάφορες εκδόσεις του μοντέλου και τα αντίστοιχα τεχνουργήματα, τα οποία περιλαμβάνουν τη γενεαλογία και τα μεταδεδομένα. Μια συλλογή γνωστή ως α ομάδα πακέτων μοντέλων δημιουργείται, φιλοξενώντας σχετικές εκδόσεις του μοντέλου. Επιπλέον, το μητρώο μοντέλων επιβλέπει την κατάσταση έγκρισης της έκδοσης του μοντέλου, διασφαλίζοντας την ετοιμότητά του για μεταγενέστερη ανάπτυξη.
- Διευθυντής μυστικών AWS – Για να διατηρήσετε με ασφάλεια το προσωπικό σας διακριτικό πρόσβασης στο GitHub, είναι απαραίτητο να δημιουργήσετε ένα μυστικό Διευθυντής μυστικών AWS και στεγάστε το διακριτικό πρόσβασής σας σε αυτό.
- Κατάλογος υπηρεσιών AWS – Χρησιμοποιούμε το Κατάλογος υπηρεσιών AWS για την υλοποίηση έργων SageMaker, τα οποία περιλαμβάνουν στοιχεία όπως ένα αποθετήριο κώδικα SageMaker, τη συνάρτηση Lambda, τον κανόνα EventBridge, το artifact S3 bucket κ.λπ., όλα υλοποιημένα μέσω του CloudFormation. Αυτό επιτρέπει στον οργανισμό σας να χρησιμοποιεί επανειλημμένα πρότυπα έργων, να εκχωρεί έργα σε κάθε χρήστη και να εκσυγχρονίζει τις λειτουργίες.
- Amazon S3 – Χρησιμοποιούμε ένα Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3) κάδος για τη διατήρηση των τεχνουργημάτων του μοντέλου που παράγονται από τον αγωγό.
Προϋποθέσεις
Θα πρέπει να έχετε τις ακόλουθες προϋποθέσεις:
Πρέπει επίσης να ολοκληρώσετε πρόσθετα βήματα ρύθμισης πριν εφαρμόσετε τη λύση.
Ρυθμίστε μια σύνδεση AWS CodeStar
Εάν δεν έχετε ήδη σύνδεση AWS CodeStar με τον λογαριασμό σας στο GitHub, ανατρέξτε στο Δημιουργήστε μια σύνδεση στο GitHub για οδηγίες για τη δημιουργία ενός. Το ARN της σύνδεσης AWS CodeStar θα μοιάζει με αυτό:
Σε αυτό το παράδειγμα, aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
είναι το μοναδικό αναγνωριστικό για αυτήν τη σύνδεση. Χρησιμοποιούμε αυτό το αναγνωριστικό όταν δημιουργούμε το έργο SageMaker αργότερα σε αυτό το παράδειγμα.
Ρυθμίστε μυστικά κλειδιά πρόσβασης για το διακριτικό GitHub
Για να αποθηκεύσετε με ασφάλεια το προσωπικό σας διακριτικό πρόσβασης στο GitHub, πρέπει να δημιουργήσετε ένα μυστικό στο Secrets Manager. Εάν δεν έχετε προσωπικό διακριτικό πρόσβασης για το GitHub, ανατρέξτε στο Διαχείριση των προσωπικών σας διακριτικών πρόσβασης για οδηγίες για τη δημιουργία ενός.
Μπορείτε να δημιουργήσετε είτε ένα κλασικό είτε ένα λεπτόκοκκο διακριτικό πρόσβασης. Ωστόσο, βεβαιωθείτε ότι το διακριτικό έχει πρόσβαση στα περιεχόμενα και τις ενέργειες του αποθετηρίου (ροές εργασίας, εκτελέσεις και τεχνουργήματα).
Ολοκληρώστε τα παρακάτω βήματα για να αποθηκεύσετε το διακριτικό σας στο Secrets Manager:
- Στην κονσόλα Secrets Manager, επιλέξτε Αποθηκεύστε ένα νέο μυστικό.
- Αγορά Άλλο είδος μυστικού for Επιλέξτε μυστικό τύπο.
- Δώστε ένα όνομα για το μυστικό σας στο Κλειδί και προσθέστε το προσωπικό σας διακριτικό πρόσβασης στο αντίστοιχο αξία τομέα.
- Επιλέξτε Επόμενο, πληκτρολογήστε ένα όνομα για το μυστικό σας και επιλέξτε Επόμενο πάλι.
- Επιλέξτε κατάστημα για να σώσεις το μυστικό σου.
Αποθηκεύοντας το προσωπικό σας διακριτικό πρόσβασης GitHub στο Secrets Manager, μπορείτε να έχετε πρόσβαση με ασφάλεια στο πλαίσιο του MLOps, διασφαλίζοντας ταυτόχρονα την εμπιστευτικότητά του.
Δημιουργήστε έναν χρήστη IAM για τις ενέργειες GitHub
Για να επιτρέψετε στο GitHub Actions να αναπτύξει τελικά σημεία του SageMaker στο περιβάλλον AWS σας, πρέπει να δημιουργήσετε ένα Διαχείριση ταυτότητας και πρόσβασης AWS χρήστη (IAM) και του παραχωρήστε τα απαραίτητα δικαιώματα. Για οδηγίες, ανατρέξτε στο Δημιουργία χρήστη IAM στον λογαριασμό σας AWS. Χρησιμοποιήστε το iam/GithubActionsMLOpsExecutionPolicy.json
αρχείο (παρέχεται στο δείγμα κώδικα) για να παρέχει επαρκή δικαιώματα σε αυτόν τον χρήστη για την ανάπτυξη των τελικών σημείων σας.
Αφού δημιουργήσετε τον χρήστη IAM, δημιουργήστε ένα κλειδί πρόσβασης. Θα χρησιμοποιήσετε αυτό το κλειδί, το οποίο αποτελείται από ένα αναγνωριστικό κλειδιού πρόσβασης και ένα μυστικό κλειδί πρόσβασης, στο επόμενο βήμα κατά τη διαμόρφωση των μυστικών σας στο GitHub.
Ρυθμίστε τον λογαριασμό σας στο GitHub
Ακολουθούν τα βήματα για να προετοιμάσετε τον λογαριασμό σας στο GitHub για να εκτελέσετε αυτό το παράδειγμα.
Κλωνοποιήστε το αποθετήριο GitHub
Μπορείτε να χρησιμοποιήσετε ξανά ένα υπάρχον αποθετήριο GitHub για αυτό το παράδειγμα. Ωστόσο, είναι πιο εύκολο αν δημιουργήσετε ένα νέο αποθετήριο. Αυτό το αποθετήριο θα περιέχει όλο τον πηγαίο κώδικα τόσο για εκδόσεις αγωγών SageMaker όσο και για αναπτύξεις.
Αντιγράψτε τα περιεχόμενα του καταλόγου αρχικού κώδικα στη ρίζα του αποθετηρίου GitHub. Για παράδειγμα, το .github
Ο κατάλογος πρέπει να βρίσκεται κάτω από τη ρίζα του αποθετηρίου GitHub.
Δημιουργήστε ένα μυστικό GitHub που περιέχει το κλειδί πρόσβασης χρήστη IAM
Σε αυτό το βήμα, αποθηκεύουμε τα στοιχεία κλειδιού πρόσβασης του νεοδημιουργημένου χρήστη στο δικό μας GitHub μυστικό.
- Στον ιστότοπο του GitHub, μεταβείτε στο αποθετήριο σας και επιλέξτε ρυθμίσεις.
- Στην ενότητα ασφαλείας, επιλέξτε Μυστικά και Μεταβλητές Και επιλέξτε Δράσεις.
- Επιλέξτε Νέο μυστικό αποθετηρίου.
- Για Όνομα, εισαγω
AWS_ACCESS_KEY_ID
- Για Μυστικό, εισαγάγετε το αναγνωριστικό κλειδιού πρόσβασης που σχετίζεται με τον χρήστη IAM που δημιουργήσατε νωρίτερα.
- Επιλέξτε Προσθήκη μυστικού.
- Επαναλάβετε την ίδια διαδικασία για
AWS_SECRET_ACCESS_KEY
Διαμορφώστε τα περιβάλλοντα GitHub σας
Για να δημιουργήσουμε ένα βήμα μη αυτόματης έγκρισης στους αγωγούς ανάπτυξης, χρησιμοποιούμε α περιβάλλον GitHub. Ολοκληρώστε τα παρακάτω βήματα:
- Πλοηγηθείτε με το ρυθμίσεις, Περιβάλλοντα μενού του αποθετηρίου GitHub και δημιουργήστε ένα νέο περιβάλλον που ονομάζεται παραγωγή.
- Για Κανόνες προστασίας του περιβάλλοντος, Επιλέξτε Απαιτούνται κριτές.
- Προσθέστε τα επιθυμητά ονόματα χρηστών GitHub ως αναθεωρητές. Για αυτό το παράδειγμα, μπορείτε να επιλέξετε το δικό σας όνομα χρήστη.
Σημειώστε ότι η δυνατότητα περιβάλλοντος δεν είναι διαθέσιμη σε ορισμένους τύπους σχεδίων GitHub. Για περισσότερες πληροφορίες, ανατρέξτε στο Χρήση περιβαλλόντων για ανάπτυξη.
Αναπτύξτε τη λειτουργία Λάμδα
Στα παρακάτω βήματα, συμπιέζουμε lambda_function.py
σε ένα αρχείο .zip, το οποίο στη συνέχεια μεταφορτώνεται σε έναν κάδο S3.
Το σχετικό δείγμα κώδικα για αυτό μπορείτε να το βρείτε παρακάτω GitHub repo. Συγκεκριμένα, το lambda_function.py
Βρίσκεται στο lambda_functions/lambda_github_workflow_trigger Κατάλογο.
Συνιστάται να δημιουργήσετε μια διχάλα του δείγματος κώδικα και να το κλωνοποιήσετε. Αυτό θα σας δώσει την ελευθερία να τροποποιήσετε τον κώδικα και να πειραματιστείτε με διαφορετικές πτυχές του δείγματος.
- Αφού λάβετε ένα αντίγραφο του κώδικα, μεταβείτε στον κατάλληλο κατάλογο και χρησιμοποιήστε το
zip
εντολή για συμπίεσηlambda_function.py
. Τόσο οι χρήστες Windows όσο και MacOS μπορούν να χρησιμοποιήσουν το εγγενές σύστημα διαχείρισης αρχείων τους, File Explorer ή Finder, αντίστοιχα, για να δημιουργήσουν ένα αρχείο .zip.
- Ανεβάστε το
lambda-github-workflow-trigger.zip
σε έναν κάδο S3.
Αυτός ο κάδος θα προσπελαστεί αργότερα από τον Κατάλογο υπηρεσιών. Μπορείτε να επιλέξετε οποιονδήποτε κάδο στον οποίο έχετε πρόσβαση, εφόσον ο Κατάλογος υπηρεσιών μπορεί να ανακτήσει δεδομένα από αυτόν στα επόμενα βήματα.
Από αυτό το βήμα και μετά, απαιτούμε την εγκατάσταση και τη διαμόρφωση του AWS CLI v2. Μια εναλλακτική θα ήταν να χρησιμοποιήσετε το AWS CloudShell, το οποίο συνοδεύεται από όλα τα απαραίτητα εργαλεία προεγκατεστημένα, εξαλείφοντας την ανάγκη για τυχόν πρόσθετες διαμορφώσεις.
- Για να ανεβάσετε το αρχείο στον κάδο S3, χρησιμοποιήστε την ακόλουθη εντολή:
Τώρα κατασκευάζουμε ένα στρώμα Lambda για τις εξαρτήσεις που σχετίζονται με το lambda_function
μόλις ανεβάσαμε.
- Ρυθμίστε ένα εικονικό περιβάλλον Python και εγκαταστήστε τις εξαρτήσεις:
- Δημιουργήστε το αρχείο .zip με τις ακόλουθες εντολές:
- Δημοσιεύστε το επίπεδο στο AWS:
Με αυτό το επίπεδο δημοσιευμένο, όλες οι συναρτήσεις Lambda μπορούν τώρα να το αναφέρουν για να καλύψουν τις εξαρτήσεις τους. Για μια πιο λεπτομερή κατανόηση των στρωμάτων λάμδα, ανατρέξτε στο Εργασία με στρώματα λάμδα.
Δημιουργήστε ένα προσαρμοσμένο πρότυπο έργου στο SageMaker
Μετά την ολοκλήρωση όλων των παραπάνω βημάτων, διαθέτουμε όλους τους πόρους και τα στοιχεία του αγωγού CI/CD. Στη συνέχεια, δείχνουμε πώς μπορούμε να διαθέσουμε αυτούς τους πόρους ως προσαρμοσμένο έργο στο SageMaker Studio προσβάσιμο μέσω ανάπτυξης ενός κλικ.
Όπως αναφέρθηκε προηγουμένως, όταν τα πρότυπα που παρέχονται από το SageMaker δεν ανταποκρίνονται στις ανάγκες σας (για παράδειγμα, θέλετε να έχετε πιο περίπλοκη ενορχήστρωση στο CodePipeline με πολλαπλά στάδια, προσαρμοσμένα βήματα έγκρισης ή να ενσωματώσετε ένα εργαλείο τρίτου μέρους, όπως ενέργειες GitHub και GitHub που παρουσιάζεται σε αυτήν την ανάρτηση), μπορείτε να δημιουργήσετε τα δικά σας πρότυπα. Σας συνιστούμε να ξεκινήσετε με τα πρότυπα που παρέχονται από το SageMaker για να κατανοήσετε πώς να οργανώνετε τον κώδικα και τους πόρους σας και να τον αναπτύξετε. Για περισσότερες λεπτομέρειες, ανατρέξτε στο Δημιουργία προσαρμοσμένων προτύπων έργων.
Λάβετε υπόψη ότι μπορείτε επίσης να αυτοματοποιήσετε αυτό το βήμα και αντ 'αυτού να χρησιμοποιήσετε το CloudFormation για να αναπτύξετε το χαρτοφυλάκιο του καταλόγου υπηρεσιών και το προϊόν μέσω κώδικα. Σε αυτήν την ανάρτηση, ωστόσο, για μεγαλύτερη εμπειρία εκμάθησης, σας παρουσιάζουμε την ανάπτυξη της κονσόλας.
Σε αυτό το στάδιο, χρησιμοποιούμε το παρεχόμενο πρότυπο CloudFormation για να δημιουργήσουμε ένα χαρτοφυλάκιο καταλόγου υπηρεσιών που μας βοηθά να δημιουργήσουμε προσαρμοσμένα έργα στο SageMaker.
Μπορείτε να δημιουργήσετε έναν νέο τομέα ή να επαναχρησιμοποιήσετε τον τομέα σας SageMaker για τα ακόλουθα βήματα. Εάν δεν έχετε τομέα, ανατρέξτε στο Ενσωματωθείτε στον τομέα Amazon SageMaker με χρήση Γρήγορης εγκατάστασης για οδηγίες εγκατάστασης.
Αφού ενεργοποιήσετε την πρόσβαση διαχειριστή στα πρότυπα SageMaker, ολοκληρώστε τα ακόλουθα βήματα:
- Στην κονσόλα Service Catalog, κάτω από Διαχείριση στο παράθυρο πλοήγησης, επιλέξτε Portfolios.
- Επιλέξτε Δημιουργήστε ένα νέο χαρτοφυλάκιο.
- Ονομάστε το χαρτοφυλάκιο «Πρότυπα οργανισμού SageMaker».
- Κατεβάστε το template.yml αρχείο στον υπολογιστή σας.
Αυτό το πρότυπο Σχηματισμού Cloud παρέχει όλους τους πόρους CI/CD που χρειαζόμαστε ως διαμόρφωση και υποδομή ως κώδικα. Μπορείτε να μελετήσετε το πρότυπο με περισσότερες λεπτομέρειες για να δείτε ποιοι πόροι έχουν αναπτυχθεί ως μέρος του. Αυτό το πρότυπο έχει προσαρμοστεί ώστε να ενσωματώνεται με το GitHub και το GitHub Actions.
- Στο
template.yml
αρχείο, αλλάξτε τοS3Bucket
τιμή στον κάδο σας όπου έχετε ανεβάσει το αρχείο Lambda .zip:
- Επιλέξτε το νέο χαρτοφυλάκιο.
- Επιλέξτε Ανεβάστε ένα νέο προϊόν.
- Για Όνομα προϊόντος¸ Εισαγάγετε ένα όνομα για το πρότυπό σας. Χρησιμοποιούμε το όνομα
build-deploy-github
. - Για Περιγραφή, εισαγάγετε μια περιγραφή.
- Για Ιδιοκτήτης, εισάγετε το όνομά σας.
- Κάτω από Λεπτομέρειες έκδοσης, Για Μέθοδος, επιλέξτε Χρησιμοποιήστε ένα αρχείο προτύπου.
- Επιλέξτε Μεταφόρτωση προτύπου.
- Ανεβάστε το πρότυπο που κατεβάσατε.
- Για Τίτλος έκδοσης, επιλέξτε 1.0.
- Επιλέξτε Βαθμολογία Κριτικής.
- Ελέγξτε τις ρυθμίσεις σας και επιλέξτε Δημιουργία προϊόντος.
- Επιλέξτε Φρεσκάρω για να απαριθμήσετε το νέο προϊόν.
- Επιλέξτε το προϊόν που μόλις δημιουργήσατε.
- Στις Ετικέτες καρτέλα, προσθέστε την ακόλουθη ετικέτα στο προϊόν:
- Κλειδί =
sagemaker:studio-visibility
- αξία =
true
- Κλειδί =
Πίσω στις λεπτομέρειες του χαρτοφυλακίου, θα πρέπει να δείτε κάτι παρόμοιο με το παρακάτω στιγμιότυπο οθόνης (με διαφορετικά αναγνωριστικά).
- Στις Περιορισμοί καρτέλα, επιλέξτε Δημιουργήστε περιορισμό.
- Για Προϊόν, επιλέξτε
build-deploy-github
(το προϊόν που μόλις δημιουργήσατε). - Για Περιορισμός πληκτρολογήστε, επιλέξτε Εκκίνηση.
- Κάτω από Περιορισμός εκκίνησης, Για Μέθοδος, επιλέξτε Επιλέξτε ρόλο IAM.
- Επιλέξτε
AmazonSageMakerServiceCatalogProductsLaunchRole
. - Επιλέξτε Δημιουργία.
- Στις Ομάδες, ρόλοι και χρήστες καρτέλα, επιλέξτε Προσθέστε ομάδες, ρόλους, χρήστες.
- Στις ρόλους καρτέλα, επιλέξτε τον ρόλο που χρησιμοποιήσατε κατά τη διαμόρφωση του τομέα σας SageMaker Studio. Εδώ μπορεί να βρεθεί ο ρόλος τομέα SageMaker.
- Επιλέξτε Προσθέστε πρόσβαση.
Αναπτύξτε το έργο από το SageMaker Studio
Στις προηγούμενες ενότητες, ετοιμάσατε το προσαρμοσμένο περιβάλλον έργου MLOps. Τώρα, ας δημιουργήσουμε ένα έργο χρησιμοποιώντας αυτό το πρότυπο:
- Στην κονσόλα SageMaker, μεταβείτε στον τομέα που θέλετε να δημιουργήσετε αυτό το έργο.
- Στις Εκκίνηση μενού, επιλέξτε στούντιο.
Θα ανακατευθυνθείτε στο περιβάλλον του SageMaker Studio.
- Στο SageMaker Studio, στο παράθυρο πλοήγησης κάτω Ανάπτυξη, επιλέξτε Έργα.
- Επιλέξτε Δημιουργία έργου.
- Στην κορυφή της λίστας προτύπων, επιλέξτε Πρότυπα οργανισμού.
Εάν έχετε ολοκληρώσει όλα τα προηγούμενα βήματα με επιτυχία, θα πρέπει να μπορείτε να δείτε ένα νέο προσαρμοσμένο πρότυπο έργου με το όνομα Build-Deploy-GitHub
.
- Επιλέξτε αυτό το πρότυπο και επιλέξτε Επιλέξτε Πρότυπο έργου.
- Εισαγάγετε μια προαιρετική περιγραφή.
- Για Όνομα κατόχου αποθετηρίου GitHub, εισαγάγετε τον κάτοχο του αποθετηρίου GitHub. Για παράδειγμα, εάν το αποθετήριο σας βρίσκεται στο
https://github.com/pooyavahidi/my-repo
, ο ιδιοκτήτης θα ήτανpooyavahidi
. - Για Όνομα αποθετηρίου GitHub, εισαγάγετε το όνομα του αποθετηρίου στο οποίο αντιγράψατε τον κωδικό αρχικής θέσης. Θα ήταν απλώς το όνομα του repo. Για παράδειγμα, σε
https://github.com/pooyavahidi/my-repo
, το repo είναιmy-repo
. - Για Μοναδικό αναγνωριστικό σύνδεσης Codestar, εισαγάγετε το μοναδικό αναγνωριστικό της σύνδεσης AWS CodeStar που δημιουργήσατε.
- Για Όνομα του μυστικού στο Secrets Manager που αποθηκεύει το διακριτικό GitHub, εισαγάγετε το όνομα του μυστικού στο Secrets Manager όπου δημιουργήσατε και αποθηκεύσατε το διακριτικό GitHub.
- Για Αρχείο ροής εργασίας GitHub για ανάπτυξη, εισαγάγετε το όνομα του αρχείου ροής εργασίας GitHub (στο
.github/workflows/deploy.yml
) όπου έχετε τις οδηγίες ανάπτυξης. Για αυτό το παράδειγμα, μπορείτε να το διατηρήσετε ως προεπιλογή, το οποίο είναιdeploy.yml
. - Επιλέξτε Δημιουργία έργου.
- Αφού δημιουργήσετε το έργο σας, βεβαιωθείτε ότι έχετε ενημερώσει το
AWS_REGION
καιSAGEMAKER_PROJECT_NAME
μεταβλητές περιβάλλοντος στα αρχεία ροής εργασίας GitHub ανάλογα. Τα αρχεία ροής εργασίας βρίσκονται στο αποθετήριο GitHub (αντιγράφηκε από τον αρχικό κώδικα), μέσα στο.github/workflows
Ευρετήριο. Φροντίστε να ενημερώσετε και τα δύοbuild.yml
καιdeploy.yml
αρχεία.
Τώρα το περιβάλλον σας είναι έτοιμο! Μπορείτε να εκτελέσετε απευθείας τις διοχετεύσεις, να κάνετε αλλαγές και να προωθήσετε αυτές τις αλλαγές στο αποθετήριο GitHub για να ενεργοποιήσετε την αυτοματοποιημένη διοχέτευση κατασκευής και να δείτε πώς αυτοματοποιούνται όλα τα βήματα της δημιουργίας και της ανάπτυξης.
εκκαθάριση
Για να καθαρίσετε τους πόρους, ολοκληρώστε τα παρακάτω βήματα:
- Διαγράψτε τις στοίβες CloudFormation που χρησιμοποιούνται για το έργο SageMaker και τα τελικά σημεία SageMaker.
- Διαγράψτε τον τομέα SageMaker.
- Διαγράψτε τους πόρους του καταλόγου υπηρεσιών.
- Διαγράψτε τη σύνδεση σύνδεσης AWS CodeStar με το αποθετήριο GitHub.
- Διαγράψτε τον χρήστη IAM που δημιουργήσατε για το GitHub Actions.
- Διαγράψτε το μυστικό στο Secrets Manager που αποθηκεύει τα προσωπικά στοιχεία πρόσβασης του GitHub.
Χαρακτηριστικά
Σε αυτήν την ανάρτηση, ακολουθήσαμε τη διαδικασία χρήσης ενός προσαρμοσμένου προτύπου έργου SageMaker MLOps για την αυτόματη κατασκευή και οργάνωση μιας διοχέτευσης CI/CD. Αυτός ο αγωγός ενσωματώνει αποτελεσματικά τους υπάρχοντες μηχανισμούς CI/CD με τις δυνατότητες του SageMaker για χειρισμό δεδομένων, εκπαίδευση μοντέλων, έγκριση μοντέλου και ανάπτυξη μοντέλου. Στο σενάριό μας, εστιάσαμε στην ενσωμάτωση των GitHub Actions με έργα και αγωγούς SageMaker. Για μια ολοκληρωμένη κατανόηση των λεπτομερειών υλοποίησης, επισκεφθείτε τη διεύθυνση Αποθετήριο GitHub. Μη διστάσετε να πειραματιστείτε με αυτό και μη διστάσετε να αφήσετε τυχόν απορίες που μπορεί να έχετε στην ενότητα σχολίων.
Σχετικά με τους Συγγραφείς
Δρ Romina Sharifpour είναι ανώτερος αρχιτέκτονας λύσεων μηχανικής μάθησης και τεχνητής νοημοσύνης στο Amazon Web Services (AWS). Έχει περάσει πάνω από 10 χρόνια ηγούμενη του σχεδιασμού και της εφαρμογής καινοτόμων λύσεων από άκρο σε άκρο που επιτρέπονται από τις εξελίξεις στον τομέα της ML και της τεχνητής νοημοσύνης. Οι τομείς ενδιαφέροντος της Romina είναι η επεξεργασία φυσικής γλώσσας, τα μεγάλα γλωσσικά μοντέλα και τα MLOps.
Πούγια Βαχίδη είναι Senior Solutions Architect στο AWS, παθιασμένος με την επιστήμη των υπολογιστών, την τεχνητή νοημοσύνη και το cloud computing. Ως επαγγελματίας τεχνητής νοημοσύνης, είναι ενεργό μέλος της ομάδας AWS AI/ML Area-of-Depth. Με ένα υπόβαθρο που εκτείνεται σε πάνω από δύο δεκαετίες τεχνογνωσίας στην ηγεσία της αρχιτεκτονικής και της μηχανικής λύσεων μεγάλης κλίμακας, βοηθά τους πελάτες στα μετασχηματιστικά ταξίδια τους μέσω τεχνολογιών cloud και AI/ML.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoData.Network Vertical Generative Ai. Ενδυναμώστε τον εαυτό σας. Πρόσβαση εδώ.
- PlatoAiStream. Web3 Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- PlatoESG. Ανθρακας, Cleantech, Ενέργεια, Περιβάλλον, Ηλιακός, Διαχείριση των αποβλήτων. Πρόσβαση εδώ.
- PlatoHealth. Ευφυΐα βιοτεχνολογίας και κλινικών δοκιμών. Πρόσβαση εδώ.
- πηγή: https://aws.amazon.com/blogs/machine-learning/build-an-end-to-end-mlops-pipeline-using-amazon-sagemaker-pipelines-github-and-github-actions/
- :έχει
- :είναι
- :δεν
- :που
- $UP
- 10
- 100
- 114
- 14
- 20
- 28
- 7
- 8
- 9
- a
- Ικανός
- ΠΛΗΡΟΦΟΡΙΕΣ
- πάνω από
- επιταχύνουν
- πρόσβαση
- πρόσβαση
- προσιτός
- αναλόγως
- Λογαριασμός
- ακρίβεια
- Κατορθώνω
- απέναντι
- ενεργειών
- ενεργός
- απεριοδικός
- προσθέτω
- Πρόσθετος
- ρυθμίζεται
- ενστερνίζομαι
- εξελίξεις
- Μετά το
- πάλι
- AI
- AI / ML
- Όλα
- διανέμω
- επιτρέπουν
- επιτρέπει
- ήδη
- Επίσης
- εναλλακτική λύση
- Amazon
- Amazon Sage Maker
- Αγωγοί Amazon SageMaker
- Amazon υπηρεσίες Web
- Amazon Web Services (AWS)
- an
- και
- και την υποδομή
- κάθε
- κατάλληλος
- έγκριση
- αρχιτεκτονική
- ΕΙΝΑΙ
- περιοχές
- τεχνητός
- τεχνητή νοημοσύνη
- AS
- πτυχές
- συσχετισμένη
- Σχέση
- At
- αυτοματοποίηση
- Αυτοματοποιημένη
- αυτομάτως
- αυτοματοποίηση
- Αυτοματοποίηση
- διαθέσιμος
- AWS
- φόντο
- βάση
- BE
- ήταν
- πριν
- και οι δύο
- χτίζω
- Κτίριο
- Χτίζει
- χτισμένο
- ενσωματωμένο
- by
- που ονομάζεται
- CAN
- δυνατότητες
- κατάλογος
- CD
- κεντρική
- αλλαγή
- Αλλαγές
- Επιλέξτε
- κλασικό
- καθαρός
- κλικ
- Backup
- cloud computing
- κωδικός
- βάση κώδικα
- συνεργάζομαι
- συνεργασία
- συλλογή
- έρχεται
- σχόλια
- πλήρης
- ολοκλήρωση
- συγκρότημα
- συστατικό
- εξαρτήματα
- περιεκτικός
- υπολογιστή
- Πληροφορική
- χρήση υπολογιστή
- εμπιστευτικότητα
- διαμόρφωση
- έχει ρυθμιστεί
- Διαμόρφωση
- σύνδεση
- θεωρώντας
- με συνέπεια
- αποτελείται
- πρόξενος
- κατασκευάσει
- περιέχουν
- περιεχόμενα
- συνεχής
- έλεγχος
- Αντίστοιχος
- δημιουργία
- δημιουργήθηκε
- δημιουργεί
- δημιουργία
- δημιουργία
- έθιμο
- Πελάτες
- προσαρμοσμένη
- DAG
- ημερομηνία
- Προετοιμασία δεδομένων
- επιστημονικά δεδομένα
- δεκαετίες
- Προεπιλογή
- παραδώσει
- διανομή
- σκάβω
- απαιτήσεις
- αποδεικνύουν
- κατέδειξε
- εξαρτήσεις
- παρατάσσω
- αναπτυχθεί
- ανάπτυξη
- ανάπτυξη
- αναπτύξεις
- περιγραφή
- Υπηρεσίες
- επιθυμητή
- λεπτομέρεια
- λεπτομερής
- καθέκαστα
- Ανάπτυξη
- διαφορετικές
- κατευθύνθηκε
- κατευθείαν
- συζήτηση
- do
- τομέα
- Μην
- κατά την διάρκεια
- κάθε
- Νωρίτερα
- ευκολότερη
- οικοσύστημα
- Αποτελεσματικός
- αποτελεσματικά
- αποτελεσματικός
- αποτελεσματικά
- είτε
- στοιχεία
- εξάλειψη
- ενεργοποιήσετε
- ενεργοποιημένη
- δίνει τη δυνατότητα
- ενεργοποίηση
- από άκρη σε άκρη
- Τελικό σημείο
- Μηχανική
- Μηχανικοί
- εξασφαλίζω
- εξασφαλίζει
- εξασφαλίζοντας
- εισάγετε
- Εταιρεία
- Ολόκληρος
- Περιβάλλον
- περιβάλλοντα
- κατ 'ουσίαν,
- εγκαθιδρύω
- εγκατεστημένος
- καθιερώνει
- εγκατάσταση
- κ.λπ.
- εκτίμηση
- εκδηλώσεις
- παράδειγμα
- υφιστάμενα
- εμπειρία
- πείραμα
- εξειδίκευση
- εξερευνητής
- διευκολύνοντας
- Χαρακτηριστικό
- Χαρακτηριστικά
- αισθάνομαι
- πεδίο
- Αρχεία
- Αρχεία
- Finder
- Συγκέντρωση
- επικεντρώθηκε
- Εξής
- Για
- πιρούνι
- σχηματισμός
- μορφές
- Βρέθηκαν
- Δωρεάν
- Ελευθερία
- από
- λειτουργία
- λειτουργίες
- παράγουν
- παράγεται
- παίρνω
- Git
- GitHub
- Δώστε
- μετάβαση
- φύγει
- χορηγεί
- γραφική παράσταση
- μεγαλύτερη
- Group
- Ομάδα
- Έχω
- he
- βαριά
- βαριά ανύψωση
- βοηθά
- φιλοξενία
- Σπίτι
- σπίτια
- στέγαση
- Πως
- Πώς να
- Ωστόσο
- HTML
- http
- HTTPS
- ID
- Ταυτότητα
- ids
- if
- εκτέλεση
- εφαρμοστεί
- εκτελεστικών
- in
- περιλαμβάνουν
- περιλαμβάνει
- Συμπεριλαμβανομένου
- πληροφορίες
- Υποδομή
- κινήσει
- Αρχίζει
- καινοτόμες
- εισαγωγή
- μέσα
- εγκαθιστώ
- εγκατασταθεί
- παράδειγμα
- αντί
- οδηγίες
- ενσωματώσει
- Ενσωματώνει
- Ενσωμάτωση
- ολοκλήρωση
- Νοημοσύνη
- διαδραστικό
- τόκος
- σε
- Εισάγει
- απομόνωση
- IT
- ΤΟΥ
- Ταξίδια
- jpg
- json
- μόλις
- Διατήρηση
- κρατά
- Κλειδί
- πλήκτρα
- γνωστός
- Γλώσσα
- large
- μεγάλης κλίμακας
- αργότερα
- ξεκινήσει
- στρώμα
- στρώματα
- που οδηγεί
- μάθηση
- Άδεια
- κύκλος ζωής
- ανύψωση
- Μου αρέσει
- γενεαλογία
- LINK
- Λιστα
- που βρίσκεται
- τοποθεσία
- Μακριά
- ματιά
- μοιάζει
- μηχανή
- μάθηση μηχανής
- MacOS
- διατηρεί
- συντήρηση
- κάνω
- διαχείριση
- διαχειρίζεται
- διαχείριση
- διευθυντής
- διαχείριση
- Χειρισμός
- Ταχύτητες
- πολοί
- μηχανισμούς
- Γνωρίστε
- μέλος
- Μέλη
- Μενού
- Μεταδεδομένα
- ενδέχεται να
- MIT
- ML
- MLOps
- μοντέλο
- μοντέλα
- τροποποιήσεις
- τροποποιήσει
- παρακολούθηση
- οθόνες
- περισσότερο
- πιο αποτελεσματικό
- Εξάλλου
- πολλαπλούς
- πρέπει
- όνομα
- Ονομάστηκε
- ονόματα
- ντόπιος
- Φυσικό
- Επεξεργασία φυσικής γλώσσας
- Πλοηγηθείτε
- Πλοήγηση
- απαραίτητος
- επιβάλλει
- Ανάγκη
- ανάγκες
- Νέα
- καινούργιο προϊόν
- πρόσφατα
- επόμενη
- τώρα
- αποκτήσει
- of
- προσφορά
- on
- ONE
- εμπρός
- λειτουργούν
- λειτουργίες
- or
- ενορχήστρωση
- επιχειρήσεις
- οργανώσεις
- ΑΛΛΑ
- δικός μας
- επί
- επισκόπηση
- δική
- ιδιοκτήτης
- πακέτο
- παράθυρο
- ισοτιμία
- μέρος
- κόμμα
- παθιασμένος
- δικαιώματα
- προσωπικός
- αγωγού
- φώναξε
- πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- χαρτοφυλάκιο
- Θέση
- ισχυρός
- πρακτικές
- Προβλέψεις
- προετοιμασία
- Προετοιμάστε
- έτοιμος
- προαπαιτούμενα
- προηγούμενος
- διαδικασία
- διαδικασια μας
- Διεργασίες
- μεταποίηση
- Παράγεται
- Προϊόν
- παραγωγή
- επαγγελματίας
- σχέδιο
- έργα
- προτρέπει
- προστασία
- παρέχουν
- παρέχεται
- παρέχει
- δημοσιεύθηκε
- Σπρώξτε
- πίεσε
- Python
- ερωτήματα
- Γρήγορα
- Ετοιμότητα
- έτοιμος
- σε πραγματικό χρόνο
- συνιστώ
- συνιστάται
- αρχεία
- παραπέμπω
- αναφορά
- αντανακλούν
- καταχωρηθεί
- Εγγραφή
- μητρώου
- σχετίζεται με
- αξιόπιστος
- αφαιρέστε
- ΚΑΤ 'ΕΠΑΝΑΛΗΨΗ
- Αποθήκη
- ζητήσει
- απαιτούν
- απαιτήσεις
- έρευνα
- πόρος
- Υποστηρικτικό υλικό
- αντίστοιχα
- υπεύθυνος
- με αποτέλεσμα
- επαναχρησιμοποίηση
- δεξιά
- εύρωστος
- Ρόλος
- ρόλους
- ρίζα
- Άρθρο
- τρέξιμο
- τρέχει
- σοφός
- Αγωγοί SageMaker
- ίδιο
- Αποθήκευση
- Απεριόριστες δυνατότητες
- απολέπιση
- σενάριο
- σενάρια
- Επιστήμη
- επιστήμονες
- Μυστικό
- μυστικά
- Τμήμα
- τμήματα
- ασφαλώς
- ασφάλεια
- δείτε
- σπόρος
- επιλέξτε
- αρχαιότερος
- εξυπηρετεί
- υπηρεσία
- Υπηρεσίες
- Σέτς
- τον καθορισμό
- ρυθμίσεις
- setup
- διάφοροι
- αυτή
- θα πρέπει να
- δείχνουν
- παρόμοιες
- Απλούς
- απλοποιημένη
- απλουστεύοντας
- λογισμικό
- ανάπτυξη λογισμικού
- λύση
- Λύσεις
- μερικοί
- κάτι
- Πηγή
- πρωτογενής κώδικας
- ένταση
- συγκεκριμένες
- ειδικά
- πέρασε
- Στοίβες
- Προσωπικό
- Στάδιο
- στάδια
- σκαλωσιά
- πρότυπα
- Εκκίνηση
- Ξεκινήστε
- Κατάσταση
- Βήμα
- Βήματα
- χώρος στο δίσκο
- κατάστημα
- αποθηκεύονται
- καταστήματα
- εναποθήκευση
- ειλικρινής
- εξορθολογισμό
- εξορθολογισμός
- στούντιο
- Μελέτη
- μεταγενέστερος
- Επιτυχώς
- τέτοιος
- επαρκής
- σουίτα
- βέβαιος
- σύστημα
- συστήματα
- TAG
- Μέλη ομάδας
- ομάδες
- Τεχνολογίες
- πρότυπο
- πρότυπα
- δοκιμαστεί
- Δοκιμές
- ότι
- Η
- Η Πηγη
- τους
- τότε
- επομένως
- Αυτοί
- αυτοί
- Τρίτος
- τρίτους
- αυτό
- εκείνοι
- Μέσω
- παντού
- προς την
- μαζι
- ένδειξη
- εργαλείο
- εργαλεία
- κορυφή
- τροχιά
- Παρακολούθηση
- εκπαιδευμένο
- Εκπαίδευση
- Μεταμορφώστε
- μεταμορφωτικός
- ενεργοποιούν
- ενεργοποιήθηκε
- δύο
- τύπος
- τύποι
- υπό
- καταλαβαίνω
- κατανόηση
- μοναδικός
- Ενημέρωση
- Φορτώθηκε
- επάνω σε
- us
- χρήση
- μεταχειρισμένος
- Χρήστες
- Χρήστες
- χρησιμοποιώντας
- χρησιμοποιώ
- χρησιμοποιούνται
- ΕΠΙΚΥΡΩΝΩ
- επικύρωση
- αξία
- διάφορα
- εκδοχή
- εκδόσεις
- μέσω
- Πραγματικός
- Επίσκεψη
- περπάτησε
- θέλω
- we
- ιστός
- διαδικτυακές υπηρεσίες
- Web-based
- Ιστοσελίδα : www.example.gr
- Τι
- πότε
- Ποιό
- ενώ
- θα
- παράθυρα
- με
- εντός
- Εργασία
- συνεργαστούν
- ροής εργασίας
- ροές εργασίας
- θα
- χρόνια
- Εσείς
- Σας
- zephyrnet
- Zip