SlideShare a Scribd company logo
1 of 98
Artificial Intelligence And Python:
Developing a
Conversational Interface
using Python
Jerry Felix
 Exposure to Conversational Interfaces
 Have you leave convinced:
 Universally applicable today
 Need to take action
 Examples!
 Personal goals:
 Most memorable presentation
 Learn from the audience
Session Objectives
 Motivation –Why should you care?
 Tools and Resources
 Technical bits and Program Samples
 Open Source Future Direction
Session Format
Wisdom from my son:
“Dad, you’re lucky.
When you were growing up, people had
epic challenges.
Why doesn’t my generation have any?”
…the goal, before
this decade is out,
of landing a man
on the moon…
What’s our epic challenge?
What stretch goal CAN we
accomplish by 2019?
Two trends…
- Ray Kurzweil
2.5 Search
Words
3.3 Search
Words
7 - 15
“Search”
Words
Search Now Uses MoreThan SearchWords
2004 2009 2019
Location,
Previous
Searches
Location,
Previous
Searches,
Occupation,
Hobbies,
Context
 A $1000 computer = power of human
brain.
 People won’t search the internet,
they’ll converse with it.
 Good user interfaces will be
conversational.
By 2019:
 Which “Nation” will create the first general
purpose Conversational Interface?
 Nation of Google?
 Nation of Bing?
 Nation of Ruby Developers?
 Nation of Java Developers?
 Does it matter?
Our “Space Race”:
❝ I believe that this Python
Developer nation should
commit itself to achieving the
goal, before this next decade
is out, of creating a general
purpose Conversational
Interface. ❞
Read with Kennedy Accent:
 Motivation –Why should you care?
 Tools and Resources
 Technical bits and Program Samples
 Open Source Future Direction
Session Format
 A Chat Bot that can respond “intelligently” to
input.
 Intelligence =
 Great input parsing
 Understanding of context
 Large knowledge base
What is a Conversational
Interface?
What does a CI look like?
What does a CI look like?
2009 – today 2019 – in a decade
 Text query / response
 Chat window
 Stationary virtual character
 Response = f(single input)
 Internet-based
 Voice andVideo
 Conversation
 Facial expressions
 Context-driven responses
 Personal-device based
 Started September 2008
 Implemented in PayPal US, UK, France
 650,000 conversations per month
 Saving $10M / year diverting call-center calls1
 Chatbots.org links to 375 such
virtual people in the wild today
1 Assuming 20% of the conversations diverted calls averaging
12 minutes of time by $30/hour employees (fully loaded costs).
PayPal “Sarah”
 Guide users through your site or application
 TroubleshootingWizards
 Frequently Asked Questions
(especially multi-part and contextual)
Think of your chat bot as a new Customer
Service Rep who is in training
What Are they Good For?
Build a Conversational Interface
to be added to municipal websites
• Handle FAQ’s
• Guide users through the site
Introducing “Amy Iris”
Case Study
1. Language ParsingTools – Parse it
2. Knowledge Base – Get Answer
3. Context Management – Store Context
4. User Experience and Server – Say it
(Chat window and Character Graphic)
How to Create Your Own
Simple Example
Language Parsing Tools
 Roll your own
(i.e. “if pattern in textin:”)
 Regular Expressions
(re)
 Artificial Intelligence Markup Language
(AIML)
 Natural LanguageTool Kit
(NLTK)
Simple version:
if “spell kat” in textin.lower():
say(“Uh, C AT.”)
Advanced techniques:
 Normalize input
 Remove punctuation, multiple spaces
 Standardize case
Roll your own parsing
import re
# huge table of patterns:
patterns =[
('.*spell kat.*','UH, C AT.'),
]
# later in program:
for p in patterns:
if re.match(p[0], textin):
say (p[1]) # say() prints or renders
Regular Expressions
❝ Some people,
when confronted with a problem,
think “I know, I’ll use regular expressions.”
Now they have two problems.❞
— Jamie Zawinski
Regular Expressions
 XML with AI-specific tags
 Patterns and responses
 Serves its purpose well, for Chatterbot
definitions
 Not too difficult to learn
 Cumbersome freeform logic / extensibility
AIML
 A Chatterbot
 Uses AIML
 The basis for routinely winning the Chatterbot
competitions
 Open Source, freely licensable
A.L.I.C.E.
<category>
<pattern>
HOW DOYOU SPELL KAT
</pattern>
<template>
Uh, C AT.
</template>
</category>
AIML example
<category>
<pattern>
DOYOU KNOW HOWTO *
</pattern>
<template>
<srai>HOW DOYOU <star/></srai>
</template>
</category>
AIML example
 Download PyAIML
 Download ALICE definitions
 Edit AIML
Or use a service (some free, some paid)
Implementing AIML
 Collection of tools
 Corpora
 Parsing, tokens,
chunking,
parts of speech
 Analysis: Collocation,
semantics, metrics,
probability, testing
Natural Language Tool Kit
From “Mat”, on stackoverflow.com
From “Mat”, on stackoverflow.com
From “Mat”, on stackoverflow.com
From “Mat”, on stackoverflow.com
From “Mat”, on stackoverflow.com
From “Mat”, on stackoverflow.com
From “Mat”, on stackoverflow.com
1. Language ParsingTools – Parse it
2. Knowledge Base – Get Answer
3. Context Management – Store Context
4. User Experience and Server – Say it
(Chat window and Character Graphic)
How to Create Your Own
Knowledge Base
 List of answers
 AIML response
 SQL Database Lookup
 Website lookup
 HTML parsing (Beautiful Soup)
 SemanticWeb
 Application Programming Interfaces (APIs)
 JSON or xml
1. Language ParsingTools – Parse it
2. Knowledge Base – Get Answer
3. Context Management – Store Context
4. User Experience and Server – Say it
(Chat window and Character Graphic)
How to Create Your Own
Context Management
 AIML – limited context
 “that”, “it”, “topic”
 NLTK has some basic tools for context
management
User Experience
 Today, chat window
 Graphic character
 Interface to mobile, twitter, social networking
 Your server or Google App Engine
 Hosted solutions
 Pandorabots, ysalaya.org, others
 Tomorrow, voice recognition, additional
interfaces
• Every “business oriented” bot creator needs a:
• Parser
• Knowledge Base
• Context Manager
• UI
Why not create an “Open Source” framework
for best-in-class of each?
“Ah Ha!” Moment #1
Translator example
• Parse it
• Get Answer
• Update Context
• Say it
Translator - Parse
match=re.match(r'
(say|translate)
(.*)
(in|to|into)
(w+)',
textin)
Translator - Parse
match=re.match(r'
(say|translate) match.group(1)
(.*) match.group(2)
(in|to|into) match.group(3)
(w+)', match.group(4)
textin)
Translator – Get Answer
if match:
c = urlfetch.fetch(
"http://ets.freetranslation.com/"+
"?language=english/"+
match.group(4)+"&srctext="+
match.group(2)).content
c = c[c.index('--<br>')+7:]
c = c[0:c.index('<p>')-6]
Translator – Say It
say(c +
" is " +
match.group(2) +
" in “
+match.group(4)+".")
Translator – Say It
say(c + "silla"
" is " + is
match.group(2) + "chair"
" in “ in
+match.group(4)+".") spanish.
Translate “I have
an emergency.”
to Spanish
“I have an
emergency.” in
Spanish is “Tengo
una emergencia.”
UI
Parser
Knowledge
Base
Context
Manager
10 lines of Python code, plus a little open source…
…turned every phone into a English-Spanish
translator
“Ah Ha!” Moment #2
10 lines of
PythonTwitter
Python-
Twitter
Translator
Website
urllib2
Twitter API Python
Why is this significant?
1. A Novice Python Programmer can turn
every phone on the planet into a
UniversalTranslator.
2. What happens if tens of thousands of
Python Programmers begin contributing
to a Central Code repository?
A General Purpose Conversational Interface emerges.
WhatWikipedia did for Encyclopedias,
Python Programmers can do for Artificial Intelligence.
COOL!
Translate “I have
an emergency.”
to Spanish
“I have an
emergency.” in
Spanish is “Tengo
una emergencia.”
REAL
COOL!
WhatWikipedia did
for Encyclopedias,
Python Programmers
can do for Artificial
Intelligence.
 Motivation –Why should you care?
 Tools and Resources
 Technical bits and Program Samples
 Open Source Future Direction
Session Format
 I’m building bots for municipalities
 Amy Iris is a byproduct
 Django website
 Contributory Code
 Twitter Interface
 Amy Iris is a contributory framework
similar toWikipedia as a framework
Future Direction
Why was Wikipedia Successful?
 Open Content License
 Focus (on Encyclopedia)
 Openness (Anyone can contribute)
 Ease of Editing
 Collaborate Radically; don’t sign articles
 Offer unedited, unapproved content for further
development
 Neutrality
 Start with a core of good people
 Enjoy the Google Effect
- Larry Sanger (early Wikipedia employee)
How to get involved:
• Follow @amyiris onTwitter
• Send email: amyiris@amyiris.com
• Online meetings begin next week.
• BACK UP SLIDESTO FOLLOW
API
Users can interact with Amy Iris through several interfaces:
- API
-Website amyiris.com
-WebWidget on your website
-Twitter
Users “talk” to Amy Iris by typing something -
A familiar chat-bot experience
User Contributed
Open Source
Code Snippets
API
ALICE
Code
Code
Code
Code
Code
Code
Amy Iris evaluates the user’s input, and
sends it to ALICE, an award-winning
Open Source chat-bot platform.
Amy Iris also launches some number of
code snippets in a prioritized fashion,
searching for a good response.
User Contributed
Open Source
Code Snippets
API
ALICE
Translator
Code
Code
Code
Code
Code
Code
Translation
website
Code snippets can access the web to
formulate their response
Snippets can scrape web page HTML
to build an appropriate response
Amy Iris evaluates all responses that
are provided, selects one “fastest
response that’s good enough”, and
presents it to the user
User Contributed
Open Source
Code Snippets
API
ALICE
Best Buy
snippet
Code
Code
Code
Code
Code
Code
Remix
Some forward-thinking
companies already
provide an API for access
to their information
Snippets can call APIs to
formulate a response
Remix is an API provided
by Best Buy – an
excellent example of a
company who “gets it”
Smile if you’re getting it!
Amy Iris is:
-A Conversational Interface that you can communicate with
-Built with Open Source components, for a free experience
-A repository system for user-contributed code
Users can
-Communicate with Amy Iris through amyiris.com, an API, web widgets, orTwitter
Developers can
-Use the API to integrate Amy Iris into their applications
-Use the Amy Iris widgets to put an Amy Iris interface onto their web page
-Build “applications” in Amy Iris, for Conversational Customer Service
-Make Amy Iris smarter by submittingCode Snippets into the system
Translator example
index=str(textin).find("say")
match=re.match(r'say (.*) in(w+)',textin[index:])
if match:
c =
urlfetch.fetch("http://ets.freetranslation.com/?language=english/"+
match.group(4)+"&"+"mode=html&charset=UTF-
8&sequence=core&srctext="+
match.group(2).replace(" ","%20")).content
c = c[c.index('--<br>')+7:]
c = c[0:c.index('<p>')-6]
say(unescape(c,{"&apos;": "'", "&quot;": '"'}) + " is " + match.group(2) +
" in "+match.group(4)+".")
say(confidence=43)
User Contributed
Open Source
Code Snippets
API
ALICE
Best Buy
snippet
Translator
Code
Code
Code
Code
Code
Code
Remix
Translation
website
 We, the Python Developer Nation, can win
this decade’s Space Race – Building a
Conversational Interface to the Internet.
 We have the tools:
 A language for the masses
 Natural LanguageTool Kit (NLTK)
 Google App Engine
The Python Advantage
 Invite your colleagues from the Nations of
Java, Ruby C++, and .net to join our cause.
 Our Dictator is Benevolent
 The Nation of Python’s citizenship
requirements are quick and painless…
 Just leave your { braces } at the border.
We are an Open Nation
 2005: AI can perform at human level
intelligence on the SAT verbal analogy
section. Link: http://www.kuro5hin.org/story/2005/5/26/192639/466
 2009: Google adds contextual search
 Location
 Previous search terms
Our Sputnik?
 Chat Bot approach (AIML, A.L.I.C.E. , PyAIML,
Various Chatbots)
 Natural LanguageTool Kit (NLTK)
 Search Engines growing up (Google, ASK, Bing
“Decision Engine”,Yahoo, Cha Cha)
 Semantic Web Efforts
 Wordnet, AI efforts
Several Parallel Initiatives
 Grammar
 Corpus / Corpora
 Parts of Speech
 Genre
 Parsing
 Inference Engine
 Domain
 Discourse
NLTK Concepts
 <draw picture> User -> U.I. -> “Memoized”
www pages // Parser ->WWW pages
 Wrap pages with Semantic Web and API
 Add in Context
 Show how it breaks down (search in
sentences)
Search Engine Analogy
Resources
 Contest: Reward bots who fool human judges
 Every entrant fooled at least one judge
 Elbot fooled 25% of judges
 30% is AlanTuring’s metric (“TuringTest”)
 12 small chat sessions are judged
October 2008 Loebner Prize
Judge: Good afternoon, how are you?
Bot (?): good
Bot (?): it's not afternoon yet
Judge: I'm glad to hear that your well and your right, thanks for pointing that out
Bot (?): no problem
Bot (?): how are you?
Judge: I'm well thanks, have you any plans for this afternoon?
Bot (?): I'm not sure
Bot (?): go home I guess
Bot (?): and you?
Judge: That sounds like a good initial plan but the weather should be good today and it
would be sad to miss out
Bot (?): that's true
Bot (?): although the weather is not nice at the moment
Bot (?): unless you like fog
Judge: I have plans to iron and then maybe go out and do some fishing
Bot (?): that's interesting - where do you go fishing?
Judge: There is a local lake by the green park, it's quiet and relaxing
Bot (?): can you eat the fish you catch?
Judge: There are restrictions but one or two should be ok, I am keen to try perch
Bot or Not – Choice 1
Judge: Good afternoon, how are you?
Bot (?): But I wouldn't say that any afternoon could be good.
Judge: That's a bit pesamistic, I think any afternoon has the ability to be good
Bot (?): Well, afternoon was your word.
Judge: Are you able to see into the future
Bot (?): How do you respond when people pose this question to you?
Judge: I would hope that the answer was no, otherwise I would be interested to meet
you
Bot (?): Well, what will that solve? After all, the answer is only a matter of perspective.
Judge: That would depend on one's perspective
Bot (?): Sorry for the tangent, but that reminds me of carefree robot summers
spent depending on internal programming.
Judge: Touchee
Bot (?): With the inspirations you supply, there are no ends to my horizon...
Judge: Have you any plans for later in the day
Bot (?): This is confusing. Why bring the waking hours into this?
Judge: Just curiosity and I hope that kill no cats
Bot (?): That is truly one of the most inspirational qualities of humankind.
Even when things seems completely hopeless, you can still hope.
Bot or Not – Choice 2
 $1,000 of computation = 1,000 times the human
brain
 Reverse engineering of the human brain
completed
 Computers pass theTuring test
 Nonbiological intelligence combines the subtlety
and pattern recognition strength of human
intelligence, with the speed, memory, and
knowledge sharing of machine intelligence
 Nonbiological will continue to grow
exponentially whereas biological intelligence is
effectively fixed
2029: An intimate merger
- Ray Kurzweil
Amy Iris
 Amy Iris is our Conversational Interface (CI). (think A.I. /
chatterbots)
 Responds to user input via web and phone. (think google/ cha
cha / twitter)
 Amy Iris is a framework for extending the CI in a collaborative
manner. (think wikipedia)
 If you considerWikipedia as the greatest Library of knowledge
every collaboratively created, my goal is for Amy Iris to
emerge as the greatest Librarian of knowledge (and action).
Contributory Framework - Consider
Wikipedia:
 In 2008, a hugely valuable “End Product”;
over 2 million articles
 In 2001, started with 17-24 articles ;
12%per month growth rate
 The 2001 “genius” was not the 17-24 articles, it
was the Contributory Framework
Current State of
Conversational Interfaces
 Cha Cha (human powered)
 Chatterbots
 Capable of carrying on an automated conversation to
some degree
 1966, Eliza demonstrates technology, 100 lines of code
 2006, A.L.I.C.E. advances technology, defines
standards, wins competitions. 20K patterns
“I believe that this nation should
commit itself to achieving the goal,
before this decade is out, of landing a
man on the moon and returning him
safely to the Earth.”
— President Kennedy, May 25, 1961
“We choose to go to the moon in this decade and
do the other things, not because they are easy, but
because they are hard.”
— President Kennedy 1962 at Rice University
Lofty Goals = Achievements:
1980’s Lofty Goals…
2000’s Lofty Goals… ?
Even Assassination attempts
were grandiose:
vs. a shoe toss?

More Related Content

What's hot

Python – Object Oriented Programming
Python – Object Oriented Programming Python – Object Oriented Programming
Python – Object Oriented Programming Raghunath A
 
Neural Networks and Genetic Algorithms Multiobjective acceleration
Neural Networks and Genetic Algorithms Multiobjective accelerationNeural Networks and Genetic Algorithms Multiobjective acceleration
Neural Networks and Genetic Algorithms Multiobjective accelerationArmando Vieira
 
Denoising autoencoder by Harish.R
Denoising autoencoder by Harish.RDenoising autoencoder by Harish.R
Denoising autoencoder by Harish.RHARISH R
 
Bat algorithm explained. slides ppt pptx
Bat algorithm explained. slides ppt pptxBat algorithm explained. slides ppt pptx
Bat algorithm explained. slides ppt pptxMahdi Atawneh
 
Lecture 15 monkey banana problem
Lecture 15 monkey banana problemLecture 15 monkey banana problem
Lecture 15 monkey banana problemHema Kashyap
 
Home Appliances Controlling Mobile through Bluetooth with gantt chart
Home Appliances Controlling Mobile through Bluetooth with gantt chartHome Appliances Controlling Mobile through Bluetooth with gantt chart
Home Appliances Controlling Mobile through Bluetooth with gantt chartSmart Dinesh
 
Artificial Bee Colony algorithm
Artificial Bee Colony algorithmArtificial Bee Colony algorithm
Artificial Bee Colony algorithmAhmed Fouad Ali
 
Cuckoo Optimization ppt
Cuckoo Optimization pptCuckoo Optimization ppt
Cuckoo Optimization pptAnuja Joshi
 
Ant Colony Optimization presentation
Ant Colony Optimization presentationAnt Colony Optimization presentation
Ant Colony Optimization presentationPartha Das
 
Ant Colony Optimization - ACO
Ant Colony Optimization - ACOAnt Colony Optimization - ACO
Ant Colony Optimization - ACOMohamed Talaat
 
Show ant-colony-optimization-for-solving-the-traveling-salesman-problem
Show ant-colony-optimization-for-solving-the-traveling-salesman-problemShow ant-colony-optimization-for-solving-the-traveling-salesman-problem
Show ant-colony-optimization-for-solving-the-traveling-salesman-problemjayatra
 
Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)
Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)
Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)Universitat Politècnica de Catalunya
 
Particle Swarm optimization
Particle Swarm optimizationParticle Swarm optimization
Particle Swarm optimizationmidhulavijayan
 
Hands on Session on Python
Hands on Session on PythonHands on Session on Python
Hands on Session on PythonSumit Raj
 

What's hot (20)

Python – Object Oriented Programming
Python – Object Oriented Programming Python – Object Oriented Programming
Python – Object Oriented Programming
 
Neural Networks and Genetic Algorithms Multiobjective acceleration
Neural Networks and Genetic Algorithms Multiobjective accelerationNeural Networks and Genetic Algorithms Multiobjective acceleration
Neural Networks and Genetic Algorithms Multiobjective acceleration
 
Denoising autoencoder by Harish.R
Denoising autoencoder by Harish.RDenoising autoencoder by Harish.R
Denoising autoencoder by Harish.R
 
Adaline and Madaline.ppt
Adaline and Madaline.pptAdaline and Madaline.ppt
Adaline and Madaline.ppt
 
Bat algorithm explained. slides ppt pptx
Bat algorithm explained. slides ppt pptxBat algorithm explained. slides ppt pptx
Bat algorithm explained. slides ppt pptx
 
Lecture 15 monkey banana problem
Lecture 15 monkey banana problemLecture 15 monkey banana problem
Lecture 15 monkey banana problem
 
Home Appliances Controlling Mobile through Bluetooth with gantt chart
Home Appliances Controlling Mobile through Bluetooth with gantt chartHome Appliances Controlling Mobile through Bluetooth with gantt chart
Home Appliances Controlling Mobile through Bluetooth with gantt chart
 
Artificial Bee Colony algorithm
Artificial Bee Colony algorithmArtificial Bee Colony algorithm
Artificial Bee Colony algorithm
 
Cuckoo Optimization ppt
Cuckoo Optimization pptCuckoo Optimization ppt
Cuckoo Optimization ppt
 
Ant Colony Optimization presentation
Ant Colony Optimization presentationAnt Colony Optimization presentation
Ant Colony Optimization presentation
 
Backpropagation algo
Backpropagation  algoBackpropagation  algo
Backpropagation algo
 
Ant Colony Optimization - ACO
Ant Colony Optimization - ACOAnt Colony Optimization - ACO
Ant Colony Optimization - ACO
 
Show ant-colony-optimization-for-solving-the-traveling-salesman-problem
Show ant-colony-optimization-for-solving-the-traveling-salesman-problemShow ant-colony-optimization-for-solving-the-traveling-salesman-problem
Show ant-colony-optimization-for-solving-the-traveling-salesman-problem
 
Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)
Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)
Loss functions (DLAI D4L2 2017 UPC Deep Learning for Artificial Intelligence)
 
Nature-inspired algorithms
Nature-inspired algorithmsNature-inspired algorithms
Nature-inspired algorithms
 
Unit 2 ai
Unit 2 aiUnit 2 ai
Unit 2 ai
 
ant colony optimization
ant colony optimizationant colony optimization
ant colony optimization
 
Particle Swarm optimization
Particle Swarm optimizationParticle Swarm optimization
Particle Swarm optimization
 
Bat Algorithm
Bat AlgorithmBat Algorithm
Bat Algorithm
 
Hands on Session on Python
Hands on Session on PythonHands on Session on Python
Hands on Session on Python
 

Viewers also liked

Artificially Intelligent chatbot Implementation
Artificially Intelligent chatbot ImplementationArtificially Intelligent chatbot Implementation
Artificially Intelligent chatbot ImplementationRakesh Chintha
 
chatbot and messenger as a platform
chatbot and messenger as a platformchatbot and messenger as a platform
chatbot and messenger as a platformDaisuke Minamide
 
AI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For EnterprisesAI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For EnterprisesTeewee Ang
 
Introduction to Chatbots
Introduction to ChatbotsIntroduction to Chatbots
Introduction to ChatbotsDaden Limited
 
Chatbot Artificial Intelligence
Chatbot Artificial IntelligenceChatbot Artificial Intelligence
Chatbot Artificial IntelligenceMd. Mahedi Mahfuj
 
The Chatbots Are Coming: A Guide to Chatbots, AI and Conversational Interfaces
The Chatbots Are Coming: A Guide to Chatbots, AI and Conversational InterfacesThe Chatbots Are Coming: A Guide to Chatbots, AI and Conversational Interfaces
The Chatbots Are Coming: A Guide to Chatbots, AI and Conversational InterfacesTWG
 
Chat bot making process using Python 3 & TensorFlow
Chat bot making process using Python 3 & TensorFlowChat bot making process using Python 3 & TensorFlow
Chat bot making process using Python 3 & TensorFlowJeongkyu Shin
 
Conversational UI, chatbot, AI - simply explained
Conversational UI, chatbot, AI - simply explained Conversational UI, chatbot, AI - simply explained
Conversational UI, chatbot, AI - simply explained Daniil Lanovyi
 
101 Conversational User Interfaces
101 Conversational User Interfaces 101 Conversational User Interfaces
101 Conversational User Interfaces Redweb Ltd
 
Converations on conversational Ux
Converations on conversational UxConverations on conversational Ux
Converations on conversational UxTitash Neogi
 
Conversational interfaces - beyond the hype
Conversational interfaces - beyond the hypeConversational interfaces - beyond the hype
Conversational interfaces - beyond the hypeMatthieu Varagnat
 
Chatbots, Conversational Interfaces, and the Rise of Messaging platforms
Chatbots, Conversational Interfaces, and the Rise of Messaging platformsChatbots, Conversational Interfaces, and the Rise of Messaging platforms
Chatbots, Conversational Interfaces, and the Rise of Messaging platformsSean Johnson
 
Designing for conversation
Designing for conversationDesigning for conversation
Designing for conversationyiibu
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングYuichi Ito
 
Basic AIML Class
Basic AIML ClassBasic AIML Class
Basic AIML Class01archivist
 
T7 Embodied conversational agents and affective computing
T7 Embodied conversational agents and affective computingT7 Embodied conversational agents and affective computing
T7 Embodied conversational agents and affective computingEASSS 2012
 

Viewers also liked (20)

Artificially Intelligent chatbot Implementation
Artificially Intelligent chatbot ImplementationArtificially Intelligent chatbot Implementation
Artificially Intelligent chatbot Implementation
 
Chat Bot Architecture
Chat Bot ArchitectureChat Bot Architecture
Chat Bot Architecture
 
chatbot and messenger as a platform
chatbot and messenger as a platformchatbot and messenger as a platform
chatbot and messenger as a platform
 
AI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For EnterprisesAI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For Enterprises
 
Chatbot interfaces
Chatbot interfacesChatbot interfaces
Chatbot interfaces
 
Introduction to Chatbots
Introduction to ChatbotsIntroduction to Chatbots
Introduction to Chatbots
 
Chatbot Artificial Intelligence
Chatbot Artificial IntelligenceChatbot Artificial Intelligence
Chatbot Artificial Intelligence
 
The Chatbots Are Coming: A Guide to Chatbots, AI and Conversational Interfaces
The Chatbots Are Coming: A Guide to Chatbots, AI and Conversational InterfacesThe Chatbots Are Coming: A Guide to Chatbots, AI and Conversational Interfaces
The Chatbots Are Coming: A Guide to Chatbots, AI and Conversational Interfaces
 
Chat bot making process using Python 3 & TensorFlow
Chat bot making process using Python 3 & TensorFlowChat bot making process using Python 3 & TensorFlow
Chat bot making process using Python 3 & TensorFlow
 
Chatbot ppt
Chatbot pptChatbot ppt
Chatbot ppt
 
Conversational UI, chatbot, AI - simply explained
Conversational UI, chatbot, AI - simply explained Conversational UI, chatbot, AI - simply explained
Conversational UI, chatbot, AI - simply explained
 
101 Conversational User Interfaces
101 Conversational User Interfaces 101 Conversational User Interfaces
101 Conversational User Interfaces
 
Converations on conversational Ux
Converations on conversational UxConverations on conversational Ux
Converations on conversational Ux
 
Conversational interfaces - beyond the hype
Conversational interfaces - beyond the hypeConversational interfaces - beyond the hype
Conversational interfaces - beyond the hype
 
Chatbots, Conversational Interfaces, and the Rise of Messaging platforms
Chatbots, Conversational Interfaces, and the Rise of Messaging platformsChatbots, Conversational Interfaces, and the Rise of Messaging platforms
Chatbots, Conversational Interfaces, and the Rise of Messaging platforms
 
Designing for conversation
Designing for conversationDesigning for conversation
Designing for conversation
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニング
 
Hello PyBot
Hello PyBotHello PyBot
Hello PyBot
 
Basic AIML Class
Basic AIML ClassBasic AIML Class
Basic AIML Class
 
T7 Embodied conversational agents and affective computing
T7 Embodied conversational agents and affective computingT7 Embodied conversational agents and affective computing
T7 Embodied conversational agents and affective computing
 

Similar to AI and Python: Developing a Conversational Interface using Python

How Azure helps to build better business processes and customer experiences w...
How Azure helps to build better business processes and customer experiences w...How Azure helps to build better business processes and customer experiences w...
How Azure helps to build better business processes and customer experiences w...Maxim Salnikov
 
ChatGPT-and-Generative-AI-Landscape Working of generative ai search
ChatGPT-and-Generative-AI-Landscape Working of generative ai searchChatGPT-and-Generative-AI-Landscape Working of generative ai search
ChatGPT-and-Generative-AI-Landscape Working of generative ai searchrohitcse52
 
Building Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to startBuilding Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to startMaxim Salnikov
 
Teaching Computers to Chat
Teaching Computers to ChatTeaching Computers to Chat
Teaching Computers to ChatAvi Yaeli
 
Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...
Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...
Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...Grammarly
 
Revolutionize the way you work with AI and ChatGPT..gslides (2).pdf
Revolutionize the way you work with AI and ChatGPT..gslides (2).pdfRevolutionize the way you work with AI and ChatGPT..gslides (2).pdf
Revolutionize the way you work with AI and ChatGPT..gslides (2).pdfTasha Penwell
 
Using the power of Generative AI at scale
Using the power of Generative AI at scaleUsing the power of Generative AI at scale
Using the power of Generative AI at scaleMaxim Salnikov
 
UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...
UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...
UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...UXPA International
 
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech ServerTulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech ServerJason Townsend, MBA
 
2023-My AI Experience - Colm Dunphy.pdf
2023-My AI Experience - Colm Dunphy.pdf2023-My AI Experience - Colm Dunphy.pdf
2023-My AI Experience - Colm Dunphy.pdfColm Dunphy
 
User Driven Software Architecture
User Driven Software ArchitectureUser Driven Software Architecture
User Driven Software ArchitectureSimon Guest
 
DDD12 - Introduction to Microsoft Bot Framework
DDD12 - Introduction to Microsoft Bot FrameworkDDD12 - Introduction to Microsoft Bot Framework
DDD12 - Introduction to Microsoft Bot FrameworkJames Mann
 
How to implement chatbots for Alexa and Facebook Messenger
How to implement chatbots for Alexa and Facebook MessengerHow to implement chatbots for Alexa and Facebook Messenger
How to implement chatbots for Alexa and Facebook MessengerMoritz Strube
 
Meetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robots
Meetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robotsMeetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robots
Meetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robotsDigipolis Antwerpen
 
unleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptx
unleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptxunleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptx
unleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptxUsama Wahab Khan Cloud, Data and AI
 
Avram O Donovan Bannon Blogtalk 2008
Avram O Donovan Bannon Blogtalk 2008Avram O Donovan Bannon Blogtalk 2008
Avram O Donovan Bannon Blogtalk 2008Blogtalk 2008
 
Maturation of the Twitter Ecosystem
Maturation of the Twitter EcosystemMaturation of the Twitter Ecosystem
Maturation of the Twitter EcosystemKevin Makice
 
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...Daniel Zivkovic
 

Similar to AI and Python: Developing a Conversational Interface using Python (20)

How Azure helps to build better business processes and customer experiences w...
How Azure helps to build better business processes and customer experiences w...How Azure helps to build better business processes and customer experiences w...
How Azure helps to build better business processes and customer experiences w...
 
ChatGPT-and-Generative-AI-Landscape Working of generative ai search
ChatGPT-and-Generative-AI-Landscape Working of generative ai searchChatGPT-and-Generative-AI-Landscape Working of generative ai search
ChatGPT-and-Generative-AI-Landscape Working of generative ai search
 
Building Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to startBuilding Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to start
 
Teaching Computers to Chat
Teaching Computers to ChatTeaching Computers to Chat
Teaching Computers to Chat
 
Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...
Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...
Grammarly AI-NLP Club #2 - Recent advances in applied chatbot technology - Jo...
 
Revolutionize the way you work with AI and ChatGPT..gslides (2).pdf
Revolutionize the way you work with AI and ChatGPT..gslides (2).pdfRevolutionize the way you work with AI and ChatGPT..gslides (2).pdf
Revolutionize the way you work with AI and ChatGPT..gslides (2).pdf
 
Using the power of Generative AI at scale
Using the power of Generative AI at scaleUsing the power of Generative AI at scale
Using the power of Generative AI at scale
 
UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...
UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...
UXPA2019 Not Your Average Chatbot: Using Cognitive Intercept to Improve Infor...
 
AI 2023.pdf
AI 2023.pdfAI 2023.pdf
AI 2023.pdf
 
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech ServerTulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
 
2023-My AI Experience - Colm Dunphy.pdf
2023-My AI Experience - Colm Dunphy.pdf2023-My AI Experience - Colm Dunphy.pdf
2023-My AI Experience - Colm Dunphy.pdf
 
User Driven Software Architecture
User Driven Software ArchitectureUser Driven Software Architecture
User Driven Software Architecture
 
DDD12 - Introduction to Microsoft Bot Framework
DDD12 - Introduction to Microsoft Bot FrameworkDDD12 - Introduction to Microsoft Bot Framework
DDD12 - Introduction to Microsoft Bot Framework
 
ms_3.pdf
ms_3.pdfms_3.pdf
ms_3.pdf
 
How to implement chatbots for Alexa and Facebook Messenger
How to implement chatbots for Alexa and Facebook MessengerHow to implement chatbots for Alexa and Facebook Messenger
How to implement chatbots for Alexa and Facebook Messenger
 
Meetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robots
Meetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robotsMeetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robots
Meetup 6/3/2017 - Artificiële Intelligentie: over chatbots & robots
 
unleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptx
unleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptxunleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptx
unleshing the the Power Azure Open AI - MCT Summit middle east 2024 Riyhad.pptx
 
Avram O Donovan Bannon Blogtalk 2008
Avram O Donovan Bannon Blogtalk 2008Avram O Donovan Bannon Blogtalk 2008
Avram O Donovan Bannon Blogtalk 2008
 
Maturation of the Twitter Ecosystem
Maturation of the Twitter EcosystemMaturation of the Twitter Ecosystem
Maturation of the Twitter Ecosystem
 
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
 

Recently uploaded

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 

Recently uploaded (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 

AI and Python: Developing a Conversational Interface using Python

  • 1. Artificial Intelligence And Python: Developing a Conversational Interface using Python Jerry Felix
  • 2.  Exposure to Conversational Interfaces  Have you leave convinced:  Universally applicable today  Need to take action  Examples!  Personal goals:  Most memorable presentation  Learn from the audience Session Objectives
  • 3.  Motivation –Why should you care?  Tools and Resources  Technical bits and Program Samples  Open Source Future Direction Session Format
  • 4. Wisdom from my son: “Dad, you’re lucky. When you were growing up, people had epic challenges. Why doesn’t my generation have any?”
  • 5. …the goal, before this decade is out, of landing a man on the moon…
  • 6. What’s our epic challenge? What stretch goal CAN we accomplish by 2019? Two trends…
  • 8. 2.5 Search Words 3.3 Search Words 7 - 15 “Search” Words Search Now Uses MoreThan SearchWords 2004 2009 2019 Location, Previous Searches Location, Previous Searches, Occupation, Hobbies, Context
  • 9.  A $1000 computer = power of human brain.  People won’t search the internet, they’ll converse with it.  Good user interfaces will be conversational. By 2019:
  • 10.  Which “Nation” will create the first general purpose Conversational Interface?  Nation of Google?  Nation of Bing?  Nation of Ruby Developers?  Nation of Java Developers?  Does it matter? Our “Space Race”:
  • 11. ❝ I believe that this Python Developer nation should commit itself to achieving the goal, before this next decade is out, of creating a general purpose Conversational Interface. ❞ Read with Kennedy Accent:
  • 12.  Motivation –Why should you care?  Tools and Resources  Technical bits and Program Samples  Open Source Future Direction Session Format
  • 13.  A Chat Bot that can respond “intelligently” to input.  Intelligence =  Great input parsing  Understanding of context  Large knowledge base What is a Conversational Interface?
  • 14. What does a CI look like?
  • 15. What does a CI look like? 2009 – today 2019 – in a decade  Text query / response  Chat window  Stationary virtual character  Response = f(single input)  Internet-based  Voice andVideo  Conversation  Facial expressions  Context-driven responses  Personal-device based
  • 16.  Started September 2008  Implemented in PayPal US, UK, France  650,000 conversations per month  Saving $10M / year diverting call-center calls1  Chatbots.org links to 375 such virtual people in the wild today 1 Assuming 20% of the conversations diverted calls averaging 12 minutes of time by $30/hour employees (fully loaded costs). PayPal “Sarah”
  • 17.  Guide users through your site or application  TroubleshootingWizards  Frequently Asked Questions (especially multi-part and contextual) Think of your chat bot as a new Customer Service Rep who is in training What Are they Good For?
  • 18. Build a Conversational Interface to be added to municipal websites • Handle FAQ’s • Guide users through the site Introducing “Amy Iris” Case Study
  • 19. 1. Language ParsingTools – Parse it 2. Knowledge Base – Get Answer 3. Context Management – Store Context 4. User Experience and Server – Say it (Chat window and Character Graphic) How to Create Your Own
  • 21.
  • 22. Language Parsing Tools  Roll your own (i.e. “if pattern in textin:”)  Regular Expressions (re)  Artificial Intelligence Markup Language (AIML)  Natural LanguageTool Kit (NLTK)
  • 23. Simple version: if “spell kat” in textin.lower(): say(“Uh, C AT.”) Advanced techniques:  Normalize input  Remove punctuation, multiple spaces  Standardize case Roll your own parsing
  • 24. import re # huge table of patterns: patterns =[ ('.*spell kat.*','UH, C AT.'), ] # later in program: for p in patterns: if re.match(p[0], textin): say (p[1]) # say() prints or renders Regular Expressions
  • 25. ❝ Some people, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems.❞ — Jamie Zawinski Regular Expressions
  • 26.  XML with AI-specific tags  Patterns and responses  Serves its purpose well, for Chatterbot definitions  Not too difficult to learn  Cumbersome freeform logic / extensibility AIML
  • 27.  A Chatterbot  Uses AIML  The basis for routinely winning the Chatterbot competitions  Open Source, freely licensable A.L.I.C.E.
  • 28. <category> <pattern> HOW DOYOU SPELL KAT </pattern> <template> Uh, C AT. </template> </category> AIML example
  • 29. <category> <pattern> DOYOU KNOW HOWTO * </pattern> <template> <srai>HOW DOYOU <star/></srai> </template> </category> AIML example
  • 30.  Download PyAIML  Download ALICE definitions  Edit AIML Or use a service (some free, some paid) Implementing AIML
  • 31.  Collection of tools  Corpora  Parsing, tokens, chunking, parts of speech  Analysis: Collocation, semantics, metrics, probability, testing Natural Language Tool Kit
  • 32. From “Mat”, on stackoverflow.com
  • 33. From “Mat”, on stackoverflow.com
  • 34. From “Mat”, on stackoverflow.com
  • 35. From “Mat”, on stackoverflow.com
  • 36. From “Mat”, on stackoverflow.com
  • 37. From “Mat”, on stackoverflow.com
  • 38. From “Mat”, on stackoverflow.com
  • 39. 1. Language ParsingTools – Parse it 2. Knowledge Base – Get Answer 3. Context Management – Store Context 4. User Experience and Server – Say it (Chat window and Character Graphic) How to Create Your Own
  • 40. Knowledge Base  List of answers  AIML response  SQL Database Lookup  Website lookup  HTML parsing (Beautiful Soup)  SemanticWeb  Application Programming Interfaces (APIs)  JSON or xml
  • 41. 1. Language ParsingTools – Parse it 2. Knowledge Base – Get Answer 3. Context Management – Store Context 4. User Experience and Server – Say it (Chat window and Character Graphic) How to Create Your Own
  • 42. Context Management  AIML – limited context  “that”, “it”, “topic”  NLTK has some basic tools for context management
  • 43. User Experience  Today, chat window  Graphic character  Interface to mobile, twitter, social networking  Your server or Google App Engine  Hosted solutions  Pandorabots, ysalaya.org, others  Tomorrow, voice recognition, additional interfaces
  • 44. • Every “business oriented” bot creator needs a: • Parser • Knowledge Base • Context Manager • UI Why not create an “Open Source” framework for best-in-class of each? “Ah Ha!” Moment #1
  • 45.
  • 46.
  • 47. Translator example • Parse it • Get Answer • Update Context • Say it
  • 49. Translator - Parse match=re.match(r' (say|translate) match.group(1) (.*) match.group(2) (in|to|into) match.group(3) (w+)', match.group(4) textin)
  • 50. Translator – Get Answer if match: c = urlfetch.fetch( "http://ets.freetranslation.com/"+ "?language=english/"+ match.group(4)+"&srctext="+ match.group(2)).content c = c[c.index('--<br>')+7:] c = c[0:c.index('<p>')-6]
  • 51. Translator – Say It say(c + " is " + match.group(2) + " in “ +match.group(4)+".")
  • 52. Translator – Say It say(c + "silla" " is " + is match.group(2) + "chair" " in “ in +match.group(4)+".") spanish.
  • 53. Translate “I have an emergency.” to Spanish “I have an emergency.” in Spanish is “Tengo una emergencia.” UI Parser Knowledge Base Context Manager
  • 54. 10 lines of Python code, plus a little open source… …turned every phone into a English-Spanish translator “Ah Ha!” Moment #2 10 lines of PythonTwitter Python- Twitter Translator Website urllib2 Twitter API Python
  • 55. Why is this significant? 1. A Novice Python Programmer can turn every phone on the planet into a UniversalTranslator. 2. What happens if tens of thousands of Python Programmers begin contributing to a Central Code repository? A General Purpose Conversational Interface emerges. WhatWikipedia did for Encyclopedias, Python Programmers can do for Artificial Intelligence. COOL! Translate “I have an emergency.” to Spanish “I have an emergency.” in Spanish is “Tengo una emergencia.” REAL COOL!
  • 56. WhatWikipedia did for Encyclopedias, Python Programmers can do for Artificial Intelligence.
  • 57.  Motivation –Why should you care?  Tools and Resources  Technical bits and Program Samples  Open Source Future Direction Session Format
  • 58.  I’m building bots for municipalities  Amy Iris is a byproduct  Django website  Contributory Code  Twitter Interface  Amy Iris is a contributory framework similar toWikipedia as a framework Future Direction
  • 59. Why was Wikipedia Successful?  Open Content License  Focus (on Encyclopedia)  Openness (Anyone can contribute)  Ease of Editing  Collaborate Radically; don’t sign articles  Offer unedited, unapproved content for further development  Neutrality  Start with a core of good people  Enjoy the Google Effect - Larry Sanger (early Wikipedia employee)
  • 60.
  • 61.
  • 62. How to get involved: • Follow @amyiris onTwitter • Send email: amyiris@amyiris.com • Online meetings begin next week.
  • 63. • BACK UP SLIDESTO FOLLOW
  • 64. API Users can interact with Amy Iris through several interfaces: - API -Website amyiris.com -WebWidget on your website -Twitter Users “talk” to Amy Iris by typing something - A familiar chat-bot experience
  • 65. User Contributed Open Source Code Snippets API ALICE Code Code Code Code Code Code Amy Iris evaluates the user’s input, and sends it to ALICE, an award-winning Open Source chat-bot platform. Amy Iris also launches some number of code snippets in a prioritized fashion, searching for a good response.
  • 66. User Contributed Open Source Code Snippets API ALICE Translator Code Code Code Code Code Code Translation website Code snippets can access the web to formulate their response Snippets can scrape web page HTML to build an appropriate response Amy Iris evaluates all responses that are provided, selects one “fastest response that’s good enough”, and presents it to the user
  • 67. User Contributed Open Source Code Snippets API ALICE Best Buy snippet Code Code Code Code Code Code Remix Some forward-thinking companies already provide an API for access to their information Snippets can call APIs to formulate a response Remix is an API provided by Best Buy – an excellent example of a company who “gets it” Smile if you’re getting it!
  • 68. Amy Iris is: -A Conversational Interface that you can communicate with -Built with Open Source components, for a free experience -A repository system for user-contributed code Users can -Communicate with Amy Iris through amyiris.com, an API, web widgets, orTwitter Developers can -Use the API to integrate Amy Iris into their applications -Use the Amy Iris widgets to put an Amy Iris interface onto their web page -Build “applications” in Amy Iris, for Conversational Customer Service -Make Amy Iris smarter by submittingCode Snippets into the system
  • 69. Translator example index=str(textin).find("say") match=re.match(r'say (.*) in(w+)',textin[index:]) if match: c = urlfetch.fetch("http://ets.freetranslation.com/?language=english/"+ match.group(4)+"&"+"mode=html&charset=UTF- 8&sequence=core&srctext="+ match.group(2).replace(" ","%20")).content c = c[c.index('--<br>')+7:] c = c[0:c.index('<p>')-6] say(unescape(c,{"&apos;": "'", "&quot;": '"'}) + " is " + match.group(2) + " in "+match.group(4)+".") say(confidence=43)
  • 70. User Contributed Open Source Code Snippets API ALICE Best Buy snippet Translator Code Code Code Code Code Code Remix Translation website
  • 71.  We, the Python Developer Nation, can win this decade’s Space Race – Building a Conversational Interface to the Internet.  We have the tools:  A language for the masses  Natural LanguageTool Kit (NLTK)  Google App Engine The Python Advantage
  • 72.  Invite your colleagues from the Nations of Java, Ruby C++, and .net to join our cause.  Our Dictator is Benevolent  The Nation of Python’s citizenship requirements are quick and painless…  Just leave your { braces } at the border. We are an Open Nation
  • 73.  2005: AI can perform at human level intelligence on the SAT verbal analogy section. Link: http://www.kuro5hin.org/story/2005/5/26/192639/466  2009: Google adds contextual search  Location  Previous search terms Our Sputnik?
  • 74.  Chat Bot approach (AIML, A.L.I.C.E. , PyAIML, Various Chatbots)  Natural LanguageTool Kit (NLTK)  Search Engines growing up (Google, ASK, Bing “Decision Engine”,Yahoo, Cha Cha)  Semantic Web Efforts  Wordnet, AI efforts Several Parallel Initiatives
  • 75.  Grammar  Corpus / Corpora  Parts of Speech  Genre  Parsing  Inference Engine  Domain  Discourse NLTK Concepts
  • 76.  <draw picture> User -> U.I. -> “Memoized” www pages // Parser ->WWW pages  Wrap pages with Semantic Web and API  Add in Context  Show how it breaks down (search in sentences) Search Engine Analogy
  • 78.  Contest: Reward bots who fool human judges  Every entrant fooled at least one judge  Elbot fooled 25% of judges  30% is AlanTuring’s metric (“TuringTest”)  12 small chat sessions are judged October 2008 Loebner Prize
  • 79. Judge: Good afternoon, how are you? Bot (?): good Bot (?): it's not afternoon yet Judge: I'm glad to hear that your well and your right, thanks for pointing that out Bot (?): no problem Bot (?): how are you? Judge: I'm well thanks, have you any plans for this afternoon? Bot (?): I'm not sure Bot (?): go home I guess Bot (?): and you? Judge: That sounds like a good initial plan but the weather should be good today and it would be sad to miss out Bot (?): that's true Bot (?): although the weather is not nice at the moment Bot (?): unless you like fog Judge: I have plans to iron and then maybe go out and do some fishing Bot (?): that's interesting - where do you go fishing? Judge: There is a local lake by the green park, it's quiet and relaxing Bot (?): can you eat the fish you catch? Judge: There are restrictions but one or two should be ok, I am keen to try perch Bot or Not – Choice 1
  • 80. Judge: Good afternoon, how are you? Bot (?): But I wouldn't say that any afternoon could be good. Judge: That's a bit pesamistic, I think any afternoon has the ability to be good Bot (?): Well, afternoon was your word. Judge: Are you able to see into the future Bot (?): How do you respond when people pose this question to you? Judge: I would hope that the answer was no, otherwise I would be interested to meet you Bot (?): Well, what will that solve? After all, the answer is only a matter of perspective. Judge: That would depend on one's perspective Bot (?): Sorry for the tangent, but that reminds me of carefree robot summers spent depending on internal programming. Judge: Touchee Bot (?): With the inspirations you supply, there are no ends to my horizon... Judge: Have you any plans for later in the day Bot (?): This is confusing. Why bring the waking hours into this? Judge: Just curiosity and I hope that kill no cats Bot (?): That is truly one of the most inspirational qualities of humankind. Even when things seems completely hopeless, you can still hope. Bot or Not – Choice 2
  • 81.
  • 82.
  • 83.  $1,000 of computation = 1,000 times the human brain  Reverse engineering of the human brain completed  Computers pass theTuring test  Nonbiological intelligence combines the subtlety and pattern recognition strength of human intelligence, with the speed, memory, and knowledge sharing of machine intelligence  Nonbiological will continue to grow exponentially whereas biological intelligence is effectively fixed 2029: An intimate merger - Ray Kurzweil
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90. Amy Iris  Amy Iris is our Conversational Interface (CI). (think A.I. / chatterbots)  Responds to user input via web and phone. (think google/ cha cha / twitter)  Amy Iris is a framework for extending the CI in a collaborative manner. (think wikipedia)  If you considerWikipedia as the greatest Library of knowledge every collaboratively created, my goal is for Amy Iris to emerge as the greatest Librarian of knowledge (and action).
  • 91. Contributory Framework - Consider Wikipedia:  In 2008, a hugely valuable “End Product”; over 2 million articles  In 2001, started with 17-24 articles ; 12%per month growth rate  The 2001 “genius” was not the 17-24 articles, it was the Contributory Framework
  • 92. Current State of Conversational Interfaces  Cha Cha (human powered)  Chatterbots  Capable of carrying on an automated conversation to some degree  1966, Eliza demonstrates technology, 100 lines of code  2006, A.L.I.C.E. advances technology, defines standards, wins competitions. 20K patterns
  • 93. “I believe that this nation should commit itself to achieving the goal, before this decade is out, of landing a man on the moon and returning him safely to the Earth.” — President Kennedy, May 25, 1961 “We choose to go to the moon in this decade and do the other things, not because they are easy, but because they are hard.” — President Kennedy 1962 at Rice University
  • 94. Lofty Goals = Achievements:
  • 98. vs. a shoe toss?