SlideShare a Scribd company logo
1 of 30
TOPIC
Intelligenza
Artificiale nel
mondo front-end
Michele Aponte
CTO @ Ellycode / CEO @ Blexin
Founder @ Blazor Developer Italiani
MVP Development Technologies
@cloudgen_verona
#CodeGen2021
3
Codice
Algoritmo
Dati
Risultato
Intelligenza Artificiale spiegata a mia nonna
4
Machine
Learning
Risultati
Dati
Modello
Intelligenza Artificiale spiegata a mia nonna
5
Machine
Learning
Risultati
Dati
Modello
Codice
Nuovi Dati
Predizione
Intelligenza Artificiale spiegata a mia nonna
dog
bicycle
apple
tennis ball
Intelligenza Artificiale spiegata a mia nonna
0
2
dog
bicycle
apple
tennis ball
0.02
0.93
0.27
0.21
Intelligenza Artificiale spiegata a mia nonna
8
Da dove comincio?
Azure Cognitive Services
Search
Language
Vision Decision
Speech
Bing Autosuggest
Bing Web Search
Bing Entity Search
Bing Video Search
Bing Visual Search
Bing Custom Search
Bing News Search
Bing Image Search
Content Decision
Anomaly Detector
Personalizer
Language Understanding
(LUIS)
Text Analytics
Bing Spell Check
Translator Text
QnA Maker
Speaker Recognition
Speech Services
Computer Vision
Face
Video Indexer
Custom Vision
Form Recognizer
Ink Recognizer
Speech Services
• Speech-to-Text: convertire audio
in testo
• Text-to-Speech: convertire testo
in audio
• Speaker Recognition: riconoscere
chi sta parlando
• Speech Translation: tradurre in
real-time il parlato
Personalizzazione dei Speech Services
• Acoustic Model: creare un modello per
migliorare il riconoscimento sulla base
dello stile di linguaggio degli utenti
• Language Model: aggiungere espressioni
linguistiche specifiche al proprio modello
• Pronunciation Model: creare un modello
personalizzato per la pronuncia (acronimi,
nomi di prodotto, ecc.)
• Voice font: creare una voce personalizzata
•75+ voci e 45+ lingue
•Voce maschile e femminile
• Standard vs Neural
• velocità, volume,
pronuncia, pause (SSML)
•Creare una voce Custom
Sintesi vocale
Come posso implementarla?
•REST API
•SDK Client Library
•WebSocket
•Speech Device SDK
DEMO
Parliamo con la
nostra applicazione
Natural Language Processing (NLP)
Data una frase possiamo ottenere:
• Named Entity Recognition (NER)
• Syntax Analysis
• Part of Speech tagging
• Sentiment Analysis
Natural Language Processing (NLP)
Data una frase possiamo ottenere:
• Named Entity Recognition (NER)
• Syntax Analysis
• Part of Speech tagging
• Sentiment Analysis
DEMO
Analizziamo la
richiesta dell’utente
Language Understanding Intelligent Service (LUIS)
Language Understanding Intelligent
Service (LUIS):
• Permette di comprendere il linguaggio
naturale
• Raccogliere richieste dell’utente
• Intrattenere una conversazione con
l’applicazione
• Active Learning per migliorare la
propria comprensione
Gli intenti dell’utente
Data una frase in linguaggio naturale
permette di capirne l’intento:
• Azione da intraprendere
• Default (None) e Custom
• Prebuilt Intents:
• Calendario e Comunicazioni
• Email e Note
• Home Automation e Prenotazioni
• … tanti altri!
Entità
Insieme all’intento è possibile estrapolare anche entità, Prenota un
volo per Londra:
• Intent: Prenota un volo
• Entity: Londra
• Possono essere di vari tipi
• Simple
• Composite: Prenota un volo da Napoli a Londra
• List: Prenota un volo per Londra/Heathrow/LHR
• Pattern.Any Posso prenotare un Boeing 747? {TypeOfPlane}[?]
• RegEx: Prenota il volo AZ1274 (AZ[0-9]{4})
• Prebuilt: Number, Temperature, Phone, Url, Date, ecc.
Utterances
Sono espressioni che permettono a LUIS di
comprendere la richiesta dell’utente,
collegando intenti e entità:
- Prenotazione:
- Voglio bloccare un posto sul AZ1274
- Segnalazione bug:
- Non funziona niente!!!
- Si è rotto tutto!
DEMO
Analizziamo gli
intenti dell’utente
Ma come creiamo una vera e propria conversazione?
Un BOT è un moderna tipologia di interazione
uomo-macchina:
- Usate per attività semplici e ripetitive
- Permettono di automatizzare parte dei
processi applicativi
- Possono rispondere a singole domande o
instaurare veri e propri dialoghi
- Integrabili in servizi di chat (Facebook,
Linkedin, Slack, Teams, ecc.)
Ma come creiamo una vera e propria conversazione?
Cosa mi serve per iniziare?
- I template per il BOT Framework:
https://github.com/microsoft/BotBuilder-
Samples/tree/master/generators/dotnet-templates
- Bot Framework Emulator:
https://github.com/microsoft/BotFramework-
Emulator
- Bot Framework Tools:
https://github.com/Microsoft/BotBuilder-Tools
Abbiamo gli strumenti per migliorare la UX delle
nostre applicazioni: usiamoli!
Qualche considerazione finale
Con la pre-built AI, possiamo coprire l’80% delle necessità per
le nostre applicazioni, per il resto abbiamo il Machine Learning
Non devi essere un data scientist per usare la pre-built AI, ma
non c’è niente di magico: è fondamentale sapere come funziona.
Molti servizi sono gratis per lo sviluppo
* Rate limitato, numero max transazioni per mese
Quanto costa?
In produzione dipende: tipicamente per transazione /
immagine / lunghezza testo / lunghezza audio
I prezzi variano in base al servizio e alla Region:
aka.ms/cs-pricing
I dati vengono caricati sui server Azure per l’analisi,
poi immediatamente scartati
Qualche considerazione sui dati
Dettagli: aka.ms/az-compliance
E’ possible utilizzare i container
Se vi interessano questi argomenti…
https://www.ellycode.com
https://bit.ly/3b0sqEr
Thank you
Any questions?
apomic80 apomic80 apomic80

More Related Content

What's hot

Mob01 mobile services e webapi
Mob01   mobile services e webapiMob01   mobile services e webapi
Mob01 mobile services e webapi
DotNetCampus
 
Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP Way
Luca Milan
 
Dot netcampus2015 green-template
Dot netcampus2015 green-templateDot netcampus2015 green-template
Dot netcampus2015 green-template
DotNetCampus
 
Architetttura Della Soluzione
Architetttura Della SoluzioneArchitetttura Della Soluzione
Architetttura Della Soluzione
Luca Milan
 
Javascript task automation
Javascript task automationJavascript task automation
Javascript task automation
DotNetCampus
 

What's hot (20)

Mob01 mobile services e webapi
Mob01   mobile services e webapiMob01   mobile services e webapi
Mob01 mobile services e webapi
 
Introduzione a Service Fabric e Actor Model
Introduzione a Service Fabric e Actor ModelIntroduzione a Service Fabric e Actor Model
Introduzione a Service Fabric e Actor Model
 
Actions on Google e Alexa skills per .NET lovers
Actions on Google e Alexa skills per .NET loversActions on Google e Alexa skills per .NET lovers
Actions on Google e Alexa skills per .NET lovers
 
Meetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure FunctionsMeetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure Functions
 
Async: scalabilità e responsiveness senza pari! @ CDays
Async: scalabilità e responsiveness senza pari! @ CDaysAsync: scalabilità e responsiveness senza pari! @ CDays
Async: scalabilità e responsiveness senza pari! @ CDays
 
Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP Way
 
Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...
Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...
Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...
 
Akka.net & Actor Model
Akka.net & Actor ModelAkka.net & Actor Model
Akka.net & Actor Model
 
Microsoft Fast - Overview
Microsoft Fast - OverviewMicrosoft Fast - Overview
Microsoft Fast - Overview
 
Wasm and Blazor CDays keynote
Wasm and Blazor CDays keynoteWasm and Blazor CDays keynote
Wasm and Blazor CDays keynote
 
Christmas greetings cards with blazor
Christmas greetings cards with blazorChristmas greetings cards with blazor
Christmas greetings cards with blazor
 
2015.04.23 Azure Community Bootcamp 2015 Keynote Italy
2015.04.23 Azure Community Bootcamp 2015 Keynote Italy2015.04.23 Azure Community Bootcamp 2015 Keynote Italy
2015.04.23 Azure Community Bootcamp 2015 Keynote Italy
 
UI Composition - Prism
UI Composition - PrismUI Composition - Prism
UI Composition - Prism
 
Managed Extensibility Framework (MEF)
Managed Extensibility Framework (MEF)Managed Extensibility Framework (MEF)
Managed Extensibility Framework (MEF)
 
Wcf data services
Wcf data servicesWcf data services
Wcf data services
 
Dot netcampus2015 green-template
Dot netcampus2015 green-templateDot netcampus2015 green-template
Dot netcampus2015 green-template
 
jQuery
jQueryjQuery
jQuery
 
Architetttura Della Soluzione
Architetttura Della SoluzioneArchitetttura Della Soluzione
Architetttura Della Soluzione
 
AntiPatterns: i vizi del programmatore
AntiPatterns: i vizi del programmatoreAntiPatterns: i vizi del programmatore
AntiPatterns: i vizi del programmatore
 
Javascript task automation
Javascript task automationJavascript task automation
Javascript task automation
 

Similar to Intelligenza artificiale nel mondo front-end - CodeGen2021

Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
DotNetMarche
 

Similar to Intelligenza artificiale nel mondo front-end - CodeGen2021 (20)

Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
 
Making Chatbots
Making ChatbotsMaking Chatbots
Making Chatbots
 
Diego Viganò - Milano Chatbots Meetup - Codemotion Milan 2017
Diego Viganò - Milano Chatbots Meetup - Codemotion Milan 2017Diego Viganò - Milano Chatbots Meetup - Codemotion Milan 2017
Diego Viganò - Milano Chatbots Meetup - Codemotion Milan 2017
 
Diego Viganò - Milano Chatbots Meetup - Codemotion Milan 2017
Diego Viganò  - Milano Chatbots Meetup - Codemotion Milan 2017Diego Viganò  - Milano Chatbots Meetup - Codemotion Milan 2017
Diego Viganò - Milano Chatbots Meetup - Codemotion Milan 2017
 
Cognitive Services & LUIS
Cognitive Services & LUISCognitive Services & LUIS
Cognitive Services & LUIS
 
Dialoghi con una IA
Dialoghi con una IADialoghi con una IA
Dialoghi con una IA
 
LUIS e Bot SDK
LUIS e Bot SDKLUIS e Bot SDK
LUIS e Bot SDK
 
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016 Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
Milano Chatbots Meetup - Vittorio Banfi - Bot Design - Codemotion Milan 2016
 
SEO con Lungimiranza - VI Convegno GT 2011
SEO con Lungimiranza - VI Convegno GT 2011SEO con Lungimiranza - VI Convegno GT 2011
SEO con Lungimiranza - VI Convegno GT 2011
 
Celi @TOSM Pitch Day Smart Enterprise
Celi @TOSM Pitch Day Smart EnterpriseCeli @TOSM Pitch Day Smart Enterprise
Celi @TOSM Pitch Day Smart Enterprise
 
intelligenza artificiale applicata alla industria.pptx
intelligenza artificiale applicata alla industria.pptxintelligenza artificiale applicata alla industria.pptx
intelligenza artificiale applicata alla industria.pptx
 
Intelligenza Artificiale: I trend nelle applicazioni di business - Una serie ...
Intelligenza Artificiale: I trend nelle applicazioni di business - Una serie ...Intelligenza Artificiale: I trend nelle applicazioni di business - Una serie ...
Intelligenza Artificiale: I trend nelle applicazioni di business - Una serie ...
 
Presentazione HR Tech: Chabot for HR
Presentazione HR Tech: Chabot for HRPresentazione HR Tech: Chabot for HR
Presentazione HR Tech: Chabot for HR
 
Creare App per Office 365 con ASP.NET MVC 5
Creare App per Office 365 con ASP.NET MVC 5Creare App per Office 365 con ASP.NET MVC 5
Creare App per Office 365 con ASP.NET MVC 5
 
Da A a Bot con un pizzico di Cognitive
Da A a Bot con un pizzico di CognitiveDa A a Bot con un pizzico di Cognitive
Da A a Bot con un pizzico di Cognitive
 
Introduzione html prima parte
Introduzione html prima parteIntroduzione html prima parte
Introduzione html prima parte
 
La lista completa degli strumenti gratuiti seo
La lista completa degli strumenti gratuiti seoLa lista completa degli strumenti gratuiti seo
La lista completa degli strumenti gratuiti seo
 
Silverlight in Action
Silverlight in ActionSilverlight in Action
Silverlight in Action
 
Cosa è un servizio digitale?
Cosa è un servizio digitale?Cosa è un servizio digitale?
Cosa è un servizio digitale?
 
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
Real-time discovery e sentiment analysis su Twitter: BlogmeterNow - Vittorio ...
 

More from Michele Aponte

More from Michele Aponte (20)

Frontend Development with Blazor
Frontend Development with BlazorFrontend Development with Blazor
Frontend Development with Blazor
 
Generazione dinamica della UI con Blazor WebAssembly
Generazione dinamica della UI con Blazor WebAssemblyGenerazione dinamica della UI con Blazor WebAssembly
Generazione dinamica della UI con Blazor WebAssembly
 
La rivoluzione blazor
La rivoluzione blazorLa rivoluzione blazor
La rivoluzione blazor
 
Blazor Focus Week Bari
Blazor Focus Week BariBlazor Focus Week Bari
Blazor Focus Week Bari
 
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseemblyDevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseembly
 
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseemblyDevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseembly
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseembly
 
Cognitive services in Business applications
Cognitive services in Business applicationsCognitive services in Business applications
Cognitive services in Business applications
 
Angular in produzione: Best Practices e Performance Improvements
Angular in produzione:Best Practices e Performance ImprovementsAngular in produzione:Best Practices e Performance Improvements
Angular in produzione: Best Practices e Performance Improvements
 
Da Silverlight a angular senza toccare il backend: fatto!
 Da Silverlight a angular senza toccare il backend: fatto! Da Silverlight a angular senza toccare il backend: fatto!
Da Silverlight a angular senza toccare il backend: fatto!
 
Angular and beyond
Angular and beyondAngular and beyond
Angular and beyond
 
Realizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e AngularRealizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e Angular
 
Angular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul frameworkAngular e asp.net core: un framework sul framework
Angular e asp.net core: un framework sul framework
 
Realizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e AngularRealizzare applicazioni desktop con Electron e Angular
Realizzare applicazioni desktop con Electron e Angular
 
Sviluppo web con asp.net core 2
Sviluppo web con asp.net core 2Sviluppo web con asp.net core 2
Sviluppo web con asp.net core 2
 
Un framework sul framework: generare una SPA dinamicamente in Angular
Un framework sul framework: generare una SPA dinamicamente in AngularUn framework sul framework: generare una SPA dinamicamente in Angular
Un framework sul framework: generare una SPA dinamicamente in Angular
 
Angular vsr React
Angular vsr ReactAngular vsr React
Angular vsr React
 
Angular 2 on stage
Angular 2 on stageAngular 2 on stage
Angular 2 on stage
 
Realizzare Single Page Application con Angular2
Realizzare Single Page Application con Angular2Realizzare Single Page Application con Angular2
Realizzare Single Page Application con Angular2
 
Single Page Application con Angular 2
Single Page Application con Angular 2Single Page Application con Angular 2
Single Page Application con Angular 2
 
Angular2 on stage
Angular2 on stageAngular2 on stage
Angular2 on stage
 

Intelligenza artificiale nel mondo front-end - CodeGen2021

  • 1. TOPIC Intelligenza Artificiale nel mondo front-end Michele Aponte CTO @ Ellycode / CEO @ Blexin Founder @ Blazor Developer Italiani MVP Development Technologies
  • 9. Azure Cognitive Services Search Language Vision Decision Speech Bing Autosuggest Bing Web Search Bing Entity Search Bing Video Search Bing Visual Search Bing Custom Search Bing News Search Bing Image Search Content Decision Anomaly Detector Personalizer Language Understanding (LUIS) Text Analytics Bing Spell Check Translator Text QnA Maker Speaker Recognition Speech Services Computer Vision Face Video Indexer Custom Vision Form Recognizer Ink Recognizer
  • 10. Speech Services • Speech-to-Text: convertire audio in testo • Text-to-Speech: convertire testo in audio • Speaker Recognition: riconoscere chi sta parlando • Speech Translation: tradurre in real-time il parlato
  • 11. Personalizzazione dei Speech Services • Acoustic Model: creare un modello per migliorare il riconoscimento sulla base dello stile di linguaggio degli utenti • Language Model: aggiungere espressioni linguistiche specifiche al proprio modello • Pronunciation Model: creare un modello personalizzato per la pronuncia (acronimi, nomi di prodotto, ecc.) • Voice font: creare una voce personalizzata
  • 12. •75+ voci e 45+ lingue •Voce maschile e femminile • Standard vs Neural • velocità, volume, pronuncia, pause (SSML) •Creare una voce Custom Sintesi vocale
  • 13. Come posso implementarla? •REST API •SDK Client Library •WebSocket •Speech Device SDK
  • 15. Natural Language Processing (NLP) Data una frase possiamo ottenere: • Named Entity Recognition (NER) • Syntax Analysis • Part of Speech tagging • Sentiment Analysis
  • 16. Natural Language Processing (NLP) Data una frase possiamo ottenere: • Named Entity Recognition (NER) • Syntax Analysis • Part of Speech tagging • Sentiment Analysis
  • 18. Language Understanding Intelligent Service (LUIS) Language Understanding Intelligent Service (LUIS): • Permette di comprendere il linguaggio naturale • Raccogliere richieste dell’utente • Intrattenere una conversazione con l’applicazione • Active Learning per migliorare la propria comprensione
  • 19. Gli intenti dell’utente Data una frase in linguaggio naturale permette di capirne l’intento: • Azione da intraprendere • Default (None) e Custom • Prebuilt Intents: • Calendario e Comunicazioni • Email e Note • Home Automation e Prenotazioni • … tanti altri!
  • 20. Entità Insieme all’intento è possibile estrapolare anche entità, Prenota un volo per Londra: • Intent: Prenota un volo • Entity: Londra • Possono essere di vari tipi • Simple • Composite: Prenota un volo da Napoli a Londra • List: Prenota un volo per Londra/Heathrow/LHR • Pattern.Any Posso prenotare un Boeing 747? {TypeOfPlane}[?] • RegEx: Prenota il volo AZ1274 (AZ[0-9]{4}) • Prebuilt: Number, Temperature, Phone, Url, Date, ecc.
  • 21. Utterances Sono espressioni che permettono a LUIS di comprendere la richiesta dell’utente, collegando intenti e entità: - Prenotazione: - Voglio bloccare un posto sul AZ1274 - Segnalazione bug: - Non funziona niente!!! - Si è rotto tutto!
  • 23. Ma come creiamo una vera e propria conversazione? Un BOT è un moderna tipologia di interazione uomo-macchina: - Usate per attività semplici e ripetitive - Permettono di automatizzare parte dei processi applicativi - Possono rispondere a singole domande o instaurare veri e propri dialoghi - Integrabili in servizi di chat (Facebook, Linkedin, Slack, Teams, ecc.)
  • 24. Ma come creiamo una vera e propria conversazione?
  • 25. Cosa mi serve per iniziare? - I template per il BOT Framework: https://github.com/microsoft/BotBuilder- Samples/tree/master/generators/dotnet-templates - Bot Framework Emulator: https://github.com/microsoft/BotFramework- Emulator - Bot Framework Tools: https://github.com/Microsoft/BotBuilder-Tools
  • 26. Abbiamo gli strumenti per migliorare la UX delle nostre applicazioni: usiamoli! Qualche considerazione finale Con la pre-built AI, possiamo coprire l’80% delle necessità per le nostre applicazioni, per il resto abbiamo il Machine Learning Non devi essere un data scientist per usare la pre-built AI, ma non c’è niente di magico: è fondamentale sapere come funziona.
  • 27. Molti servizi sono gratis per lo sviluppo * Rate limitato, numero max transazioni per mese Quanto costa? In produzione dipende: tipicamente per transazione / immagine / lunghezza testo / lunghezza audio I prezzi variano in base al servizio e alla Region: aka.ms/cs-pricing
  • 28. I dati vengono caricati sui server Azure per l’analisi, poi immediatamente scartati Qualche considerazione sui dati Dettagli: aka.ms/az-compliance E’ possible utilizzare i container
  • 29. Se vi interessano questi argomenti… https://www.ellycode.com https://bit.ly/3b0sqEr

Editor's Notes

  1. Il cloud mi offre servizi che richiedono risorse che difficilmente posso rendere disponibili in locale
  2. Il cloud mi offre servizi che richiedono risorse che difficilmente posso rendere disponibili in locale
  3. Il cloud mi offre servizi che richiedono risorse che difficilmente posso rendere disponibili in locale
  4. Il cloud mi offre servizi che richiedono risorse che difficilmente posso rendere disponibili in locale