Se ha rumoreado que ChatGPT dará pelea a Google y otros servicios en línea populares. Este chatbot de propósito general es mucho más inteligente que cualquier otra herramienta de aprendizaje automático en el mercado y se puede integrar en tus sistemas y aumentar eficazmente tus cargas de trabajo o automatizar completamente tus flujos de trabajo.
Amazon Web Services (AWS) tiene su propio AI conversacional y Chatbot llamado Amazon Lex, sin embargo, sus capacidades palidecen en comparación con lo que ChatGPT puede hacer. Hay una plétora de servicios de aprendizaje automático disponibles en AWS que se pueden utilizar para sus cargas de trabajo de ML, pero dada la popularidad de ChatGPT, ¿tendrá AWS todavía una oportunidad de competir contra esta poderosa herramienta de procesamiento de lenguaje natural?
¿Qué es ChatGPT?
A menos que viva bajo una roca, es posible que haya visto o al menos oído hablar de esta poderosa herramienta de IA llamada ChatGPT. El Chat Generative Pre-Trained Transformer, también conocido como «ChatGPT», es simplemente un chatbot. Fue lanzado por OpenAI en noviembre de 2022 y está construido sobre la familia de modelos de lenguaje grandes GPT-3 de la compañía.
Simplemente ingrese una pregunta o comando en formato de texto para aprovechar sus potentes capacidades de procesamiento del lenguaje natural. ChatGPT está ajustado con técnicas de aprendizaje supervisado y por refuerzo que le permiten realizar una amplia gama de tareas.
ChatGPT no es solo un simple chatbot. ¡Puede pedirle que cree un programa en Python y puede responder con un código fuente completo en cuestión de segundos! Esta funcionalidad es similar a la de Amazon CodeWhisperer y Github CoPilot. Sus sugerencias de código funcionan en docenas de lenguajes de programación. No solo eso, puede producir artículos técnicos y otras formas de literatura, incluidos poemas o letras de canciones.
También puede encontrar información y relaciones en el texto que ingrese. ChatGPT puede realizar análisis de texto que pueden extraer automáticamente frases clave, sentimientos, idiomas, sintaxis, temas de datos no estructurados. AWS tiene un servicio de ML llamado Amazon Comprehend que también hace exactamente lo mismo. Tanto ChatGPT como Amazon Comprehend pueden comprender y capturar información de los datos escritos en su entrada de texto.
ChatGPT vs servicios de aprendizaje automático de AWS
Basado en nuestra rápida evaluación anterior, ChatGPT aparentemente puede hacer el trabajo de al menos 3 servicios de aprendizaje automático en AWS, a saber: Amazon Lex, Amazon CodeWhisperer y Amazon Comprehend. Otro ejemplo sería la capacidad de traducir un texto de un idioma a otro en tiempo real. AWS tiene el servicio Amazon Translate que hace exactamente eso, que funciona prácticamente como Google Translate. ChatGPT tiene un motor potente que es capaz de realizar tareas que otros servicios de ML pueden en AWS.
Sin embargo, sigue siendo una herramienta de procesamiento del lenguaje natural que solo acepta texto. No tiene capacidad de reconocimiento óptico de caracteres (OCR) para «ver» y procesar los datos de una entrada visual. La salida de ChatGPT también está en formato de texto, por lo que no puede realizar tareas de automatización de texto a voz necesarias para los sistemas de respuesta de voz interactiva (IVR) y otros resultados que no son de texto.
¿Habrá otros servicios de ML en AWS que puedan ser parcial o totalmente reemplazados por ChatGPT de OpenAI? Para conocer la respuesta a esta pregunta, veamos los diferentes servicios de aprendizaje automático en AWS que están disponibles para su uso.
La miríada de servicios de aprendizaje automático de AWS
La plataforma de aprendizaje automático principal en AWS se llama Amazon SageMaker, seguida de muchos otros servicios de ML. Algunos servicios en AWS tienen funciones de aprendizaje automático, como Amazon Aurora Machine Learning, Redshift ML, Deep Learning AMIs y muchos más. Tenga en cuenta que no los cubriremos aquí, ya que nos enfocaremos solo en los servicios de ML dedicados.
Es fácil sentirse abrumado por la gran cantidad de servicios en AWS, por lo que dividiremos esta lección en varias secciones. Los servicios de aprendizaje automático de AWS se pueden clasificar en estos casos de uso: Visión por computadora, IA de lenguaje, Extracción y análisis de datos automatizados, Mejora de la experiencia del cliente, Métricas empresariales y DevOps.
Para la Visión por computadora, tenemos:
- Amazon Rekognition
- Amazon Lookout for Vision
- AWS Panorama
Para la extracción y análisis de datos automatizados, AWS tiene:
- Amazon Textract
- Amazon Augmented AI
- Amazon Comprehend
Para la IA del lenguaje, tiene:
- Amazon Lex
- Amazon Transcribe
- Amazon Polly
Para mejorar la experiencia del cliente, puede utilizar los siguientes servicios:
- Amazon Kendra
- Amazon Personalize
- Amazon Translate
Para las métricas empresariales, puede utilizar:
- Amazon Forecast
- Amazon Fraud Detector
- Amazon Lookout for Metrics
Y por último, para DevOps, tenemos:
- Amazon DevOps Guru
- Amazon CodeGuru Reviewer
- Amazon CodeGuru Profiler
- Amazon CodeWhisperer
Discutamos cada uno de estos servicios uno por uno.
Amazon SageMaker – La plataforma de ML de AWS
En primer lugar, hablemos de Amazon SageMaker. Piense en esto como una plataforma de aprendizaje automático completa en AWS con toneladas de servicios, características y componentes. Amazon SageMaker no es solo un simple servicio de ML, sino una plataforma en la nube totalmente administrada con muchos módulos que puede usar. Con esto, puede construir, entrenar e implementar modelos de ML para cualquier caso de uso con infraestructura, herramientas y flujos de trabajo totalmente administrados. SageMaker elimina las tareas manuales de cada paso del proceso de ML para facilitar el desarrollo de modelos de alta calidad. Esta plataforma tiene tantos módulos para elegir, a saber: Amazon SageMaker Canvas, SageMaker Studio Lab, SageMaker Data Wrangler, SageMaker Autopilot, SageMaker JumpStart, SageMaker Clarify y mucho más.
Ahora, discutamos los diferentes servicios de ML relacionados con la Visión por computadora:
Amazon Rekognition
Amazon Rekognition proporciona capacidades de visión por computadora predefinidas y personalizables para extraer información e ideas de sus imágenes y videos. Tal como su nombre indica, puede reconocer ciertos objetos, caras, textos, escenas, etiquetas y otros atributos de sus archivos multimedia o videos en tiempo real. Este servicio es perfecto para el reconocimiento facial, donde puede detectar la cara de una persona en particular o una celebridad conocida. También puede determinar si alguien está usando un equipo de protección personal como una máscara, un casco o guantes. Si carga una imagen de usted sosteniendo una guitarra mientras está sentado en su sofá, Amazon Rekognition puede detectar su rostro, su guitarra y el sofá donde se sienta. También tiene una función llamada Amazon Rekognition Custom Labels. Con esto, puede construir fácilmente un modelo de aprendizaje automático para clasificar componentes o productos personalizados a partir de sus datos.
Amazon Lookout for Vision
Amazon Lookout es una suite de servicios que está compuesta por Amazon Lookout for Equipment, Amazon Lookout for Metrics y Amazon Lookout for Vision. El último utiliza visión por computadora para detectar defectos en productos industriales a gran escala. Amazon Lookout for Vision se utiliza principalmente en fábricas y líneas de fabricación para identificar de manera rápida y precisa los defectos en cada producto. El conjunto de datos puede estar en forma de imágenes de productos almacenados en un bucket de Amazon S3. Puede proporcionar un par de imágenes de referencia a Amazon Lookout for Vision que contengan productos sin defectos, y este servicio podrá construir automáticamente un modelo para usted en unas pocas horas. A partir de ahí, puede detectar automáticamente anomalías en su producto, como abolladuras, grietas y rayones.
A continuación, hablemos de los servicios que puede utilizar para la extracción y análisis automatizado de datos basados en texto. Comencemos con el servicio Amazon Textract.
Amazon Textract
El nombre de este servicio es una combinación de las palabras «texto» y «extracción». Esto le dará una idea de que se utiliza para extraer texto de documentos escaneados, notas e imágenes. Amazon Textract es un servicio que utiliza reconocimiento óptico de caracteres para extraer automáticamente texto de archivos escaneados como PDF, documentos de Word, notas escritas a mano, recibos, pasaportes, identificaciones y muchos otros. Lo que hace que este servicio sea genial es su capacidad para generar los resultados en forma de tabla o archivo CSV. También tiene una función de consulta que le permite extraer un campo específico utilizando preguntas en lenguaje natural. Entonces, si carga su licencia de conducir en Amazon Textract, puede enviar una consulta como «¿Cuál es el primer nombre?» o «¿Cuál es la identificación del conductor?» y obtendrá el valor que solicitó. También puede cargar por lotes sus documentos en S3 y automatizar el proceso de análisis de texto.
Amazon Augmented AI
Amazon Augmented AI o A2I es un servicio que proporciona flujos de trabajo de revisión humana para casos de uso comunes de aprendizaje automático. Una revisión humana significa literalmente que una persona revisará una cierta salida que su modelo de aprendizaje automático generó antes de que pueda pasar al siguiente paso del flujo de trabajo. Este servicio aumenta su IA para garantizar la precisión de los resultados de predicción y ayuda a proporcionar mejoras continuas a su modelo de aprendizaje automático. Puede integrar directamente sus flujos de trabajo de Amazon Rekognition o Amazon Textract con Amazon Augmented AI. Por ejemplo, puede hacer una revisión humana de los pares clave-valor que extrae Amazon Textract o implementar la moderación de imágenes haciendo una revisión humana del contenido inseguro, como contenido explícitamente para adultos o violento de Amazon Rekognition. También es posible ejecutar una revisión humana con un flujo de trabajo de aprendizaje automático personalizado de su elección.
Amazon Comprehend
Amazon Comprehend es un servicio de procesamiento del lenguaje natural en AWS que puede encontrar información y relaciones en un texto. Realiza análisis de texto que puede extraer automáticamente frases clave, sentimientos, idiomas, sintaxis, temas e incluso información de identificación personal o PII de datos no estructurados. En esencia, Amazon Comprehend es un servicio que comprende o entiende la información escrita en sus documentos de texto. Esto es diferente de Amazon Textract, ya que Amazon Comprehend no puede leer texto de documentos escaneados. Necesita tener datos de texto sin procesar para poder usar Amazon Comprehend.
Avancemos a la sección de IA del lenguaje …
Amazon Lex
Amazon Lex es un servicio de aprendizaje automático que le permite desarrollar chatbots. Puede construir chatbots basados en voz o texto con Amazon Lex fácilmente. Esto es útil si su empresa necesita un bot de autoservicio o un agente virtual para su sistema interactivo de respuesta de voz (IVR), sitio web corporativo u otra aplicación orientada al cliente. Amazon Lex puede reducir significativamente los costos de las empresas en el mantenimiento de su centro de contacto.
Amazon Transcribe
Amazon Transcribe es simplemente un servicio de transcripción de voz a texto. La palabra transcribir significa hacer un registro escrito de un discurso, una llamada telefónica o cualquier lenguaje hablado, y esto es exactamente lo que hace Amazon Transcribe. También es útil en centros de contacto, ya que puede generar transcripciones de llamadas y proporcionar información sobre conversaciones para mejorar la experiencia del cliente y la productividad del agente. Amazon Transcribe también ofrece transcripción en tiempo real: puede hablar directamente con su punto final y este generará inmediatamente transcripciones de su discurso.
Amazon Polly
El otro servicio relacionado con Language AI se llama Amazon Polly. Básicamente, Amazon Polly es lo opuesto al servicio de Amazon Transcribe. ¡En lugar de convertir el habla en texto, convierte el texto en habla! Si ingresas un texto en Amazon Polly, generará un habla realista en diferentes voces que especifiques. Por ejemplo, escribiste: «Hermosas Islas Filipinas» en la consola de Amazon Polly. Puedes escuchar la frase: «Hermosas Islas Filipinas» en voz masculina, voz femenina, voz de niño o en cualquier voz que prefieras. También puedes personalizar la pronunciación de palabras y frases específicas cargando tus propios archivos léxicos. Un léxico es simplemente un vocabulario de un idioma específico, y esto se usa generalmente si tienes un texto no inglés que quieres convertir en habla.
Muy bien. Ahora estamos en la categoría de Mejora de la Experiencia del Cliente.
Amazon Kendra
Amazon Kendra es un servicio de búsqueda inteligente en AWS. No es solo un servicio de búsqueda típico que simplemente devuelve una coincidencia con su consulta desde una sola fuente de datos. Amazon Kendra puede buscar en múltiples fuentes de datos que pueden ser estructuradas o no estructuradas, y analizar inteligentemente el contenido antes de enviar un resultado. Este servicio admite el procesamiento del lenguaje natural, por lo que puede hacer preguntas usando un lenguaje que uses en tu vida cotidiana. Por ejemplo, puedes preguntarle a Amazon Kendra: «¿Quién es el fundador de la startup EdTech: Tutorials Dojo?» y buscará en todos los documentos en tu bucket S3, sistemas de archivos de Amazon FSx, bases de datos de Amazon RDS, repositorio de Github, Jira, Slack, Sharepoint y otras fuentes de datos para obtener la respuesta. Nuevamente, puede buscar información de una amplia gama de fuentes y no solo de una base de datos SQL tradicional, y utiliza el aprendizaje automático para proporcionar contexto a los resultados de tu búsqueda.
Amazon Personalize
Amazon Personalize es un servicio que proporciona recomendaciones personalizadas a tus clientes en función de su actividad y comportamiento pasados. Es como la función de recomendación en Amazon Prime o Netflix, donde se recomiendan automáticamente nuevas películas en función de tu historial de visualización. Si miraste muchas películas de ciencia ficción en su plataforma de transmisión en línea, automáticamente te recomendarán más programas de ciencia ficción en tu perfil. Esto definitivamente es una mejora de la experiencia del cliente ya que personalizar el contenido del usuario tiende a convertir más porque se alinea con lo que los clientes realmente hacen y compran.
Amazon Translate
Amazon Translate es un servicio de traducción en tiempo real en AWS. Funciona de manera muy similar a Google Translate, donde ingresas texto en un idioma y el servicio lo traduce a un idioma que elijas. También puedes crear tu propia terminología personalizada. Esto te permite personalizar la salida de Amazon Translate en función de un vocabulario específico de la empresa y del dominio. Por ejemplo, puedo configurar el acrónimo TD como «Tutorials Dojo» en inglés. El servicio de Amazon Translate puede aceptar entradas con mi vocabulario personalizado e incluirlo en la traducción. En este caso, puedo ingresar la frase en tagalo «Magandang Umaga TD» y Amazon Translate devolverá «Buenos días Tutorials Dojo» como resultado. La frase filipina «magandang umaga» significa «buenos días» en inglés, mientras que «TD» es el término personalizado para «Tutorials Dojo» que configuramos en Amazon Translate. También puedes habilitar la opción de Formalidad, que controla si la salida de la traducción utiliza un tono formal o no. La traducción también puede ocultar palabras o frases groseras, lo cual es una característica muy útil para aplicaciones dirigidas a clientes.
Ahora vamos a los servicios de ML relacionados con las métricas comerciales.
Amazon Forecast
Amazon Forecast es un servicio de aprendizaje automático en AWS que te ayuda a predecir un resultado futuro en función de tus registros históricos y otros datos relevantes. Puedes importar o transmitir tus datos de series de tiempo a Amazon Forecast, y puede predecir tus ventas, tráfico web, inventario, ingresos, capacidad de recursos en la nube e incluso el clima real en los próximos días o meses. ¡También puede predecir tu factura futura de AWS! También tiene una variedad de conjuntos de datos integrados, como el índice climático y los días festivos nacionales de varios países. Amazon Forecast utiliza un modelo de aprendizaje automático llamado Predictor. Este «Predictor» utiliza un algoritmo para consumir todos los datos de series de tiempo que proporcionas y generar una predicción a partir de ellos.
Amazon Fraud Detector
Amazon Fraud Detector es otro servicio de aprendizaje automático que puede automatizar la detección de fraude, como su nombre indica. Puede identificar posibles actividades fraudulentas, revisiones falsas y la creación de cuentas de spam en tiempo real. Por ejemplo, tu sitio web recibió recientemente un visitante cuya dirección IP tiene un historial de actividad maliciosa como spam, intentos de hacking y ataques DDoS. Los usuarios con exactamente la misma dirección IP están publicando spam en tu sitio web repetidamente. Para esta situación, puedes usar Amazon Fraud Detector para bloquear cualquier visitante que use una dirección IP ofensiva, un dominio de correo electrónico o cualquier otro atributo que definas.
Amazon Lookout for Metrics
Amazon Lookout for Metrics es uno de los servicios de la familia Amazon Lookout para detectar anomalías en las métricas comerciales. Una anomalía puede ser una caída repentina en tus ingresos de ventas o una disminución inesperada en tus tasas de adquisición de clientes. Puede identificar variaciones inusuales en tus métricas comerciales y alertarte de inmediato para que puedas tomar el curso de acción adecuado.
Ahora cubriremos los diferentes servicios de ML para DevOps y MLOps o Machine Learning Operations. Comenzaremos discutiendo el servicio de Amazon DevOps Guru:
Servicio Amazon DevOps Guru
Amazon DevOps Guru detecta comportamientos anormales en tu aplicación o recursos de AWS que puedan causar tiempos de inactividad inesperados o problemas operativos en un futuro cercano. Puede monitorear aplicaciones y recursos de AWS en tu propia cuenta o en todas las cuentas en tu organización de AWS. Utiliza el aprendizaje automático para identificar defectos operativos mucho antes de que te afecten a ti y a tus clientes. Amazon DevOps Guru puede analizar tus bases de datos RDS y determinar automáticamente una carga DB inusualmente alta que es más de tres o cinco veces su valor normal. También puede detectar problemas en tu stack sin servidor, como un número extremadamente alto de invocaciones en tu función Lambda que está más allá de la concurrencia actualmente provisionada o una capacidad de escritura sobreabastecida en tus tablas DynamoDB.
Amazon CodeGuru
Amazon CodeGuru es una suite de servicios de desarrollo en AWS. Contiene diferentes herramientas y características como Amazon CodeGuru Reviewer, Amazon CodeGuru Profiler, BugBust y muchos más. La función principal de Amazon CodeGuru Reviewer es proporcionar recomendaciones inteligentes para mejorar el rendimiento, la eficiencia y la calidad del código de tu aplicación. Puede escanear tu código y detectar una gran cantidad de defectos de código como un mal manejo de excepciones, una política CORS insegura, la travesía de ruta, credenciales codificadas en el código y muchos más. También puedes integrar esto con tu flujo de trabajo de CI/CD para que puedas ejecutar revisiones de código y recomendaciones para mejorar tu base de código. El otro módulo para este servicio se llama Amazon CodeGuru Profiler. Un perfilador es básicamente un componente que recopila tus datos de CPU y analiza los datos de rendimiento en tiempo de ejecución de tus aplicaciones en vivo. Esto es útil para identificar líneas de código costosas que utilizan ineficientemente la CPU, lo que causa cuellos de botella de CPU.
Amazon CodeWhisperer
Amazon CodeWhisperer es una herramienta de codificación que genera automáticamente código y funciones en tiempo real. Esta herramienta es similar a Github CoPilot, que es una extensión que generalmente se instala en tu IDE de Visual Studio. Las líneas de código se generan directamente desde tu editor de IDE en función de los comentarios que escribas. Por ejemplo, puedes simplemente escribir un comentario que describa una tarea específica en inglés simple como «Cargar un archivo en un bucket de Amazon S3 con cifrado en el lado del servidor». Amazon CodeWhisperer tomará tu comentario como entrada y generará una función completa en el lenguaje de programación que definas, que puede cargar un archivo en tu bucket S3 con el cifrado requerido y muchos más.
Conclusión y predicciones de ChatGPT-4
Hemos descubierto los diversos servicios de ML disponibles en AWS. Algunos de estos servicios de AWS son bastante únicos y tienen una ventaja competitiva sobre ChatGPT. Con una integración nativa con los recursos de AWS, estos servicios de ML se pueden habilitar fácilmente sin la molestia de crear un middleware entre ChatGPT y tus cargas de trabajo.
Por ejemplo, Amazon DevOps Guru detecta comportamientos anormales en tu aplicación o recursos de AWS monitoreando las aplicaciones y recursos de AWS en tu propia cuenta o en todas las cuentas en tu organización de AWS. Ese nivel de capacidad e integración es difícil de superar incluso por su última iteración de ChatGPT-4.
Sin embargo, si Amazon no continúa evolucionando y ofreciendo servicios de ML innovadores, es posible que ChatGPT de OpenAI y su colaboración con Microsoft Azure superen el poder de AWS en términos de sus ofertas de aprendizaje automático; considerando que una versión mucho más avanzada de esta herramienta (llamada ChatGPT-4) se avecina.