Version classiqueVersion mobile

Proceedings of the Eighth Italian Conference on Computational Linguistics CliC-it 2021

 | 
Elisabetta Fersini
, 
Marco Passarotti
, 
Viviana Patti

Contributed Papers: Long Papers

Implementing a Pragmatically Adequate Chatbot in DialogFlow CX

Anna Dall’Acqua et Fabio Tamburini

Résumé

This paper presents work in progress concerning the implementation of a list of linguistic patterns developed in an original way to be pragmatically adequate. These patterns for Italian are strongly rooted in Conversation Analysis and are adaptable and portable into different domains. The platform used for the implementation is Dialogflow CX.

Texte intégral

We would like to thank Injenia S.r.l. for supporting this research. CRediT author statement; ADA: Conceptualization, Methodology, Validation, Formal Analysis, Investigation, Writing (Original Draft), Writing (Review & Editing); FT: Conceptualization, Supervision, Project Administration, Writing (Review & Editing), Funding Acquisition.

1. Introduction

  • 1 Copyright  2021 for this paper by its authors. Use permitted under Creative Commons License Attribu (...)

1Although1 the first dialogue systems began to appear around the second half of the last century (Weizenbaum 1966; Colby, Weber, and Hilf 1971) is it especially in recent years that we have witnessed a proliferation of these technologies in a wide variety of fields (Tsvetkova et al. 2017; Chaves et al. 2019; Dale 2016). The numerous attempts that have been made to classify them (Radziwill and Benton 2017; Følstad, Skjuve, and Brandtzaeg 2019; Hussain, Ameri Sianaki, and Ababneh 2019; Mathur and Sing 2018) and the absence of an unequivocal taxonomy (Braun and Matthes 2019) contribute to the lack of a methodological approach for designing conversational agents.

2The recent technological developments have led to the standardisation of the technical frameworks: the main Natural Language Understanding (NLU) platforms, both developed by technology giants such as Google Dialogflow, IBM Watson, and Microsoft Luis and those from the open source community such as RASA, contributed to the affirmation of the dominant paradigm based on intents, entities and responses for building conversational agents (Adamopolou and Moussiades 2020; Moore and Arar 2019). The existing flourishing literature about this aspect (Ahmad et al. 2018; Adamopolou and Moussiades 2020) has not been associated with equivalent research on methods and linguistic theories that can be pursued for the design phase of conversational projects. During the survey of methodological studies on conversation design, it became clear that there is no shared standard and that various methodological contributions of a practical nature do not refer to a specific theoretical linguistic perspective (Dasgupta 2018; Pearl 2016; Cohen, Giangola, and Balogh 2004; Hall 2018).

3In this work we embrace the Natural Conversation Framework (NCF) whose validity has been already demonstrated in Dall’Acqua and Tamburini (in press); we select some of its most representative patterns and we implemented them on the newly released version of Google Dialogflow CX. This paper is intended as a continuation of the work presented in Dall’Acqua, Tamburini (in press), which sets out the theoretical and methodological assumptions on which this work is based.

2. The Natural Conversation Framework as a Theoretically Funded Approach

4Among the linguistic approaches available to analyse interactional exchanges, a pragmatic perspective appears to be the most appropriate (Bianchini et al. 2017), especially in its declination of Conversation Analysis (Schegloff, Jefferson, and Sacks 1977; Sacks, Schegloff, and Jefferson 1974). For this reason, we claim that the Natural Conversation Framework (NCF) identified by Moore and Arar (2019), consisting of language patterns structured into sequences in the theoretical groove of Conversation Analysis, could be a promising starting point for the definition of a potentially generalisable and adaptable linguistic methodology.

5Since we have already demonstrated the theoretical validity of this approach and we have included it in a practical and applicative procedural workflow on Dialogflow ES (Dall’Acqua and Tamburini, n.d.) this work aims to continue the research by transposing some of the most significant patterns on the new and very recent version (Nov. 2020) of the platform.

3. Dialogflow CX

6The renewed version of Dialogflow is linked to the information-based approach (Larsson and Traum 2000; Traum and Larsson 2003) and opens to more dynamic scenarios: since it is structured as a finite-state machine, it allows the users to build more flexible, reusable and adaptable patterns. The level of dialogues complexity that can potentially be created is enhanced by the wider range of features that the new tool has to offer: it allows the transition from one state of the conversation to another to be visualized through the creation of pages, which are the states of the underlying state machine, configured to collect end-user information relevant to that state of the conversation2. The conversational flow itself is therefore made of pages, connectors between the pages (known as state handlers3) and flows, reciprocally independent units of dialogues used to manage more complex conversational agents.

4. Conversational Architecture and Pattern Selection

7We enlarged the implementation started in our previous work combining together in an original way a selection of patterns identified by Moore and Arar (2019) and trying to reproduce the most representative, widespread and generalisable use-cases of an high-level conversational agent with practical purposes roughly oriented to customer care. Here, it is not relevant the precise use of the demonstrated chatbot, as the main point is to show and describe the potentialities of the proposed approach. We have adapted patterns taken to all the categories of the classification proposed by Moore and Arar (2019) and suggest that they may also be considered as a best-practice to be taken into account in the summary roadmap towards the implementation previously presented.

Figure 1: Overall flows architecture.

Figure 1: Overall flows architecture.

8In our work we have created three flows. As Fig. 1 shows, they are all connected to the main flow (Default Start Flow) both in the initial and in the final state of each flow. The three flows are:

  • Registration (Registrazione): it reproduces an online registration procedure. It aims to generalise the use-case in which the user has to provide some data (entities), divided into mandatory data (without which the procedure cannot succeed) and optional data (the registration can take place correctly even without these data). The procedure of extracting data from the user (slot filling) is portable to multiple domains (Mohamad Suhaili, Salim, and Nazim Jambli 2021) (Fig. 2).

Figure 2: Registration flow diagram.

Figure 2: Registration flow diagram.
  • App Download (Scaricare App): it supports the user during a download procedure in multiple steps. It aims to show the application of the story-telling sequences (Jefferson 1978) used to express a content that needs to be parcelled out into smaller pieces of speech. Furthermore, it offers a rudimentary troubleshooting procedure in case of error during the download, that can be actually used to diagnose and manage also other typologies of errors. The widespread of troubleshooting procedures in chatbots is demonstrated in (Thorne 2017), which also endorses the portability of this type of conversational interactions into multiple domains (Fig. 3).

Figure 3: App Download flow diagram.

Figure 3: App Download flow diagram.
  • Discounts (Sconti): this flow is dedicated to typologies of discounts and promotions available and it is used to show a combination of patterns that allows to manage series of contextual questions related to the same subject (Fig. 4).

Figure 4: Discounts flow diagram.

Figure 4: Discounts flow diagram.

9Now we are going to review the most pragmatically relevant points of each created flow, aiming to show the adaptability of the patterns also to the Italian language and its suitability to multiple context of use.

4.1 Default Start Flow

  • 4 The complete list of all patterns is available in Moore and Arar and on the website https://researc (...)

10The Default Start Flow opens with a slightly revisited version of the pattern C1.4 Opening Welfare Check (Agent)4: if the NAME REQUEST in the first turn is for some reasons not satisfied, the agent goes straight to the practical purposes of the conversation, skipping the WELFARE CHECK, as the following dialogues show:

1

A:

Ciao, sono Teo, il tuo assistente virtuale. Come ti chiami?

2

U:

Anna, piacere.

3

A:

Piacere di conoscerti, Anna. Come stai?

4

U:

al top

5

A:

Ottimo, sono felice per te! Sono qui per darti qualche informazione
su alcuni semplici argomenti: gli sconti e la procedura di
scaricamento della nostra app. Inoltre, posso aiutarti a registrarti
sul nostro sito, direttamente in chat. Di che cosa hai bisogno?

1

A:

Ciao, sono Teo, il tuo assistente virtuale. Come ti chiami?

2

U:

cavoli miei

3

A:

Ok, non importa, intanto sai già il mio :) Sono qui per darti qualche
informazione su alcuni semplici argomenti: gli sconti e la
procedura di scaricamento della nostra app. Inoltre, posso aiutarti
a registrarti sul nostro sito, direttamente in chat. Di che cosa hai
bisogno?

11The agent’s reaction in the turn WELFARE RECEIPT (NEUTRAL/POSITIVE/NEGATIVE) is also conditioned by the user’s response. From the page inizio.flusso.generico (generic starting flow) the intents that introduce the flows can be activated, or the user can freely leave the conversation if he/she is not interested in the proposed subjects. In addition, we have also implemented a new version of the pattern B4.2 Sequence closer Appreciation (helped): instead of an admission of not-knowing from the chatbot (NO ANSWER ACCOUNT), we have collocated at one of the initial pages, before that one flow has ever being activated: this condition motivates the answer provided in the following dialog after the thanks from the user:

1

A:

Ciao, sono Teo, il tuo assistente virtuale. Come ti chiami?

2

U:

Ciao sono Francesco

3

A:

Piacere di conoscerti, Francesco. Come stai?

4

U:

bene

5

A:

Bene. Sono qui per darti qualche informazione su alcuni semplici
argomenti: gli sconti e la procedura di scaricamento della nostra
app. Inoltre, posso aiutarti a registrarti sul nostro sito, direttamente
in chat. Di che cosa hai bisogno?

6

U:

Grazie mille

7

A:

Non mi pare di aver fatto molto. . . Tuttavia, prego!

12The same pattern is handled differently in the other flows, if the agent actually provided help to the user.

4.2 Registration (Registrazione)

13When the user directly types something like “I’d like to register to the site" (Vorrei registrarmi sul sito), the dedicated flow will be activated and the data extraction procedure will be started. The most appropriate patterns to extract data are: A2.6 Open Request Summary, A2.7 Warrant Request & Refusal, A2.11 Open Request Repairs and B2.4. Paraphrase Request (elaboration) combined in original way in order to manage both mandatory and optional data to complete the online registration. Similar patterns have been already implemented in Dialogflow ES (Dall’Acqua and Tamburini, n.d.), but the output on Dialogflow CX is even more effective also in terms of feasibility of the implementation. As the following dialogue shows

1

U:

Volevo registrarmi al sito

2

A:

Per poterti registrare al sito e creare un tuo profilo devo raccogliere
qualche tuo dato. Avrei bisogno di nome e cognome, come ad
esempio: “Marco Rossi”.

3

U:

Lucia Mondella

4

A:

Qual è il tuo numero di carta fedeltà?

5

U:

Quale carta?

6

A:

La carta fedeltà è una carta che ti permette di raccogliere punti ad
ogni tuo acquisto, in negozio e online. Non è obbligatoria, ma
attivandola potrai godere di sconti speciali su diversi nostri
prodotti. Qual è il tuo numero di carta fedeltà?

7

U:

Quale numero ti devo dire?

8

A:

Il codice è a 5 cifre e si trova sul retro della tua carta fedeltà.

9

U:

non lo vedo

10

A:

Il codice di carta fedeltà è a cinque cifre (es: “12345”) e si trova
sul retro della carta, in basso a destra. Qual è il tuo numero di
carta fedeltà?

11

U:

non ce l’ho

12

A:

Ok, non c’è problema. In ogni caso, potrai aggiornare questa
sezione in ogni momento della pagina personale del tuo profilo.
Per finire, ho bisogno di un’ultima informazione. Qual è la tua
email?

13

U:

luciamondella@libero.it

14

A:

Perfetto. Ricapitolando: avvio la procedura di registrazione a nome
di Lucia Mondella, numero di carta non fornito, e invio un’email
di conferma all’indirizzo luciamondella@libero.it. È tutto corretto?

15

U:

no, volevo inserire un dato

16

A:

quale dato volevi inserire?

17

U:

ho recuperato la carta.

18

A:

Certamente. Ridigita pure il numero della carta fedeltà. Ti ricordo
che è un numero a cinque cifre e si trova sul retro della carta.

19

U:

12345

20

A:

Perfetto. Ricapitolando: avvio la procedura di registrazione a nome
di Lucia Mondella, numero di carta 12345, e invio un’email di
conferma all’indirizzo luciamondella@libero.it. È tutto corretto?

21

U:

Ottimo, Lucia Mondella. Abbiamo finito. A breve, riceverai una
mail all’indirizzo che mi hai indicato per il completamento della
registrazione. Hai bisogno di altre informazioni su sconti, app o registrazione?

22

A:

no, son a posto

23

U:

Va bene. Alla prossima!

we have adapted the selected patterns to the situation, transposing them into questions related to the topic “fidelity card” like “which card?” (quale carta?) and “which number should I say?” (quale numero devo dire?) and a repair procedure with “I can’t see it” (non lo vedo). It is noticeable that in case of questions or repairs related to it that are predictable, the agent reacts accordingly paraphrasing what it has previously said or providing additional information that may help the user to supply the requested data, without stopping to prompt him/her to move the conversation forward (“Which is your fidelity’s card number?” Qual è il numero della tua carta fedeltà?). The main difference between the same conversational flow on the two versions of Dialogflow is the effectiveness of the final summary, which is a requirement for a correct data extraction procedure (Moore and Arar 2019). Here the user can choose to not provide an optional data such as the fidelity card number, but if after the final summary he/she chooses instead to insert it, the agent allows the modification and shows the restored value in the next REQUEST SUMMARY, asking again if the summary is correct or not. If is it correct, this flow is going to an end and it proposes one of the last pages of it, namely the final.check. realised with the pattern C4.0 Last Topic Check (Agent) in which the agent invites the user or to transit from another flow, or to freely interrupt the conversation. Another relevant ramification of the flow “Registrazione” shows the management of an obligatory data, such as the name:

1

A:

Mi devo registrare al sito

2

U:

Per poterti registrare al sito e creare un tuo profilo devo raccogliere
qualche tuo dato. Avrei bisogno di nome e cognome, come ad
esempio: “Marco Rossi”.

3

U:

perché?

4

A:

Il nome è un requisito essenziale per la registrazione. Non
preoccuparti, sarà gestito come dato personale e sarà visibile solo
a te. Come ti chiami?

5

U:

non voglio dire il mio nome ad un robot

6

A:

Capisco. Senza questo dato, però, non posso aiutarti con la
registrazione. Preferisci interrompere qui?

7

U:

no va bene

8

A:

Va bene. Riprendiamo allora da dove eravamo rimasti. Per poterti
registrare al sito e creare un tuo profilo devo raccogliere qualche
tuo dato. Avrei bisogno di nome e cognome, come ad esempio:
“Marco Rossi”.

9

U:

Stupido robot

10

A:

Non serve a nulla reagire in modo aggressivo. Come ti chiami?

11

U:

cretino!

12

A:

In questo modo stai ferendo il mio povero cuore metallico. Come ti
chiami?

13

U:

non te lo dico

14

A:

Capisco. Senza questo dato, però, non posso aiutarti con la
registrazione. Preferisci interrompere qui?

15

U:

sì ciao

14Also in this case we have provided a series of specific question related to the topic such as “why?” (perché?), but if the user refuses to provide this data, the chatbot suggests to interrupt the procedure. Since the goal of this demo is to show the potentialities of this methodology, we have stressed the possibilities of the conversation making the user going back to the previous procedure, apparently willing to provide the name. But once the data extraction procedure starts again, the user starts to insult the robot, that reacts accordingly to every insult but without stopping to ask for the name, until the user communicates his/her will of interrupting the procedure and the conversation.

4.3 App Download (Scaricare App)

15We have figured this flow out to show the transponibility of patterns A3.0 Extended Telling with Repair and A3.1 Extended Telling Abort, that are normally used to expose a story, an anecdote or a list of instructions that cannot be achieved in one single conversational turn. This flow can be activated taping an expression associated to the corresponding intent, such as “how do I download the app?” (come scarico l’app?), that leads to the first step of the explanation, with an extra-prompt to the user (“Did you find it?” L’hai trovata?) to move the conversation forward. If the user claims he/she did not find it, the agent provides additional information to make the recognition easier, which may eventually end up in troubleshooting procedure carried out by the pages “app.non.trovata”, “app.non.trovata.2”, “app.non.trovata.3”.

1

U:

come si scarica l’app?

2

A:

Prima di tutto, vai su App Store o su Playstore e digita il nome
della nostra catena nella barra di ricerca. Cos`ı facendo dovresti
vedere la nostra app. L’hai trovata?

3

U:

Non la vedo

4

A:

L’app si chiama esattamente come la nostra catena di negozi ed è
rappresentata da un triangolo di colore verde. Prova a uscire
rientrare dall’App Store che stai utilizzando e a digitare
nuovamente il nome nella barra di ricerca. Adesso l’hai trovata?

5

U:

eccola

6

A:

Perfetto, adesso puoi scaricarla. Ci vorrà solo qualche secondo.

7

U:

come si fa?

8

A:

Facendo tap su “installa” dovresti riuscire a scaricare l’app sul tuo smartphone.

9

U:

ok

10

A:

A questo punto, una volta installata, ti basta inserire la tua mail e il
tuo numero della carta fedeltà per associare la tua app al tuo
profilo online, aggiornare tutte le tue informazioni e poter fare acquisti.

11

U:

grazie mille

12

A:

Prego! Hai bisogno di altre informazioni su sconti, app o
registrazione?

16The last two pages represent the final states of troubleshooting, which therefore may not be invoked if the user has solved the problem in the previous states.

17The conversation is articulated in a sequence of instructions: each following step in the explanation is motivated by the CONTINUER tipped by the user, that allows the agent to provide another piece of information until the procedure is finished (Schegloff 1982). The conversational turns in which the user simply reports that the previous step has been received can be alternated with repair procedures, in which the user asks for explanations regarding a specific step (Sacks, Schegloff, and Jefferson 1992), as shown in the dialogue above. In every moment of the procedure, the user may also notify that he/she has actually completed the procedure through an intent categorised as COMPLAINT/ABORT REQUEST and the agent should therefore stop providing instructions. In our flow the agent acknowledges the user’s request ("Great!" Ottimo!) and steps forward to the page final.check.:

1

U:

come faccio a scaricare l’app?

2

A:

Prima di tutto, vai su App Store o su Playstoree digita il nome
della nostra catena nella barra di ricerca. Cos`ı facendo dovresti
vedere la nostra app. L’hai trovata?

3

U:

4

A:

Perfetto, adesso puoi scaricarla. Ci vorrà solo qualche secondo.

5

U:

Ok basta ho risolto grazie

6

A:

Ottimo! Hai bisogno di altro su sconti, app oppure registrazione?

4.4 Discounts (Sconti)

18With this last flow we would like to demonstrate the applicability of two more patterns, namely the pattern A2.9 Open Request Incremental A2.10 Open Request Series, A2.4 Open Request Agent Detail Request. They are used to manage situations in which the users asks a series of questions related to a single topic or switches topic but asks similar questions related to it. As the following dialogue shows

1

U:

Che sconti avete?

2

A:

Esistono due principali tipologie di sconto: lo sconto newsletter e
lo sconto del mese. Su quale di queste vorresti ricevere maggiori
informazioni?

3

U:

il primo

4

A:

Iscrivendoti alla nostra newsletter riceverai uno sconto di del 10%
utilizzabile una sola volta su una spesa di almeno 30 euro, online
o in negozio.

5

U:

Posso usarlo anche per un acquisto online?

6

A:

Non ho capito, puoi ripetere la tua domanda sullo sconto
newsletter?

7

U:

posso usare lo sconto newsletter sia online sia in negozio?

8

A:

Puoi utilizzare lo sconto newsletter su tutti i tuoi acquisti, sia
online, sia in negozio.

9

U:

Come funziona?

10

A:

Basta cliccare su “Iscrizione newsletter” in alto a destra in ogni
pagina del sito e inserire la tua email nella tab che si apre. Presto
arriverà in posta un codice sconto a sei cifre che potrai applicare
ad un acquisto online o in negozio a partire da 30 euro di spesa.

11

U:

ok

12

A:

Hai bisogno di altro sugli sconti, sulla procedura di registrazione,
o su come scaricare l’app?

13

U:

volevo delle informazioni sullo sconto del mese

14

A:

Per il mese di gennaio, prevediamo una promozione sugli articoli
per bambini, con uno sconto del 50% su ogni prodotto indicato
con il simbolo “Child” sia online sia in negozio.

15

U:

Quando scade?

16

A:

Questo tipo di sconto si rinnova di mese in mese: questo, ad
esempio, sarà valido fino al 31 di gennaio.

17

U:

come si usa?

18

A:

Lo sconto verrà automaticamente applicato se il prodotto scelto per
l’acquisto è oggetto della promozione: se stai acquistando online,
verrà applicato il prezzo scontato indicato accanto al protocollo,
altrimenti ti verrà applicato lo sconto direttamente in cassa.

19

U:

ok grazie mille

20

A:

Prego! Hai bisogno di altro sugli sconti, sulla procedura di
registrazione, o su come scaricare l’app?

21

U:

no grazie

22

A:

Va bene. Alla prossima!

the conversation opens with a generic open request from the user (“what kinds of discounts do you have?” che sconti avete?) that is satisfied by the agent with a request of more details: the agent needs to know the specific type of discount as additional detail to provide specific information about it. Once the type of discount is defined, the user can start asking specific question related to it without always specifying the subject. Once the user has satisfied his/her needs in relation to newsletter discount, at the final.check page he/she can switch the topic and start asking a series of question related to the other one, until the user has achieved all the needed information. Once the user thanks the agent, this is perceived as an acknowledgement of a successful conversation, so the conversational flow can go away.

5. Conclusions and Future Directions of the Research

19We have demonstrated the applicability of this method also on the new released version of one of the most important Natural Language Understanding platform, namely Dialogflow CX. Since this version of Dialogflow has been released for the Italian language only in November 2020, to our knowledge this is the only study in which this platform is used for Italian and for the realisation of a conversational project with practical purposes. This is therefore a further and more complete implementation of the pragmatic adequateness of this approach.

20In the future, we would like to evaluate the effectiveness of this approach on a fully functional prototype that can be adapted not only for commercial purposes, but also for other important application contexts, such as education. Due to the variety of frameworks available for the evaluation process (Casas et al. 2020), the question of the most suitable evaluation method is still open for further discussion.

Bibliographie

E. Adamopolou and L. Moussiades. 2020. “An Overview of Chatbot Technologies.” Artificial Intelligence Applications and Innovations 584: 373–83.

N. A. Ahmad, M. H. Che, A. Zainal, M. A. R. Fairuz, and Z. Adnan. 2018. “Review of Chatbots Design Techniques.” International Journal of Computer Applications 181 (8): 7–10.

A. Bianchini, F. Tarasconi, R. Ventaglio, and M. Guadalupi. 2017. “‘Gimme the Usual’ - How Handling of Pragmatics Improves Chatbots.” In Proceedings of the Fourth Italian Conference on Computational Linguistics (Clic-It 2017), 30–35.

D. Braun and F. Matthes. 2019. “Towards a Framework for Classifying Chatbots.” In Proceedings of the 21st International Conference on Enterprise Information Systems (Iceis 2019), 484–89. volume 1.

J. Casas, M.-O. Tricot, O. Abou Khaled, E. Mugellini, and P. Cudré-Mauroux. 2020. “Trends & Methods in Chatbot Evaluation.” In Companion Publication of the 2020 International Conference on Multimodal Interaction, 280–86. New York, NY, USA: Association for Computing Machinery.

A. P. Chaves, E. Doerry, J. Egbert, and M. Gerosa. 2019. “It’s How You Say It: Identifying Appropriate Register for Chatbot Language Design.” In Proceedings of the 7th International Conference on Human-Agent Interaction, 102–9.

M. H. Cohen, J. P. Giangola, and J. Balogh. 2004. Voice User Interface Design. Addison Wesley.

K. M. Colby, S. Weber, and F. D. Hilf. 1971. “Artificial Paranoia.” Artificial Intelligence 2 (1): 1–25.

R. Dale. 2016. “Industry Watch the Return of Chatbots.” Natural Language Engineering 22 (5): 811–17.

A. Dall’Acqua, and F. Tamburini. n.d. “Toward a Linguistically Grounded Dialog Model for Chatbot Design.” Italian Journal of Computational Linguistics 7 (1).

R. Dasgupta. 2018. Voice User Interface Design. Moving from Gui to Mixed Modal Interaction. Apress.

A. Følstad, M. Skjuve, and P. B. Brandtzaeg. 2019. “Different Chatbots for Different Purposes: Towards a Typology of Chatbots to Understand Interaction Design.” In Internet Science. INSCI 2018. Lecture Notes in Computer Science, edited by S. S. Bodrunova, O. Koltsova, A. Følstad, H. Halpin, P. Kolozaridi, L. Yuldashev, A. Smoliarova, and H. Niedermayer, 145–56. Springer, Cham: vol 11551.

E. Hall. 2018. Conversational Design. A Book Apart.

S. Hussain, O. Ameri Sianaki, and N. Ababneh. 2019. “A Survey on Conversational Agents/Chatbots Classification and Design Techniques.” In Web, Artificial Intelligence and Network Applications. WAINA 2019. Advances in Intelligent Systems and Computing, edited by L. Barolli, M. Takizawa, F. Xhafa, and T. Enokido. Cham: vol 927. Springer.

G. Jefferson. 1978. “Sequential Aspects of Storytelling in Conversation.” In Studies in the Organization of Conversational Interaction, edited by J. Schenkein, 219–48. Academic Press.

S. Larsson and D. R. Traum. 2000. “Information State and Dialogue Management in the Trindi Dialogue Move Engine Toolkit.” Natural Language Engineering 6 (3-4): 323–40.

V. Mathur and A. Sing. 2018. “The Rapidly Changing Landscape of Conversational Agents.” arXiv 1803.08419v2, 1–14.

S. Mohamad Suhaili, N. Salim, and M. Nazim Jambli. 2021. “Service Chatbots: A Systematic Review.” Expert Systems with Applications 184: 115461.

R. J. Moore and R. Arar. 2019. Conversational Ux Design. A Practitioner’s Guide to the Natural Conversation Framework. Association for Computing Machinery.

C. Pearl. 2016. Designing Voice User Interfaces. Principles of Conversational Experiences. O’Reilly.

N. Radziwill and M. Benton. 2017. “Evaluating Quality of Chatbots and Intelligent Conversational Agents.” arXiv 1704.04579.

H. Sacks, E. A. Schegloff, and G. Jefferson. 1974. “A Simplest Systematics for Organization of Turn-Taking for Conversation.” Language 50: 696–735.

H. Sacks, E. Schegloff, and G. Jefferson. 1992. Lectures on Conversation. Vols. I, II. Blackwell.

E. A. Schegloff. 1982. “Discourse as an Interactional Achievement: Some Uses of ‘Uh Huh’ and Other Things That Come Between Sentences.” In Analysing Discourse: Text and Talk, edited by D. Tannen, 71–93. Georgetown University Press: Washington DC.

E. A. Schegloff, G. Jefferson, and H. Sacks. 1977. “The Preference for Self-Correction in the Organization of Repair in Conversation.” Language 53 (2): 361–82.

C. Thorne. 2017. “Chatbots for Troubleshooting: A Survey.” Language and Linguistics Compass 11 (10): e12253.

D. R. Traum and S. Larsson. 2003. “The Information State Approach to Dialogue Management.” In Current and New Directions in Discourse and Dialogue, edited by J. van Kuppevelt and R. W. Smith, 325–53. Dordrecht: Springer Netherlands.

M. Tsvetkova, R. García-Gavilanes, L. Floridi, and T. Yasseri. 2017. “Even Good Bots Fight: The Case of Wikipedia.” PLOS ONE 12 (2): 1–27.

J. Weizenbaum. 1966. “ELIZA – a Computer Program for the Study of Natural Language Communication Between Man and Machine.” CACM 9 (1): 36–45.

Annexes

Appendix

List of the implemented patterns:
C1.4 Opening Welfare Check (Agent)

1

A:

GREETING. SELF-IDENTIFICATION. NAME REQUEST.

2

U:

NAME.

3

A:

GREETING, DIRECT ADDRESS. WELFARE CHECK.

4

U:

WELFARE REPORT (NEUTRAL / POSITIVE/ NEGATIVE)

5

A:

WELFARE RECEIPT (NEUTRAL / POSITIVE / NEGATIVE)

B4.3 Seq. Closer Appreciation (not helped)

1

A:

INQUIRY/REQUEST

2

U:

NO ANSWER ACCOUNT

3

A:

APPRECIATION

4

U:

REFUTATION

A2.6 Open Request Summary

1

U:

PARTIAL REQUEST

2

A:

DETAIL REQUEST

3

U:

DETAIL

4

A:

DETAIL REQUEST

5

U:

DETAIL

6

A:

DETAIL REQUEST

7

U:

DETAIL

8

A:

REQUEST SUMMARY

9

U:

SUMMARY CONFIRM

10

A:

GRANT

11

U:

SEQUENCE CLOSER

12

A:

RECEIPT

A2.7 Warrant Request & Refusal

1

A:

DETAIL REQUEST

2

U:

WARRANT REQUEST

3

A:

WARRANT

4

U:

REFUSAL

5

A:

ACKNOWLEDGEMENT. <NEXT SECTION>

A2.11 Open Request Repairs

1

U:

FULL REQUEST

2

A:

GRANT

3

U:

REPAIR INITIATOR

4

A:

REPAIR

5

U:

SEQUENCE CLOSER

6

A:

RECEIPT

B2.4 Paraphrase Request (elaboration)

1

U:

<ANY UTTERANCE>

2

A:

PARAPHRASE REQUEST

3

U:

PARAPHRASE DEFAULT

A3.0 Extended Telling with Repair

1

A:

STORY/INSTRUCTION INVITATION

2

U:

PART/STEP 1

3

A:

CONTINUER/PAUSE

4

U:

PART/STEP 2

5

A:

REPAIR INITIATOR

6

U:

REPAIR

7

A:

CONTINUER/PAUSE

8

U:

PART/STEP 3

9

A:

SEQUENCE CLOSER

10

U:

RECEIPT

A3.1 Extended Telling Abort

1

A:

STORY/INSTRUCTION INVITATION

2

U:

PART/STEP 1

3

A:

CONTINUER/PAUSE

4

U:

PART/STEP 2

5

A:

REPAIR INITIATOR

6

U:

REPAIR

7

A:

PART/STEP 3

8

U:

COMPLAINT/ABORT REQUEST

9

A:

ABORT OFFER

10

U:

ABORT CONFIRM

11

A:

ACKNOWLEDGEMENT

A2.9 Open Request Incremental

1

U:

FULL REQUEST

2

A:

GRANT

3

U:

INCREMENTAL REQUEST

4

A:

GRANT

5

U:

SEQUENCE CLOSER

6

A:

RECEIPT

A2.10 Open Request Series

1

U:

FULL REQUEST

2

A:

GRANT

3

U:

RELATED REQUEST

4

A:

GRANT

5

U:

SEQUENCE CLOSER

6

A:

RECEIPT

A2.4 Open Request Agent Detail Request

1

U:

PARTIAL REQUEST

2

A:

DETAIL REQUEST

3

U:

DETAIL

4

A:

GRANT

5

U:

SEQUENCE CLOSER

6

A:

RECEIPT

Notes

1 Copyright  2021 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).

2 https://cloud.google.com/dialogflow/cx/docs/concept/page

3 https://cloud.google.com/dialogflow/cx/docs/concept/handler

4 The complete list of all patterns is available in Moore and Arar and on the website https://researcher.watson.ibm.com/researcher/view_group_subpage.php?id=10182. The Appendix lists the implemented patterns.

Table des illustrations

Titre Figure 1: Overall flows architecture.
URL http://books.openedition.org/aaccademia/docannexe/image/10536/img-1.png
Fichier image/png, 17k
Titre Figure 2: Registration flow diagram.
URL http://books.openedition.org/aaccademia/docannexe/image/10536/img-2.png
Fichier image/png, 46k
Titre Figure 3: App Download flow diagram.
URL http://books.openedition.org/aaccademia/docannexe/image/10536/img-3.png
Fichier image/png, 50k
Titre Figure 4: Discounts flow diagram.
URL http://books.openedition.org/aaccademia/docannexe/image/10536/img-4.png
Fichier image/png, 59k

CC-BY-NC-ND-4.0

Le texte seul est utilisable sous licence CC BY-NC-ND 4.0. Les autres éléments (illustrations, fichiers annexes importés) sont « Tous droits réservés », sauf mention contraire.

Lire

Open access

Rechercher dans OpenEdition Search

Vous allez être redirigé vers OpenEdition Search