Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Personnalisé
Qu'est-ce que AWS Transformer la personnalisation ?
AWS Transform Custom utilise l'IA agentique pour moderniser à grande échelle les logiciels, le code, les bibliothèques et les frameworks afin de réduire la dette technique. Il gère divers scénarios, notamment les mises à niveau des versions linguistiques, les migrations d'API et de services, les mises à niveau et les migrations du framework, la refactorisation du code et les transformations spécifiques à l'organisation.
Grâce à un apprentissage continu, l'agent s'améliore grâce à chaque exécution et aux commentaires des développeurs, fournissant des transformations reproductibles de haute qualité sans avoir besoin d'une expertise spécialisée en automatisation.
Capacités clés
AWS Transform Custom fournit les fonctionnalités suivantes :
Définition de la transformation basée sur le langage naturel - Créez des transformations personnalisées à l'aide du langage naturel, de la documentation et d'exemples de code
Exécution des transformations : appliquez des transformations de manière cohérente et fiable sur plusieurs bases de code
Apprentissage continu : améliorez automatiquement la qualité de la transformation à chaque exécution
AWS-transformations gérées - Utilisez des transformations prêtes à l'emploi et AWS approuvées pour les scénarios courants
Schémas de transformation
AWS Transform Custom prend en charge divers modèles de transformation pour répondre à vos besoins de modernisation. Chaque modèle présente des caractéristiques de complexité différentes en fonction de la portée et de la nature des modifications requises.
| Modèle | Description | Complexité | Exemples |
|---|---|---|---|
| Migrations d'API et de services | Migration entre les versions d'API ou des services équivalents tout en préservant les fonctionnalités | Moyenne | AWS SDK v1→v2 (Java, Python,), Boto2→Boto3, JUnit JavaScript 4→5, Javax→Jakarta |
| Mises à niveau des versions linguistiques | Mise à niveau vers de nouvelles versions du même langage de programmation, adoption de nouvelles fonctionnalités et remplacement des fonctionnalités obsolètes | Low-Medium | Java 8→17, Python 3.9→3.13, 12→22, mises à niveau de version Node.js TypeScript |
| Améliorations du framework | Mise à niveau vers des versions plus récentes du même framework, en tenant compte des modifications majeures | Moyenne | Spring Boot 2.x → 3.x, React 17→18, mises à niveau Angular, mises à niveau Django |
| Migrations de cadres | Migration vers des frameworks totalement différents ayant des objectifs similaires | Élevée | Angular→React, Redux→Zustand, →React Vue.js |
| Mises à niveau des bibliothèques et des dépendances | Mise à niveau de bibliothèques tierces vers des versions plus récentes tout en conservant le même langage et le même framework | Low-Medium | Pandas 1.x → 2.x, mises à niveau, mises à niveau de la bibliothèque, NumPy Hadoop/HBase/Hive mises à niveau de Lodash |
| Refactorisation du code et modernisation des modèles | Moderniser les modèles de code et adopter les meilleures pratiques sans modifier les fonctionnalités externes | Low-Medium | Frameworks Print→Logging, concaténation de chaînes→chaînes f, adoption d'indices de type, instrumentation d'observabilité |
| Script et File-by-File traductions | Traduction de scripts indépendants ou de fichiers de configuration dont les fichiers sont pour la plupart autonomes | Low-Medium | AWS CDK→Terraform, Terraform→, Excel→Carnets Python, CloudFormation Bash→ PowerShell |
| Migrations architecturales | Migration entre des architectures matérielles ou des environnements d'exécution avec un minimum de modifications de code | Medium-High | x86 →AWS Graviton (ARM), sur site → Lambda, serveur traditionnel → conteneurs |
| Language-to-Language Migrations | Traduire des bases de code d'un langage de programmation à un autre | Très élevé | Java→Python, →, C→Rust, JavaScript TypeScript Python→Go |
| Personnalisation et Organization-Specific transformations | Des exigences organisationnelles uniques et des besoins de modernisation spécialisés | Varie | Migrations de bibliothèques internes personnalisées, normes de codage spécifiques à l'organisation, migrations de frameworks propriétaires |
Note
Pour les COBOL/mainframe langues, utilisez AWS Transform for Mainframe. Pour les mises à niveau de .NET Framework vers .NET Core, pensez à AWS Transform pour Windows. Pour les migrations vers VMware AWS, pensez à AWS Transform for VMware.
Comment ? AWS Transformez des œuvres personnalisées
AWS La transformation personnalisée est généralement utilisée dans les projets à grande échelle dans lesquels plusieurs bases de code ou modules sont transformés. Les équipes suivent généralement un flux de travail en quatre phases :
Définir la transformation : fournissez des instructions en langage naturel, de la documentation et des exemples de code à l'agent, qui génère une définition initiale de la transformation. Cette définition peut être affinée de manière itérative par le biais du chat ou de modifications directes. Cette phase peut être ignorée lors de l'utilisation de transformations AWS gérées par -managed.
Pilote ou Proof-of-Concept : testez la transformation sur des exemples de bases de code et affinez-la en fonction des résultats. Cette phase de validation permet d'estimer le coût et les efforts de la transformation complète. L'apprentissage continu améliore la qualité au cours de cette phase.
Exécution échelonnée : configurez l'exécution groupée automatisée à l'aide de l'interface de ligne de commande, les développeurs examinant et validant les résultats. Surveillez les progrès à l'aide de l'application Web et suivez les transformations dans plusieurs référentiels.
Surveillance et révision : l'apprentissage continu améliore automatiquement la qualité de la transformation. Passez en revue les leçons tirées des séries précédentes pour vous assurer qu'elles répondent aux normes de qualité, et archivez celles qui ne sont pas utiles.
Comprendre les concepts clés
Cette section explique les concepts clés relatifs à l'utilisation de AWS Transform custom.
Définitions des transformations
Une définition de transformation contient les instructions et les connaissances nécessaires pour effectuer une transformation de code spécifique. Elle est représentée comme une compétence et comprend :
SKILL.md(obligatoire) - Instructions en Markdown avec une interface YAML (nameet desdescriptionchamps) contenant la logique de transformation de base et les instructions d'exécutionreferences/dossier (facultatif) - Documentation chargée selon les besoins lors de l'exécution de la transformationscripts/dossier (facultatif) - Scripts que la transformation télécharge et exécute pendant l'exécution
AWS Transform CLI télécharge automatiquement les définitions de transformation dans le répertoire actuel lorsque cela est nécessaire pour l'exécution, l'inspection ou la modification.
Important
Lors de la publication d'une transformation, le répertoire doit contenir uniquement SKILL.md et éventuellement le references/ dossier, le scripts/ dossier ou les deux. Aucun autre fichier ou sous-répertoire n'est autorisé.
Note
Les versions 2.0 et ultérieures de la CLI utilisent le format de compétences. Les définitions de transformation existantes sont automatiquement gérées par l'interface de ligne de commande.
Registre des transformations
Le registre des transformations est le référentiel centralisé de votre AWS compte pour le stockage et la gestion des définitions de transformation. Les transformations dans le registre peuvent être les suivantes :
Listé en utilisant
atx custom def listExécuté sur plusieurs bases de code
Partagé avec d'autres utilisateurs de votre AWS compte
Version-controlled
Important
Les définitions de transformation sont spécifiques au compte. Si vous souhaitez utiliser une transformation dans un autre AWS compte, vous devez la publier séparément dans ce compte.
Transformations provisoires et transformations publiées
AWS Transform custom prend en charge deux états pour les transformations dans le registre :
Les projets de transformation sont des définitions de transformation en cours ou non testées. Ils sont enregistrés en tant que versions spécifiques et peuvent être récupérés, mis à jour et exécutés par les utilisateurs se référant à cette version spécifique. Les brouillons sont utiles pour le développement itératif, les tests et le raffinement avant que la transformation ne soit prête à être partagée avec votre équipe. Les brouillons sont également associés à une conversation spécifique. Si vous redémarrez la CLI, vous pouvez l'utiliser atx --conversation-id {id} pour restaurer une précédente.
Les transformations publiées sont disponibles dans le registre des transformations de votre compte pour être exécutées par d'autres utilisateurs disposant des autorisations IAM requises. Les transformations publiées peuvent être découvertes à l'aide deatx custom def list.
Le flux de travail typique est le suivant :
Créez une transformation au niveau local
Enregistrer en tant que brouillon pour les tests (
atx custom def save-draft)Affiner et valider
Publiez pour partager avec votre équipe (
atx custom def publish)
Vous pouvez également publier une transformation directement sans l'enregistrer en tant que brouillon.
Références et leçons
AWS Transform Custom utilise deux types de connaissances pour améliorer la qualité de la transformation :
Les références sont de la documentation fournie par l'utilisateur et stockée dans le references/ dossier d'une définition de transformation. Les références ne prennent en charge que les fichiers texte (maximum 10 Mo au total pour tous les fichiers) et contiennent généralement de la documentation, des spécifications d'API, des guides de migration et des exemples de code. Les références sont chargées selon les besoins lors de l'exécution de la transformation. Vous ajoutez des références lors de la création ou de la mise à jour d'une définition de transformation en mode interactif.
Les leçons sont automatiquement extraites des exécutions précédentes d'une transformation. Le système d'apprentissage continu les génère à partir des trajectoires d'exécution, des commentaires des développeurs et des corrections de code rencontrées lors des transformations. Il regroupe les leçons connexes en catégories afin que vous puissiez les réviser ensemble. Contrairement aux références, que vous fournissez dès le départ, les leçons s'accumulent au fil du temps au fur et à mesure que vous exécutez la transformation sur différentes bases de code, et le système les applique automatiquement pour améliorer les exécutions futures. Vous révisez et gérez les leçons de manière interactive avecatx custom def learnings.
Commandes de création et de validation
La commande de génération ou de validation est un paramètre facultatif qui indique comment valider votre code pendant le processus de transformation. Cette commande est exécutée à différents moments de la transformation pour garantir l'intégrité du code.
Il est très important de fournir une commande qui valide les résultats et renvoie les problèmes en cas d'échec de la validation pour améliorer la qualité de la transformation grâce à un apprentissage continu. Si aucune compilation ou validation n'est nécessaire, omettez cette information de votre saisie.
Pour obtenir des exemples et des conseils détaillés, consultez la section Commandes de création et de validation dans la section Workflows.
Apprentissage continu
L'apprentissage continu est le système qui capture automatiquement les commentaires de chaque exécution de transformation et améliore la qualité de la transformation au fil du temps. Le système recueille des informations par le biais de :
Feedback explicite - Commentaires et corrections de code fournis en mode interactif
Observations implicites : problèmes rencontrés par l'agent lors de la transformation et du débogage du code
Le système d'apprentissage continu traite ces informations pour créer des leçons qu'il ajoute à la définition de la transformation afin d'améliorer les transformations futures. Le système exécute automatiquement le processus d'apprentissage une fois les transformations terminées, sans aucune intervention supplémentaire de votre part.
Important
Les leçons sont spécifiques à la transformation et ne sont pas partagées entre différentes transformations ou différents comptes clients.
Gestion des leçons
Le système génère des leçons automatiquement, mais vous restez maître de celles qu'il applique aux prochaines courses. La atx custom def learnings commande ouvre une session de terminal interactive pour passer en revue et organiser les leçons qu'une transformation a accumulées.
Au cours de cette session, vous pouvez :
Parcourez les leçons regroupées par catégories et voyez combien de leçons actives chaque catégorie contient.
Ouvrez une leçon pour en lire tous les détails, y compris le corps de la leçon, son impact et le nombre de courses précédentes qui l'ont consultée.
Archivez une leçon pour empêcher le système de l'appliquer à de futures exécutions, et restaurez-la ultérieurement si nécessaire.
Supprimez définitivement une leçon archivée qui n'est plus utile.
Pour obtenir des instructions détaillées, consultez Apprentissage continu.
Client-Side Compétences
Client-side les compétences sont des capacités supplémentaires qui étendent l'agent lors des exécutions de transformation. Contrairement aux définitions de transformation qui définissent la transformation à effectuer, les compétences côté client fournissent des outils, des scripts et des instructions supplémentaires que l'agent peut utiliser en plus de ses fonctionnalités intégrées lors de toute transformation.
Client-side les compétences sont découvertes à partir de répertoires au niveau du projet et au niveau des utilisateurs. Placez les compétences au niveau du projet lorsqu'elles appliquent des normes spécifiques à un référentiel, et au niveau de l'utilisateur lorsqu'elles s'appliquent à tous vos projets. Project-level les compétences ne sont disponibles que lorsqu'un chemin de dépôt de code est fourni. Pour une configuration et une utilisation détaillées, consultezClient-Side Compétences.
Présentation des commandes de transformation personnalisées
Voici quelques-unes des commandes que vous pouvez utiliser pour les transformations personnalisées. La liste complète des commandes se trouve dans la référence des commandes AWS Transform custom transformations.
-
atx custom-
Exécute une expérience interactive de transformation personnalisée, permettant la création, la découverte, l'exécution et l'affinement des transformations.
-
Il s'agit de la commande par défaut pour
atx. -
--trust-all-tools(-t) est facultatif et autorise implicitement toutes les demandes d'outils demandées par l'agent. À utiliser avec prudence, en particulier dans les environnements de production. Vous pouvez configurer la confiance des outils pour des outils et des commandes spécifiques à l'aide du fichier de paramètres de confiance.
-
-
atx custom --help|atx custom -h-
Affiche le menu d'aide.
-
Chaque commande inclut également un menu d'aide, par exemple
atx custom def exec --help.
-
-
atx --version|atx -v-
Montre la version.
-
Le numéro de version change à chaque version.
-
-
atx custom def list-
Imprime la liste des transformations disponibles dans le registre des transformations.
-
-
atx custom def exec-
Exécute une transformation
-
-
atx custom def learnings-
Ouvre une session interactive pour visualiser et gérer les leçons qu'une transformation a tirées des précédentes exécutions
-
-
atx mcp-
Utilisé pour gérer les configurations des serveurs MCP
-