View a markdown version of this page

Personalizada - AWS Transformar

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Personalizada

¿Qué es? AWS ¿Transformar lo personalizado?

AWS Transform Custom utiliza la inteligencia artificial artificial para llevar a cabo una modernización a gran escala del software, el código, las bibliotecas y los marcos a fin de reducir la deuda técnica. Gestiona diversos escenarios, como las actualizaciones de versiones lingüísticas, las migraciones de API y servicios, las actualizaciones y migraciones de marcos, la refactorización del código y las transformaciones específicas de la organización.

Gracias al aprendizaje continuo, el agente mejora a partir de cada ejecución y de los comentarios de los desarrolladores, lo que permite realizar transformaciones repetibles y de alta calidad sin necesidad de contar con conocimientos especializados en automatización.

Capacidades clave

AWS Transform custom ofrece las siguientes funciones:

  • Definición de transformación basada en lenguaje natural: cree transformaciones personalizadas utilizando lenguaje natural, documentación y ejemplos de código

  • Ejecución de transformaciones: aplique las transformaciones de forma coherente y fiable en varias bases de código

  • Aprendizaje continuo: mejore automáticamente la calidad de la transformación en cada ejecución

  • AWS-transformaciones gestionadas: utilice transformaciones revisadas y listas para usar en escenarios AWS comunes

Patrones de transformación

AWS Transform Custom admite diversos patrones de transformación para abordar sus necesidades de modernización. Cada patrón tiene diferentes características de complejidad según el alcance y la naturaleza de los cambios requeridos.

Patrón Description (Descripción) Complejidad Ejemplos
Migraciones de API y servicios Migrar entre versiones de API o servicios equivalentes sin perder la funcionalidad Medio AWS SDK v1→v2 (Java, Python), Boto2→Boto3, JUnit JavaScript 4→5, javax→jakarta
Actualizaciones de versiones lingüísticas Actualizar a versiones más recientes del mismo lenguaje de programación, adoptar nuevas funciones y reemplazar las funciones obsoletas Low-Medium Java 8→17, Python 3.9→3.13, 12→22, actualizaciones de versión Node.js TypeScript
Actualizaciones del marco Actualizar a versiones más recientes del mismo marco para abordar los cambios más importantes Medio Spring Boot 2.x→3.x, React 17→18, actualizaciones de Angular, actualizaciones de Django
Migraciones de Framework Migrar a marcos completamente diferentes que tienen propósitos similares Alto Angular → React, Redux→Zustand, → React Vue.js
Actualizaciones de bibliotecas y dependencias Actualización de bibliotecas de terceros a versiones más recientes manteniendo el mismo lenguaje y marco Low-Medium Pandas 1.x→2.x, NumPy actualizaciones, actualizaciones de bibliotecas, Hadoop/HBase/Hive actualizaciones de Lodash
Refactorización de código y modernización de patrones Modernizar los patrones de código y adoptar las mejores prácticas sin cambiar la funcionalidad externa Low-Medium Impresión→marcos de registro, concatenación de cadenas→cadenas f, adopción de sugerencias de tipo, instrumentación de observabilidad
File-by-File Guión y traducciones Traducir scripts independientes o archivos de configuración donde los archivos son en su mayoría autónomos Low-Medium AWS CDK→Terraform, Terraform→, Excel → Cuadernos Python, Bash→ CloudFormation PowerShell
Migraciones de arquitectura Migración entre arquitecturas de hardware o entornos de ejecución con cambios mínimos de código Medium-High x86 →AWS Graviton (ARM), local → Lambda, servidor tradicional→contenedores
Language-to-Language Migraciones Traducir bases de código de un lenguaje de programación a otro Muy alto Java→Python, JavaScript →, C→Rust, TypeScript Python→Go
Organization-Specific Personalización y transformaciones Requisitos organizativos únicos y necesidades de modernización especializadas Varía Migraciones personalizadas de bibliotecas internas, estándares de codificación específicos de la organización, migraciones de marcos propietarios
nota

Para los COBOL/mainframe idiomas, utilice AWS Transform for Mainframe. Para actualizar .NET Framework a .NET Core, considere AWS Transform para Windows. Para migrar a VMware AWS, considere AWS Transform for VMware.

Cómo AWS Transform Custom Works

AWS La transformación personalizada se suele utilizar en proyectos a gran escala en los que se transforman varias bases de código o módulos. Los equipos suelen seguir un flujo de trabajo de cuatro fases:

Defina la transformación: proporcione instrucciones, documentación y ejemplos de código en lenguaje natural al agente, lo que generará una definición inicial de la transformación. Esta definición se puede refinar de forma iterativa mediante el chat o las ediciones directas. Esta fase se puede omitir cuando se utilizan AWS transformaciones administradas.

Prueba o Proof-of-Concept prueba la transformación en bases de código de muestra y refina en función de los resultados. Esta fase de validación ayuda a estimar el costo y el esfuerzo de la transformación completa. El aprendizaje continuo mejora la calidad durante esta fase.

Ejecución escalada: configure la ejecución masiva automatizada mediante la CLI, y los desarrolladores revisen y validen los resultados. Supervise el progreso mediante la aplicación web y realice un seguimiento de las transformaciones en varios repositorios.

Supervise y revise: el aprendizaje continuo mejora automáticamente la calidad de la transformación. Revise las lecciones extraídas de ediciones anteriores para asegurarse de que cumplen con los estándares de calidad y archive las que no sean útiles.

Comprensión de conceptos clave de

En esta sección se explican los conceptos clave para trabajar con AWS Transform custom.

Definiciones de transformación

Una definición de transformación contiene las instrucciones y los conocimientos necesarios para realizar una transformación de código específica. Se representa como una habilidad y consiste en:

  • SKILL.md(obligatorio): instrucciones en Markdown con contenido inicial (namey description campos) de YAML que contienen la lógica de transformación básica y las instrucciones de ejecución

  • references/carpeta (opcional): la documentación se carga según sea necesario durante la ejecución de la transformación

  • scripts/carpeta (opcional): scripts que la transformación descarga y ejecuta durante la ejecución

AWS La CLI de Transform descarga automáticamente las definiciones de transformación al directorio actual cuando es necesario para su ejecución, inspección o modificación.

importante

Al publicar una transformación, el directorio debe contener solo SKILL.md y opcionalmente la references/ carpeta, la scripts/ carpeta o ambas. No se permite ningún otro archivo o subdirectorio.

nota

La versión 2.0 y posteriores de la CLI utiliza el formato skills. La CLI gestiona automáticamente las definiciones de transformación existentes.

Registro de transformaciones

El registro de transformaciones es el repositorio centralizado de su AWS cuenta para almacenar y administrar las definiciones de transformación. Las transformaciones en el registro pueden ser:

  • Se enumeran usando atx custom def list

  • Ejecutado en varias bases de código

  • Compartido con otros usuarios de tu cuenta AWS

  • Version-controlled

importante

Las definiciones de transformación son específicas de cada cuenta. Si quieres usar una transformación en una AWS cuenta diferente, debes publicarla por separado en esa cuenta.

Borrador frente a transformaciones publicadas

AWS Transform custom admite dos estados para las transformaciones en el registro:

Los borradores de transformaciones son definiciones de transformación en curso o no probadas. Se guardan como versiones específicas y los usuarios pueden recuperarlas, actualizarlas y ejecutarlas haciendo referencia a esa versión específica. Los borradores son útiles para el desarrollo, las pruebas y el refinamiento iterativos antes de que la transformación esté lista para compartirla con tu equipo. Los borradores también se asocian a una conversación específica. Si reinicia la CLI, puede usarla atx --conversation-id {id} para restaurar una anterior.

Las transformaciones publicadas están disponibles en el registro de transformaciones de su cuenta para que las ejecuten otros usuarios con los permisos de IAM necesarios. Las transformaciones publicadas se pueden descubrir usandoatx custom def list.

El flujo de trabajo típico es:

  1. Cree la transformación localmente

  2. Guardar como borrador para realizar pruebas (atx custom def save-draft)

  3. Refinar y validar

  4. Publica para compartir con tu equipo (atx custom def publish)

También puedes publicar una transformación directamente sin guardarla como borrador.

Referencias frente a lecciones

AWS Transform custom utiliza dos tipos de conocimiento para mejorar la calidad de la transformación:

Las referencias son documentación proporcionada por el usuario que se almacena en la references/ carpeta de una definición de transformación. Las referencias solo admiten archivos de texto (un máximo de 10 MB en total para todos los archivos) y, por lo general, contienen documentación, especificaciones de API, guías de migración y ejemplos de código. Las referencias se cargan según sea necesario durante la ejecución de la transformación. Las referencias se añaden al crear o actualizar una definición de transformación en modo interactivo.

Las lecciones se extraen automáticamente de las ejecuciones anteriores de una transformación. El sistema de aprendizaje continuo las genera a partir de las trayectorias de ejecución, los comentarios de los desarrolladores y las correcciones de código que encuentra durante las transformaciones. Agrupa las lecciones relacionadas en categorías para que puedan revisarlas juntas. A diferencia de las referencias, que se proporcionan por adelantado, las lecciones se acumulan con el tiempo a medida que se ejecuta la transformación en diferentes bases de código, y el sistema las aplica automáticamente para mejorar las ejecuciones futuras. Puedes revisar y gestionar las lecciones de forma interactiva con. atx custom def learnings

Comandos de creación y validación

El comando de compilación o validación es un parámetro opcional que especifica cómo validar el código durante el proceso de transformación. Este comando se ejecuta en varios puntos durante la transformación para garantizar la integridad del código.

Proporcionar un comando que valide los resultados y devuelva los problemas si la validación falla es muy importante para mejorar la calidad de la transformación mediante el aprendizaje continuo. Si no es necesario compilar ni validar, omítelo en la entrada.

Para ver ejemplos y una guía detallada, consulta los comandos de compilación y validación en la sección Flujos de trabajo.

Aprendizaje continuo

El aprendizaje continuo es el sistema que captura automáticamente los comentarios de cada ejecución de transformación y mejora la calidad de la transformación con el tiempo. El sistema recopila información a través de:

  • Comentarios explícitos: los comentarios y las correcciones de código se proporcionan en modo interactivo

  • Observaciones implícitas: problemas que encuentra el agente al transformar y depurar el código

El sistema de aprendizaje continuo procesa esta información para crear lecciones que añade a la definición de transformación para mejorar las transformaciones futuras. El sistema ejecuta el proceso de aprendizaje automáticamente una vez finalizadas las transformaciones, sin necesidad de que usted realice ninguna aportación adicional.

importante

Las lecciones son específicas de cada transformación y no se comparten entre diferentes transformaciones ni entre diferentes cuentas de clientes.

Gestionar las lecciones

El sistema genera lecciones automáticamente, pero tú mantienes el control de cuáles se aplican en futuras tiradas. El atx custom def learnings comando abre una sesión de terminal interactiva para revisar y seleccionar las lecciones que ha acumulado una transformación.

En esta sesión, puede:

  • Explora las lecciones agrupadas en categorías y comprueba cuántas lecciones activas contiene cada categoría.

  • Abre una lección para leer todos sus detalles, incluidos el cuerpo de la lección, su impacto y el número de ediciones anteriores que se consultaron en ella.

  • Archive una lección para evitar que el sistema la aplique en futuras ejecuciones y restaure la lección más adelante si es necesario.

  • Elimine permanentemente una lección archivada que ya no sea útil.

Para obtener instrucciones paso a paso, consulte Aprendizaje continuo.

Client-Side Habilidades

Client-side las habilidades son capacidades adicionales que amplían el funcionamiento del agente durante las ejecuciones de la transformación. A diferencia de las definiciones de transformación, que definen qué transformación llevar a cabo, las habilidades del lado del cliente proporcionan herramientas, scripts e instrucciones complementarias que el agente puede utilizar junto con sus capacidades integradas durante cualquier transformación.

Client-side las habilidades se descubren en los directorios a nivel de proyecto y de usuario. Coloque las habilidades a nivel de proyecto cuando apliquen estándares específicos de un repositorio, y a nivel de usuario cuando se apliquen a todos sus proyectos. Project-level las habilidades solo están disponibles cuando se proporciona una ruta al repositorio de código. Para obtener información detallada sobre la configuración y el uso, consulteClient-Side Habilidades.

Introducción a los comandos de transformación personalizados

Estos son algunos de los comandos que puede usar con las transformaciones personalizadas. La lista completa de comandos se encuentra en la referencia de comandos AWS para transformar transformaciones personalizadas.

  • atx custom

    • Ejecuta una experiencia interactiva de transformación personalizada, lo que permite la creación, el descubrimiento, la ejecución y el refinamiento de las transformaciones.

    • Este es el comando predeterminado paraatx.

    • --trust-all-tools(-t) es opcional y permite implícitamente todas las solicitudes de herramientas solicitadas por el agente. Úselo con precaución, especialmente en entornos de producción. Puede configurar la confianza en las herramientas para herramientas y comandos específicos mediante el archivo de configuración de confianza.

  • atx custom --help | atx custom -h

    • Muestra el menú de ayuda.

    • Cada comando también incluye un menú de ayuda, por ejemplo,atx custom def exec --help.

  • atx --version | atx -v

    • Muestra la versión.

    • El número de versión cambia con cada versión.

  • atx custom def list

    • Imprime la lista de transformaciones disponibles en el registro de transformaciones.

  • atx custom def exec

    • Ejecuta una transformación

  • atx custom def learnings

    • Abre una sesión interactiva para ver y administrar las lecciones que una transformación ha aprendido de las ejecuciones anteriores

  • atx mcp

    • Se usa para administrar las configuraciones del servidor MCP