BOTS Charlatanes
Emiliano Dalla Verde Marcozzi
Twitter @edvm
Email
[email protected]
Que vamos a ver
● Tutorial breve de Wit.ai
● Conversation de IBM Watson
● Ponerlo en producción con Django
Elegir usuario persona
Interfaces con texto
● Emails
● Comentarios en redes sociales, bots, etc
● Whats up
● Twitter
○ Incluso se puede pedir soporte a empresas
● IRC, los clásicos no pasan de moda ;-)
Pensemos que pasa si
logramos que el
computador pueda:
● Entender
● Analizar
● Obtener significado
del TEXTO que generamos?
NLP / Natural Language Processing
Es el campo de estudio que se enfoca en
la interacción entre el lenguaje humano y
los computadores.
NLU / Natural Language Understanding
Es un subtópico de NLP que trata de
solucionar cosas aún más complicadas
Algunas aplicaciones
● Clasificar las preguntas que envia el Congreso Nacional
al Poder Ejecutivo
● Crear resúmenes de textos
● Entender sentimientos, clientes enojados, alegres, etc
● Categorizar texto automáticamente (por ej: congreso de la
Nación)
● Traducir entre idiomas
● Obtener la intención de un usuario, ej: quiero una pizza
Tutorial breve y acelerado
de Wit.ai
https://wit.ai/docs
Lean la documentación y en
10 minutos seguimos...
Crear nueva app en Wit.ai
Crear nueva app en Wit.ai
Crear primer story en Wit.ai
Crear primer story en Wit.ai
Crear primer story en Wit.ai
Agregando mas formas de saludar
Probando desde Python
pip install wit
Ojo, es ‘wit’, no ‘pywit’
Probando desde Python
from wit import Wit
def send(request, response):
print('Bot responde: {}'.format(response['text']))
actions = {
'send': send,
}
ACCESS_TOKEN = ‘too_secret’
client = Wit(
access_token=ACCESS_TOKEN,
actions=actions
)
client.interactive()
Como funciona?
USUARIO
CONVERSACION
PREGUNTA
RESPUESTA
NLTK
SyntaxNet
Textar
REST API
APP
creada en
3
WIT
Agregando una segunda intención
Agregando una segunda intención
Agregando una segunda intención
Como funciona?
NLTK
SyntaxNet
USUARIO
CONVERSACION
PREGUNTA
RESPUESTA
REST API
APP
creada en
3
WIT
Session id
Context
Conversation de IBM
Watson
(en un solo slide)
Poniendo esto en
Producción
Con Django Channels
Un usuario chatea con el BOT
USER
BROWSE
R
request
response
DJANGO
3 WIT
D
B
Los channels son Colas de Tareas, donde los
Productores pushean mensajes que luego
son entregados a los Consumidores que están
escuchando en esos channels. Ver mas
PASOS
pip install channels
●
● Agregar ‘channels’ a INSTALLED_APPS
● Elegir un channel layer y configurarlo en
settings.py variable
CHANNEL_LAYERS
● Configurar channel_routing
● Configurar asgi.py (Asynchronous Server
Gateway Interface)
● Correr Django con Daphne (Channel
Interface Server)
USER
BROWSER
request
response
D
A
P
H
N
E
1
2
3
DJANGO
3 WIT
workers
DB
routing.py
consumers.py
USER
BROWSER
request
response
wss://
D
A
P
H
N
E
1
2
3
DJANGO
3 WIT
workers
DB
FIN
Emiliano Dalla Verde Marcozzi
https://github.com/edvm/talks/tree/master/pycon2016
@edvm
[email protected]
Comentarios de: BOTS Charlatanes (0)
No hay comentarios