franco montoro · web viewrobson leandro carvalho canato possui graduação em análise de sistemas...

29
PROPOSTA DE DESENVOLVIMENTO DE UM CHATBOT UTILIZANDO A PLATAFORMA DIALOGFLOW Autor: Luiz Gustavo Kempe Inácio 1 Orientador: Robson Leandro Carvalho Canato 2 RESUMO: Em um mercado cada vez mais competitivo, o preço deixou de ser a forma mais eficiente de evidenciar uma marca, um produto ou um serviço. Ciente disso, muitas empresas tem apostado em formas alternativas de oferecer um atendimento personalizado em busca de excelência. Nesse quesito, a tecnologia tem se mostrado altamente promissora, possibilitando as empresas tais meios alternativos, como por exemplo, através da utilização de assistentes virtuais, os chatbots. Com base nesta afirmação, este trabalho propõe o desenvolvimento de um chatbot utilizando a plataforma DialogFlow do Google. No trabalho são apresentadas algumas tecnologias utilizadas no desenvolvimento do chatbot proposto, bem como as etapas do seu desenvolvimento. PALAVRAS-CHAVE: Inteligência Artificial, Assistentes Virtuais, Chatbot, Processamento de Linguagem Natural. . ABSTRACT: In an increasingly competitive market, the price prepared to be the most efficient way to highlight a brand, a product or a service. Aware of this, many companies have bet on alternative ways to offer personalized service in search of excellence. In this regard, technology has been highly promising, making it possible for companies to use such alternative means, such as the use of virtual assistants, chatbots. Based on this statement, this work offers the development of a chatbot using a Google DialogFlow platform. At work are some technologies used in the development of the proposed chatbot, as well as the stages of its development . KEYWORDS: Artificial Intelligence, Virtual Assistants, Chatbot, Natural Language Processing. 1 Luiz Gustavo Kempe Inácio possui graduação em Administração pela Instituição de Ensino São Francisco e discente de graduação em Ciência da Computação (2020) pela Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. E-mail: [email protected] 2 Robson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010), mestrado em Ciência da Computação pela UNICAMP (2016), pós-graduação em Data Warehouse e Business Intelligence pelo IBF (2018) e pós-graduação em Formação Pedagógica pelo Centro Paula Souza (2019). Docente da Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. E-mail: [email protected] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11

Upload: others

Post on 02-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

PROPOSTA DE DESENVOLVIMENTO DE UM CHATBOT UTILIZANDO A PLATAFORMA DIALOGFLOW

Autor: Luiz Gustavo Kempe Inácio1

Orientador: Robson Leandro Carvalho Canato2

RESUMO: Em um mercado cada vez mais competitivo, o preço deixou de ser a forma mais eficiente de evidenciar uma marca, um produto ou um serviço. Ciente disso, muitas empresas tem apostado em formas alternativas de oferecer um atendimento personalizado em busca de excelência. Nesse quesito, a tecnologia tem se mostrado altamente promissora, possibilitando as empresas tais meios alternativos, como por exemplo, através da utilização de assistentes virtuais, os chatbots. Com base nesta afirmação, este trabalho propõe o desenvolvimento de um chatbot utilizando a plataforma DialogFlow do Google. No trabalho são apresentadas algumas tecnologias utilizadas no desenvolvimento do chatbot proposto, bem como as etapas do seu desenvolvimento.

PALAVRAS-CHAVE: Inteligência Artificial, Assistentes Virtuais, Chatbot, Processamento de Linguagem Natural.. ABSTRACT: In an increasingly competitive market, the price prepared to be the most efficient way to highlight a brand, a product or a service. Aware of this, many companies have bet on alternative ways to offer personalized service in search of excellence. In this regard, technology has been highly promising, making it possible for companies to use such alternative means, such as the use of virtual assistants, chatbots. Based on this statement, this work offers the development of a chatbot using a Google DialogFlow platform. At work are some technologies used in the development of the proposed chatbot, as well as the stages of its development.KEYWORDS: Artificial Intelligence, Virtual Assistants, Chatbot, Natural Language Processing.

INTRODUÇÃOInteligência Artificial é um campo da Ciência da Computação que estuda a

síntese e a análise de agentes computacionais que agem de forma inteligente,

analisando e testando hipóteses sobre o que é necessário para a criação de agentes

inteligentes, projetando, estudando e fazendo experimentos com sistemas

computacionais que executam tarefas que requerem inteligência. Com o avanço da

1 Luiz Gustavo Kempe Inácio possui graduação em Administração pela Instituição de Ensino São Francisco e discente de graduação em Ciência da Computação (2020) pela Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. E-mail: [email protected]

2 Robson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010), mestrado em Ciência da Computação pela UNICAMP (2016), pós-graduação em Data Warehouse e Business Intelligence pelo IBF (2018) e pós-graduação em Formação Pedagógica pelo Centro Paula Souza (2019). Docente da Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. E-mail: [email protected]

1

2

3

4

56789

101112131415161718192021222324252627282930

31

32

33

34

35

123456789

Page 2: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

2

tecnologia e a necessidade de atender pessoas é preciso a criação de sistemas cada

vez mais inteligentes e autônomos.

Normalmente clientes esperam por muito tempo para serem atendidos,

principalmente em chat ao vivo, onde precisam esperar em uma fila virtual para serem

respondidos por algum assistente disponível, implicando em um tempo considerável

para se obter a resposta desejada.

Com base na afirmação anterior, empresas como Microsoft, Google, Facebook

dentre outras, estão cada vez mais investindo em tecnologias como o chatbot. O termo

chatterbot em português significa robô conversador, que são capazes de analisar e

responder perguntas, sendo apto de substituir o ser humano e tornando esse

atendimento disponível a todo momento e sem a necessidade de esperas longas.

Dessa forma, com a utilização do chatbots, espera-se redução de custo com pessoas e

uma maior padronização nas informações, possibilitando aos clientes maior agilidade

no atendimento, servindo como uma espécie de triagem para casos que ainda

necessitem de atendimento humano.

Neste trabalho será abordado como são desenvolvidos e exemplos de utilização

dos chatbots, quais programas e ferramentas são necessários para sua criação, sua

importância no cotidiano das pessoas, principalmente nos dias atuais onde

enfrentamos uma pandemia mundial que fez empresas e instituições de ensino

buscarem alternativas na tecnologia para se manterem conectadas aos seus clientes,

sendo o chatbot vista como uma tecnologia promissora e eficaz.

1. MOTIVAÇÃO

Durante os estudos foi visto que mesmo com o crescimento da inteligência

artificial ainda temos dificuldades de se ter uma resposta mais rápida vinda das

empresas através de chats, e-mails e sistemas call centers. Isso fez com que elas

buscassem meios de evoluir com a comunicação digital a fim de estreitar sua relação

com os clientes, focando também em otimizar custos e processos de serviços numa

única plataforma. Posto isso, me deparei com a tecnologia dos chatbots, uma das

1011

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

Page 3: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

3

principais opções de ferramentas para a solução das necessidades das empresas, que

despertou a curiosidade de como esta é aplicada, e como se torna eficaz para dissolver

dúvidas e trazer soluções aos seus usuários.

Embora nos esforcemos para evitar a "robotização" das relações interpessoais e

do cuidado, e sabendo que as pessoas ainda são importantes para a obtenção dos

resultados mais concretos e verdadeiros, o uso de chatbots pode ajudar empresas de

diferentes ramos a alcançar resultados, o que pode melhorar os serviços e reduzir

custos. Suas vantagens estão relacionadas a se adequar ao novo comportamento do

consumidor, lidando com o volume do uso de mensagens instantâneas, já que em

contrapartida, as pessoas estão cada vez menos dispostas a esperar horas ou dias

para verem suas necessidades atendidas. Outras vantagens reforçam a aplicação de

chatbots nas organizações:

Problemas de clientes ou usuários serão resolvidos mais rapidamente;

Os processos diários podem ser automatizados e delegados a chatbots;

Os contatos via e-mail são bastante reduzidos, liberando funcionários para

outras tarefas;

Reduzir o custo de contratação e treinamento de funcionários;

Ele permite que professores e alunos em EAD se comuniquem

simultaneamente.

2. CONCEITOS FUNDAMENTAIS

2.1 Inteligência Artificial

O termo inteligência artificial começou a ser utilizado no final dos anos 1950. Os

cientistas Hebert Simon e Allen Newel foram os responsáveis pela criação do primeiro

laboratório de inteligência artificial na universidade de Carnegie Mellon.

De acordo com Luger (2004), a Inteligência Artificial (IA) é a divisão da ciência

da computação que lida com comportamento inteligente. Para Rich (1994), a

Inteligência Artificial baseia-se em estudar como os computadores podem realizar

tarefas que são realizadas pelos seres humanos, só que melhor.

1213

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

Page 4: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

4

A IA simbólica é o estudo do cérebro humano para construir uma máquina que

pode resolver problemas, enquanto a IA conexionista acredita que, para um sistema

que imita as funções do cérebro humano, ele deve ser construído simulando sua

estrutura. Atualmente, esses dois conceitos (simbólico e conexionismo) são

complementares, não competindo entre si (RUSSEL, NORVING, 2013).

Baseado no teste de Turing, proposto por Allan Turing, onde duas pessoas e um

sistema de IA são colocadas no mesmo ambiente. Um deles é o interrogador. O

interrogador conduz um diálogo em linguagem natural com a pessoa e com a máquina.

Dessa forma, com base nas perguntas e respostas, identificar se o diálogo está sendo

feito com uma pessoa ou com uma máquina, de modo a indicar se o sistema passou no

teste de Turing.

2.2 Processamento de Linguagem Natural

O processamento de linguagem natural (PLN) é uma subárea da IA. Entende-se

por PLN a capacidade de lidar com a mesma linguagem usada pelos humanos.

Algumas dessas tecnologias o conteúdo do uso de PLN inclui: tradução de texto ou

fala, preparação de resumos, avaliação de erros, reconhecimento de fala, entre outros

(FINATTO, 2015).

O PLN fornece aos computadores a habilidade para que entendam e formem

textos. Entende-se que formar um texto é a capacidade da máquina em reconhecer o

contexto, analisar a sintática, semântica, léxica e morfológica, criando assim resumos

para extrair informações e aprender conceitos com os resumos processados.

Segundo Russell e Norvig (2013), o PLN aborda a possibilidade de humanos

comunicar-se com as máquinas da maneira mais natural possível, sem ter que

aprender linguagens artificiais muito específicas, que são os comandos que manipulam

um computador, por exemplo, já que muitas pessoas ainda têm dificuldades.

De acordo com Rodrigues (2017), o PLN procura resolver questões

computacionais que requerem o tratamento computacional de uma ou mais línguas

naturais, dedicando-se ao desenvolvimento de sistemas computacionais que tem a

língua natural escrita como objeto primário.

1415

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

Page 5: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

5

2.3 Aprendizagem de Maquina

A aprendizagem de máquina ou machine learning, é um subcampo da

Inteligência Artificial, que trabalha com o conceito básico de que as maquinas através

de acesso a grandes volumes de dados são capazes de aprender sozinhas, detectando

padrões e criando conexões entre dados, através de Big Data e algoritmos sofisticados,

desenvolvendo sozinhas uma determinada tarefa.

De acordo com Russell e Norvig (2013), na aprendizagem de máquina encontra-

se os agentes que são primordiais, capazes de fazer e enxergar no seu ambiente por

meio de sensores e atuadores. Considera-se que um agente virtual está

compreendendo quando sua performance evolui ao observar sobre o mundo. Podem

melhorar por meio de comportamentos e instruções diligente de suas experiências

próprias. Todo componente através de aprendizagem pode ser melhorado a partir de

dados.

2.4 Assistentes Virtuais

Assistente virtual é um software que realiza serviços ou tarefas através de

entradas do usuário. É um sistema que acessa banco de dados e gera uma resposta

ao usuário agilizando e facilitando a obtenção da informação desejada.

Segundo Cruz, Alencar e Schimitz (2013), ao contrário dos serviços que

dependem para sempre do ser humano, uma vez que esses assistentes virtuais

recebam as orientações corretas, jamais abrirão mão das orientações que lhes são

dadas. Ainda de acordo com Cruz, Alencar e Schimitz (2013), a existência de

assistentes virtuais só é possível devido aos avanços em diversos campos da

tecnologia.

Alexa, Siri, Google Assistant e Microsoft Cortana são exemplos de assistentes

virtuais que continuamente aprendem através da interação com os usuários,

aumentando seus repertórios e se tornando não só um assistente pessoal, mas uma

solução para vários negócios empresariais.

De acordo com Valois (2018), o assistente virtual mais popular é a Alexia,

baseada no computador da Enterprise, a nave de Star Trek e está integrada ao Echo,

1617

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

Page 6: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

6

que é um alto falante inteligente desenvolvido pela mesma Amazon, desenvolvedora da

Alexa. Alexa também tem uma solução de negócios (Alexa for Business), e suas

ferramentas podem ajudar a melhorar a eficiência do trabalho, incluindo abrir ou fechar

cortinas de escritório, agendar compromissos e gerenciar reuniões de vídeo.

Walliter (2016), centrou-se no trabalho do grupo de Inteligência Artificial e

pesquisa da Microsoft, que criou o sistema de reconhecimento de fala, a Cortana, que

apresenta a mesma taxa de erro de palavras (5,9%) observada por humanos. Com o

uso de modelos neurais de linguagem, a precisão dos padrões de fala de Cortana

melhorou, combinando palavras semelhantes.

Segundo Rehral (2016), Cortana é o nome do assistente interativo pessoal

embutido no sistema operacional Windows 10. Você pode dar a ela instruções e falar

com ela usando voz ou texto. O nome foi dado em homenagem a sua contraparte

ficcional em uma série de videogame Halo. A Cortana faz anotações, dita mensagens e

oferece alertas de calendário e lembretes. Mas sua verdadeira característica de

destaque e aquele em que a Microsoft está apostando fortemente, é a capacidade de

iniciar conversas casuais com usuários, o que a Microsoft chama de "bate-papo".

De Acordo com Rehral (2016) siri é um assistente virtual com uma interface de

linguagem natural controlada por voz que usa inferência sequencial e consciência

contextual para ajudar a realizar tarefas pessoais para usuários iOS. E, como a maioria

dos outros recursos tecnológicos-chave em Produtos iOS da Apple, SIRI tem suas

raízes no financiamento e pesquisas federais. SIRI é uma artificial do programa de

inteligência artificial que se baseia em aprendizado de máquina, processamento de

linguagem natural e um algoritmo de busca na web.

2.5 Chatbot

Chatbot são softwares que facilitam e agilizam as atividades. Devido a

comunicação natural em que a conversa é desenvolvida utilizando-se de recursos da

Inteligência Artificial o chatbot aprendem novos conceitos com cada usuário que

utilizada a ferramenta, aprimorando a ferramenta como um todo.

1819

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

Page 7: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

7

Segundo (SOUZA 2018), um chatbot é uma aplicação que facilita e simplifica a

comunicação entre os indivíduos de forma natural. Também é possível que os chatbots

aprendam novos conceitos com os usuários por meio do diálogo. Hoje, podemos

presenciar pessoas conversando através da interação com chatbots sem se darem

conta ou simplesmente fantasiarem estar interagindo com seres humanos. Isso se

deve ao fato de um crescimento exponencial pela utilização desses agentes virtuais de

conversação nos mais variados sistemas, seja na educação, e-commerce ou

simplesmente informacional.

De acordo com Calado (2016), chatbots são serviços fundamentados em

princípios e Inteligência Artificial, onde você pode conversar e relacionar-se através de

aplicativos de mensagens. Ainda segundo Calado (2006), os chatbots não devem

substituir pessoas, pelo contrário, ele acredita que irão ajudar as pessoas a fazerem o

que elas fazem melhor, que é pensar, ao invés de simplesmente seguir um roteiro pré-

determinado.

2.6 Chatbot no Meio Acadêmico

De acordo com Carneiro (2009), a educação a distância acontece quando

alunos e professores se encontram em lugares diferentes geograficamente, ou seja,

professores e alunos não se encontram constantemente no mesmo local e período.

Exatamente por esse motivo utilizam-se desse recurso tecnológico para poder interagir

durante o processo de aprendizagem. Conforme colocado por Carneiro (2009), o

acesso à Internet tem incentivado a utilização dessas tecnologias no meio de ensino,

caracterizada pelo uso de e-mail, bate papo e videoconferência.

Além da função de consultores profissionais, os chatbots na educação são

usados principalmente para tutoria. O sistema é ensinado por meio de simulação,

testes e jogos. Eles também conduzem o treinamento inicial e orientam alunos e

professores para apresentar cursos e tópicos inteiros.

De acordo com Cruz (2018), na sala de aula, os chatbots são vistos como uma

ajuda extra para os professores. Mesmo que o professor conclua o estudo de uma

matéria, os alunos com dificuldades podem usar o sistema inteligente e aprendê-lo

conforme necessário.

2021

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

Page 8: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

8

Segundo Ferreira (2020), os chatbots educacionais ajudam a reduzir a carga de

trabalho e otimizar o tempo em escolas e universidades. Eles também ajudam a reduzir

custos, substituindo equipes que precisam dobrar o trabalho ou funcionários

sobrecarregados que precisam de altas demandas e muitas horas extras.

O chatbot pode se adaptar às necessidades de cada aluno. Portanto, eles se

adaptam à velocidade de aprendizagem de todos. O bot, como é normalmente

chamado um chatbot, está preparado para solucionar todas as dúvidas, melhorando

assim a qualidade dos estudos pois estão disponíveis 24 horas por dia para poder

sanar as dúvidas dos alunos.

2.7 Plataformas para criação de chatbots

Existem diversas plataformas consolidadas e amplamente utilizadas para a

criação de um chatbot (assistente virtual). Entre as principais plataformas, podemos

citar: AWS LEX (Amazon), DialogFlow (Google), IBM Watson Dialog (IBM), LUIS

(Microsoft) e a WIT.AI (Facebook) (GLOBALME 2019, NUTZEL 2020).

3. PLATAFORMA DIALOGFLOW

Adquirida em 2016 pelo Google, o DialogFlow é uma plataforma para o

desenvolvimento de assistentes de conversação ou assistentes virtuais (chatbots)

baseados em Inteligência Artificial, que utiliza o poder de machine learning e o

processamento de linguagem natural para reforçar o entendimento da comunicação

(BRANDES, 2017).

A ferramenta além de poder ser utilizada em vários canais, como por exemplo o

WhatsApp, Telegram, Facebook, Skype, Twitter, entre outros, também possibilita

multiplataforma, como celulares, relógios, Google Home e outros dispositivos,

proporcionando assim, formas alternativas de interação entre usuários e produtos.

3.1 Componentes do Dialogflow

Conhecer e entender o funcionamento de cada um dos componentes do

DialogFlow é uma etapa mandatória e indispensável quando se deseja criar assistentes

de conversação profissionais e eficientes. Esta etapa é extremamente importante e

2223

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

Page 9: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

9

corrobora de forma indispensável à etapa de planejamento de desenvolvimento do

agente de conversação, evitando retrabalho e possibilitando a criação de agentes

extremamente inteligentes e escaláveis. O DialogFlow possui diversos componentes,

sendo os principais ilustrados através da Tabela 1, conforme a seguir:

Tabela 1: Componentes do DialogFlow

Fonte: Adaptado de [GUIMARÃES, 2018]

3.1.1 Intents

A partir do momento que o usuário inicializa o agente através de uma ação,

como por exemplo ao falar, digitar, ou pressionar algum botão de um equipamento, o

agente realiza um parse (processo que consiste em analisar uma sequência que foi

fornecida como entrada, com o objetivo de verificar sua estrutura de acordo com uma

gramática formal), após o parse, um match (correspondência) de dados também é

realizado. O objetivo do match é verificar a vinculação de registros, que é o processo

de localização das informações correspondentes nos conjuntos de dados baseados em

aprendizado de máquina de forma a tentar entender o que o usuário está querendo, em

outras palavras, saber qual a intenção (intent) do usuário baseado naquela ação.

O Intent é considerado como o componente básico do DialogFlow e é formado

por duas informações muito importante, as frases de treinamento (training phrases) e

as respostas (responses). As frases de treinamento são compostas pelas frases que

consideramos as possíveis a serem utilizadas pelos usuários ao interagir com o agente.

2425

240

241

242

243

244

245246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

Page 10: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

10

Estas frases são úteis para treinar o algoritmo de aprendizado de máquina combinados

com o poder do processamento de linguagem natural a entender frases similares,

identificando-se desta forma, o mesmo propósito, e consequentemente, devolver a

resposta mais adequada. A Figura 1 a seguir ilustra o componente Intent em execução.

Figura 1: Componente Intent em execução

Fonte: Adaptado de [GUIMARÃES, 2018]

3.1.2 Responses

O componente responses, mencionado anteriormente como sendo uma das

duas informações muito importantes do componente Intent, consiste em gerar uma

resposta, baseando-se na intenção do usuário e nas possibilidades previamente

configuradas em nosso agente, gerando uma resposta (response) ao usuário. A Figura

2 a seguir, ilustra o ciclo desse componente.

Figura 2: Componente Responses em execução

Fonte: Adaptado de [GUIMARÃES, 2018]

3.1.3 Fulfillment

Componente que possibilita a realização da interação do intent com uma base

externa, que neste caso pode ser uma API (uma interface de programação de

2627

261

262

263

264

265266

267268

269

270

271

272

273

274

275276

277278

279

280

281

Page 11: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

11

aplicação), uma aplicação ou mesmo uma conexão com um banco de dados, por

exemplo. Essa interação ocorre por intermédio de um Webhook, que de forma bem

simples e resumida é a forma de receber informações provenientes de outros sistemas.

O componente Fulfillment é ilustrado através da Figura 3 a seguir:

Figura 3: Componente Fulfillment em execução

Fonte: Adaptado de [GUIMARÃES, 2018]

A plataforma DialogFlow possibilita a criação de um Webhook utilizando o Inline

Editor (através da integração com plataforma Google Cloud e o banco Firebase,

permitindo a criação de código sem a necessidade de servidores), dentro do console

do DialogFlow, funcionalidade implementada pela Google.

3.1.4 Context

O objetivo do componente context é manter o diálogo dentro de um mesmo

intent, ou seja, criar um fluxo de navegação entre os intents que fazem sentido do

mesmo assunto, do mesmo contexto. Quando o agente não consegue fazer o match

com nenhum dos intents, um response de fallback pode acontecer. O response de

fallback consiste em uma tentativa de redirecionar a intenção do usuário dentro do fluxo

de um contexto para um possível match e atendimento da solicitação, que pode ser

verificado através de um follow-up, que é a confirmação desse atendimento ou não.

Sobre o context, é válido ressaltar que ele possui uma validade, ou seja, é configurado

sobre um life span, que corresponde a sua vida útil, que pode ser definido através de

um determinado número de vezes ou após um determinado tempo, evitando assim,

que o usuário fique preso a um determinado contexto.

3.1.5 Entities

2829

282

283

284

285

286287

288289290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

Page 12: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

12

Considerada como um mecanismo, as entities ou do português entidades, são

utilizadas para a identificação e extração de dados úteis e estruturados gerados através

das interações dos usuários e o agente. Supondo que em uma determinada interação o

usuário forneça a seguinte frase: "Bom dia, quero agendar uma aula de Banco de

Dados para hoje as 16:00h" e analisando a frase, podemos perceber no contexto: uma

disciplina (Banco de Dados), uma data (hoje) e a hora (16h), que são três entidades

estruturadas (disciplina, data e hora). As entidades representam um objeto do mundo

real e podem ser concretas e abstratas. Dessa forma, podemos entender as entities

como sendo uma ou mais informações que podem ser coletadas e estruturadas para

serem utilizadas posteriormente pelo nosso agente. O DialogFlow possui três

categorias de entities: system entities (entidades do sistema, como por exemplo, data e

hora), developers entities (entidades definidas pelos desenvolvedores, como por

exemplo disciplina) e session entities (criadas especificamente para a sessão do

usuário, entidades bem especificas).

3.1.6 Actions e Parameters

Os componentes actions (ação) e parameters (parâmetros), são utilizadas

respectivamente para identificar uma ação e um parâmetro. Os parâmetros são

baseados em entidades.

3.1.7 Integrations

Componente que possibilita personalizar respostas de acordo com o canal que o

agente será integrado (Google, Facebook, WhatsApp, Telegram, Instagram, etc.), ao

invés de utilizar uma mensagem default (padrão).

4. PROPOSTA E PLANEJAMENTO DO CHATBOT

Depois de apresentado os principais componentes da plataforma DialogFlow,

uma etapa importante é o planejamento do agente a ser implementado. A nossa

proposta é o desenvolvimento do agente de conversação para apoiar o atendimento

acadêmico. Dessa forma, como mencionado anteriormente, é necessário realizar o

3031

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

Page 13: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

13

planejamento para que o desenvolvimento possa ser realizado de forma a atender

todos os requisitos. Nessa etapa são levantados requisitos como: dados geográficos

(área de abrangência e idioma), dados demográficos (gênero e faixa etária), objetivo do

negócio (oferecer atendimento, vender um produto ou vender um serviço) e as

possíveis integrações (canais, plataformas e Webhook). O levantamento de requisitos

para o agente proposto pode ser observado através da Figura 4, conforme a seguir

Figura 4: Levantamento de requisitos do chatbot

Fonte: Adaptado de [GUIMARÃES, 2018]

Após a etapa de levantamento de requisitos, é preciso fazer junto ao cliente uma

verificação de quais seriam as possíveis frases de treinamento (training phrases), ou

seja, precisamos saber quais as frases mais comumente utilizadas quando um

atendimento é solicitado. Com base nestas frases, devemos definir os possíveis intents

(intenções) relacionadas. Considerando-se um escopo inicial e bem delimitado, a

3233

337

338

339

340

341

342

343344

345346

347

348

349

350

351

352

Page 14: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

14

Tabela 2 a seguir, ilustra algumas das possíveis frases de treinamento e respectivas

intenções quando um atendimento é solicitado.

Tabela 2: Frases de treinamento e intenções

3435

353

354355356357

Page 15: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

15

Fonte: Elaborado pelo autorConcluída a etapa de identificação e criação das frases de treinamento e

intenções, é preciso definir os responses, ou seja, as respostas a cada uma das

3637

358359

360

361

Page 16: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

16

intenções. A Tabela 3 a seguir, ilustra as possíveis respostas de acordo com a intenção

do usuário.Tabela 3: Intenções e respostas

Fonte: Elaborado pelo autorFinalizada a etapa de levantamento e implementação das intenções e respostas

conforme apresentado através da Tabela 3 anteriormente, para que se possa ter a

3839

362

363364

365366

367

368

Page 17: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

17

experiência do funcionamento e interação com o agente proposto, foi realizada a etapa

de integração. A etapa de integração, como o próprio nome diz, consiste em fazer a

integração do agente em uma das muitas possibilidades de integração disponibilizadas

pela plataforma, conforme mencionada inicialmente. Por ser uma proposta inicial, ainda

em desenvolvimento, optamos por utilizar a integração com o canal WEB, uma das

possibilidades de integração disponibilizada pela plataforma. A Figura 5 a seguir ilustra

a categoria de integração baseada em texto (text based), uma das várias categorias.

Figura 5: Integração - categoria baseada em texto

Fonte: Adaptado de [DIALOGFLOW, 2020]

Concluída a integração com o canal desejado, é possível realizar a interação

considerando nesta etapa uma visão de usuário, para perceber como será a sua

experiência, e com base nessa experiência, realizar os ajustes e treinamento do agente

proposto, para que desta forma, ele consiga atender ao maior número de interações de

forma satisfatória. Algumas das interações realizadas com o agente proposto,

utilizando-se o canal WEB através de um smartphone pode ser visualizada através da

Figura 6.

Figura 6: Interações com o agente virtual

4041

369

370

371

372

373

374

375

376377

378379

380

381

382

383

384

385

386

387388

Page 18: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

18

Fonte: Elaborado pelo autor

5. CONSIDERAÇÕES FINAIS

Os assistentes virtuais (chatbots) já fazem parte da nossa vida. A realidade é

que em um curto espaço de tempo, seja no e-commerce, em sites em geral ou em

simples compras em supermercados, iremos interagir muitas vezes com esses

assistentes pela possibilidade de adquirir uma resposta no dia e horário que desejar,

sem a necessidade de interação humana para várias tarefas consideradas mais

simples.

As pessoas estão cada dia mais exigentes, as empresas estão investindo em

infraestrutura para atender de forma satisfatória seus clientes, mas isso demanda

4243

389

390391

392

393

394

395

396

397

398

399

400

401

Page 19: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

19

gastos com equipamento, software e treinamento qualificado. Como os assistentes

virtuais tem a capacidade de responder inúmeras questões de forma a fazer uma certa

triagem, resolvendo de forma rápida e simplificada, o interesse em sua utilização tem

sido cada vez maior, independente do segmento.

A utilização da plataforma DialogFlow nos possibilitou a criação de um chatbot

simples de forma rápida, fácil e intuitiva. Assim, podemos concluir que mesmo pessoas

que não tenham tanta familiaridade ou habilidade em programação podem aprender,

com um esforço mínimo, a criar chatbots muito interessantes, com a capacidade de

atender demandas nas mais diversas áreas. Além de robusta e intuitiva, a plataforma é

compatível com multicanais e multiplataforma, o que possibilita o desenvolvimento dos

mais variados assistentes virtuais.

REFERÊNCIAS BIBLIOGRÁFICAS

BRANDES, B. Dialogflow (api.ai) - Breve introdução da plataforma. Bots Brasil, 2017.

Disponível em: https://medium.com/botsbrasil/api-ai-breve-introdu%C3%A7%C3%A3o-

da-plataforma-ecb2d77107a2. Acessado em: 17/10/2020.

CALADO, C. Bots Brasil. O que é um chatbot? 2016. Disponível em:

<https://goo.gl/91wye4 >. Acessado em: 14/10/2020.

CARNEIRO, M. L. F. Intrumentalização para o Ensino a Distância: EAD Série

Educação a Distância. Rio Grande do Sul: UFRGS, 2009.

CRUZ, F. L. Chatbots na educação: um novo jeito de aprender e ensinar. 2018.

Disponível em: https://desafiosdaeducacao.grupoa.com.br/chatbots-na-educacao/.

Acessado em: 10/10/2020.

DIALOGFLOW. DialogFlow Essentials - Integrations. 2020. Disponível em:

https://dialogflow.cloud.google.com/. Acessado em 13/11/2020.

4445

402

403

404

405

406

407

408

409

410

411

412

413

414

415

416

417

418

419

420

421

422

423

424

425

426

427

428

429

430

Page 20: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

20

FERREIRA, F. C. Chatbot para educação: quais as vantagens para as instituições de ensino? 2020. Disponível em: https://take.net/blog/chatbots/chatbot-para-educacao.

Acessado em: 10/10/2020.

FINATTO, M. J. B.; LOPES, L.; SILVA, A. C. Processamento de linguagem natural, linguística de corpus e estudos linguísticos: uma parceria bem-sucedida .

Domínios de linguagem, Uberlândia, MG. v. 9, n. 5, p.41-59, dez 2015. Disponível em:

https://www.lume.ufrgs.br/handle/10183/169398. Acessado em: 09/11/2020

GLOBALME. Building Chatbots with Zero Experience. 2019. Disponível em:

https://cdn2.hubspot.net/hubfs/3453171/Whitepapers/Which%20Chatbot%20Platforms

%20are%20Easiest%20to%20Build%20and%20Train.pdf. Acessado em 17/11/2020.

GUIMARÃES, R. Crie Chatbots com Machine Learning. 2018. Universidade Global.

Disponível em: https://cursos.universidadeglobal.com.br/. Acessado em 03/11/2020.

LUGER, G. F. Inteligência Artificial: Estruturas e Estratégias para a Solução de Problemas Complexos. 4ª ed. Porto Alegre: Bookman, 2004. 774 p.

NUTZEL, J. A comparison between the chatbot building platforms Amazon Lex, IBM Watson and Google Dialogflow. APPIS, 2020. Disponível em: https://www.4fo.de/

wp-content/uploads/2020/01/APPIS2020_Chatbot_Platforms_Juergen_Nuetzel.pdf.

Acessado em 17/11/2020.

REHRAL, S. Siri – The Intelligent Personal Assistant. International Journal of

Advanced Research in Computer Engineering & Technology, University of Mumbai,

India. June 2016. Disponível em: http://ijarcet.org/wp-content/uploads/IJARCET-VOL-5-

ISSUE-6-2021-2024.pdf. Acessado em: 01/11/2020

RICH, E.; KNIGHT, K. Inteligência Artificial. 2ª ed. Rio de Janeiro: McGraw-Hill, 1994.

722 p.

4647

431

432

433

434

435

436

437

438

439

440

441

442

443

444

445

446

447

448

449

450

451

452

453

454

455

456

457

458

459

460

461

Page 21: Franco Montoro · Web viewRobson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), pós-graduação em Banco de Dados pelo IBTA (2010),

21

RODRIGUES, J. O que é o Processamento de Linguagem Natural? 2017.

Disponível em: https://medium.com/botsbrasil/o-que-%C3%A9-o-processamento-de-

linguagem-natural-49ece9371cff. Acessado em 10/10/2020.

RUSSELL, S., NORVIG, P. Inteligência Artificial, 3a Edição, Editora Campus, 2013.

SOUZA, R. F. d. et al. Desenvolvimento de chatbot aplicado ao atendimento de clientes em e-business. Araranguá, SC, 2018. Disponível em:

https://repositorio.ufsc.br/bitstream/handle/123456789/187968/Trabalho-versao-final-

RogerFlorzino-de-Souza.pdf?sequence=1&isAllowed=y. Acessado em: 02/11/2020.

WALLITER, C. Ética em inteligência artificial e o futuro da humanidade. 2016.

Disponível em: http://pontoeletronico.me/2016/inteligencia-artificial/. Acessado em

10/10/2020.

VALOIS, M. A. Alexa e Siri: Você conhece um assistente virtual inteligente? 2018.

Disponível em: https://www.hostgator.com.br/blog/assistente-virtual-inteligente/.

Acessado em 10/10/2020.

4849

462

463

464

465

466

467

468

469

470

471

472

473

474

475

476

477

478

479