Global Azure 2021 Spain -Desarrollando un chatbot de WhatsApp serverless.pptxLuis Beltran
In this presentation for Global Azure Span, I talk about Azure Functions (serverless technology) and how to create a chatbot for WhatsApp using Language Understanding Intelligent Service from Azure
Global Azure 2021 Spain -Desarrollando un chatbot de WhatsApp serverless.pptxLuis Beltran
In this presentation for Global Azure Span, I talk about Azure Functions (serverless technology) and how to create a chatbot for WhatsApp using Language Understanding Intelligent Service from Azure
Cómo crear un ciclo completo de BD, AKS y Frontend en 60 minutos o le devolv...Luis Beltran
Slides for our talk at Azure Day: Integration of Azure SQL, Azure Video Indexer, ASP .NET Core, and Azure Kubernetes Service in a real-life software application
Tutorial: Busquedas inteligentes con Azure Cognitive SearchLuis Beltran
El enriquecimiento de Inteligencia Artificial es una capacidad de indexación de Azure Cognitive Search que habilita la extracción de información en imágenes, archivos y otras fuentes de datos no estructurados.
Las tareas de extracción y enriquecimiento se implementan a través de habilidades cognitivas, tales como el procesamiento del lenguaje natural y el procesamiento de imágenes con varias posibilidades: reconocimiento de entidades, detección de lenguaje, detección de sentimientos, OCR, detección de rostros, etc.
En este taller se describirá el servicio Azure Cognitive Search y se construirá un pipeline de enriquecimiento capaz de extraer información de documentos PDF con el cual se generará un sitio web o una app móvil para realizar búsquedas de información.
Inteligencia artificial in house con servicios cognitivos y dockerLuis Beltran
Los servicios cognitivos de Azure permiten a los desarrolladores crear poderosas soluciones informáticas basadas en Inteligencia Artificial, brindando capacidades como la visión de computadora o análisis de texto de una forma ágil y práctica, simplemente enviando los datos a un API disponible en la nube.
Sin embargo, existen escenarios donde el acceso a Internet es limitado, o donde el control sobre los datos es elevado por cuestiones de confidencialidad. Gracias al soporte de contenedores Docker, es posible construir aplicaciones con Inteligencia Artificial integrada donde los datos permanecen en sitio.
En esta sesión se describirá cómo integrar los Servicios Cognitivos de Azure en contenedores Docker y se mostrarán varios demos con esta funcionalidad incorporada.
Bringing AI to the Edge: On-premises Azure Cognitive Services with Docker con...Luis Beltran
Azure Cognitive Services allow developers to build powerful AI-based solutions, enabling different capabilities in our software: vision. speech, search, text analytics, language understanding, and much more. Basically, the model is already built by Microsoft, you just need to do an API call to the Azure cloud and the service retrieves a result. For instance, you send a message and the Text Analytics API returns its sentiment score.
However, there might be cases in which our customers need a local, non-cloud AI solution (either because of limited Internet access or data compliance). This is now possible thanks to the latest update of Azure Cognitive Services, which offers containerization support. Using containers, we can still deliver ML-driven solutions while keeping the data in-house.
In this talk, we'll explore what it takes to configure and use containers in Azure Cognitive Services. Demos will be showcased as well for local Face and Text Cognitive Services.
Docker para Dummies. Presentación sobre virtualización en Cloud Computing. Definición de Docker y otros componentes o proyectos relacionados (Kubernetes y Openshift).
Aprende desde cero a crear y a configurar tus propias infraestructuras de software utilizando contenedores. De forma sencilla y potente podrás crear plataformas personalizadas con las que podrás desplegar tus aplicaciones en la nube o en cualquier infraestructura donde tengas Docker.
Docker, una tecnología en creciente desarrollo y adopción, ha revolucionado con un nuevo paradigma la forma en la que se desarrollan y se despliegan las aplicaciones de software.
Esta tecnología ha facilitado el desarrollo de microservicios, al encapsular ambientes y aplicaciones, junto con la promesa de correr en cualquier lugar y sin importar la plataforma.
En este meetup nos concentraremos en comprender qué es docker y su medio ambiente de ejecución; pasaremos por contenedores, compose y plataformas para alta disponibilidad con docker swarm.
El Cloud computing nos permite ofrecer servicios a través de Internet de una forma rápida y sencilla. Ofrecemos Cloud Services, de forma auto-escalable y elástica que nos permite centrarnos en el negocio, ahorrar costes, facilita la innovación y aporta un time to market menor.
Cómo crear un ciclo completo de BD, AKS y Frontend en 60 minutos o le devolv...Luis Beltran
Slides for our talk at Azure Day: Integration of Azure SQL, Azure Video Indexer, ASP .NET Core, and Azure Kubernetes Service in a real-life software application
Tutorial: Busquedas inteligentes con Azure Cognitive SearchLuis Beltran
El enriquecimiento de Inteligencia Artificial es una capacidad de indexación de Azure Cognitive Search que habilita la extracción de información en imágenes, archivos y otras fuentes de datos no estructurados.
Las tareas de extracción y enriquecimiento se implementan a través de habilidades cognitivas, tales como el procesamiento del lenguaje natural y el procesamiento de imágenes con varias posibilidades: reconocimiento de entidades, detección de lenguaje, detección de sentimientos, OCR, detección de rostros, etc.
En este taller se describirá el servicio Azure Cognitive Search y se construirá un pipeline de enriquecimiento capaz de extraer información de documentos PDF con el cual se generará un sitio web o una app móvil para realizar búsquedas de información.
Inteligencia artificial in house con servicios cognitivos y dockerLuis Beltran
Los servicios cognitivos de Azure permiten a los desarrolladores crear poderosas soluciones informáticas basadas en Inteligencia Artificial, brindando capacidades como la visión de computadora o análisis de texto de una forma ágil y práctica, simplemente enviando los datos a un API disponible en la nube.
Sin embargo, existen escenarios donde el acceso a Internet es limitado, o donde el control sobre los datos es elevado por cuestiones de confidencialidad. Gracias al soporte de contenedores Docker, es posible construir aplicaciones con Inteligencia Artificial integrada donde los datos permanecen en sitio.
En esta sesión se describirá cómo integrar los Servicios Cognitivos de Azure en contenedores Docker y se mostrarán varios demos con esta funcionalidad incorporada.
Bringing AI to the Edge: On-premises Azure Cognitive Services with Docker con...Luis Beltran
Azure Cognitive Services allow developers to build powerful AI-based solutions, enabling different capabilities in our software: vision. speech, search, text analytics, language understanding, and much more. Basically, the model is already built by Microsoft, you just need to do an API call to the Azure cloud and the service retrieves a result. For instance, you send a message and the Text Analytics API returns its sentiment score.
However, there might be cases in which our customers need a local, non-cloud AI solution (either because of limited Internet access or data compliance). This is now possible thanks to the latest update of Azure Cognitive Services, which offers containerization support. Using containers, we can still deliver ML-driven solutions while keeping the data in-house.
In this talk, we'll explore what it takes to configure and use containers in Azure Cognitive Services. Demos will be showcased as well for local Face and Text Cognitive Services.
Docker para Dummies. Presentación sobre virtualización en Cloud Computing. Definición de Docker y otros componentes o proyectos relacionados (Kubernetes y Openshift).
Aprende desde cero a crear y a configurar tus propias infraestructuras de software utilizando contenedores. De forma sencilla y potente podrás crear plataformas personalizadas con las que podrás desplegar tus aplicaciones en la nube o en cualquier infraestructura donde tengas Docker.
Docker, una tecnología en creciente desarrollo y adopción, ha revolucionado con un nuevo paradigma la forma en la que se desarrollan y se despliegan las aplicaciones de software.
Esta tecnología ha facilitado el desarrollo de microservicios, al encapsular ambientes y aplicaciones, junto con la promesa de correr en cualquier lugar y sin importar la plataforma.
En este meetup nos concentraremos en comprender qué es docker y su medio ambiente de ejecución; pasaremos por contenedores, compose y plataformas para alta disponibilidad con docker swarm.
El Cloud computing nos permite ofrecer servicios a través de Internet de una forma rápida y sencilla. Ofrecemos Cloud Services, de forma auto-escalable y elástica que nos permite centrarnos en el negocio, ahorrar costes, facilita la innovación y aporta un time to market menor.
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...Francisco Javier Barrena
Kubernetes se utiliza a lo alto y largo del ciberespacio como solución para escalar y desplegar aplicaciones basadas en la nube. Es de hecho el estándar de facto, y está implementado tanto en la nube pública (Azure, AWS, Google Cloud Platform, etc.) como en la nube privada (Rancher, OpenShift, Portainer, etc.). Los equipos de desarrollo y operaciones se han dado cuenta de las ventajas que ofrece, ¿pero se han parado a pensar en las medidas de seguridad que se deben aplicar? En un contexto en el cual las empresas se ven cada día más atacadas, la seguridad del motor que ejecuta TODAS tus aplicaciones se ha vuelto un objetivo evidente para los malos, dado que si comprometes a Kubernetes, comprometes a todo lo que corre sobre él. En esta charla veremos los riesgos específicos a los que se enfrenta Kubernetes, y qué contramedidas podemos aplicar para que nuestros Pods sean más duros que una lluvia de hachas.
Docker: la revolución en virtualizaciónMarcelo Ochoa
Durante el último año la evolución de proyectos como LXC concluyo en el mundialmente reconocido proyecto Docker, un sistema de virtualización open source ultra delgado que permite optimizar por medio de la automatización vía scripts la provisión de ambientes para desarrollo, test y producción.
Entre las principales ventajas de este ambiente de virtualización podemos encontrar:
– Nativo en Linux, sin requerimientos de virtualización hardware, cero impacto en la performance
– Definición/Creación del entorno vía scripts
– Ultra liviano, se pueden correr hasta 2048 maquinas virtuales con un servidor Web en un simple micro-computador Raspberry PI
– Disponible en otras plataformas como Windows/Solaris
Real NET Docs Show - Serverless Machine Learning v3.pptxLuis Beltran
Slides of my presentation about Serverless Machine Learning using Azure Functions, Twilio APIs, and Cognitive Services for text and image processing of WhatsApp messages at .NET Docs Show weekly community event organized by Microsoft
Latam Space Week - Clasificación de rocas espaciales por medio de IA.pptxLuis Beltran
Slides of my presentation about Space rocks image classification using Machine Learning and Artificial Intelligence with Python at Latam Space Week event
HPE presenta una competició destinada a estudiants, que busca fomentar habilitats tecnològiques i promoure la innovació en un entorn STEAM (Ciència, Tecnologia, Enginyeria, Arts i Matemàtiques). A través de diverses fases, els equips han de resoldre reptes mensuals basats en àrees com algorísmica, desenvolupament de programari, infraestructures tecnològiques, intel·ligència artificial i altres tecnologies. Els millors equips tenen l'oportunitat de desenvolupar un projecte més gran en una fase presencial final, on han de crear una solució concreta per a un conflicte real relacionat amb la sostenibilitat. Aquesta competició promou la inclusió, la sostenibilitat i l'accessibilitat tecnològica, alineant-se amb els Objectius de Desenvolupament Sostenible de l'ONU.
2. Luis Beltrán
• Investigador en Tomas Bata
University in Zlín, República
Checa.
• Docente en Tecnológico Nacional
de México en Celaya, Mexico.
• Xamarin, Azure e Inteligencia
Artificial
@darkicebea
m
luis@luisbeltran.mx
luisbeltran.mx
4. Clasificación de Imágenes
• Es la identificación del contenido
visual en una imagen.
• Tema de interés en el área de
Visión de Computadora.
• Una tarea trivial para los seres
humanos… todo un reto para las
aplicaciones informáticas
7. Servicios Cognitivos de Azure
Percepción Comprensión
Visión Voz Lenguaje Decisión
Computer Vision
Face API
Custom Vision
Text-to-Speech
Speech-to-Text
Speech Translator
Speaker Recognition
Language Understanding
Text Translator
Text Analytics
QnA Maker
Anomaly Detector
Content Moderator
Personalizer
microsoft.com/cognitive
13. Face
Un servicio de IA que analiza rostros en imágenes
Detección de rostros
• Detecta rostros humanos en una imagen
y sus atributos: edad, emoción, género,
pose, sonrisa y vello facial, además de 27
puntos de referencia (face landmarks).
Reconocimiento de rostros
• Verifica la probabilidad de que dos caras
pertenezcan a la misma persona; también
muestra el puntaje de confianza.
• Devuelve una lista de rostros similares a
una cara.
• Agrupa rostros en base a su similitud.
• Identifica una persona a partir de su
rostro.
14.
15. Una variedad de aplicaciones
Vision Speech Language
Natural Language Processing
Intent: PlayCall
Knowledge
Here are the top results:
The purpose of Customer Life-cycle Management (CLM)
is to maximize both customer retention and .... Predictive
trend analysis provides business visibility.
Oct 28, 2015 – Here are FIVE key trends in 2014 that
would help marketers in rolling ... Of late, marketers are
looking at customer lifecycle management (CLM)
Jan 5, 2016 – The top 10 customer service trends for
2016 that .... North American Consumer
Search
Here is what I found:
It also investigates the top three expected
Fraud Detection and Prevention programs, in
terms of demand in key markets…
First, let’s point out that there is not one
absolute answer—there are “pros” and “cons” to
each. Those who favor in-house…
Michael heads fraud prevention tool. Online
and mobile shopping are expected to continue
growing apace…
17. En la mayoría de las empresas, el desarrollo, despliegue y entrega de
software es un proceso con varios pasos bien diferenciados:
18. La computadora donde los usuarios finales
acceden a la aplicación requiere tener
instaladas ciertas dependencias para su
correcta ejecución, por ejemplo:
• Cierta versión de Java o .NET Framework instalada
• Un servidor de aplicaciones (Apache Server, IIS)
• Versiones específicas de librerías o ensamblados
(.dll) instalados
• Inclusive, un sistema operativo específico.
19. Una solución al problema anterior es la
virtualización:
• El cliente cuenta con un equipo host, que
consta de su propio hardware y un sistema
operativo instalado.
• Al host se le instala un hypervisor, donde se
crea una imagen de máquina virtual, a la cual
se le asignan:
• recursos virtuales (descontados de los recursos del
host)
• un sistema operativo determinado
• Finalmente, se comienza a instalar y configurar
el entorno virtual para que la aplicación
objetivo pueda existir dentro de la imagen y
cumplir su función.
20. El “problema” con la virtualización es que puede derivar
en una gran cantidad de recursos desperdiciados.
Por ejemplo, una empresa que requiere levantar:
• 10 máquinas virtuales,
• cada una con 4 GB de RAM,
• 10 GB de espacio en disco duro para levantar un
servidor Linux
• y 2 núcleos de procesador…
Necesitaría un total de 40 GB de memoria, 100 GB de
disco y 20 cores que debería obtener del host.
Son muchos recursos desperdiciados de forma
innecesaria.
21. La alternativa son los contenedores: entornos ligeros en
tiempo de ejecución que proporcionan a las aplicaciones los
recursos necesarios (archivos, bibliotecas, …) para ser
ejecutadas, maximizando su portabilidad.
A diferencia de las máquinas virtuales, los contenedores
utilizan el sistema operativo del host en vez de proporcionar
uno propio, siendo rápidos y fáciles de instalar. Esta
eficiencia permite que se implementen en clústeres, con
contenedores individuales que encapsulan componentes
únicos de aplicaciones complejas.
En resumen, los contenedores son un enfoque de
distribución de software en el que una aplicación o servicio
se empaqueta como una imagen junto con sus
dependencias y configuración.
22. Docker es la tecnología por excelencia en
cuanto a contenedores se refiere. Docker es
una herramienta para iniciar, detener y
gestionar contenedores mediante
comandos. Es una tecnología open-source
cuyo engine (motor) aprovecha el Sistema
Operativo sobre el cual se ejecuta a fin de
que todas las virtualizaciones de
contenedores compartan el Kernel del Host.
Docker permite crear entornos de ejecución
aislados e independientes para lanzamiento
y despliegue de aplicaciones.
¡Con Docker, se eliminan los problemas de
dependencia o compilación!
23. ¿Por qué usar Docker como desarrollador?
• Docker es rápido.
• Docker es multiplataforma.
• Los contenedores se pueden construir y
destruir más rápido que una máquina
virtual.
• No más dificultades para configurar un
entorno de trabajo. Es portable
• Mantiene su espacio de trabajo limpio,
pues cada entorno estará aislado.
• Será más fácil implementar su proyecto
en su servidor para ponerlo en línea.
24. Docker Hub es un repositorio donde los usuarios de Docker pueden
compartir las imágenes (contenedores) que han creado con otros
usuarios. La descarga desde el Docker Hub se realiza mediante
comandos y se ejecuta en el propio sistema.
28. Consideraciones al implementar Servicios
Cognitivos en una solución informática
• ¿Qué sucede si no puede cargar una
imagen o texto a la nube debido a
limitaciones en ancho de banda o el
acceso a Internet?
• ¿Qué procede si el envío de datos fuera de
la red de la empresa está sujeto a políticas
regulatorias, de confidencialidad o de
privacidad?
Si pudiera analizar los datos en un contexto
local, seguramente la aplicación podría
beneficiarse de una menor latencia y ancho
de banda…
29.
30. ¡Ahora, varias de las API de Azure Cognitive Services
están disponibles como contenedores Docker!
• Puedes descargar y ejecutar un contenedor que
proporciona la misma funcionalidad que los servicios
basados en la nube.
• Los datos se procesan directamente en el contenedor,
nunca se envían a la nube.
• Se requiere una conexión a Azure solo para la
facturación (sólo en el servidor) al mismo costo (incluye
free tier).
• El soporte de contenedores en Azure Cognitive Services
permite a los desarrolladores implementar soluciones
de IA y brinda flexibilidad hacia dónde implementar y
hospedar los servicios que vienen con los contenedores
Docker.
31. Características y beneficios
• Infraestructura inmutable
• Control sobre los datos
• Control sobre las actualizaciones de los modelos
• Arquitectura portable
• Alto rendimiento y baja latencia
• Escalabilidad
32. ¿Qué servicios están disponibles como
contenedores?
Actualmente hay un subconjunto de Servicios Cognitivos de Azure disponibles como
contenedores Docker (otros estuvieron disponibles en su momento):
• Anomaly Detector
• Language Understanding (LUIS)
• Text Analytics
• Translator
• Computer Vision
• Speech Service
• Computer Vision
• Face (ya no disponible)
• Spatial Analysis
33.
34.
35.
36.
37. Requerimientos
• Docker Engine: Docker proporciona paquetes que configuran el entorno
Docker en macOS, Linux y Windows.
En Windows, Docker debe estar configurado para admitir contenedores de
Linux. Los contenedores Docker también pueden implementarse de forma
directa en Azure Kubernetes o en las instancias de Azure Container.
• Recurso de Servicio Cognitivo creado en Azure: Docker debe estar
configurado para permitir a los contenedores establecer una conexión con
Azure y enviar datos de facturación.
40. • Descargar la imagen del contenedor del Servicio Cognitivo respectivo
desde el Microsoft Container Registry.
Contenedor Repositorio
Anomaly Detector mcr.microsoft.com/azure-cognitive-services/decision/anomaly-detector:latest
Computer Vision mcr.microsoft.com/azure-cognitive-services/vision/read:3.2
Text Translation mcr.microsoft.com/azure-cognitive-services/translator/text-translation
LUIS mcr.microsoft.com/azure-cognitive-services/language/luis:latest
Speech-to-text mcr.microsoft.com/azure-cognitive-services/speechservices/speech-to-text:latest
Custom Speech-to-text mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text:latest
Text-to-speech mcr.microsoft.com/azure-cognitive-services/speechservices/text-to-speech:latest
Key Phrase Extraction mcr.microsoft.com/azure-cognitive-services/textanalytics/keyphrase:latest
Language Detection mcr.microsoft.com/azure-cognitive-services/textanalytics/language:latest
Sentiment Analysis mcr.microsoft.com/azure-cognitive-services/textanalytics/sentiment:3.0-en
Text Analytics for Health mcr.microsoft.com/azure-cognitive-services/textanalytics/healthcare:latest
Neural Text-to-speech mcr.microsoft.com/azure-cognitive-services/speechservices/neural-text-to-speech:latest
Speech Language identification mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest
54. ¡Muchas gracias por tu atención!
Luis Beltrán
Tomás Bata University in Zlín
Tecnológico Nacional de México en Celaya
luis@luisbeltran.mx luisbeltran.mx @darkicebeam
/icebeam /darkicebeam /luisantoniobeltran
/icebeam7 about.me/luis-beltran
Notas del editor
You prepare your data, for example in this case you see some text in Spanish. You include it in your HTTP request along with an key to authorize the request. Then, you send it to an endpoint and you'll get a response as a JSON string that you can process in your application to extract the results and present it to your users.
Funciona con keys y endpoint xDFIN JAJJAJA
Finally, use this information in your code. Of course, this depends on the technology, programming language and cognitive service. In this example you see a node js application; we add the azure/ai-text-analytics library; then in our code we can create a TextAnalyticsClient that uses the endpoint and keys for authentication of each operation. After that, we can call the specific methods such as analyze sentiment or detect language, which take an array of strings, then send a request to the Azure endpoint and we get the result so we can use it in the application. For this artificial intelligence part, only few lines of code are needed! Now Carlita will demonstrate a powerful scenario of Cognitive Services that involve several technologies.
¿Por qué usar Docker como desarrollador?
Docker es rápido. Una aplicación puede iniciarse en unos segundos y detenerse con la misma rapidez.
Docker es multiplataforma: cualquier sistema operativo.
Los contenedores se pueden construir y destruir más rápido que una máquina virtual.
No más dificultades para configurar un entorno de trabajo. Una vez que el contenedor está configurado, no hay que reinstalar dependencias de forma manual. Es portable: Si cambias de equipo, solo llévate la configuración.
Mantiene su espacio de trabajo limpio, pues cada entornos estará aislado y puede eliminarlos en cualquier momento sin afectar el resto.
Será más fácil implementar su proyecto en su servidor para ponerlo en línea.
Immutable infrastructure: Enable DevOps teams' to leverage a consistent and reliable set of known system parameters, while being able to adapt to change. Containers provide the flexibility to pivot within a predictable ecosystem and avoid configuration drift.
Control over data: Allow customers to choose where these Cognitive Services process their data. This is essential for customers that cannot send data to the cloud but need access to Cognitive Services technology. Support consistency in hybrid environments – across data, management, identity, and security.
Control over model updates: Provide customers flexibility in versioning and updating of models deployed in their solutions.
Portable architecture: Enable the creation of a portable application architecture that can be deployed on Azure, on-premises and the edge. Containers can be deployed directly to Azure Kubernetes Service, Azure Container Instances, or to a Kubernetes cluster deployed to Azure Stack. For more information, see Deploy Kubernetes to Azure Stack.
High throughput / low latency: Provide customers the ability to scale for high throughput and low latency requirements by enabling Cognitive Services to run physically close to their application logic and data. Containers do not cap transactions per second (TPS) and can be made to scale both up and out to handle demand if you provide the necessary hardware resources.
Scalability: With the ever growing popularity of containerization and container orchestration software, such as Kubernetes; scalability is at the forefront of technological advancements. Building on a scalable cluster foundation, application development caters to high availability.