Modelação e prototipagem de ChatBots
| Autor(a) principal: | |
|---|---|
| Data de Publicação: | 2018 |
| Tipo de documento: | Dissertação |
| Idioma: | por |
| Título da fonte: | Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| Texto Completo: | https://hdl.handle.net/1822/65020 |
Resumo: | Relatório de estágio de mestrado em Matemática e Computação |
| id |
RCAP_1f8fe2b6144c2583ba5af76e79a5b143 |
|---|---|
| oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/65020 |
| network_acronym_str |
RCAP |
| network_name_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository_id_str |
https://opendoar.ac.uk/repository/7160 |
| spelling |
Modelação e prototipagem de ChatBotsModeling and prototyping ChatBotsChatBotModelaçãoPadrões linguísticosERLRegrasGeradorDomain specific languageOpen-sourceModelingLinguistic patternsRulesGeneratorCiências Naturais::MatemáticasRelatório de estágio de mestrado em Matemática e ComputaçãoGenericamente, ChatBots são programas que interagem com utilizadores humanos através de linguagens naturais. Os ChatBots podem ser criados com objetivos muito diversos, como por exemplo manter uma conversa “inteligente” com um humano, ou prestar serviços em algum domínio concreto, como seja atender chamadas num call-center, reencaminhado-as para um operador. Dada a heterogeneidade dos ChatBots, é importante identificar os seus princípios gerais de organização e de funcionamento. Neste trabalho foi desenvolvida uma proposta original de modelação de ChatBots, que procura identificar estes princípios gerais. Na modelação que desenvolvemos, os ChatBots são organizados em três componentes principais: a interface com o utilizador, o núcleo e o estado do ChatBot. O núcleo é a peça central do funcionamento do Chatbot, pois ele é responsável por processar as interações recebidas do utilizador, gerando reações em resposta. O núcleo contém um conjunto de regras que associam funções de reação a padrões linguísticos que, juntamente com o estado do ChatBot, determinam a escolha da reação a uma dada interação do utilizador. Para a modelação de padrões linguísticos, desenvolvemos aquilo que designamos por expressões regulares linguísticas (ERL). As ERL baseiam-se em expressões regulares, envolvendo etiquetas gramaticais, e incluem um mecanismo para extração das palavras-chave de um padrão linguístico, e deram origem a uma Domain Specific Language. A modelação que desenvolvemos permite a criação de um motor geral para a construção de ChatBots. Para uma prova de conceito, foi criado o Diabrete: um motor geral, open-source, escrito em Python, versão 3, com a base de dados em MySQL, que permite a criação de ChatBots que seguem a modelação desenvolvida neste trabalho. Na implementação do Diabrete recorremos a algumas ferramentas opensource, para levar a cabo as tarefas da análise sintática das frases dos utilizadores (biblioteca FreeLing) e para a construção de um classificador baseado em técnicas de machine learning para a escolha da reação a apresentar a uma dada interação do utilizador (biblioteca NLTK).ChatBots are programs that interact with human users through natural languages. ChatBots can be created for very different purposes, such as maintaining an ”inteligent”conversation with a human, or providing services in a specific domain, such as answering calls in a call-center, and forward them to an operator. Given the heterogeneity of ChatBots, it becomes important to identify their general principles of organization and operation. In this work, we identify some of these general principles, and develop a new proposal for the modeling of ChatBots. In the developed model, ChatBots are organized into three main components: the user interface, the core of the ChatBot, and the state of the ChatBot. The core is the centerpiece of Chatbot’s operation, as it is responsible for processing the interactions received from the user, generating reactions in response. The core contains a set of rules that associates reaction functions with linguistic patterns that, together with the state of the ChatBot, determine the choice of reaction to a given user interaction. For modeling linguistic patterns, we develop what we call regular linguistic expressions (ERL). ERLs are based on regular expressions involving grammatical tags, include a mechanism for extracting the keywords from a linguistic standard, and have given rise to a Domain Specific Language. The model that we developed allows the design of a general generator for the construction of ChatBots. For a proof of concept, the Diabrete was created. Diabrete is a general, open-source generator, written in Python, version 3, with the database in MySQL, which allows the construction of ChatBots that follow the modeling developed in this work. In the implementation of Diabrete, we used some opensource tools to perform the tasks of the user-generated sentences (library FreeLing) and to construct a classifier based on machine learning techniques for the choice of reaction to be presented to a given user interaction (library NLTK).Pinto, Luís F.Almeida, J. J.Universidade do MinhoPereira, Carlos António Senra20182018-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1822/65020por202278565info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-05-11T04:44:43Zoai:repositorium.sdum.uminho.pt:1822/65020Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T14:57:16.110347Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse |
| dc.title.none.fl_str_mv |
Modelação e prototipagem de ChatBots Modeling and prototyping ChatBots |
| title |
Modelação e prototipagem de ChatBots |
| spellingShingle |
Modelação e prototipagem de ChatBots Pereira, Carlos António Senra ChatBot Modelação Padrões linguísticos ERL Regras Gerador Domain specific language Open-source Modeling Linguistic patterns Rules Generator Ciências Naturais::Matemáticas |
| title_short |
Modelação e prototipagem de ChatBots |
| title_full |
Modelação e prototipagem de ChatBots |
| title_fullStr |
Modelação e prototipagem de ChatBots |
| title_full_unstemmed |
Modelação e prototipagem de ChatBots |
| title_sort |
Modelação e prototipagem de ChatBots |
| author |
Pereira, Carlos António Senra |
| author_facet |
Pereira, Carlos António Senra |
| author_role |
author |
| dc.contributor.none.fl_str_mv |
Pinto, Luís F. Almeida, J. J. Universidade do Minho |
| dc.contributor.author.fl_str_mv |
Pereira, Carlos António Senra |
| dc.subject.por.fl_str_mv |
ChatBot Modelação Padrões linguísticos ERL Regras Gerador Domain specific language Open-source Modeling Linguistic patterns Rules Generator Ciências Naturais::Matemáticas |
| topic |
ChatBot Modelação Padrões linguísticos ERL Regras Gerador Domain specific language Open-source Modeling Linguistic patterns Rules Generator Ciências Naturais::Matemáticas |
| description |
Relatório de estágio de mestrado em Matemática e Computação |
| publishDate |
2018 |
| dc.date.none.fl_str_mv |
2018 2018-01-01T00:00:00Z |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
| format |
masterThesis |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
https://hdl.handle.net/1822/65020 |
| url |
https://hdl.handle.net/1822/65020 |
| dc.language.iso.fl_str_mv |
por |
| language |
por |
| dc.relation.none.fl_str_mv |
202278565 |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.source.none.fl_str_mv |
reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia instacron:RCAAP |
| instname_str |
FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| instacron_str |
RCAAP |
| institution |
RCAAP |
| reponame_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| collection |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository.name.fl_str_mv |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| repository.mail.fl_str_mv |
info@rcaap.pt |
| _version_ |
1833594998772203520 |