Successfully reported this slideshow.
Your SlideShare is downloading. ×

Design and development of a tool for automating scenario production of digital assistants

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 26 Ad

Design and development of a tool for automating scenario production of digital assistants

Download to read offline

The development of advanced Artificial Intelligence techniques in recent years has allowed digital assistant technologies to emerge. From customer service centers to medical diagnostics, digital assistants find application in many areas and are used daily by users. More and more companies are trying to integrate them in their framework and the technologies behind them are constantly evolving. In addition, Open Source technologies bring digital assistant tools closer to developers, allowing them to experiment with them. One such tool is Rasa, an Open Source technology for creating industrial-level digital assistants with Artificial Intelligence. However, the use of Rasa requires a high level of programming software knowledge expertise. As digital assistants become more and more necessary in everyday applications, the barrier of know-how limits the number of people who are involved with them. The present Diploma Thesis focuses on the development of an easy-to-use scenario creation tool for Rasa with the aim of rapidly creating digital assistants. Using Python and specifically the framework Django, it presents the implementation of a full-stack application, from views and resource paths to models and back-end processes. This application makes it easy to create and edit digital assistants by automating most Rasa features. In addition, the application is used by creating digital assistants, simple and complex. First the design of the scenarios and stories that the discussion will take is presented and then they are implemented in the system. Finally, the assistants are tested and the result is evaluated from the examples of discussions. According to the results, the application can successfully create digital assistants that contain the basic components of Rasa. However, as digital assistants become more complex, some human intervention becomes necessary for the desired function to be implemented. Thus, although the application works as we want in simple and complex scenarios, when the operator needs something quite demanding in complexity, it is still necessary to know programming skills.

The development of advanced Artificial Intelligence techniques in recent years has allowed digital assistant technologies to emerge. From customer service centers to medical diagnostics, digital assistants find application in many areas and are used daily by users. More and more companies are trying to integrate them in their framework and the technologies behind them are constantly evolving. In addition, Open Source technologies bring digital assistant tools closer to developers, allowing them to experiment with them. One such tool is Rasa, an Open Source technology for creating industrial-level digital assistants with Artificial Intelligence. However, the use of Rasa requires a high level of programming software knowledge expertise. As digital assistants become more and more necessary in everyday applications, the barrier of know-how limits the number of people who are involved with them. The present Diploma Thesis focuses on the development of an easy-to-use scenario creation tool for Rasa with the aim of rapidly creating digital assistants. Using Python and specifically the framework Django, it presents the implementation of a full-stack application, from views and resource paths to models and back-end processes. This application makes it easy to create and edit digital assistants by automating most Rasa features. In addition, the application is used by creating digital assistants, simple and complex. First the design of the scenarios and stories that the discussion will take is presented and then they are implemented in the system. Finally, the assistants are tested and the result is evaluated from the examples of discussions. According to the results, the application can successfully create digital assistants that contain the basic components of Rasa. However, as digital assistants become more complex, some human intervention becomes necessary for the desired function to be implemented. Thus, although the application works as we want in simple and complex scenarios, when the operator needs something quite demanding in complexity, it is still necessary to know programming skills.

Advertisement
Advertisement

More Related Content

More from ISSEL (20)

Advertisement

Design and development of a tool for automating scenario production of digital assistants

  1. 1. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τομέας Ηλεκτρονικής και Υπολογιστών Διπλωματική Εργασία Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψηφιακών βοηθών Εκπόνηση: Παναγιώτου Θεόφιλος ΑΕΜ: 9164 Επίβλεψη: Αν. Καθ. Συμεωνίδης Ανδρέας Υπ. Δρ. Μάλαμας Νικόλας
  2. 2. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 2 Μεθοδολογία Συμπεράσματα Εισαγωγή Μελλοντικές Επεκτάσεις Πειράματα - Αποτελέσματα
  3. 3. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 3 Κίνητρο - Περιγραφή του προβλήματος Ανάπτυξη εργαλείων απλοποίησης της διαδικασίας δημιουργίας ψηφιακών βοηθών Ένα τέτοιο εργαλείο είναι και το Rasa Framework Η χρήση τέτοιων συστημάτων απευθύνεται αποκλειστικά σε προγραμματιστές Πρόβλημα
  4. 4. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 4 Σκοπός της διπλωματικής Η υλοποίηση ενός εύχρηστου και φιλικού περιβάλλοντος χρήστη Η αυτοματοποίηση της διαδικασίας παραγωγής ψηφιακών βοηθών Η δοκιμή ψηφιακών βοηθών και σύγκριση τους για τον έλεγχο αποτελεσματικότητας και χρησιμότητας του συστήματος
  5. 5. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 5 Μεθοδολογία Συμπεράσματα Εισαγωγή Μελλοντικές Επεκτάσεις Πειράματα - Αποτελέσματα
  6. 6. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 6 Λειτουργία του ψηφιακού βοηθού Κάθε ψηφιακός βοηθός Rasa ακολουθεί τα παρακάτω στάδια με κάθε είσοδο που λαμβάνει
  7. 7. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών Βασικά στοιχεία του Rasa Intents (Προθέσεις) Stories (Ιστορίες) Rules (Κανόνες) Responses (Απαντήσεις) ♦ Οι προθέσεις είναι η κατανόηση του ψηφιακού βοηθού ♦ Οι ιστορίες σχηματίζουν τη ροή της συζήτησης ⬧ Οι απαντήσεις είναι οι προτάσεις εξόδου του ψηφιακού βοηθού ♦ Οι κανόνες είναι υποχρεωτικές κατευθύνσεις της συζήτησης 7
  8. 8. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών Έξτρα συστατικά 1 Forms (Φόρμες): Αποθήκευση στοιχείων από την απάντηση του χρήστη 2 Entities (Οντότητες): Δομημένα κομμάτια πληροφορίας μέσα στα μηνύματα του χρήστη 3 Slots (Θέσεις μνήμεις): Ειδικός αποθηκευτικός χώρος για απαντήσεις του χρήστη 4 Custom Actions (Προσαρμοσμένες δράσεις): Προγραμματισμός εξειδικευμένων δράσεων για πιο πολύπλοκες διαδικασίες 8
  9. 9. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 9 Αρχιτεκτονική του Rasa
  10. 10. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 10 Αρχιτεκτονική Συστήματος ✽ URLs: Κατεύθυνση προς τα κατάλληλα views ✽ Views: Συναρτήσεις που λαμβάνουν δεδομένα από τα μοντέλα και καθιστούν τα πρότυπα των σελίδων ✽ Models: Αναπαράσταση των μοντέλων της βάσης ✽ Templates: Σελίδες αλληλεπίδρασης του χρήστη Χρήση του Framework
  11. 11. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 11 Δομή της Βάσης Δεδομένων Κάθε χρήστης έχει ένα προφίλ και ένα ή περισσότερα Chatbot (ψηφιακό βοηθό) Κάθε Chatbot έχει ένα ή περισσότερα Intents (προθέσεις), Stories (ιστορίες), Rules (κανόνες), Forms (φόρμες), Responses (απαντήσεις), Custom Actions (σύνθετες δράσεις) Κάθε ένα από τα Intents μπορεί να έχει περισσότερα από ένα Examples (παραδείγματα) όπως και κάθε Story μπορεί να έχει περισσότερα από ένα Steps (βήματα)
  12. 12. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 12 Η διεπαφή του χρήστη με την εφαρμογή
  13. 13. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 13 Η σύνταξη του ψηφιακού βοηθού Level 1 Ανάκτηση αντικειμένων από τη βάση δεδομένων και διαμοιρασμός στις κατάλληλες συναρτήσεις Level 2 Ένταξη αντικειμένων σε λίστες και προεπεξεργασία των δεδομένων Level 3 Μετατροπή των λιστών σε YAML Level 5 Εκπαίδευση του μοντέλου Level 4 Σύνταξη των σεναρίων του ψηφιακού βοηθού
  14. 14. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 14 Μεθοδολογία Συμπεράσματα Εισαγωγή Μελλοντικές Επεκτάσεις Πειράματα - Αποτελέσματα
  15. 15. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 15 Απλός ψηφιακός βοηθός Το σχεδιάγραμμα συνομιλίας του ψηφιακού βοηθού Moodbot Αναγνώριση διάθεσης του χρήστη και κατάλληλη απάντηση σε αυτόν Ένα απλό παράδειγμα χρήσης ψηφιακού βοηθού
  16. 16. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 16 Συνομιλία με τον απλό ψηφιακό βοηθό
  17. 17. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 17 Σύνθετος ψηφιακός βοηθός με φόρμες Ένα παράδειγμα ψηφιακού βοηθού που χρησιμοποιεί φόρμες με θήκες μνήμης Λαμβάνει τις απαντήσεις από τον χρήστη και τις επαναχρησιμοποιεί Μπορεί να τις αποθηκεύσει ή και να τις ενσωματώσει σε επόμενες απαντήσεις
  18. 18. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 18 Συνομιλία με τον σύνθετο ψηφιακό βοηθό με φόρμες
  19. 19. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 19 Σύνθετος ψηφιακός βοηθός με δράσεις Ο ψηφιακός βοηθός μπορεί επίσης να χρησιμοποιήσει σύνθετες δράσεις Προγραμματίζονται σε Python και μπορούν να τρέξουν ό,τι κώδικα θελήσει ο δημιουργός Μια συνήθης χρήση είναι η κλήση σε APIs για λήψη δεδομένων
  20. 20. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 20 Συνομιλία με τον σύνθετο ψηφιακό βοηθό με δράσεις
  21. 21. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 21 Μεθοδολογία Συμπεράσματα Εισαγωγή Μελλοντικές Επεκτάσεις Πειράματα - Αποτελέσματα
  22. 22. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 22 Συμπεράσματα ➤ Το Django είναι ικανό να δημιουργήσει μια εφαρμογή μεγάλης έκτασης, διαχειρίζοντας κατάλληλα τα μοντέλα και τις CRUD διεργασίες της. ➤ Η εφαρμογή μπορεί να συνθέσει ψηφιακούς βοηθούς όλων των δυνατοτήτων, απλά όταν αυξάνεται η πολυπλοκότητα του μονοπατιού χρειάζεται μεγαλύτερη τεχνική γνώση. ➤ Το Rasa είναι αρκετά βαρύ λογισμικό γιατί χρησιμοποιεί βιβλιοθήκες μηχανικής μάθησης με πολλές εξαρτήσεις, οπότε δυσκολεύει το στήσιμο του σε διακομιστή. ➤ Το Django με την DTL (Django Template Language) δημιουργεί τις όψεις σε ικανοποιητικό επίπεδο, μαζί με τα Crispy Forms για τη μορφοποίηση των φορμών.
  23. 23. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 23 Μεθοδολογία Συμπεράσματα Εισαγωγή Μελλοντικές Επεκτάσεις Πειράματα - Αποτελέσματα
  24. 24. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 24 Μελλοντικές επεκτάσεις � Εγκατάσταση της εφαρμογής σε υποδομές Cloud � Αναζήτηση για κενά ασφαλείας και κάλυψη τους � Μετάβαση της αρχιτεκτονικής σε REST API � Χρήση εργαλείων DevOps για την αυτοματοποίηση και τον έλεγχο του κύκλου ζωής του λογισμικού
  25. 25. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 25 Ευχαριστίες ● Τον κ. Συμεωνίδη Ανδρέα για την στήριξη του και τις γνώσεις που μας έχει μεταφέρει όλα αυτά τα χρόνια ● Τον επιβλέπον Υπ. Δρ. Μάλαμα Νικόλα για την βοήθεια και την καθοδήγηση του ● Φίλους και συγγενείς που μου συμπαραστάθηκαν κατά τη διάρκεια των σπουδών μου Θα ήθελα να ευχαριστήσω:
  26. 26. Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για την δημιουργία ψηφιακών βοηθών 26 Ερωτήσεις; Ευχαριστώ πολύ για την προσοχή σας!

×