Full text
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ & ΤΕΧΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΑΣ ΑΝΑΠΤΥΞΗ ΕΞΥΠΝΩΝ ΨΗΦΙΑΚΩΝ ΒΟΗΘΩΝ: ΑΞΙΟΠΟΙΗΣΗ ΜΕΓΑΛΩΝ ΓΛΩΣΣΙΚΩΝ ΜΟΝΤΕΛΩΝ ΚΑΙ ΓΡΑΦΩΝ ΓΝΩΣΗΣ ΓΙΑ ΒΕΛΤΙΩΜΕΝΗ ΚΑΤΑΝΟΗΣΗ ΚΑΙ ΑΝΑΚΤΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ Δ Ι Π Λ Ω Μ Α Τ Ι Κ Η Ε Ρ Γ Α Σ Ι Α ΟΡΕΣΤΗΣ-ΚΩΝΣΤΑΝΤΙΝΟΣ ΠΑΠΑΘΑΝΑΣΟΠΟΥΛΟΣ ΕΠΙΒΛΕΠΩΝ: ΝΙΚΟΛΑΟΣ ΚΑΡΑΚΑΠΙΛΙΔΗΣ ΠΑΤΡΑ – ΟΚΤΩΒΡΙΟΣ 2025
i Πανεπιστήμιο Πατρών, Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών. ΟΡΕΣΤΗΣ-ΚΩΝΣΤΑΝΤΙΝΟΣ ΠΑΠΑΘΑΝΑΣΟΠΟΥΛΟΣ © 2025 – Με την επιφύλαξη παντός δικαιώματος Το σύνολο της εργασίας αποτελεί πρωτότυπο έργο, παραχθέν από τον Ορέστη Κωνσταντίνο Παπαθανασόπουλο, και δεν παραβιάζει δικαιώματα τρίτων καθ’ οιονδήποτε τρόπο. Αν η εργασία περιέχει υλικό, το οποίο δεν έχει παραχθεί από τον/την ίδιο/α, αυτό είναι ευδιάκριτο και αναφέρεται ρητώς εντός του κειμένου της εργασίας ως προϊόν εργασίας τρίτου, σημειώνοντας με παρομοίως σαφή τρόπο τα στοιχεία ταυτοποίησής του, ενώ παράλληλα βεβαιώνει πως στην περίπτωση χρήσης αυτούσιων γραφικών αναπαραστάσεων, εικόνων, γραφημάτων κ.λπ., έχει λάβει τη χωρίς περιορισμούς άδεια του κατόχου των πνευματικών δικαιωμάτων για την συμπερίληψη και επακόλουθη δημοσίευση του υλικού αυτού.
ii ΠΙΣΤΟΠΟΙΗΣΗ Πιστοποιείται ότι η Διπλωματική Εργασία με τίτλο ΑΝΑΠΤΥΞΗ ΕΞΥΠΝΩΝ ΨΗΦΙΑΚΩΝ ΒΟΗΘΩΝ: ΑΞΙΟΠΟΙΗΣΗ ΜΕΓΑΛΩΝ ΓΛΩΣΣΙΚΩΝ ΜΟΝΤΕΛΩΝ ΚΑΙ ΓΡΑΦΩΝ ΓΝΩΣΗΣ ΓΙΑ ΒΕΛΤΙΩΜΕΝΗ ΚΑΤΑΝΟΗΣΗ ΚΑΙ ΑΝΑΚΤΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών ΟΡΕΣΤΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΠΑΠΑΘΑΝΑΣΟΠΟΥΛΟΣ ΤΟΥ ΦΩΤΙΟΥ Αριθμός Μητρώου: 1083867 Παρουσιάστηκε δημόσια στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών στις 06/10/2025 και εξετάστηκε από την ακόλουθη εξεταστική επιτροπή: Νικόλαος Καρακαπιλίδης, Καθηγητής, Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών (επιβλέπων) Μιχαήλ Λογοθέτης, Καθηγητής, Τμήμα Ηλεκτρολόγων Μηχανικών & Τεχνολογίας Υπολογιστών (μέλος επιτροπής) Κυριάκος Σγάρμπας, Αναπληρωτής Καθηγητής, Τμήμα Ηλεκτρολόγων Μηχανικών & Τεχνολογίας Υπολογιστών (μέλος επιτροπής) Ο Επιβλέπων Ο Διευθυντής του Τομέα Νικόλαος Καρακαπιλίδης Καθηγητής Σταυρός Κουλουρίδης Καθηγητής
iii
iv ΠΡΟΛΟΓΟΣ Θα ήθελα να εκφράσω την ειλικρινή μου ευγνωμοσύνη στον επιβλέποντα καθηγητή της παρούσας διπλωματικής, Νικόλαο Καρακαπιλίδη, για την ευκαιρία που μου έδωσε να ασχοληθώ με ένα θέμα που ανταποκρίνεται στα ενδιαφέροντά μου. Η εμπιστοσύνη που έδειξε στις ικανότητές μου, καθώς και η πολύτιμη καθοδήγηση που μου προσέφερε, υπήρξαν καθοριστικοί παράγοντες για την ολοκλήρωση αυτής της εργασίας. Εκτός από τον επιβλέποντά μου, θα ήθελα επίσης να ευχαριστήσω τον Καθηγητή Μιχαήλ Λογοθέτη και τον Αναπληρωτή Καθηγητή Κυριάκο Σγάρμπα για τη συμμετοχή τους στην εξεταστική επιτροπή. Ιδιαίτερες ευχαριστίες οφείλω στον διδάκτορα Νικόλαο Γιαρέλη για τη βοήθεια και τις χρήσιμες συμβουλές του καθ’ όλη τη διάρκεια εκπόνησης της διπλωματικής. Η συνεισφορά του ήταν καθοριστική για την απόκτηση των απαραίτητων γνώσεων και την ολοκλήρωση της εργασίας. Τέλος, ένα μεγάλο ευχαριστώ στην οικογένειά μου για την αμέριστη υποστήριξη και υπομονή της σε κάθε στάδιο των σπουδών μου, καθώς και στα κοντινά μου πρόσωπα για τη διαρκή συμπαράσταση τους όλα αυτά τα χρόνια.
v ΠΕΡΙΛΗΨΗ ΑΝΑΠΤΥΞΗ ΕΞΥΠΝΩΝ ΨΗΦΙΑΚΩΝ ΒΟΗΘΩΝ: ΑΞΙΟΠΟΙΗΣΗ ΜΕΓΑΛΩΝ ΓΛΩΣΣΙΚΩΝ ΜΟΝΤΕΛΩΝ ΚΑΙ ΓΡΑΦΩΝ ΓΝΩΣΗΣ ΓΙΑ ΒΕΛΤΙΩΜΕΝΗ ΚΑΤΑΝΟΗΣΗ ΚΑΙ ΑΝΑΚΤΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΦΟΙΤΗΤΗ: ΠΑΠΑΘΑΝΑΣΟΠΟΥΛΟΣ ΟΡΕΣΤΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΕΠΙΒΛΕΠΟΝΤΟΣ: ΚΑΡΑΚΑΠΙΛΙΔΗΣ ΝΙΚΟΛΑΟΣ Η παρούσα διπλωματική εργασία επικεντρώνεται στην ανάπτυξη ενός έξυπνου ιατρικού ψηφιακού βοηθού, ο οποίος συνδυάζει Μεγάλα Γλωσσικά Μοντέλα (LLMs) με γράφους γνώσης, μέσω της τεχνικής της Ανάκτησης με Ενισχυμένη Παραγωγή (Retrieval-Augmented Generation – RAG). Στόχος της έρευνας ήταν η υπέρβαση βασικών περιορισμών των παραδοσιακών ιατρικών chatbots, όπως η περιορισμένη κατανόηση φυσικής γλώσσας και η εμφάνιση ανακριβών ή ατεκμηρίωτων αποκρίσεων (hallucinations). Για την υλοποίηση του συστήματος αξιοποιήθηκαν σύγχρονα εργαλεία και τεχνολογίες, όπως η γλώσσα προγραμματισμού Python, το LLaMA 3.1 – 8B Instruct, η Neo4j ως βάση δεδομένων και τα Sentence Transformers για σημασιολογική αναζήτηση. Αναπτύχθηκε εξειδικευμένη ιατρική οντολογία και εξήχθησαν τριπλέτες γνώσης, οι οποίες ενσωματώθηκαν στον γράφο ώστε να αποτελέσουν τη βάση ανάκτησης πληροφορίας. Το RAG σύστημα υλοποιήθηκε σε βήματα που περιλαμβάνουν εξαγωγή οντοτήτων, σημασιολογική αντιστοίχιση με τριπλέτες, δημιουργία κατάλληλου prompt και παραγωγή απάντησης μέσω LLM. Τα πειράματα και τα παραδείγματα χρήσης που παρουσιάστηκαν κατέδειξαν ότι η προτεινόμενη αρχιτεκτονική βελτιώνει σημαντικά την ακρίβεια και την αξιοπιστία των παραγόμενων απαντήσεων. Οι απαντήσεις δεν περιορίζονται σε γενικές γνώσεις του μοντέλου, αλλά βασίζονται σε τεκμηριωμένη πληροφορία από τον γράφο γνώσης, μειώνοντας τον κίνδυνο παραπληροφόρησης. Επιπλέον, η διάθεση του κώδικα και των δεδομένων καθιστά το έργο αναπαραγώγιμο και επεκτάσιμο, ενισχύοντας τη διαφάνεια της έρευνας. Συνολικά, η εργασία αποδεικνύει ότι ο συνδυασμός LLMs και γράφων γνώσης αποτελεί μια πολλά υποσχόμενη κατεύθυνση για την ανάπτυξη αξιόπιστων ιατρικών ψηφιακών βοηθών. Τα αποτελέσματα αναδεικνύουν τη δυνατότητα εφαρμογής της προσέγγισης αυτής όχι μόνο στον χώρο της υγείας, αλλά και σε άλλους τομείς όπου απαιτείται αλληλεπίδραση φυσικής γλώσσας με τεκμηριωμένη πληροφορία.
vi ENGLISH SUMMARY DEVELOPING INTELLIGENT CHATBOTS: LEVERAGING LARGE LANGUAGE MODELS AND KNOWLEDGE GRAPHS FOR ENHANCED CONVERSATIONAL UNDERSTANDING AND KNOWLEDGE RETRIEVAL STUDENT NAME, SURNAME: ORESTIS KONSTANTINOS PAPATHANASOPOULOS SUPERVISOR NAME, SURNAME: NIKOLAOS KARACAPILIDIS This thesis investigates the development of an intelligent medical digital assistant that integrates Large Language Models (LLMs) with knowledge graphs through the framework of Retrieval-Augmented Generation (RAG). The primary objective of this research was to address the limitations of conventional medical chatbots, which often exhibit restricted natural language understanding and a tendency to generate inaccurate or non-evidence-based responses (hallucinations). By leveraging state-of-the-art language models in combination with structured and verifiable knowledge sources, the study aims to provide a more reliable, transparent, and context-aware conversational system. The implementation was carried out using a set of advanced tools and technologies, including Python as the programming environment, LLaMA 3.1 – 8B Instruct as the core LLM, Neo4j as the graph database for knowledge storage and retrieval, and Sentence Transformers for semantic similarity-based search. A medical ontology was designed, and knowledge triplets were systematically extracted and incorporated into the graph, thereby forming a structured knowledge base. The RAG pipeline was organized into sequential stages comprising entity recognition, semantic retrieval of relevant triplets, prompt construction, and final response generation through the LLM. This modular architecture facilitated both flexibility and scalability, ensuring that the system could be extended or adapted to additional domains. Experimental evaluation and use-case demonstrations highlighted the effectiveness of the proposed architecture. The findings indicate that the integration of LLMs with a graph-based knowledge retrieval layer significantly enhances both the accuracy and the credibility of generated responses. Unlike baseline LLM outputs that rely solely on pre-trained parameters, the responses of the implemented system are grounded in verifiable medical knowledge, thereby reducing the risk of misinformation, which is a critical factor in the healthcare domain. Furthermore, the open availability of code and data ensures the reproducibility of the research and strengthens its contribution to the broader field of open and transparent science. In conclusion, this thesis demonstrates that integrating LLMs with knowledge graphs represents a highly promising approach for advancing the next generation of medical assistants. Beyond the immediate healthcare context, the proposed methodology holds considerable potential for application in other domains where natural language interaction with structured, validated, and evolving knowledge is required. Such an approach not only advances the state of conversational AI but also contributes to the development of trustworthy, and impactful intelligent systems.
Περιεχόμενα 1 Εισαγωγή ...................................................................................................................... 1 1.1 Ψηφιακός βοηθός ............................................................................................... 1 1.2 Εφαρμογές ........................................................................................................... 3 1.3 Στόχος και διάρθρωση της εργασίας................................................................... 4 2 Επισκόπηση ψηφιακών βοηθών υγείας ...................................................................... 6 2.1 Παραδοσιακοί ιατρικοί ψηφιακοί βοηθοί .......................................................... 6 2.2 Ιατρικοί ψηφιακοί βοηθοί παραγωγικής τεχνητής νοημοσύνης ...................... 11 3 Υλοποίηση του ιατρικού ψηφιακού βοηθού ............................................................. 18 3.1 Τεχνολογίες και εργαλεία που χρησιμοποιήθηκαν .......................................... 18 3.1.1 Γλώσσα προγραμματισμού και βιβλιοθήκες ............................................ 18 3.1.2 Μεγάλο Γλωσσικό Μοντέλο: LLaMA 3.1 – 8B Instruct ............................. 19 3.1.3 Βάση Δεδομένων Γράφου: Neo4j Aura .................................................... 20 3.1.4 Χρήση Sentence Transformers για Σημασιολογική Ανάκτηση Πληροφορίας (Semantic Retrieval) ....................................................................................................... 21 3.1.5 Βιβλιοθήκες Transformers και Bitsandbytes ............................................ 22 3.1.6 Kaggle Notebooks ..................................................................................... 23 3.2 Οντολογία και Επεξεργασία Δεδομένων ........................................................... 23 3.2.1 Σχεδιασμός της Ιατρικής οντολογίας, πηγές κειμένων και συλλογή πληροφορίας ................................................................................................................. 24 3.2.2 Εξαγωγή Ιατρικών τριπλετών .................................................................... 28 3.2.3 Σύνδεση των δεδομένων με τον γράφο γνώσης ...................................... 32 3.3 Ανάκτηση με Ενισχυμένη Παραγωγή (RAG) ...................................................... 35 3.3.1 Εξαγωγή Οντοτήτων και Υπολογισμός Εννοιολογικής Ομοιότητας ......... 36 3.3.2 Ανάκτηση Σχετικών Τριπλετών από τον Γράφο ........................................ 39 3.3.3 Δημιουργία Ερωτήματος (Prompt) προς το LLM ...................................... 40 3.3.4 Ανάκληση Απάντησης μέσω LLM .............................................................. 43
ii 3.3.5 Ολοκληρωμένη ροή του RAG συστήματος ............................................... 48 3.4 Παραδείγματα χρήσης του ιατρικού ψηφιακού βοηθού ................................. 52 4 Συμπεράσματα και Μελλοντικές Κατευθύνσεις ........................................................ 61 4.1 Ανακεφαλαίωση Στόχων και Συνεισφορών ...................................................... 61 4.2 Κυριά συμπεράσματα από την υλοποίηση ....................................................... 61 4.3 Περιορισμοί της προσέγγισης ........................................................................... 62 4.4 Μελλοντικές Κατευθύνσεις Έρευνας ................................................................ 63 Βιβλιογραφικές Αναφορές ............................................................................................ 65
5 ανάπτυξη ενός προηγμένου συστήματος ανάκτησης και παραγωγής απαντήσεων (RetrievalAugmented Generation – RAG), ειδικά προσαρμοσμένου στις ανάγκες του ιατρικού τομέα. Το μοντέλο RAG συνδυάζει την ισχύ των μεγάλων γλωσσικών μοντέλων (LLMs) με την ανάκτηση τεκμηριωμένης πληροφορίας από εξωτερικές βάσεις δεδομένων ή γνώσης, πριν την παραγωγή μιας απάντησης. Με αυτόν τον τρόπο, αποφεύγεται η εξάρτηση αποκλειστικά από την εσωτερική "μνήμη" του μοντέλου, ενισχύοντας έτσι την ακρίβεια και τη θεμελίωση των απαντήσεων σε πραγματικά δεδομένα. Αξιοποιείται η έννοια των Γράφων Γνώσης (Knowledge Graphs), δηλαδή δομών που αναπαριστούν πληροφορίες ως σύνολα οντοτήτων και των μεταξύ τους σχέσεων, με μορφή τριπλετών. Οι γράφοι γνώσης επιτρέπουν την ημιδομημένη αποθήκευση και εύκολη ανάκτηση πληροφορίας με σημασιολογικό περιεχόμενο, γεγονός που διευκολύνει την κατανόηση και τεκμηρίωση των παραγόμενων απαντήσεων. Αξιοποιήθηκαν αυτές οι σύγχρονες τεχνικές ώστε να αντιμετωπιστεί το πρόβλημα των λεγόμενων hallucinations, δηλαδή της παραγωγής ανακριβών ή ανυπόστατων πληροφοριών από τα γλωσσικά μοντέλα. Μέσα από πειραματισμό με διάφορες τεχνολογικές προσεγγίσεις οδηγήθηκα στην επιτυχή ολοκλήρωση της εργασίας και στην ανάπτυξη ενός συστήματος πιο αξιόπιστου, διαφανούς και προσαρμοσμένου στις ανάγκες του ιατρικού περιβάλλοντος. Η παρούσα μελέτη , λοιπόν, προσφέρει πέντε βασικές συνεισφορές: 1. Σχεδιασμός και υλοποίηση εφαρμογής που συνδυάζει ένα Μεγάλο Γλωσσικό Μοντέλο με μια γραφο-δομημένη βάση γνώσης, αξιοποιώντας την σύγχρονη τεχνική RAG, για την απάντηση ιατρικών ερωτημάτων. 2. Αντιμετώπιση του φαινομένου των γλωσσικών παραισθήσεων (hallucinations), διασφαλίζοντας ότι οι απαντήσεις βασίζονται αποκλειστικά σε τεκμηριωμένη πληροφορία και αντιμετωπίζοντας ένα ζήτημα που υποφέρουν τα ιατρικά chatbots. 3. Πειραματική αξιολόγηση διαφορετικών τεχνολογικών προσεγγίσεων, με σκοπό τη βελτιστοποίηση της απόδοσης και της ακρίβειας του συνολικού συστήματος. 4. Ανάλυση της αποτελεσματικότητας του συστήματος και των αντίστοιχων παρατηρήσεων από αυτό, εστιάζοντας στην ακρίβεια, τη συνάφεια και την αξιοπιστία των παραγόμενων απαντήσεων ως προς τη σχετική γνώση που παρέχεται από τη βάση δεδομένων. 5. Παροχή κώδικα και των αντίστοιχων δεδομένων, με στόχο τη διευκόλυνση της μελλοντικής χρήσης και επέκτασης του συστήματος σε άλλους τομείς εφαρμογής ή τύπους γνώσης, ενισχύοντας τη διαφάνεια και την επαναληψιμότητα της έρευνας. Η υπόλοιπη δομή της εργασίας διαμορφώνεται ως εξής: Στην Ενότητα 2 παρουσιάζονται οι βασικές έννοιες καθώς και οι σημαντικότερες ερευνητικές προσεγγίσεις που σχετίζονται με τους ψηφιακούς ιατρικούς βοηθούς. Στην Ενότητα 3 περιγράφεται αναλυτικά ο ψηφιακός βοηθός που αναπτύχθηκε στο πλαίσιο της παρούσας μελέτης, μαζί με τις τεχνολογίες και τις μεθόδους που χρησιμοποιήθηκαν. Τέλος, στην Ενότητα 4 παρατίθενται τα βασικά συμπεράσματα, εντοπίζονται ανοιχτά ζητήματα που προέκυψαν κατά τη μελέτη, και προτείνονται κατευθύνσεις για μελλοντική έρευνα.
6 2 Επισκόπηση ψηφιακών βοηθών υγείας 2.1 Παραδοσιακοί ιατρικοί ψηφιακοί βοηθοί Όπως αναφέρθηκε και προηγουμένως, οι ψηφιακοί βοηθοί βρίσκουν ευρεία εφαρμογή σε ποικίλους τομείς. Στο πλαίσιο της παρούσας εργασίας, ωστόσο, εστιάζουμε ειδικά στην ανάπτυξη ενός ιατρικού ψηφιακού βοηθού. Για τον λόγο αυτό, είναι σκόπιμο να εξετασθούν με μεγαλύτερη λεπτομέρεια προηγούμενες υλοποιήσεις παρόμοιων συστημάτων στον χώρο της υγείας. Αρχικά, θα αναλυθούν παραδοσιακά chatbots, τα οποία χαρακτηρίζονται από τους γνωστούς περιορισμούς όπως η περιορισμένη ικανότητα κατανόησης της φυσικής γλώσσας και η εφαρμογή τους σε ένα στενό φάσμα προκαθορισμένων σεναρίων, που τα καθιστά κατάλληλα μόνο για εξειδικευμένες και συγκεκριμένες λειτουργίες. Τα rule-based chatbots ακολουθούν προκαθορισμένους κανόνες και ροές διαλόγου, αντιδρώντας μόνο σε συγκεκριμένες λέξεις-κλειδιά ή επιλογές που έχουν εκ των προτέρων προγραμματιστεί, χωρίς δυνατότητα αυθόρμητης κατανόησης της φυσικής γλώσσας. Το CoachAI (Fadhil et al., 2019) αποτελεί ένα παραδοσιακό chatbot βασισμένο σε κανόνες (rulebased), σχεδιασμένο για την προώθηση ενός υγιεινού τρόπου ζωής μέσω υποστηρικτικής καθοδήγησης σε τομείς όπως η φυσική δραστηριότητα, η διατροφή και η διαχείριση άγχους. Το CoachAI συνδυάζει έναν ψηφιακό βοηθό βασισμένο σε αρχιτεκτονική πεπερασμένων καταστάσεων (Finite State Machine), δηλαδή ένα μοντέλο λογικής που καθορίζει τη ροή ενός συστήματος μέσω διαδοχικών καταστάσεων, όπου κάθε μετάβαση εξαρτάται από την είσοδο του χρήστη ή κάποιες προκαθορισμένες συνθήκες. Ο ψηφιακός βοηθός υλοποιείται στην εφαρμογή Telegram και καθοδηγεί τους χρήστες μέσω δομημένων και ιεραρχημένων διαλόγων σε εξατομικευμένες δραστηριότητες, ενώ ταυτόχρονα συλλέγει δεδομένα σχετικά με τη συμμόρφωση και την πρόοδό τους. Παράλληλα, διατηρείται ενεργή η ανθρώπινη παρέμβαση, ώστε να παρέχεται συναισθηματική υποστήριξη και να προσαρμόζονται οι παρεμβάσεις σύμφωνα με τις ανάγκες του κάθε χρήστη. Η συγκεκριμένη δομή παρουσιάζεται και στην κάτωθι εικόνα:
7 Εικόνα 1. Η αρχιτεκτονική του CoachAI (Πηγή: Fadhil et al., 2019) Επίσης, στο CoachAI, ο χρήστης δεν έχει τη δυνατότητα ελεύθερης πληκτρολόγησης, αλλά καλείται να επιλέξει ανάμεσα σε προκαθορισμένες επιλογές μέσω κουμπιών όπως φαίνεται και στην εικόνα 2, καθώς το σύστημα ακολουθεί αυστηρά δομημένη ροή διαλόγου. Εικόνα 2. Η διεπαφή του coachAI (Πηγή: Fadhil et al., 2019)
8 Το SELMA (Hauser-Ulrich et al., 2020) αποτελεί ένα ακόμα rule-based ιατρικού chatbot που έχει σχεδιαστεί για την αυτοδιαχείριση του χρόνιου πόνου μέσω γνωσιακής συμπεριφορικής θεραπείας. Αναπτύχθηκε χρησιμοποιώντας την πλατφόρμα MobileCoach και ενσωμάτωνε διαλόγους βασισμένους σε σενάρια με προκαθορισμένες απαντήσεις, πολυμεσικό υλικό και περιορισμένες δυνατότητες προσωπικής επιλογής θεμάτων. Η μελέτη περιέλαβε 102 συμμετέχοντες που επιλέχθηκαν τυχαία. Η πιλοτική μελέτη που διεξήχθη ανέδειξε σημαντική βελτίωση σε δευτερεύοντες δείκτες όπως η ένταση του πόνου και η γενική ευεξία, ενώ οι χρήστες ανέφεραν υψηλή αποδοχή, χρηστικότητα και ικανοποίηση από την εφαρμογή. Ωστόσο, επισημάνθηκαν περιορισμοί στην ευελιξία διαλόγου, καθώς οι συμμετέχοντες εξέφρασαν την επιθυμία για μεγαλύτερη δυνατότητα ελεύθερης απάντησης και αυξημένη εξατομίκευση. Η μελέτη κατέληξε ότι το SELMA μπορεί να εφαρμοστεί στην πράξη και ότι μελλοντικές εκδόσεις θα πρέπει να προσαρμοστούν ώστε να αυξηθεί η προσωποποίηση και η ευελιξία της αλληλεπίδρασης. Το Medibot (Srivastava & Singh, 2020) είναι ένα αυτοματοποιημένο ιατρικό chatbot, που βασίζεται σε τεχνικές αναγνώρισης προτύπων (pattern matching) με τη χρήση AIML (Artificial Intelligence Markup Language), ένα σύστημα βασισμένο στη XML που επιτρέπει τη δημιουργία προτυποποιημένων διαλόγων. Σε αυτό το πλαίσιο, το Medibot ανήκει ξεκάθαρα στην κατηγορία των rule-based chatbots, καθώς η λειτουργικότητά του στηρίζεται σε προκαθορισμένους κανόνες (patterns) και αντιστοιχίσεις. Το Medibot συνιστά ένα παραδοσιακό ιατρικό chatbot βασισμένο σε κανόνες, το οποίο χρησιμοποιεί AIML για την αναγνώριση προτύπων στις εισόδους των χρηστών και την αντιστοίχισή τους με προκαθορισμένες αποκρίσεις. Η αρχιτεκτονική του δεν βασίζεται σε εξελιγμένα μοντέλα γλώσσας για κατανόηση φυσικής γλώσσας, αλλά αξιοποιεί συγκεκριμένες απλές προτάσεις όπως «I am feeling like *» ή «Tell me remedies for *», ώστε να εντοπίσει τα σχετικά συμπτώματα ή να προσδιορίσει αιτήματα για θεραπεία και να δώσει την προκαθορισμένη απάντηση. Η διαδικασία διάγνωσης πραγματοποιείται μέσω σταδιακής αποσαφήνισης των συμπτωμάτων, ενώ το σύστημα προσπαθεί να εντοπίσει το πιθανό νόσημα, το οποίο αξιολογεί με βάση κριτήρια σοβαρότητας. Ο μηχανισμός διάγνωσης βασίζεται σε συγκρίσεις με υπάρχουσα βάση δεδομένων και ενσωματώνει αλγορίθμους όπως SVM και KNN για να αυξήσει την ακρίβεια των αποτελεσμάτων. Ωστόσο, η χρήση των αλγορίθμων αυτών γίνεται σε ξεχωριστό στάδιο αναγνώρισης και δεν επηρεάζει τη βασική δομή αλληλεπίδρασης του chatbot, η οποία παραμένει στηριζόμενη σε πρότυπα καθορισμένων κανόνων. Η σχεδίαση του Medibot το καθιστά λειτουργικό σε περιβάλλοντα όπου οι ανάγκες είναι περιορισμένες και οι μορφές αλληλεπίδρασης μπορούν να προβλεφθούν εκ των προτέρων. Αν και προσφέρει υψηλή ταχύτητα απόκρισης και σαφήνεια στις ερωταποκρίσεις, η ικανότητά του να χειρίζεται ασαφείς, πολυσύνθετες ή απροσδόκητες ερωτήσεις παραμένει περιορισμένη. Οι Rosruen & Samanchuen (2018) υλοποίησαν ένα συμβουλευτικό ιατρικό chatbot, με στόχο την παροχή βασικών οδηγιών υγείας και την ενίσχυση της αυτοδιαχείρισης των ασθενών. Το σύστημα έχει σχεδιαστεί ως μια προσβάσιμη πλατφόρμα ερωταποκρίσεων (Q&A), η οποία μπορεί να υποστηρίξει απλούς διαλόγους πρώτου επιπέδου, χωρίς την ανάγκη ανθρώπινης παρέμβασης. Απευθύνεται κυρίως σε χρήστες που αναζητούν γενικές ιατρικές πληροφορίες, παρέχοντας άμεσες απαντήσεις σε ερωτήματα που σχετίζονται με συμπτώματα ή βασικές θεραπείες. Η αρχιτεκτονική του chatbot βασίζεται σε τρεις κύριες τεχνολογικές συνιστώσες. Πρώτον, αξιοποιείται το εργαλείο TextBlob για την επεξεργασία φυσικής γλώσσας, μέσω του οποίου πραγματοποιείται εξαγωγή λέξεων-κλειδιών (keywords) από την είσοδο του χρήστη, καθώς και ανάλυση συναισθήματος (sentiment analysis) για την αξιολόγηση της συναισθηματικής κατάστασης του ασθενούς. Δεύτερον, το σύστημα ενσωματώνει μια στατική βάση δεδομένων ερωτήσεων–απαντήσεων, από την οποία
9 αντλούνται πληροφορίες με βάση την εγγύτητα της εισόδου του χρήστη σε υπάρχουσες καταχωρήσεις. Σε περιπτώσεις όπου δεν υπάρχει ακριβής αντιστοίχιση, εφαρμόζεται μέθοδος υπολογισμού ομοιότητας συνημίτονου (cosine similarity) για την ανεύρεση της πλησιέστερης διαθέσιμης απάντησης. Τρίτον, υπάρχει πρόβλεψη για υποστήριξη φωνητικής διεπαφής μέσω της βιβλιοθήκης SpeechRecognition της Python, επιτρέποντας hands-free αλληλεπίδραση. Με βάση τα παραπάνω χαρακτηριστικά, το Medical chatbot μπορεί να καταταχθεί στην κατηγορία των στατικών Q&A chatbots βασισμένων σε pattern matching και lexical similarity, δηλαδή συστημάτων ανάκτησης πληροφορίας με απλό μηχανισμό αντιστοίχισης λέξεων. Παρά την ενσωμάτωση βασικών στοιχείων NLP και sentiment analysis, η απουσία δυναμικής γλωσσικής κατανόησης ή αυτόνομης παραγωγής γνώσης το καθιστά ακατάλληλο για διαχείριση σύνθετων ιατρικών ερωτημάτων. Το πέμπτο παράδειγμα εντάσσεται στις προσπάθειες ανάπτυξης αυτοματοποιημένων συστημάτων αρχικής ιατρικής διάγνωσης μέσω διαλόγου, με στόχο τη μείωση του κόστους υγειονομικής περίθαλψης και την ενίσχυση της προσβασιμότητας σε βασική ιατρική καθοδήγηση. Οι Divya et al. (2018) προτείνουν ένα chatbot βασισμένο στην Τεχνητή Νοημοσύνη, το οποίο επιτρέπει σε ασθενείς να περιγράψουν τα συμπτώματά τους με φυσικό τρόπο και να λάβουν μια προσωποποιημένη προκαταρκτική διάγνωση, καθώς και σύσταση για ειδικό γιατρό εφόσον αυτό κρίνεται απαραίτητο. Η αρχιτεκτονική του συστήματος οργανώνεται γύρω από μια γραμμική ακολουθία διαλόγου που υλοποιείται ως πεπερασμένο αυτόματο (finite-state graph). Ο διάλογος εκκινεί με την ταυτοποίηση του χρήστη και ακολουθείται από διαδοχικά στάδια συλλογής, ανάλυσης και επιβεβαίωσης συμπτωμάτων. Η εξαγωγή των συμπτωμάτων πραγματοποιείται μέσω αλγορίθμων αναζήτησης συμβολοσειρών (string search), οι οποίοι εντοπίζουν σχετικές φράσεις μέσα στο φυσικό λόγο του χρήστη. Σε περιπτώσεις ασαφούς περιγραφής, το σύστημα παράγει λίστα με πιθανές ερμηνείες (υποψήφια συμπτώματα) και ζητά επιβεβαίωση από τον χρήστη. Η χαρτογράφηση των συμπτωμάτων σε γνωστές παθήσεις πραγματοποιείται μέσω αντιστοίχισης με βάση δεδομένων, ενώ η τελική διάγνωση συνοδεύεται από χαρακτηρισμό της σοβαρότητας (ήπια ή σοβαρή πάθηση) και παραπομπή σε ιατρό. Το chatbot υλοποιείται ως text-to-text conversational agent, χωρίς φωνητική υποστήριξη ή προηγμένες δυνατότητες επεξεργασίας συναισθήματος. Το σύστημα αποθηκεύει τα ιστορικά συνομιλιών του χρήστη, δίνοντας τη δυνατότητα ανασκόπησης προηγούμενων διαγνώσεων. Οι απαντήσεις παράγονται βάσει προκαθορισμένων σεναρίων και προτύπων διαλόγου, με χρήση Natural Language Generation (NLG) templates που ελέγχονται από κανόνες μετάβασης καταστάσεων. Παρά την αναφορά στην Τεχνητή Νοημοσύνη, η δομή είναι κατά βάση rulebased, με περιορισμένη αξιοποίηση εκπαιδευτικών δεδομένων ή προγνωστικών μοντέλων μηχανικής μάθησης. Οι Dharwadkar και Deshpande (2018) ενσωματώνει στοιχεία αναγνώρισης φυσικής γλώσσας, πρόβλεψης ασθενειών μέσω υπολογιστικών αλγορίθμων, καθώς και διεπαφή φωνητικής αλληλεπίδρασης μέσω Android εφαρμογής. Η εν λόγω προσέγγιση εμπίπτει στην κατηγορία των παραδοσιακών υβριδικών chatbots, με σαφή προσανατολισμό προς την ενσωμάτωση της μηχανικής μάθησης σε ένα κατά τα άλλα δομημένο, βάσει κανόνων, σύστημα. Η αρχιτεκτονική του προτεινόμενου συστήματος εστιάζει σε ένα web-based περιβάλλον με backend σε MySQL και frontend σε Android εφαρμογή, ενισχυμένη με τη χρήση Google APIs για μετατροπή φωνής-κειμένου και αντιστρόφως. Η ανάλυση φυσικής γλώσσας βασίζεται σε αλγορίθμους όπως ο Porter Stemmer, ενώ η σημασιολογική εγγύτητα προτάσεων εκτιμάται με βάση μετρικές ομοιότητας λέξεων και διάταξης λέξεων. Η προγνωστική λειτουργία του υλοποιείται μέσω αλγορίθμου Υποστήριξης Διανυσμάτων (Support Vector Machine - SVM), ο οποίος χρησιμοποιείται για την ταξινόμηση των εισερχόμενων περιγραφών συμπτωμάτων σε κατηγορίες πιθανών ασθενειών. Τα
10 πειραματικά αποτελέσματα δείχνουν ότι η απόδοση του συστήματος στην πρόβλεψη ασθενειών είναι ιδιαίτερα υψηλή, με το SVM να υπερτερεί σε ακρίβεια έναντι άλλων αλγορίθμων. Το σύστημα προσφέρει τις εξής βασικές λειτουργίες: • Υποβολή ιατρικών ερωτημάτων μέσω κειμένου ή φωνής. • Παροχή πληροφοριών για φαρμακευτικά σκευάσματα, περιλαμβανομένων στοιχείων όπως ονομασία, δοσολογία και ημερομηνία λήξης. • Πρόβλεψη ασθενειών με βάση ηλικιακά και δημογραφικά δεδομένα, χρησιμοποιώντας τα δεδομένα εγγραφής του χρήστη. • Αλληλεπίδραση φυσικής γλώσσας με χρήση επεξεργασίας συντακτικής δομής και λεξικών όπως το WordNet. Το σύστημα στοχεύει στη γεφύρωση του ψηφιακού χάσματος ανάμεσα στους ασθενείς και τους παρόχους υγείας, προσφέροντας άμεση καθοδήγηση και προωθώντας την ευαισθητοποίηση των χρηστών για την προσωπική τους υγεία. Η καινοτομία του συστήματος έγκειται στην ενσωμάτωση προγνωστικής μοντελοποίησης εντός ενός παραδοσιακού πλαισίου ερωταπαντήσεων. Αν και δεν αξιοποιεί εξελιγμένες γλωσσικές αρχιτεκτονικές, η αξιοποίηση αλγορίθμων μηχανικής μάθησης σε συνδυασμό με τη χρήση NLP προσδίδει μεγαλύτερη προσαρμοστικότητα και ευελιξία από τα καθαρά rule-based. Η εν λόγω εφαρμογή μπορεί να θεωρηθεί ως ενδιάμεσο στάδιο στην ιστορική εξέλιξη της τεχνολογίας συνομιλιακών πρακτόρων. Από τη μία πλευρά, διατηρεί τη ντετερμινιστική λογική των πρώιμων chatbots, βασιζόμενη σε διακριτές λογικές οντότητες και προκαθορισμένα μονοπάτια αλληλεπίδρασης. Από την άλλη, εισάγει στοιχεία προβλεπτικής υπολογιστικής, επιτρέποντας την προσωποποιημένη απόκριση σε δεδομένα πραγματικού χρήστη. Η χρήση τεχνικών όπως η μέτρηση ομοιότητας προτάσεων βάσει διάταξης λέξεων αναδεικνύει τη σημασία της σημασιολογικής ακρίβειας στον τομέα της ιατρικής πληροφόρησης. Παράλληλα, η εισαγωγή εκπαιδευμένων μοντέλων πρόβλεψης (SVM) ανοίγει τον δρόμο για τη μετάβαση προς πιο εξελιγμένα συστήματα. Τέλος, το kBot (Kadariya et al., 2019) είναι knowledge-based chatbot με στοιχεία rulebased αρχιτεκτονικής που αναπτύχθηκε για την υποστήριξη της αυτοδιαχείρισης του άσθματος, με ιδιαίτερη έμφαση σε παιδιατρικούς ασθενείς. Η αρχιτεκτονική του συνδυάζει τεχνολογίες επεξεργασίας φυσικής γλώσσας (ΕΦΓ) μέσω της πλατφόρμας DialogFlow, βάση γνώσης με ιατρικές πληροφορίες και μηχανισμούς προσωποποίησης που αντλούν δεδομένα από το προσωπικό ιστορικό του ασθενούς. Το σύστημα ακολουθεί μια client-server προσέγγιση, όπου το Android περιβάλλον χρησιμεύει ως διεπαφή επικοινωνίας και ο cloud server διαχειρίζεται την επεξεργασία διαλόγων, τη συλλογή δεδομένων και την προσωποποιημένη απάντηση. Η διαφοροποίηση του kBot από τα γενικού σκοπού συστήματα συνομιλίας έγκειται στην ικανότητά του να προσαρμόζει τις απαντήσεις του με βάση την κλινική κατάσταση του χρήστη και τα περιβαλλοντικά δεδομένα, προσφέροντας έτσι εξατομικευμένη υποστήριξη και έγκαιρη προειδοποίηση για πιθανούς κινδύνους. Tο kBot καταφέρνει να παρέχει υψηλή χρηστικότητα και αποδοχή από κλινικούς και μη ειδικούς χρήστες, όπως αποδεικνύεται από τις θετικές αξιολογήσεις χρηστικότητας και αποδοχής που συγκέντρωσε στην πιλοτική του εφαρμογή. Συνολικά, το kBot αντιπροσωπεύει ένα αποτελεσματικό μοντέλο εξειδικευμένου chatbot που γεφυρώνει την ψηφιακή τεχνολογία με την καθημερινή διαχείριση χρόνιων νοσημάτων, προσφέροντας ένα υποστηρικτικό εργαλείο τόσο για ασθενείς όσο και για επαγγελματίες υγείας. Παρόλο που το kBot παρουσιάζει σημαντικά πλεονεκτήματα στον τομέα της εξατομικευμένης υποστήριξης ασθενών με άσθμα, εντούτοις εμφανίζει και ορισμένους περιορισμούς σε απρόβλεπτα ή
11 σύνθετα ερωτήματα, καθώς βασίζεται κυρίως σε rule-based μηχανισμούς και χειροκίνητα ενημερωμένη βάση γνώσης. 2.2 Ιατρικοί ψηφιακοί βοηθοί παραγωγικής τεχνητής νοημοσύνης Ενώ τα παραδοσιακά ιατρικά chatbots, όπως κάποια από τα παραδείγματα που παρουσιάστηκαν παραπάνω, βασίζονταν σε κανόνες, ρητές λογικές δομές ή εκπαίδευση σε περιορισμένα σύνολα δεδομένων, η ραγδαία πρόοδος στη παραγωγική τεχνητή νοημοσύνη (Generative AI) έχει επιτρέψει την ανάπτυξη πολύ πιο ευέλικτων ψηφιακών βοηθών με αυξημένες δυνατότητες κατανόησης. Η εμφάνιση των Μεγάλων Γλωσσικών Μοντέλων (LLMs), άνοιξε νέους ορίζοντες στην ικανότητα κατανόησης και παραγωγής φυσικής γλώσσας, καθιστώντας τα ιδανικά για εφαρμογές σε περίπλοκα περιβάλλοντα, όπως η υγειονομική περίθαλψη. Στο παρόν υποκεφάλαιο, παρουσιάζονται σύγχρονες εφαρμογές ψηφιακών βοηθών που αξιοποιούν παραγωγικά μοντέλα τεχνητής νοημοσύνης στον ιατρικό τομέα. Αρχικά, η παραγωγική τεχνητή νοημοσύνη (Generative AI) αναφέρεται σε υπολογιστικές τεχνικές που έχουν τη δυνατότητα να δημιουργούν φαινομενικά νέο και νοηματικό περιεχόμενο, όπως κείμενο, εικόνες ή ήχο, με βάση δεδομένα εκπαίδευσης. Τα παραγωγικά μοντέλα στοχεύουν στη μοντελοποίηση της κατανομής των ίδιων των δεδομένων και μπορούν να παραγάγουν νέες, συνθετικές παρατηρήσεις που προσομοιώνουν τα στατιστικά χαρακτηριστικά των αρχικών. Οι τεχνολογίες παραγωγικής ΤΝ έχουν οδηγήσει σε μια ριζική μεταμόρφωση του τρόπου με τον οποίο δημιουργείται περιεχόμενο και λαμβάνονται αποφάσεις, με εφαρμογές που επεκτείνονται σε όλους τους τομείς (Feuerriegel et al., 2024). Μεταξύ των διαφόρων τύπων παραγωγικών μοντέλων, ξεχωρίζουν τα μεγάλα γλωσσικά μοντέλα-LLM (Zhao et al., 2023) τα οποία αντιστοιχούν στην παραγωγή κειμένου και αξιοποιούν την αρχιτεκτονική των Transformers (Vaswani et al., 2017). Οι Transformers είναι αρχιτεκτονικές νευρωνικών δικτύων που βασίζονται εξ ολοκλήρου σε μηχανισμούς αυτοπροσοχής (self-attention), προκειμένου να μοντελοποιούν σχέσεις εξάρτησης μεταξύ όλων των στοιχείων μιας εισόδου, ανεξαρτήτως απόστασης. Αυτό τους καθιστά εξαιρετικά αποτελεσματικούς στην επεξεργασία σειριακών δεδομένων, όπως η φυσική γλώσσα. Η λειτουργία των transformers αποτυπώνεται συνοπτικά στο παρακάτω διάγραμμα. Σε αυτή την αρχιτεκτονική διακρίνονται τα δύο βασικά μέρη του μοντέλου, ο κωδικοποιητής (encoder) και ο αποκωδικοποιητής (decoder), καθώς και οι βασικές δομικές μονάδες, όπως ο μηχανισμός πολλαπλής κεφαλής προσοχής (multi-head attention), τα προωθητικά νευρωνικά δίκτυα (feed-forward networks), και η προσθήκη κωδικοποίησης θέσης (positional encoding).
12 Εικόνα 3. Αρχιτεκτονική του Transformer (Πηγή: Vaswani et al., 2017) Η αρχιτεκτονική των transformers αποτέλεσε τη βάση για την ανάπτυξη των μεγάλων γλωσσικών μοντέλων (LLMs). Το παρακάτω διάγραμμα παρουσιάζει χαρακτηριστικές εργασίες της επεξεργασίας φυσικής γλώσσας (NLP), όπως η ταξινόμηση κειμένου (το μοντέλο προβλέπει σε ποια κατηγορία ανήκει ένα κείμενο) και η λογική συνεπαγωγή (εξετάζει αν μια πρόταση στηρίζει ή αντικρούει μια άλλη), και δείχνει πώς αυτές μπορούν να υλοποιηθούν μέσω ενός μεγάλου γλωσσικού μοντέλου (LLM) βασισμένου στην αρχιτεκτονική των transformers.
13 Εικόνα 4. Αρχιτεκτονική Transformer για NLP (Πηγή: Radford et al., 2018) Επομένως, τα LLMs, που είναι το επίκεντρο της εργασίας, αποτελούν προσχηματισμένα μοντέλα με δισεκατομμύρια παραμέτρους, βασισμένα στην αρχιτεκτονική των transformers, όπως και προαναφέρθηκε, και εκπαιδευμένα σε τεράστιες ποσότητες φυσικού κειμένου. Η εκπαίδευσή τους περιλαμβάνει την πρόβλεψη της επόμενης λέξης σε μία ακολουθία (causal language modeling), ενώ μπορούν στη συνέχεια να προσαρμοστούν μέσω fine-tuning για εξειδικευμένες εργασίες. Χαρακτηρίζονται από υψηλή δυνατότητα γενίκευσης, καθιστώντας τα ιδανικά ως θεμελιώδη μοντέλα (foundation models) για πλήθος εφαρμογών στην επεξεργασία φυσικής γλώσσας (Yao et al., 2024). Έτσι, μια χαρακτηριστική εφαρμογή ψηφιακού ιατρικού βοηθού με χρήση μεγάλων γλωσσικών μοντέλων παρουσιάστηκε από τους Montagna et al. (2023), οι οποίοι ανέπτυξαν ένα υβριδικό σύστημα chatbot για την υποστήριξη ατόμων με χρόνιες παθήσεις. Το άρθρο προτείνει μια γενική αρχιτεκτονική συστήματος που βασίζεται σε LLMs, με στόχο την ενδυνάμωση των ασθενών, παρακινώντας τους να τηρούν τις ιατρικές οδηγίες, όπως η τακτική μέτρηση της αρτηριακής πίεσης και η συμμόρφωση με τη φαρμακευτική αγωγή. Πιο συγκεκριμένα, το chatbot βασίζεται σε τρία επίπεδα γλωσσικής κατανόησης και απόκρισης: • ad-hoc αλγόριθμο για αξιόπιστη αναγνώριση αριθμητικών τιμών (π.χ. μετρήσεις πίεσης) • μοντέλο κατανόησης προθέσεων μέσω του Wit.AI για διαχείριση ερωτημάτων σχετικά με τα δεδομένα του ασθενούς • χρήση του GPT-3 μέσω API για γενικές και συναισθηματικά υποστηρικτικές απαντήσεις. Η αλληλουχία αυτών των επιπέδων εξασφαλίζει ότι τα ευαίσθητα δεδομένα δεν διαρρέουν εκτός του προστατευμένου πλαισίου, ενώ επιτρέπεται μια πιο ανθρώπινη εμπειρία αλληλεπίδρασης. Η πιλοτική υλοποίηση της εφαρμογής πραγματοποιήθηκε για ιταλόφωνους χρήστες μέσω Telegram και αξιολογήθηκε από γιατρούς, με στόχο την ενίσχυση της συμμόρφωσης των ασθενών στην παρακολούθηση της πίεσης και την τήρηση της θεραπευτικής αγωγής. Το σύστημα απέδειξε ότι μπορεί να λειτουργήσει ως μέσο ενδυνάμωσης των ασθενών, προσφέροντας όχι μόνο τεχνική υποστήριξη αλλά και ψυχοκοινωνική ενίσχυση μέσω της ενσυναίσθητης επικοινωνίας του LLM. Παράλληλα, οι συγγράφεις τονίζουν την έμφαση στην προστασία της ιδιωτικότητας, μέσω αποκέντρωσης και ελέγχου πρόσβασης που καθιστά το σύστημα συμβατό με κανονισμούς όπως το GDPR,
14 προσφέροντας ένα πολλά υποσχόμενο μοντέλο για την ανάπτυξη αξιόπιστων, ανθρώπινων και ηθικά ευαίσθητων ιατρικών συνομιλιακών συστημάτων. Παρόλα αυτά, υπάρχουν και αναφορές ότι δεν σέβεται την ιδιωτικότητα των χρηστών το μοντέλο LLM που χρησιμοποιείται στην παρούσα εφαρμογή (Wu et al., 2024). Εικόνα 5. Η διεπαφή του ψηφιακού βοηθού (Πηγή: Montagna et al., 2023) Παραπάνω, ακολουθούν συζητήσεις που έχουν κάνει χρήστες με τον ψηφιακό βοηθό. Παρότι είναι στα ιταλικά, παρατηρείται ότι ο χρήστης έχει την δυνατότητα ελεύθερης πληκτρολόγησης και συζήτησης με τον 24ωρο ψηφιακό βοηθό που εξειδικεύεται στην αρτηριακή πίεση. Το μοντέλο δίνει οδηγίες σχετικά με τον τρόπο μέτρησης της αρτηριακής πίεσης, δημιουργεί διάγραμμα με τις μετρήσεις αυτής ανά μέρα (κατόπιν επιθυμίας του χρήστη) αλλά και προσπαθεί να βοηθήσει και να υποστηρίξει συναισθηματικά τον χρήστη σε μια “κακή” μέρα. Ένα ακόμα παράδειγμα εφαρμογής ιατρικών ψηφιακών βοηθών παραγωγικής νοημοσύνης είναι το ASHABot (Ramjee et al., 2023), ένα chatbot βασισμένου σε LLMs, που αναπτύχθηκε για να υποστηρίζει τους Accredited Social Health Activists (ASHAs) στην Ινδία. Στις φτωχές και αγροτικές περιοχές της Ινδίας, οι κοινωνικοί υγειονομικοί εργάτες (ASHAs) παίζουν καίριο ρόλο στην παροχή βασικών υπηρεσιών υγείας, όπως η μητρική και παιδική φροντίδα. Ωστόσο, λόγω περιορισμένης εκπαίδευσης και έλλειψη άμεσης πρόσβασης σε τεκμηριωμένες πληροφορίες ή υποστήριξη από γιατρούς, συχνά αντιμετωπίζουν δυσκολίες στην επίλυση ιατρικών ερωτημάτων. Έτσι, αναπτύχθηκε αυτός ο ψηφιακός βοηθός με τεχνητή νοημοσύνη για να υποστηρίζει τους ASHAs μέσω του WhatsApp, προσφέροντας άμεσες και αξιόπιστες απαντήσεις σε ερωτήσεις υγείας. Οπότε, οι ASHAs χρησιμοποίησαν το ASHABot για άμεσες ερωτήσεις, χωρίς να περιμένουν τις συναντήσεις με τους Auxiliary Nurse-Midwives-ANMs (τους επόπτες νοσηλευτές) και παρατηρήθηκε ότι το 83,6% των ερωτήσεων απαντήθηκε αυτόματα από το chatbot, ενώ οι υπόλοιπες ανατέθηκαν σε ANMs. Το chatbot κέρδισε την εμπιστοσύνη των χρηστών, καθώς όταν δεν γνώριζε μια απάντηση, ζητούσε βοήθεια από ANMs. Οι ASHAs θεώρησαν τις πληροφορίες του ακριβείς, συγκρίνοντάς αυτές με γνώσεις από γιατρούς και εγχειρίδια.
21 υποστηρίζει αποδοτικά πολύπλοκα δίκτυα σχέσεων και τη δυναμική πλοήγηση μεταξύ συνδεδεμένων οντοτήτων. Η βασική διαφορά της Neo4j από τις παραδοσιακές σχεσιακές βάσεις δεδομένων έγκειται στο μοντέλο δεδομένων που χρησιμοποιεί. Ενώ οι σχεσιακές βάσεις οργανώνουν την πληροφορία σε πίνακες με προκαθορισμένα σχήματα, η Neo4j βασίζεται σε κόμβους και ακμές, προσφέροντας έναν εκφραστικό τρόπο αποτύπωσης σύνθετων σχέσεων. Αυτή η εγγενής δομή γράφου είναι ιδιαίτερα κατάλληλη για εφαρμογές που βασίζονται σε οντολογίες, όπως συστήματα ιατρικής γνώσης. Η ιατρική γνώση που αξιοποιείται στο παρόν έργο αναπαρίσταται με τη μορφή τριπλετών: οντότητα1–σχέση-οντότητα2. Αυτή η μορφή αντιστοιχεί άμεσα στο μοντέλο του γράφου της Neo4j, όπου κάθε οντότητα αναπαρίσταται ως κόμβος και κάθε σχέση ως ακμή. Η επιλογή της Neo4j έγινε λόγω της φυσικής συμβατότητάς της με την επιλεγμένη οντολογική δομή, η οποία θα ήταν δύσχρηστη ή υπολογιστικά δαπανηρή σε περιβάλλον SQL, όπου η μοντελοποίηση σχέσεων απαιτεί πολλαπλούς πίνακες, foreign keys (ξένα κλειδιά) και πολύπλοκα joins. Πέραν της δομικής καταλληλότητας, η Neo4j προσφέρει ευελιξία και αποδοτικότητα στην ανάκτηση πληροφορίας. Η γλώσσα ερωτημάτων Cypher επιτρέπει την εκτέλεση εκφραστικών ερωτήσεων που βασίζονται σε μοτίβα (pattern-based queries), διευκολύνοντας την αναζήτηση όλων των σχετικών σχέσεων με βάσει μια οντότητα ή έννοια. Αυτό είναι ιδιαίτερα σημαντικό για συστήματα ερωταποκρίσεων, στα οποία η διαδρομή μεταξύ της ερώτησης και της γνώσης δεν είναι γνωστή εκ των προτέρων, αλλά πρέπει να εντοπιστεί δυναμικά μέσω πλοήγησης στον γράφο. Η Neo4j υποστηρίζει επιπλέον χαρακτηριστικά όπως indexing, constraints και αποδοτική πλοήγηση μέσω ακμών, στοιχεία που ενισχύουν την απόδοσή της ακόμα και σε μεγάλες βάσεις δεδομένων. Ένα επιπλέον πλεονέκτημα της βάσης δεδομένων αυτής είναι η ομαλή ενσωμάτωσή της με γλώσσες προγραμματισμού όπως η Python, μέσω επίσημων βιβλιοθηκών που υποστηρίζουν ερωτήματα Cypher και επικοινωνία με αυτήν. Αυτή η δυνατότητα επέτρεψε την άμεση διασύνδεση του συστήματος RAG με την βάση γνώσης γράφου, χωρίς την ανάγκη ενδιάμεσων μετατροπών ή εργαλείων. Στο πλαίσιο της παρούσας εργασίας, επιλέχθηκε η cloud εκδοχή της πλατφόρμας (Neo4j Aura), έναντι της τοπικής εγκατάστασης, για λόγους ευκολίας ανάπτυξης, ασφάλειας δεδομένων και συμβατότητας με διαδικτυακά περιβάλλοντα εκτέλεσης. Η Neo4j Aura προσφέρει ένα πλήρως διαχειριζόμενο περιβάλλον με υψηλό επίπεδο αξιοπιστίας, χωρίς την ανάγκη συντήρησης ή εγκατάστασης από την πλευρά του χρήστη. Παρέχει ασφαλή σύνδεση μέσω κρυπτογραφημένων καναλιών και απλοποιεί τη διαχείριση δεδομένων, επιτρέποντας την εστίαση στην ίδια τη λειτουργικότητα του συστήματος. Συνολικά, η Neo4j αποδείχθηκε κατάλληλη επιλογή για την αποθήκευση και ανάκτηση των ιατρικών τριπλετών που εξήχθησαν στο πλαίσιο της παρούσας εργασίας. 3.1.4 Χρήση Sentence Transformers για Σημασιολογική Ανάκτηση Πληροφορίας (Semantic Retrieval) Για την ανάκτηση των πιο σχετικών πληροφοριών από τον γράφο γνώσης, αξιοποιήθηκε η τεχνική της σημασιολογικής αναζήτησης (semantic retrieval), με τη χρήση της βιβλιοθήκης sentence-transformers, η οποία βασίζεται στο μοντέλο Sentence-BERT (Reimers & Gurevych, 2019). Η τεχνολογία αυτή επιτρέπει τη μετατροπή προτάσεων και εννοιών της φυσικής γλώσσας σε διανύσματα ενσωμάτωσης προτάσεων (sentence embeddings), τα οποία τοποθετούνται σε έναν πολυδιάστατο σημασιολογικό χώρο. Σε αυτόν τον χώρο, έννοιες με παρόμοιο νόημα βρίσκονται εγγύτερα μεταξύ τους, ανεξάρτητα από τις λέξεις που χρησιμοποιήθηκαν για την έκφρασή τους.
22 Η προσέγγιση αυτή επιλέχθηκε σε αντίθεση με την κλασική αντιστοίχιση λέξεων-κλειδιών, καθώς επιτρέπει στο σύστημα να αναγνωρίζει συνώνυμες, παραπλήσιες ή παραφρασμένες έννοιες, βελτιώνοντας έτσι τη σχετικότητα των απαντήσεων που επιστρέφονται. Για παράδειγμα, μια ερώτηση που περιέχει τον όρο “shortness of breath” μπορεί να συσχετιστεί σημασιολογικά με τριπλέτες που αναφέρουν “dyspnea”, ακόμη κι αν η λέξη “breath” δεν εμφανίζεται αυτούσια στον γράφο. Το μοντέλο που επιλέχθηκε για τη συγκεκριμένη εργασία ήταν το multi-qa-MiniLM-L6-cosv1, το οποίο είναι ένα ελαφρύ, γρήγορο και αποδοτικό sentence transformer, κατάλληλο για γενικής φύσεως αναζητήσεις ερωτήσεων και απαντήσεων. Το μοντέλο αυτό έχει εκπαιδευτεί σε πλήθος ερωταποκρίσεων πολλαπλών θεματικών πεδίων και υποστηρίζει την εξαγωγή ποιοτικών embeddings με μικρό υπολογιστικό κόστος. Η χρήση της συγκεκριμένης τεχνολογίας κρίθηκε απαραίτητη για τη βελτιστοποίηση της αναζήτησης γνώσης εντός του γράφου, εξασφαλίζοντας υψηλή σημασιολογική συνάφεια μεταξύ της ερώτησης του χρήστη και των οντοτήτων που εμπλέκονται στις τριπλέτες. 3.1.5 Βιβλιοθήκες Transformers και Bitsandbytes Για την ενσωμάτωση και εκτέλεση του μεγάλου γλωσσικού μοντέλου (LLM) στο πλαίσιο της παρούσας εργασίας, αξιοποιήθηκε το οικοσύστημα εργαλείων της πλατφόρμας Hugging Face, και συγκεκριμένα οι βιβλιοθήκες transformers, bitsandbytes και accelerate. Οι βιβλιοθήκες αυτές λειτουργούν συμπληρωματικά, παρέχοντας τις απαραίτητες υποδομές για τη φόρτωση, παραμετροποίηση και αποδοτική εκτέλεση προ-εκπαιδευμένων μοντέλων τύπου Transformer, επιτρέποντας τη χρήση τους ακόμη και σε υπολογιστικά περιβάλλοντα περιορισμένων πόρων. Η βιβλιοθήκη transformers αποτελεί τον βασικό πυλώνα για την ενσωμάτωση προεκπαιδευμένων γλωσσικών μοντέλων, όπως τα BERT, GPT, LLaMA και άλλα. Υποστηρίζει πλήθος μοντέλων για εργασίες κατανόησης και παραγωγής φυσικής γλώσσας και προσφέρει υψηλού επιπέδου APIs για inference, fine-tuning και διαχείριση tokenizer. Στο παρόν σύστημα, χρησιμοποιήθηκε για τη φόρτωση του μοντέλου meta-llama/Llama-3.1-8BInstruct, τη διαχείριση των εισόδων και την παραγωγή των απαντήσεων. Ωστόσο, λόγω του μεγέθους του μοντέλου (8 δισεκατομμύρια παράμετροι), η χρήση του σε συνήθεις υπολογιστές δεν είναι εφικτή χωρίς ειδικούς μηχανισμούς βελτιστοποίησης. Για τον σκοπό αυτό, αξιοποιήθηκε η βιβλιοθήκη bitsandbytes, η οποία υποστηρίζει τεχνικές κβαντοποίησης (quantization) των μοντέλων, επιτρέποντας τη φόρτωσή τους σε μορφή 4-bit. Η κβαντοποίηση μειώνει δραστικά τις απαιτήσεις σε μνήμη GPU, χωρίς να επηρεάζει ουσιαστικά την ακρίβεια ή τη σημασιολογική ποιότητα των παραγόμενων απαντήσεων. Έτσι, κατέστη δυνατή η εκτέλεση του LLaMA-3.1-8B ακόμη και σε υποδομές με περιορισμένη μνήμη. Για την υποστήριξη αυτής της λειτουργικότητας, κρίθηκε απαραίτητη και η χρήση της βιβλιοθήκης accelerate, η οποία συντονίζει τη φόρτωση και εκτέλεση μεγάλων μοντέλων σε διαθέσιμους πόρους CPU και GPU. Στο παρόν έργο, συνέβαλε στη σταθερή και αποδοτική διαχείριση του LLM, εξασφαλίζοντας ομαλή αλληλεπίδραση μεταξύ των επιμέρους βιβλιοθηκών και των υποκείμενων περιορισμών υλικού. Η επιλογή αυτών των εργαλείων ήταν καθοριστικής σημασίας για την επίτευξη δύο βασικών στόχων: • την ενσωμάτωση ενός σύγχρονου, υψηλής απόδοσης LLM στο σύστημα RAG, και • τη διατήρηση του κόστους και των υπολογιστικών απαιτήσεων σε λογικά επίπεδα, χωρίς εξάρτηση από εμπορικές cloud υπηρεσίες με χρέωση.
23 Συνολικά, ο συνδυασμός των transformers, bitsandbytes και accelerate επιτρέπει την αποδοτική υλοποίηση ενός ισχυρού συστήματος ερωταποκρίσεων, με αξιοποίηση προηγμένων τεχνικών υποδομής που εξισορροπούν την απόδοση με την προσβασιμότητα. 3.1.6 Kaggle Notebooks Για την ανάπτυξη, δοκιμή και εκτέλεση του συστήματος, χρησιμοποιήθηκε η πλατφόρμα Kaggle Notebooks, η οποία προσφέρει ένα διαδικτυακό περιβάλλον εκτέλεσης Python κώδικα με δυνατότητα χρήσης GPU. Το Kaggle αποτελεί μια δημοφιλή πλατφόρμα της Google, η οποία υποστηρίζει διαγωνισμούς μηχανικής μάθησης, φιλοξενεί πλήθος από δημόσια datasets, και παρέχει έτοιμο περιβάλλον με προεγκατεστημένες βιβλιοθήκες και υποστήριξη για cloud-based πειραματισμούς. Η χρήση του Kaggle κρίθηκε κατάλληλη για τους εξής λόγους: • Δωρεάν Υπολογιστική Ισχύς: Το Kaggle παρέχει τη δυνατότητα χρήσης GPU και ικανοποιητικής ποσότητας RAM, διευκολύνοντας την εκτέλεση μεγάλων μοντέλων, όπως το LlaMA που διαθέτει 8 δισεκατομμύρια παραμέτρους. • Ευκολία πρόσβασης και συνεργασίας: Η πλατφόρμα είναι προσβάσιμη από οποιοδήποτε σημείο με σύνδεση στο διαδίκτυο και υποστηρίζει τη διαχείριση αρχείων, σημειώσεων και εκδόσεων κώδικα, επιτρέποντας την εύκολη παρακολούθηση αλλαγών και τον εντοπισμό σφαλμάτων. • Συμβατότητα με Neo4j Aura: Το περιβάλλον υποστηρίζει ασφαλείς εξωτερικές συνδέσεις, επιτρέποντας την επικοινωνία με απομακρυσμένες βάσεις δεδομένων όπως η Neo4j Aura μέσω κρυπτογραφημένων καναλιών (bolt protocol). Έτσι, επιλέχθηκε το Kaggle ως πλατφόρμα ανάπτυξης και εκτέλεσης του συστήματος, καθώς η δυνατότητα πρόσβαση σε GPU χωρίς κόστος ήταν ιδιαίτερα σημαντική δεδομένης της αναγκαιότητας χρήσης GPU για την εκτέλεση του μοντέλου αλλά και της απουσίας τοπικού εξοπλισμού με ανάλογες δυνατότητες. Μεταξύ των διαθέσιμων δωρεάν λύσεων, το Kaggle προσέφερε το καλύτερο πακέτο, καθιστώντας το κατάλληλη επιλογή για πειραματική υλοποίηση και αξιολόγηση. Συνολικά, παρείχε ένα σταθερό και ευέλικτο περιβάλλον που επέτρεψε την ομαλή εκτέλεση όλων των υποσυστημάτων του Medical RAG Chatbot, χωρίς το κόστος ή την ανάγκη απόκτησης τοπικού εξοπλισμού υψηλών απαιτήσεων. 3.2 Οντολογία και Επεξεργασία Δεδομένων Η επιτυχία ενός ιατρικού chatbot που βασίζεται σε Retrieval-Augmented Generation εξαρτάται σε μεγάλο βαθμό από την ποιότητα, τη δομή και την ορθότητα των δεδομένων που χρησιμοποιούνται για την ανάκτηση και ερμηνεία της πληροφορίας (Yu et al., 2024). Η συγκεκριμένη εργασία δεν στηρίχθηκε σε έτοιμες βάσεις δεδομένων, αλλά απαιτούσε την επιμέλεια, οργάνωση και εννοιολογική αναπαράσταση της ιατρικής γνώσης με τρόπο που να είναι εύκολα προσβάσιμος τόσο για retrieval όσο και για συνδυασμό με ένα Large Language Model. Η προσέγγιση που υιοθετήθηκε βασίστηκε στη δημιουργία μιας προσαρμοσμένης οντολογίας που απεικονίζει τις βασικές ιατρικές οντότητες (π.χ. ασθένειες, συμπτώματα κ.ά.) και τις σχέσεις μεταξύ τους. Στη συνέχεια, εξήχθησαν τριπλέτες (subject–relation–object) από επιλεγμένα ιατρικά κείμενα μέσω μοντέλου LLM, με σκοπό τη χαρτογράφηση της πληροφορίας σύμφωνα με την προκαθορισμένη οντολογία. Οι εξαγόμενες τριπλέτες οργανώθηκαν και φορτώθηκαν στη βάση γραφημάτων Neo4j, η οποία προσφέρει ένα ευέλικτο και επεκτάσιμο μοντέλο. Σε αυτή την ενότητα, παρουσιάζονται αναλυτικά τα παρακάτω:
24 • Η διαδικασία σχεδιασμού της ιατρικής οντολογίας • Η συλλογή και προετοιμασία των πηγών κειμένου • Η εξαγωγή τριπλετών • Η επεξεργασία και εννοιολογική εναρμόνιση των δεδομένων • Η αποθήκευση και οργάνωση των δεδομένων στο γράφο Neo4j Η όλη διαδικασία συνιστά ένα πλήρως τεκμηριωμένο pipeline για την ενσωμάτωση ιατρικής γνώσης σε συστήματα με δυνατότητες RAG, αξιοποιώντας τεχνικές τόσο από τον χώρο του ΕΦΓ όσο και από το χώρο των γράφων γνώσης. 3.2.1 Σχεδιασμός της Ιατρικής οντολογίας, πηγές κειμένων και συλλογή πληροφορίας Η αρχική σχεδίαση της οντολογίας ξεκίνησε από τη θεμελιώδη ανάγκη οργάνωσης της ιατρικής πληροφορίας σε μια δομημένη μορφή. Η ιατρική γνώση συχνά χαρακτηρίζεται από πολυπλοκότητα, επικαλύψεις, και ποικιλία όρων που περιγράφουν τα ίδια φαινόμενα. Για τον σκοπό αυτό, κατά τη σχεδίαση της οντολογίας τέθηκαν συγκεκριμένα κριτήρια και ελήφθησαν υπόψη οι εξής θεωρητικοί και τεχνικοί παράγοντες: • Σαφή εννοιολογική τυποποίηση των οντοτήτων και αποκλειστικότητα (mutual exclusivity): Η κάθε οντότητα έπρεπε να εντάσσεται με σαφήνεια σε μία μόνο κατηγορία, π.χ. ένα στοιχείο να είναι ‘Symptom’ ή ‘Disease’ (σύμπτωμα ή ασθένεια) αλλά όχι και τα δύο, ώστε να αποφεύγεται η πολυσημία, η ερμηνευτική σύγχυση και οι επικαλύψεις. • Ισορροπία μεταξύ πληρότητας και απλότητας: Η οντολογία έπρεπε να καλύπτει επαρκώς τα βασικά στοιχεία της ιατρικής γνώσης χωρίς να γίνεται υπερβολικά λεπτομερής ή σύνθετη, ώστε να είναι πρακτικά διαχειρίσιμη και επεκτάσιμη στο μέλλον. • Κατάλληλη απεικόνιση γράφου: Εφόσον ο τελικός στόχος ήταν η αποθήκευση των δεδομένων σε γράφο γνώσης στην Neo4j, η οντολογία έπρεπε να μπορεί να απεικονιστεί εύκολα ως κόμβοι (nodes) και ακμές (edges), διατηρώντας υψηλή συνδεσιμότητα και λογική συνοχή. • Υποστήριξη για εφαρμογές ερωταποκρίσεων: Η επιλογή των σχέσεων καθορίστηκε επίσης με βάση τις ανάγκες του τελικού χρήστη του chatbot. Οι σχέσεις σχεδιάστηκαν ώστε να απαντούν σε κοινά ιατρικά ερωτήματα όπως «ποια συμπτώματα έχει η νόσος Χ;», «πώς διαγιγνώσκεται η πάθηση Ψ;». Στόχος ήταν η δημιουργία μιας απλοποιημένης αλλά λειτουργικής οντολογίας, ειδικά προσαρμοσμένης στις ανάγκες ενός RAG chatbot που εξυπηρετεί ερωτήματα ασθενών αλλά και απλών ανθρώπων ώστε να μπορεί να είναι διαχειρίσιμο για δοκιμές χωρίς να χρειάζεται πιο εξειδικευμένη γνώση. Η τελική οντολογία περιλαμβάνει δώδεκα βασικούς τύπους οντοτήτων, οι οποίοι αποτυπώνουν τις βασικές έννοιες που συναντώνται στη γενική ιατρική πρακτική, τόσο σε επίπεδο διάγνωσης όσο και θεραπείας και παρουσιάζονται στον παρακάτω πίνακα:
25 Κατηγορία Οντότητας Περιγραφή Disease (Ασθένεια) Κλινικά αναγνωρισμένες παθολογικές καταστάσεις (π.χ. Asthma/Άσθμα, Diabetes/Διαβήτης) Symptom (Σύμπτωμα) Εμφανιζόμενες εκδηλώσεις νόσων (π.χ. Cough/Βήχας, Fever/ Πυρετός) Supportive Measure (Υποστηρικτικό μέτρο) Πρακτικές μη αιτιολογικής θεραπείας που συνδράμουν στη διαχείριση της κατάστασης (π.χ. Ενυδάτωση, Ανάπαυση) Treatment (Θεραπεία) Γενικοί τύποι θεραπείας (π.χ. Chemotherapy/Χημειοθεραπείες) Medication (Φάρμακο) Φαρμακευτικά σκευάσματα (π.χ. Paracetamol/Παρακεταμόλη, Insulin/ Ινσουλίνη) Therapy Μη φαρμακευτικές θεραπείες (π.χ. Physiotherapy/Φυσιοθεραπείες) Diagnostic Method (Διαγνωστική μέθοδος) Μέθοδοι διάγνωσης (π.χ. PCR Test, MRI, X-ray) Risk Factor (Παράγοντας κινδύνου) Παράγοντες κινδύνου (π.χ. Smoking/Κάπνισμα, Obesity/Παχυσαρκία, Age/Ηλικία) Prevention Method (Μέθοδος πρόληψης) Μέτρα πρόληψης (π.χ. Vaccination/Εμβολιασμός , Exercise/Άσκηση) Adverse Effect (Ανεπιθύμητη ενέργεια) Παρενέργειες από φαρμακευτική αγωγή (π.χ. Nausea/Ναυτία) Complication (Επιπλοκή) Επιπλοκές που απορρέουν από νόσους (π.χ. Stroke/Εγκεφαλικό) Severity Level (Επίπεδο σοβαρότητας) Περιγραφές της έντασης ή επικινδυνότητας συμπτωμάτων (π.χ. Mild/Ήπιο, Severe/Σοβαρό) Πίνακας 2. Τύποι οντοτήτων της οντολογίας.
26 Μετά τον προσδιορισμό των οντοτήτων, καθορίστηκαν οι τύποι των επιτρεπόμενων σχέσεων μεταξύ τους. Οι σχέσεις αναπαριστούν σημασιολογικές συνδέσεις (triplets) που ενώνουν δύο οντότητες του γράφου και προσδίδουν πληροφορία στην ερώτηση/απάντηση. Οπότε, καταλήγουμε στην τελική οντολογία που παρουσιάζεται και παρακάτω της μορφής Οντότητα A → Σχέση → Οντότητα B. Υποκείμενο (Subject) Σχέση (Relation) Αντικείμενο (Object) Περιγραφή Disease causes Symptom Η νόσος προκαλεί την εμφάνιση ενός ή περισσότερων συμπτωμάτων Disease is_diagnosed_by Diagnostic Method Η νόσος διαγιγνώσκεται μέσω συγκεκριμένης διαγνωστικής μεθόδου Disease is_treated_with Treatment Η νόσος αντιμετωπίζεται με κατάλληλη θεραπεία Disease managed_with Supportive Measure Η νόσος διαχειρίζεται με υποστηρικτικά μέτρα Treatment includes Medication Η θεραπεία περιλαμβάνει συγκεκριμένη φαρμακευτική αγωγή Treatment includes Therapy Η θεραπεία περιλαμβάνει μη φαρμακευτική παρέμβαση Medication has_side_effect Adverse Effect Το φάρμακο ενδέχεται να προκαλέσει παρενέργεια Risk Factor increases_likelihood_of Disease Ο παράγοντας κινδύνου αυξάνει την πιθανότητα εμφάνισης συγκεκριμένης νόσου
27 Prevention Method reduces_risk_of Disease Η μέθοδος πρόληψης μειώνει τον κίνδυνο εμφάνισης νόσου Complication is_caused_by Disease Η επιπλοκή αποτελεί συνέπεια μιας αρχικής ασθένειας Complication requires Treatment Η επιπλοκή απαιτεί συγκεκριμένη θεραπευτική παρέμβαση Symptom indicates Severity Level Το σύμπτωμα υποδηλώνει το επίπεδο σοβαρότητας της κατάστασης Πίνακας 3. Η τελική οντολογία. Για την οικοδόμηση του γραφήματος γνώσης και τη μετέπειτα εφαρμογή του RAG chatbot, απαιτήθηκε η συλλογή ενός αξιόπιστου και επαρκούς συνόλου κειμένων από τα οποία θα μπορούσε να εξαχθεί ιατρική γνώση. Δεδομένης της απουσίας δημοσίως διαθέσιμων και ελεύθερων οντολογιών σε μορφή triplets ειδικά για χρήση με LLM και γραφήματα Neo4j, επιλέχθηκε να κατασκευαστεί εξαρχής ένα σύνολο ιατρικών κειμένων από δύο αξιόπιστες πηγές: το MeDAL dataset και τη Wikipedia. Η επιλογή των παραπάνω πηγών έγινε με βάση τα εξής κριτήρια: • Εγκυρότητα της πληροφορίας: Τα κείμενα έπρεπε να βασίζονται σε αναγνωρισμένες πηγές (έγκυρα ιατρικά άρθρα, επιμελημένες εγκυκλοπαιδικές σελίδες). • Εύρος θεματολογίας: Κάλυψη διαφόρων παθήσεων, θεραπευτικών προσεγγίσεων και διαγνωστικών μεθόδων. • Απλότητα και γλωσσική προσβασιμότητα της πληροφορίας: Κατά την επιλογή και επεξεργασία των κειμένων, ελήφθη μέριμνα ώστε να αποφεύγονται υπερβολικά εξειδικευμένες ασθένειες ή όροι που απαιτούν βαθιά ιατρική γνώση. Προτιμήθηκαν συχνά εμφανιζόμενες παθήσεις και συμπτώματα (π.χ. άσθμα, πυρετός, πονόλαιμος, γρίπη, βήχας, ακμή) που είναι οικεία στο ευρύ κοινό. Η επιλογή αυτή έγινε με στόχο να μπορεί το σύστημα να δοκιμαστεί πρακτικά χωρίς να είναι απαραίτητο το ιατρικό υπόβαθρο. Το MeDAL (Medical Abbreviation Disambiguation Dataset) των Wen et al. (2020) αποτελεί μία ανοιχτά διαθέσιμη συλλογή βιοϊατρικών αποσπασμάτων που δημοσιεύθηκε για την επίλυση της σημασιολογικής ασάφειας των ιατρικών συντομογραφιών. Το σύνολο αυτό βασίζεται σε abstracts άρθρων από το PubMed και περιλαμβάνει κείμενα σε μορφή προτάσεων, τα οποία περιέχουν ιατρικούς όρους και συντομογραφίες που συνοδεύονται από τις πλήρεις μορφές τους. Παρότι το σύνολο δεδομένων (dataset) δημιουργήθηκε για διαφορετικό σκοπό, περιλαμβάνει κλινικά ρεαλιστικά αποσπάσματα με αναφορές σε ασθένειες, συμπτώματα, φάρμακα, θεραπείες και διαγνωστικές πρακτικές. Οι βασικές
28 ιδιότητες του dataset: i) μορφή: CSV αρχείο, ii) Πλήθος εγγραφών: >14 εκατομμύρια άρθρα, iii) πηγή: PubMed abstracts, iv) γλώσσα: Αγγλικά, v) πρόσβαση: Μέσω Kaggle. Για τις ανάγκες της παρούσας εργασίας, χρησιμοποιήθηκαν κάποια άρθρα από αυτό το σύνολο δεδομένων καθώς υπήρχε συγκεντρωμένη δωρεάν έγκυρη ιατρική πληροφορία χωρίς να περιλαμβάνει άσχετες πληροφορίες. Παράλληλα με το MeDAL, επιλέχθηκε και η Wikipedia ως δεύτερη πηγή ιατρικής γνώσης. Αν και δεν αποτελεί αμιγώς επιστημονική βάση, η Wikipedia διαθέτει εκτεταμένα άρθρα για κοινές και σπάνιες παθήσεις και υποστηριζόμενο περιεχόμενο με αναφορές σε επιστημονικές πηγές. Η Wikipedia επιλέχθηκε καθώς παρέχει εμπεριστατωμένο και καλά δομημένο περιεχόμενο το οποίο είναι κατάλληλο για την εξαγωγή εννοιολογικών τριπλετών. Σε αντίθεση με πιο εξειδικευμένα επιστημονικά κείμενα που περιλαμβάνουν σύνθετες θεωρίες, τεχνική ορολογία και περίπλοκες θεματικές, τα άρθρα της Wikipedia διακρίνονται για τη σαφήνεια, τη γλωσσική απλότητα και την προσβασιμότητα του περιεχομένου τους. Αυτό, έκανε τη Wikipedia ιδανική στην εφαρμογή μας για την παραγωγή τριπλετών που μπορούν να αξιοποιηθούν άμεσα από το σύστημα, επιτρέποντας την αποτελεσματική απάντηση σε ερωτήσεις από χρήστες χωρίς εξειδικευμένες ιατρικές γνώσεις. 3.2.2 Εξαγωγή Ιατρικών τριπλετών Η βασική πρόκληση στην ενσωμάτωση ιατρικής γνώσης σε ένα σύστημα τύπου RetrievalAugmented Generation (RAG) είναι η μετάβαση από αδόμητο κείμενο σε δομημένη γνώση. Στο πλαίσιο της παρούσας εργασίας, αυτό επιτεύχθηκε μέσω της εξαγωγής ιατρικών τριπλετών από κείμενα φυσικής γλώσσας, σύμφωνα με το σχήμα Οντότητα A → Σχέση → Οντότητα B. Οι τριπλέτες αυτές βασίζονται στην οντολογία που παρουσιάστηκε στον πίνακα 3 και συγκροτούν το βασικό θεμέλιο του γράφου γνώσης που χρησιμοποιείται για την ανάκτηση πληροφορίας. Η εξαγωγή πραγματοποιήθηκε με τη χρήση Μεγάλου Γλωσσικού Μοντέλου (LLM), κατάλληλα παραμετροποιημένου ώστε να εντοπίζει σχετικές οντότητες και τις σημασιολογικές σχέσεις μεταξύ τους. Αντί της παραδοσιακής εξόρυξης σχέσεων με κανόνες ή επιβλεπόμενη μάθηση, επιλέχθηκε ένα LLM, το οποίο δύναται να κατανοεί εντολές σε φυσική γλώσσα και να εκτελεί εννοιολογική αναπαράσταση με προκαθορισμένα σχήματα. Η διαδικασία εξαγωγής οργανώθηκε σε πέντε στάδια τα οποία περιγράφονται αναλυτικά παρακάτω: 1. Καθορισμός στρατηγικής εξαγωγής μέσω LLM 2. Διαμόρφωση κατάλληλου prompt για καθοδηγούμενη εξαγωγή 3. Ανάγνωση και ανάλυση των προτάσεων του σώματος κειμένων 4. Έλεγχος εγκυρότητας και φιλτράρισμα των παραγόμενων τριπλετών 5. Τεκμηρίωση, οργάνωση και αποθήκευση των εξαγόμενων δεδομένων Η μετάβαση από αδόμητο ιατρικό κείμενο σε δομημένες μονάδες πληροφορίας συνιστά ένα από τα πιο θεμελιώδη και απαιτητικά στάδια κατά την ανάπτυξη ενός γραφήματος γνώσης. Στην παρούσα εργασία, η εξαγωγή δομημένων πληροφοριών της μορφής (Υποκείμενο – Σχέση – Αντικείμενο) πραγματοποιήθηκε μέσω της χρήσης του μεγάλου γλωσσικού μοντέλου ChatGPT, το οποίο έχει εκπαιδευτεί για την εκτέλεση εντολών (instruction-following) και είναι σε θέση να κατανοήσει, να ερμηνεύσει και να αποδώσει πληροφορία φυσικής γλώσσας υπό μορφή εννοιολογικών σχέσεων. Οι παραδοσιακές προσεγγίσεις εξαγωγής οντοτήτων και σχέσεων, όπως η χρήση κανόνων βασισμένων σε πρότυπα (rule-based pattern matching), dependency parsing, ή επιβλεπόμενα μοντέλα NER και RE, παρουσιάζουν σημαντικούς περιορισμούς όταν
29 εφαρμόζονται σε πραγματικά ιατρικά κείμενα. Συγκεκριμένα, αδυνατούν να χειριστούν επαρκώς φαινόμενα γλωσσικής πολυσημίας, σύνθετων συντακτικών δομών, ή έμμεσης συσχέτισης οντοτήτων και σχέσεων που δεν δηλώνονται με άμεσο τρόπο. Η ανάγκη για εκτεταμένη χειροκίνητη επιμέλεια και η έλλειψη γενίκευσης περιορίζουν την εφαρμογή τέτοιων τεχνικών σε ένα δυναμικό και ευρύ πεδίο γνώσης, όπως αυτό της ιατρικής. Έτσι, σε αντίθεση με τις παραδοσιακές τεχνικές εξαγωγής οντοτήτων και σχέσεων, η χρήση του ChatGPT προσέφερε μεγαλύτερη γενίκευση και κατανόηση περιβάλλοντος (contextual understanding). Το μοντέλο ήταν σε θέση να εντοπίζει σχέσεις που δεν προκύπτουν απλώς από γραμματικούς δείκτες, αλλά απαιτούν εννοιολογική κατανόηση, γεγονός καθοριστικής σημασίας για την αξιοπιστία ενός ιατρικού συστήματος ερώτησης-απάντησης. Η επιλογή του ChatGPT ως βασικού εργαλείου εξαγωγής γνώσης βασίστηκε σε πολλαπλά πλεονεκτήματα που το καθιστούν ιδιαίτερα κατάλληλο για εφαρμογές Ιατρικής Επεξεργασίας Φυσικής Γλώσσας. Συγκεκριμένα, το μοντέλο είναι σε θέση να επεξεργάζεται σύνθετα γλωσσικά συμφραζόμενα, να αποδίδει σημασιολογικές σχέσεις μεταξύ οντοτήτων ακόμη και όταν αυτές δεν δηλώνονται ρητά, και να ανταποκρίνεται με συνέπεια σε καθοδηγούμενα prompts. Η ενσωμάτωσή του στο σύστημα παρείχε τη δυνατότητα ταχείας και υψηλής ποιότητας εξαγωγής τριπλετών, με σημαντική μείωση του απαιτούμενου κόστους σε ανθρώπινη επιμέλεια και επεξεργασία. Συνολικά, διαχειριζόταν την ανάγνωση του κειμένου και την αποθήκευση των αποτελεσμάτων σε μορφή συμβατή με το γράφο Neo4j. Η εξαγωγή πραγματοποιήθηκε μέσω διαδραστικής υποβολής κειμένου από το επεξεργασμένο σώμα ιατρικών κειμένων (Wikipedia και MeDAL), σε συνδυασμό με κατάλληλα διαμορφωμένες εντολές που περιέγραφαν την επιθυμητή μορφή και σημασιολογική ερμηνεία των αποτελεσμάτων. Το μοντέλο ανταποκρινόταν με την παραγωγή τριπλετών, οι οποίες στη συνέχεια υποβάλλονταν σε φιλτράρισμα και έλεγχο εγκυρότητας. Η συνολική στρατηγική εξαγωγής συνδύασε την υπολογιστική ισχύ του ChatGPT με τη θεωρητική ακρίβεια της προκαθορισμένης οντολογίας, οδηγώντας στη δημιουργία ενός υψηλής ποιότητας συνόλου τριπλετών, ικανών να υποστηρίξουν αποτελεσματικά την ανάκτηση πληροφορίας σε μεταγενέστερα στάδια του RAG pipeline. Η επίτευξη ακριβούς και συνεπούς εξαγωγής ιατρικών τριπλετών από φυσική γλώσσα εξαρτάται σε μεγάλο βαθμό από τη διαμόρφωση της εισόδου προς το γλωσσικό μοντέλο. Δεδομένου ότι το ChatGPT, όπως και κάθε άλλο LLM, δεν διαθέτει ενσωματωμένη γνώση της επιθυμητής οντολογίας, απαιτείται η διατύπωση κατάλληλου prompt που να καθοδηγεί σαφώς τη διαδικασία εξαγωγής. Η τεχνική αυτή, γνωστή ως prompt engineering, αποτελεί αναπόσπαστο τμήμα των σύγχρονων συστημάτων ΕΦΓ που βασίζονται σε LLMs. Το prompt που χρησιμοποιήθηκε στην παρούσα εργασία σχεδιάστηκε με στόχο να: • Ορίζει σαφώς το καθήκον προς το μοντέλο (εξαγωγή ιατρικών τριπλετών), • Παρέχει ρητές οδηγίες σχετικά με την αποδεκτή μορφή και τους περιορισμούς της εξόδου, • Καθορίζει την επιτρεπόμενη οντολογία και τις σχέσεις που μπορεί να χρησιμοποιηθούν, • Περιλαμβάνει παραδείγματα (few-shot prompting) ώστε να διευκολύνει τη γενίκευση από πλευράς του μοντέλου. Η γενική μορφή του prompt που χρησιμοποιήθηκε είχε την εξής δομή: "Διάβασε το παρακάτω ιατρικό κείμενο και εξήγαγε τριπλέτες της μορφής Οντότητα A → Σχέση → Οντότητα B, βασιζόμενος στις εξής σχέσεις: Disease -> [causes] -> Symptom
30 Disease -> [is_diagnosed_by] -> Diagnostic Method Disease -> [is_treated_with] -> Treatment Disease → [managed_with] → Supportive Measure Treatment -> [includes] -> Medication Treatment -> [includes] -> Therapy Medication -> [has_side_effect] -> Adverse Effect Risk Factor -> [increases_likelihood_of] -> Disease Prevention Method -> [reduces_risk_of] -> Disease Complication -> [is_caused_by] -> Disease Complication -> [requires] -> Treatment Symptom -> [indicates] -> Severity Level Απόδωσε κάθε τριπλέτα μόνο εφόσον μπορείς να ταυτίσεις με τις παραπάνω σχέσεις χωρίς εξηγήσεις ή επιπλέον σχόλια." Πίνακας 4. Το prompt που χρησιμοποιήθηκε. Η χρήση αυστηρά προσδιορισμένων σχέσεων και η απουσία σχολιαστικού περιεχομένου στην έξοδο είχαν ως στόχο τη μεγιστοποίηση της δομικής συνέπειας και την ελαχιστοποίηση των παρερμηνειών. Επιπλέον, στο prompt προστέθηκαν και 1–2 αντιπροσωπευτικά παραδείγματα, ώστε να καταδεικνύεται η επιθυμητή μορφή εξόδου. Κατά τη διάρκεια της διαδικασίας, διαπιστώθηκε ότι μικρές διαφορές στη διατύπωση του prompt μπορούσαν να επηρεάσουν σημαντικά τη συμπεριφορά του μοντέλου. Για παράδειγμα, η εντολή "γράψε όσες περισσότερες τριπλέτες μπορείς" αύξανε τη δημιουργικότητα του μοντέλου αλλά και την πιθανότητα παραγωγής σχέσεων εκτός οντολογίας. Ως εκ τούτου, πραγματοποιήθηκαν δοκιμές με εναλλακτικά prompts ώστε να επιτευχθεί η βέλτιστη ισορροπία μεταξύ πληρότητας και ακρίβειας. Η διαδικασία διαμόρφωσης του prompt αποτέλεσε θεμέλιο λίθο για την ποιότητα του παραγόμενου γράφου γνώσης. Μέσω κατάλληλης καθοδήγησης, το ChatGPT ήταν σε θέση να ανταποκριθεί με συνέπεια στις απαιτήσεις της εργασίας, αποδίδοντας τριπλέτες με υψηλό βαθμό εννοιολογικής εγκυρότητας και συμβατότητας με την οντολογία. Το prompt, επομένως, δεν αντιμετωπίστηκε απλώς ως μέσο τεχνολογικής διασύνδεσης με το μοντέλο, αλλά ως εργαλείο νοηματικής πλαισίωσης που επηρεάζει άμεσα την αξιοπιστία του εξαγόμενου περιεχομένου. Η διαδικασία εξαγωγής τριπλετών με χρήση ενός γλωσσικού μοντέλου όπως το ChatGPT, αν και αποτελεσματική, δεν εγγυάται την απόλυτη ακρίβεια και συνέπεια των παραγόμενων δεδομένων. Το μοντέλο μπορεί να παραγάγει τριπλέτες που περιέχουν πλεονασμούς, εσφαλμένες κατηγοριοποιήσεις ή παραλλαγές της ίδιας οντότητας με ελαφρώς διαφορετική διατύπωση. Ως εκ τούτου, κρίθηκε απαραίτητο να ενσωματωθεί ένα επιπλέον στάδιο επεξεργασίας που περιλάμβανε τον εντοπισμό, τη διόρθωση και την ενοποίηση τέτοιων περιπτώσεων. Η πρώτη φάση αφορούσε το φιλτράρισμα και καθαρισμό του εξαγόμενου συνόλου τριπλετών. Τριπλέτες που δεν αντιστοιχούσαν στις επιτρεπόμενες σχέσεις της οντολογίας ή περιλάμβαναν μη ιατρικούς όρους απορρίπτονταν. Ειδική προσοχή δόθηκε σε περιπτώσεις λανθασμένου τύπου σχέσης, όπως για παράδειγμα χρήση του causes για τη σύνδεση φαρμάκου με παρενέργεια, αντί για το has_side_effect. Παράλληλα, αφαιρέθηκαν επαναλαμβανόμενες τριπλέτες που δημιουργούνταν από παραφράσεις ή πολλαπλές διατυπώσεις της ίδιας πληροφορίας. Στη συνέχεια, εφαρμόστηκε διαδικασία κανονικοποίησης οντοτήτων (entity normalization), προκειμένου να επιτευχθεί συνοχή σε επίπεδο ονοματολογίας. Οντότητες όπως "flu" και "Influenza" ενοποιήθηκαν στη μορφή "Influenza". Αντίστοιχα, κοινές
37 Για την επίτευξη του σκοπού αυτού, υιοθετήθηκε η χρήση του προκαταρτισμένου μοντέλου multi-qa-MiniLM-L6-cos-v1, το οποίο διατίθεται μέσω της βιβλιοθήκης sentencetransformers. Το συγκεκριμένο μοντέλο βασίζεται στη δομή των transformer και έχει εκπαιδευτεί ειδικά για καθήκοντα ερωταπαντήσεων πολλαπλής μορφής (multi-question answering), καθιστώντας το κατάλληλο για περιβάλλοντα όπου απαιτείται εννοιολογική αντιστοίχιση ερωτήσεων και σύντομων αποσπασμάτων κειμένου. Επιπλέον, το μοντέλο έχει βελτιστοποιηθεί για χρήση με ομοιότητα συνημίτονου, πράγμα που απλοποιεί σημαντικά τη διαδικασία αξιολόγησης ομοιότητας μεταξύ ενσωματώσεων. Η επιλογή του multi-qa-MiniLM-L6-cos-v1 έγινε με γνώμονα τρεις βασικούς άξονες: i) την ικανότητά του να παράγει ποιοτικές ενσωματώσεις σε μικρού μήκους κείμενα, ii) την υψηλή απόδοση (efficiency) σε συστήματα χωρίς εξειδικευμένο υλικό (π.χ. GPU), iii) την ευρεία υποστήριξη και αξιοπιστία της βιβλιοθήκης στην οποία βασίζεται. Το μοντέλο, σε αντίθεση με μεγαλύτερα και ακριβέστερα αλλά πιο απαιτητικά μοντέλα, προσφέρει έναν ισορροπημένο συμβιβασμό μεταξύ ταχύτητας και ακρίβειας, ο οποίος είναι κρίσιμος για διαδραστικές εφαρμογές πραγματικού χρόνου, όπως η παρούσα. Η υλοποίηση της ενσωμάτωσης πραγματοποιείται με τη μέθοδο .encode() της αντίστοιχης Python βιβλιοθήκης, η οποία λαμβάνει ως είσοδο μία σειρά από λέξεις και επιστρέφει τους αντίστοιχους διανυσματικούς μετασχηματισμούς στον εννοιολογικό χώρο του μοντέλου. Οι παραγόμενες ενσωματώσεις της ερώτησης και των οντοτήτων χρησιμοποιούνται σε επόμενο στάδιο για την ποσοτική αποτίμηση της ομοιότητας. Το στάδιο αυτό είναι θεμελιώδες για την επιτυχία του συνολικού μηχανισμού ανάκτησης, καθώς καθορίζει ποιες οντότητες θα θεωρηθούν ως «συναφείς» και άρα ποιες τριπλέτες θα αναζητηθούν στη συνέχεια. Λανθασμένος ή ανεπαρκής υπολογισμός της ομοιότητας μπορεί να οδηγήσει είτε σε απώλεια κρίσιμων πληροφοριών (false negatives) είτε σε ενσωμάτωση άσχετης πληροφορίας (false positives) στο τελικό prompt. Αφού έχουν οριστεί οι δύο βασικές πηγές κειμένου, δηλαδή η ερώτηση του χρήστη και το σύνολο των οντοτήτων που έχουν εξαχθεί από τον γράφο Neo4j, το επόμενο βήμα είναι η μετατροπή αυτών των κειμένων σε ενσωματώσεις και ο υπολογισμός του βαθμού εννοιολογικής τους συσχέτισης. Η ενσωμάτωση αφορά τη μεταστροφή μιας λεκτικής αναπαράστασης σε ένα πολυδιάστατο αριθμητικό διάνυσμα, το οποίο φέρει τις σημασιολογικές ιδιότητες της φράσης ή της πρότασης και καθιστά δυνατή την αριθμητική σύγκριση μεταξύ διαφορετικών κειμένων. Στην παρούσα υλοποίηση, η μετατροπή πραγματοποιείται μέσω της μεθόδου encode() του μοντέλου SentenceTransformer, η οποία δέχεται ως είσοδο μία λίστα από κείμενα (στην περίπτωση των οντοτήτων) ή ένα μεμονωμένο κείμενο (στην περίπτωση της ερώτησης) και επιστρέφει τα αντίστοιχα διανύσματα. Συγκεκριμένα, η ερώτηση του χρήστη μετατρέπεται σε ένα μοναδικό διάνυσμα, ενώ το σύνολο των οντοτήτων μετατρέπεται σε έναν πίνακα διανυσμάτων. Ακολουθώντας τη διαδικασία ενσωμάτωσης, εφαρμόζεται ο υπολογισμός συσχέτισης μέσω της συνάρτησης ομοιότητας συνημίτονου. Η συνάρτηση αυτή είναι μία κοινώς αποδεκτή μετρική ομοιότητας για διανύσματα ενσωμάτωσης, καθώς μετρά το συνημίτονο της γωνίας που σχηματίζεται μεταξύ των δύο διανυσμάτων στον πολυδιάστατο χώρο. Ο μαθηματικός τύπος της ομοιότητας συνημίτονου δίνεται ως εξής: 𝑐𝑜𝑠𝑖𝑛𝑒 𝑠𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦(𝑢𝑞,𝑢𝑖)= 𝑢𝑞∙ 𝑢𝑖 ‖𝑢𝑞‖∙‖𝑢𝑖‖ όπου το 𝑢𝑞 είναι το διάνυσμα της ερώτησης και το 𝑢𝑖 το διάνυσμα της i-οστής οντότητας. Το αποτέλεσμα της συνάρτησης είναι μία τιμή στο διάστημα [-1, 1], όπου οι υψηλότερες τιμές υποδηλώνουν μεγαλύτερη σημασιολογική συσχέτιση μεταξύ των δύο στοιχείων.
38 Για την υλοποίηση του υπολογισμού χρησιμοποιείται η μέθοδος util.pytorch_cos_sim() της βιβλιοθήκης sentence-transformers, η οποία επιστρέφει έναν πίνακα συσχέτισης μεταξύ της ερώτησης και όλων των οντοτήτων. Από αυτόν τον πίνακα επιλέγονται οι top_k πιο συναφείς οντότητες, βάσει της μέγιστης βαθμολογίας ομοιότητας συνημίτονου. Η τιμή του top_k έχει οριστεί στην τιμή 20, κατόπιν εμπειρικής αξιολόγησης, ως ένας αριθμός που προσφέρει επαρκή κάλυψη πιθανών σχετικών εννοιών, χωρίς όμως να οδηγεί σε υπερφόρτωση της αναζήτησης ή απώλεια εστίασης. Η συνολική διαδικασία, όπως υλοποιείται σε Python, συνοψίζεται στον παρακάτω κώδικα: question_embedding = model.encode(question, convert_to_tensor=True) entity_embeddings = model.encode(all_entities, convert_to_tensor=True) similarities = util.pytorch_cos_sim(question_embedding, entity_embeddings)[0] top_indices = similarities.topk(k=20).indices Πίνακας 6. Κώδικας για εξαγωγή σχετικών οντοτήτων. Η παραπάνω διαδικασία καταλήγει στην επιλογή των είκοσι πιο σχετικών οντοτήτων του γράφου σε σχέση με την ερώτηση του χρήστη. Οι οντότητες αυτές θα αποτελέσουν τη βάση για το επόμενο στάδιο, που είναι η ανάκτηση των σχετικών τριπλετών από τον γράφο, οι οποίες θα χρησιμοποιηθούν για τη δημιουργία του prompt του μεγάλου γλωσσικού μοντέλου. Η εννοιολογική ομοιότητα, όπως εφαρμόζεται στο παρόν σύστημα, δεν αποτελεί απλώς έναν τεχνικό μηχανισμό σύγκρισης κειμένων, αλλά μια ουσιώδη συνιστώσα της συνολικής αρχιτεκτονικής του RAG μοντέλου, που επηρεάζει άμεσα τόσο την ακρίβεια όσο και τη χρηστικότητα της παραγόμενης απάντησης. Στην ουσία, η επιτυχία της αναζήτησης γνώσης στον γράφο εξαρτάται από την ικανότητα του συστήματος να «κατανοεί» το περιεχόμενο της ερώτησης του χρήστη και να εντοπίζει εκείνες τις έννοιες που σχετίζονται εννοιολογικά, ακόμη και όταν δεν υπάρχει απόλυτη ταύτιση σε λεξιλογικό ή συντακτικό επίπεδο. Σε παραδοσιακές προσεγγίσεις ανάκτησης πληροφορίας, η αντιστοίχιση βασίζεται κυρίως σε τεχνικές λέξεων-κλειδιών, όπου η αναζήτηση περιορίζεται σε περιπτώσεις όπου το ερώτημα περιέχει ακριβώς τις ίδιες λέξεις ή φράσεις με τα αποθηκευμένα δεδομένα. Αυτό το μοντέλο, αν και απλό και υπολογιστικά αποδοτικό, παρουσιάζει σοβαρούς περιορισμούς όταν η φυσική γλώσσα του χρήστη αποκλίνει από τις καταγεγραμμένες οντότητες. Για παράδειγμα, μία ερώτηση όπως «What health problems are associated with prolonged high blood sugar?» ενδέχεται να μην αντιστοιχιστεί άμεσα με την οντότητα «diabetes» ή τις επιπλοκές του, εφόσον η φράση «high blood sugar» δεν περιέχεται αυτούσια στο όνομα κάποιας αποθηκευμένης οντότητας. Αντιθέτως, μέσω της χρήσης μοντέλων εννοιολογικής ομοιότητας, όπως αυτό που περιγράφηκε στο προηγούμενο υποκεφάλαιο, το σύστημα αποκτά την ικανότητα να εξάγει τη σημασιολογική ταύτιση μεταξύ φράσεων που εκφράζουν παρόμοια έννοια με διαφορετικό τρόπο. Με άλλα λόγια, η φράση «high blood sugar» θα εντοπιστεί ως συναφής με τον όρο «diabetes» και άρα το σύστημα θα μπορέσει να ανακτήσει σχετικές ιατρικές τριπλέτες, ακόμα και αν δεν υπάρχει άμεση λεξική αντιστοίχιση. Εκτός αυτού, υπάρχουν ακόμα πολλά παραδείγματα που με αυτό το τρόπο το μοντέλο καταφέρνει και τα καλύπτει ώστε να εξάγονται οι σωστές τρίλεπτες και να παράγεται η κατάλληλη απάντηση, όπως η φράση «difficulty breathing» θα εντοπιστεί ως συναφής με τον όρο «dyspnea», ο όρος «loss of smell» θα συσχετιστεί με το «anosmia» αλλά και η φράση «feeling tired» με τον όρο «fatigue». Η σημασία αυτής της ικανότητας είναι πολλαπλή. Πρώτον, εξασφαλίζεται μεγαλύτερη ευκαμψία στην είσοδο του χρήστη, ο οποίος δεν υποχρεώνεται να γνωρίζει την ακριβή ορολογία του γράφου για να λάβει απάντηση. Δεύτερον, ενισχύεται η πληρότητα της
39 αναζήτησης, καθώς μειώνονται οι περιπτώσεις μη ανακτηθεισών σχετικών πληροφοριών. Τρίτον, βελτιώνεται η εμπειρία αλληλεπίδρασης, δεδομένου ότι το σύστημα εμφανίζεται ως «ευφυές», ανταποκρινόμενο με επάρκεια σε ερωτήσεις φυσικής γλώσσας. H χρήση semantic similarity επιτρέπει τη διατήρηση νοηματικής συνοχής ανάμεσα στην είσοδο και την παραγόμενη απάντηση, καθώς το υπόβαθρο γνώσης (οι τριπλέτες) που αξιοποιείται στο επόμενο στάδιο έχουν προκύψει από νοηματικά συναφείς κόμβους. Επιπλέον, ο μηχανισμός αυτός λειτουργεί προληπτικά κατά της εμφάνισης παραπλανητικών ή ασχέτων απαντήσεων, καθώς διασφαλίζει ότι το prompt προς το LLM δημιουργείται μόνο από τριπλέτες που έχουν ισχυρή συνάφεια με την αρχική ερώτηση. Συνοψίζοντας, η εφαρμογή τεχνικών εννοιολογικής ομοιότητας στον παρόντα μηχανισμό δεν αποτελεί απλώς μία επιλογή βελτιστοποίησης, αλλά μια θεμελιώδη αρχή λειτουργίας, χάρη στην οποία επιτυγχάνεται η ορθολογική και τεκμηριωμένη διασύνδεση ανάμεσα στην ανεπεξέργαστη γλωσσική είσοδο του χρήστη και την αποθηκευμένη ιατρική γνώση του συστήματος. 3.3.2 Ανάκτηση Σχετικών Τριπλετών από τον Γράφο Αφού ολοκληρωθεί η φάση αναγνώρισης των πιο συναφών οντοτήτων μέσω του μηχανισμού εννοιολογικής ομοιότητας, το επόμενο στάδιο της διαδικασίας αφορά την ανάκτηση και ιεράρχηση των σχετικών τριπλετών που εμπεριέχουν τις οντότητες αυτές ως συνιστώσες. Οι τριπλέτες αυτές αποτελούν τη δομημένη αναπαράσταση της γνώσης που είναι αποθηκευμένη στον γράφο Neo4j, ακολουθώντας τη μορφή (source) -[relation]-> (target). Στο παρόν σύστημα, οι τριπλέτες αυτές εμπεριέχουν κρίσιμη ιατρική πληροφορία, όπως «Diabetes, causes, Fatigue» ή «Smoking, increases_likelihood_of, Asthma». Η ανάκτηση πραγματοποιείται μέσω της εκτέλεσης ενός Cypher query, το οποίο διατρέχει τον γράφο και εντοπίζει όσες τριπλέτες εμπλέκουν κάποια από τις συναφείς οντότητες είτε ως source είτε ως target. Η διαδικασία εφαρμόζεται για το σύνολο των top-k οντοτήτων που έχουν επιλεγεί με βάση τη μέγιστη ομοιότητας συνημίτονου. Το ερώτημα έχει την εξής μορφή: WITH $entities AS ents UNWIND ents AS name MATCH (s:Entity)-[r]->(t:Entity) WHERE toLower(s.name) CONTAINS toLower(name) OR toLower(t.name) CONTAINS toLower(name) RETURN DISTINCT s.name AS source, r.type AS relation, t.name AS target Πίνακας 7. Κώδικας Cypher για ανάκτηση οντοτήτων. Το παραπάνω ερώτημα υλοποιείται μέσω του Neo4j driver σε περιβάλλον Python, με τις οντότητες να περνούν ως παράμετρος. Η χρήση του UNWIND επιτρέπει την επανάληψη του ερωτήματος για κάθε επιμέρους οντότητα. Η συνθήκη CONTAINS σε συνδυασμό με τη μετατροπή σε πεζά (toLower) εξασφαλίζει ευελιξία στην αντιστοίχιση και αποφυγή αυστηρής ταύτισης. Η επιστροφή διακριτών αποτελεσμάτων (DISTINCT) διασφαλίζει ότι δεν περιλαμβάνονται επαναλαμβανόμενες τριπλέτες. Η έξοδος του ερωτήματος είναι μία λίστα από δομημένες προτάσεις της μορφής source relation target, οι οποίες συνθέτουν το αρχικό σώμα γνώσης που πρόκειται να αξιοποιηθεί. Ενδεικτικά παραδείγματα περιλαμβάνουν: Diabetes causes Blurred Vision Diabetes is treated with Insulin Therapy High Salt Intake increases likelihood of Hypertension Πίνακας 8. Ενδεικτικά παραδείγματα τριπλετών.
40 Στο επόμενο στάδιο εφαρμόζεται ένας μηχανισμός επαναβαθμολόγησης (semantic reranking) ώστε να ενισχυθεί η θεματική συνάφεια μεταξύ των τριπλετών και της ερώτησης του χρήστη. Ο μηχανισμός αυτός υλοποιείται μέσω μιας νέας συνάρτησης, η οποία υπολογίζει έναν σύνθετο βαθμό σημασιολογικής συνάφειας για κάθε τριπλέτα. Ο υπολογισμός αυτός βασίζεται: • στην εννοιολογική ομοιότητα του πλήρους κειμένου της τριπλέτας με την ερώτηση, • στη σημασιολογική εγγύτητα των σχέσεων (relations) με το περιεχόμενο του ερωτήματος, • στη μερική ή πλήρη ταύτιση των λέξεων-κλειδιών της ερώτησης με το περιεχόμενο της τριπλέτας, • στον σταθμισμένο συνδυασμό των παραπάνω σε έναν ενοποιημένο βαθμό συνάφειας. Το αποτέλεσμα της διαδικασίας είναι μία επαναταξινομημένη λίστα τριπλετών, ταξινομημένη κατά φθίνουσα σημασιολογική συνάφεια. Από αυτή τη λίστα, επιλέγονται οι 30 επικρατέστερες τριπλέτες ώστε να διαμορφωθεί το τελικό prompt προς το μεγάλο γλωσσικό μοντέλο. Αυτή η επιπλέον διαδικασία έγινε ώστε να μπορεί να ταξινομεί με καλύτερη σειρά τις τριπλέτες και όχι μόνο βάση οντοτήτων αλλά και άλλων στοιχείων όπως τα relations. Ο αριθμός των τριάντα (30) επιλέχθηκε κατόπιν εμπειρικών δοκιμών, ώστε να προσφέρει επαρκές πληροφοριακό υπόβαθρο χωρίς να υπερφορτώνεται το prompt με περιττές πληροφορίες. Η στρατηγική αυτή ενισχύει τη στοχευμένη και συνεκτική παραγωγή απάντησης. Συνοψίζοντας, η φάση ανάκτησης και σημασιολογικής κατάταξης των τριπλετών δεν αποτελεί απλώς διαδικαστικό βήμα, αλλά θεμέλιο στοιχείο της συνολικής αρχιτεκτονικής του RAG συστήματος. Μέσω αυτής διασφαλίζεται ότι η γνώση που παρέχεται στο LLM είναι προσαρμοσμένη, νοηματικά συναφής και επαρκώς επικεντρωμένη στην εκάστοτε πληροφοριακή ανάγκη του χρήστη. 3.3.3 Δημιουργία Ερωτήματος (Prompt) προς το LLM Το τελικό στάδιο της διαδικασίας ανάκτησης και επεξεργασίας πληροφορίας αφορά τη διαμόρφωση ενός ερωτήματος (prompt), το οποίο παρέχεται ως είσοδος στο μεγάλο γλωσσικό μοντέλο. Το prompt αυτό περιλαμβάνει τις επιλεγμένες τριπλέτες γνώσης που ανακτήθηκαν από τον γράφο, καθώς και την ερώτηση του χρήστη διατυπωμένη σε φυσική γλώσσα. Ωστόσο, η δημιουργία του prompt δεν περιορίζεται στη μηχανική αναπαραγωγή δεδομένων, αλλά συνιστά και μία στρατηγική παρέμβαση στον τρόπο λειτουργίας του LLM, καθώς διαμορφώνει το πλαίσιο, την ερμηνευτική διάθεση και τα όρια εντός των οποίων το μοντέλο καλείται να παράγει απάντηση. Η σημασία της φάσης αυτής είναι καθοριστική για τη συνολική επιτυχία του συστήματος, καθώς μία ανακριβώς διαμορφωμένη ή υπερβολικά γενική είσοδος προς το LLM μπορεί να οδηγήσει σε μη τεκμηριωμένες, παραπλανητικές ή υπερβολικά γενικές απαντήσεις. Για τον λόγο αυτό, σχεδιάστηκαν με προσοχή τόσο η εσωτερική δομή όσο και η γλωσσική διατύπωση του prompt, με στόχο τη μεγιστοποίηση της αξιοπιστίας και της ακρίβειας της παραγόμενης απάντησης. Στο πλαίσιο ενός RAG συστήματος, το prompt λειτουργεί ως γέφυρα μεταξύ της δομημένης γνώσης που έχει ανακτηθεί από κάποια εξωτερική πηγή (στην παρούσα περίπτωση, τον γράφο Neo4j) και της γενετικής ικανότητας του LLM να παράγει φυσικό λόγο. Η βασική ιδέα πίσω από την αρχιτεκτονική RAG είναι ότι το LLM δεν ενεργεί σε κενό
41 πληροφορίας, αλλά σε συνθήκες ενισχυμένης γνώσης, την οποία λαμβάνει ως είσοδο μέσω του prompt. Ο ρόλος του prompt είναι συνεπώς διττός. Πρώτον, χρησιμεύει ως φορέας πληροφορίας, δηλαδή μεταφέρει την επιλεγμένη γνώση (τις ιατρικές τριπλέτες) προς το LLM με κατάλληλη μορφοποίηση, ώστε αυτή να ενσωματωθεί στο πλαίσιο της απάντησης. Δεύτερον, λειτουργεί ως μηχανισμός καθοδήγησης της γλωσσικής και λογικής συμπεριφοράς του μοντέλου: μέσω συγκεκριμένων οδηγιών που περιλαμβάνονται στο prompt, το σύστημα υποδεικνύει στο μοντέλο τον επιθυμητό τύπο, ύφος και περιεχόμενο της απάντησης. Αυτή η διττή λειτουργία του prompt καθιστά τη σχεδίασή του ιδιαίτερα κρίσιμη. Από τη μία πλευρά, πρέπει να εμπεριέχει τις πληροφορίες που ανακτήθηκαν, χωρίς όμως να τις παραθέτει άκριτα ή με τρόπο που να προκαλεί σύγχυση στο μοντέλο. Από την άλλη, πρέπει να ορίζει επαρκώς το πλαίσιο και τους κανόνες της απάντησης, αποτρέποντας ανεπιθύμητες συμπεριφορές, όπως hallucinations, η παροχή ηθικών/ιατρικών προτροπών. Η εμπειρική αξιολόγηση του συστήματος έδειξε ότι η ποιότητα του prompt επηρεάζει καθοριστικά την ακρίβεια της τελικής απάντησης. Για τον λόγο αυτό, το prompt σχεδιάστηκε με συγκεκριμένη γλωσσική μορφοποίηση και εσωτερική λογική, όπως αναλύεται στην επόμενη υποενότητα. Η δομή του prompt στο παρόν σύστημα έχει σχεδιαστεί με σκοπό να εξασφαλίσει την ομαλή ενσωμάτωση της ανακτηθείσας γνώσης και την σαφή καθοδήγηση του LLM προς μία σύντομη, τεκμηριωμένη και στοχευμένη απάντηση. Για την επίτευξη αυτού του στόχου, το prompt οργανώνεται σε τρία διακριτά μέρη: τις οδηγίες προς το μοντέλο, τη λίστα των ανακτηθεισών τριπλετών και την ερώτηση του χρήστη. Το πρώτο μέρος του prompt περιλαμβάνει ένα εισαγωγικό κείμενο οδηγιών, το οποίο προορίζεται να λειτουργήσει ως system message και να καθορίσει το πλαίσιο της απάντησης. Το κείμενο αυτό περιέχει συγκεκριμένες οδηγίες που προσανατολίζουν το μοντέλο να απαντήσει με σύντομο, ακριβή και ουδέτερο τρόπο, χωρίς αναφορές σε εξωτερικές πηγές ή ηθικές συστάσεις. Οι οδηγίες διατυπώνονται με σαφήνεια και ρητή απαγόρευση χρήσης συγκεκριμένων φράσεων. Η ακριβής διατύπωση τους έχει ως εξής: The following triplets are structured medical knowledge. Each triplet describes a medically verified fact. Given the user question, please provide an accurate and logical answer based on the given medical triplets. Please do not use 'Note:' Please do not mention the given medical triplets in the text. Πίνακας 9. Οι οδηγίες προς το LLM. Η επιλογή του συγκεκριμένου ύφους των οδηγιών δεν είναι τυχαία. Η χρήση προστακτικής («do not use») και η ρητή αναφορά στην ιδιότητα των τριπλετών ως "medically verified facts" συμβάλλει στη δημιουργία ενός νοηματικού πλαισίου μέσα στο οποίο το μοντέλο καλείται να τοποθετήσει την απάντηση. Παράλληλα, οι περιορισμοί που επιβάλλονται αποσκοπούν στην αποφυγή «παραληρήματος», συμπεριφοράς που συχνά εμφανίζουν μεγάλα γλωσσικά μοντέλα όταν τους παρέχεται ανεπαρκώς καθορισμένο prompt. Επιπλέον, προτιμήθηκε μια πιο ευγενική σύνταξη και όχι πολύ αυστηρή καθώς αναφέρεται ότι ενδεχομένως να παράγουν με αυτόν τον τρόπο καλυτέρα αποτελέσματα τα LLM (Yin et al., 2024). Το δεύτερο μέρος του prompt περιλαμβάνει τη λίστα των ανακτηθεισών τριπλετών, οι οποίες συνιστούν την τεκμηριωμένη βάση γνώσης πάνω στην οποία καλείται το μοντέλο να βασίσει την απάντησή του. Οι τριπλέτες παρουσιάζονται με μορφή bullet points, με τη μορφοποίηση να ακολουθεί το πρότυπο: - [οντότητα-1] [σχέση] [οντότητα-2]. Για παράδειγμα:
42 - Asthma causes Wheezing - Pneumonia is treated with Antibiotics - Heart Failure is caused by Diabetes Πίνακας 10. Παράδειγμα παρουσίασης των τριπλετών στο prompt του LLM. Η χρήση bullets αντί για απλή παραγραφοποίηση εξυπηρετεί δύο στόχους. Πρώτον, διαχωρίζει σαφώς τις προτάσεις, κάνοντας το περιεχόμενο πιο ευανάγνωστο και δομημένο. Δεύτερον, μεταφέρει στο μοντέλο την πληροφορία ότι πρόκειται για ανεξάρτητα και ισότιμα τεκμήρια, χωρίς ιεραρχική ή αιτιατή αλληλουχία μεταξύ τους. Τέλος, το τρίτο και τελευταίο μέρος του prompt περιλαμβάνει την ερώτηση του χρήστη, η οποία παρουσιάζεται αυτούσια, όπως εισήχθη στο σύστημα. Η παρουσία της στο τέλος του prompt επιτρέπει στο LLM να επεξεργαστεί πρώτα το σώμα της γνώσης και στη συνέχεια να εστιάσει στην αποστολή του: την παραγωγή απάντησης βάσει της δεδομένης πληροφορίας. Η τελική σύνθεση του prompt, εφόσον συνδυαστούν τα παραπάνω στοιχεία, έχει τη γενική μορφή: The following triplets are structured medical knowledge. Each triplet describes a medically verified fact. Given the user question, please provide an accurate and logical answer based on the given medical triplets. Please do not use 'Note:' Please do not mention the given medical triplets in the text. Medical Triplets: - Triplet 1 - Triplet 2 ... - Triplet 30 User Question: [ερώτηση] Πίνακας 11. Η τελική σύνθεση του prompt. Η σταθερότητα αυτής της μορφοποίησης σε όλα τα ερωτήματα του χρήστη επιτρέπει στο LLM να διατηρήσει ένα σταθερό «μοτίβο απάντησης» (answering pattern). Επιπλέον, το γεγονός ότι η απάντηση βασίζεται αποκλειστικά στις παρεχόμενες τριπλέτες καθιστά το σύστημα περισσότερο ελέγξιμο και διαφανές, καθώς είναι πάντοτε δυνατό να εντοπιστεί η πληροφορία που αξιοποιήθηκε στην τελική διατύπωση. Η διαμόρφωση του prompt δεν αποτέλεσε μια απλώς λειτουργική πράξη εισόδου προς το γλωσσικό μοντέλο, αλλά προϊόν ενσυνείδητων σχεδιαστικών επιλογών, οι οποίες αντανακλούν τόσο τεχνικές παραμέτρους του μοντέλου όσο και εννοιολογικές προτεραιότητες της παρούσας εφαρμογής. Στο συγκεκριμένο σύστημα, δόθηκε ιδιαίτερη έμφαση στην ελαχιστοποίηση των ανακριβειών και της δημιουργικής αυθαιρεσίας που συχνά παρατηρούνται κατά τη χρήση μεγάλων γλωσσικών μοντέλων, ιδιαίτερα σε κρίσιμους τομείς όπως η ιατρική πληροφόρηση. Ένας από τους βασικότερους σχεδιαστικούς άξονες υπήρξε η απόφαση να περιοριστεί η "δημιουργικότητα" του LLM, προκειμένου η απάντηση να βασιστεί αποκλειστικά στις πληροφορίες που περιλαμβάνονται στο prompt. Αν και τα LLMs παρουσιάζουν εξαιρετική ικανότητα γλωσσικής σύνθεσης, εντούτοις η λειτουργία τους δεν εγγυάται εγγενώς την αλήθεια ή την τεκμηρίωση των παραγόμενων απαντήσεων. Η δημιουργικότητά τους, όταν δεν περιορίζεται με σαφείς οδηγίες ή εξωτερική πληροφορία, συχνά εκδηλώνεται με τη μορφή αυθαίρετων ισχυρισμών. Το φαινόμενο αυτό μπορεί να καταστεί ιδιαίτερα
43 προβληματικό σε ιατρικούς ψηφιακούς βοηθούς, όπου η ακρίβεια της πληροφορίας αποτελεί αδιαπραγμάτευτο ζητούμενο. Ελήφθησαν μια σειρά από σχεδιαστικές αποφάσεις, οι οποίες ενσωματώθηκαν στη γλωσσική διατύπωση του prompt. Δηλαδή, όπως παρουσιάστηκε και παραπάνω, επιλέχθηκε να μην περιλαμβάνονται φράσεις μετα-γλωσσικού χαρακτήρα όπως "Note:" ή "Based on the above triplets" και να μην γίνεται ορατή αναφορά στη διαδικασία παραγωγής της απάντησης, δηλαδή να αποφεύγεται η χρήση εκφράσεων που αποκαλύπτουν ότι το μοντέλο έλαβε εξωτερική πληροφορία ως context. Αυτές οι ‘εντολές’ προέκυψαν κατά την χρήση του μοντέλου και προστέθηκαν στο prompt όταν παρατηρήθηκε η επαναλαμβανομένη και ανεπιθύμητη χρήση αυτών των εκφράσεων και μοτίβων απάντησης από το μοντέλο. Οι παραπάνω απαγορεύσεις δεν στοχεύουν απλώς στην απλούστευση της απάντησης, αλλά κυρίως στην ενίσχυση της αξιοπιστίας της παραγόμενης πληροφορίας. Ένα prompt που επιτρέπει φράσεις όπως «the following answer is based on retrieved triplets» εισάγει δύο σημαντικά προβλήματα: πρώτον, υποβαθμίζει την αυτονομία της απάντησης ως αυτόνομου νοήματος, και δεύτερον, εισάγει θόρυβο στην κατανόηση του χρήστη, ειδικά όταν αυτός προσδοκά μία σαφή, απλή και άμεση απάντηση σε ερώτηση ιατρικού χαρακτήρα. Επιπλέον, από τεχνική σκοπιά, η χρήση ενός εκτεταμένου prompt, συμβάλλει στην σταθεροποίηση της συμπεριφοράς του LLM. Σε περιπτώσεις όπου η μορφοποίηση του prompt παραλείπεται ή διαφοροποιείται μεταξύ διαφορετικών ερωτήσεων, το μοντέλο μπορεί να εμφανίσει ασταθείς αποκρίσεις, τόσο ως προς το περιεχόμενο όσο και ως προς το ύφος. Η ενοποιημένη δομή του prompt που ακολουθείται στο παρόν σύστημα διασφαλίζει την επαναληψιμότητα των απαντήσεων και επιτρέπει την εύκολη ανάλυση της συσχέτισης μεταξύ της παρεχόμενης γνώσης και της παραγόμενης εξόδου. Τέλος, το prompt συντάσσεται σε απλή, κατανοητή αγγλική γλώσσα, αποφεύγοντας τεχνικούς όρους που μπορεί να ερμηνευθούν με διαφορετικό τρόπο από το LLM. Αυτή η απλότητα δεν μειώνει την αποτελεσματικότητα, αλλά αντιθέτως λειτουργεί ενισχυτικά στην επίτευξη του στόχου: μία σύντομη, σαφή, τεκμηριωμένη απάντηση που πηγάζει αυστηρά από την γνώση του γράφου. 3.3.4 Ανάκληση Απάντησης μέσω LLM Αφού έχει ολοκληρωθεί η διαδικασία σύνθεσης του prompt, το οποίο περιλαμβάνει τις σχετικές ιατρικές τριπλέτες και την ερώτηση του χρήστη, ακολουθεί το στάδιο της ανάκλησης απάντησης μέσω του LLM. Το στάδιο αυτό αποτελεί την ολοκλήρωση της αρχιτεκτονικής RAG, καθώς το μοντέλο καλείται πλέον να παράγει μια απάντηση βασισμένη αποκλειστικά στο πλαίσιο που του έχει παρασχεθεί. Η επιλογή του κατάλληλου LLM και η σωστή παραμετροποίησή του είναι κρίσιμες για την αξιοπιστία και τη σταθερότητα της τελικής εξόδου. Επιπλέον, πρέπει να ληφθούν υπόψη οι υπολογιστικοί περιορισμοί του περιβάλλοντος εκτέλεσης, ώστε το μοντέλο να είναι ταυτόχρονα λειτουργικό και αποδοτικό. Στην παρούσα ενότητα περιγράφονται αναλυτικά οι τεχνικές αποφάσεις που ελήφθησαν, καθώς και η ροή των επιμέρους διαδικασιών, από τη φόρτωση του μοντέλου έως την επεξεργασία της απάντησης. Για την υλοποίηση της γενετικής φάσης του συστήματος επιλέχθηκε το μοντέλο metallama/Llama-3.1-8B-Instruct, το οποίο αποτελεί μία από τις πλέον εξελιγμένες υλοποιήσεις της οικογένειας LLaMA. Το συγκεκριμένο μοντέλο έχει εκπαιδευτεί με επίβλεψη σε ποικιλία συνομιλιακών και γνωστικών σεναρίων και είναι σχεδιασμένο ειδικά για "instructionfollowing" εφαρμογές, δηλαδή για περιπτώσεις όπου το μοντέλο καλείται να υπακούσει σε οδηγίες, όπως αυτές που περιέχονται στο prompt του συστήματος. Η επιλογή του Llama-3.1-8B-Instruct έγινε κατόπιν αξιολόγησης της σχέσης μεγέθους – απόδοσης – υπολογιστικού κόστους. Το μοντέλο διαθέτει περίπου 8 δισεκατομμύρια
44 παραμέτρους, προσφέροντας σημαντικά καλύτερη κατανόηση και σύνθεση φυσικής γλώσσας σε σχέση με μικρότερες εκδόσεις, χωρίς να απαιτεί την υποδομή που θα απαιτούσε, για παράδειγμα, ένα μοντέλο 13B ή 70B. Προκειμένου να είναι δυνατή η εκτέλεση του μοντέλου σε περιβάλλον με περιορισμένους υπολογιστικούς πόρους (π.χ. Kaggle), υιοθετήθηκε η τεχνική 4-bit quantization. Η τεχνική αυτή επιτρέπει την αποθήκευση και χρήση των παραμέτρων του μοντέλου σε μορφή μειωμένης ακρίβειας, μειώνοντας σημαντικά τη χρήση μνήμης και τον απαιτούμενο χώρο αποθήκευσης, χωρίς να επηρεάζει δραματικά την ποιότητα της παραγόμενης απάντησης. Συγκεκριμένα, το μοντέλο των 8B παραμέτρων απαιτεί περίπου 4 GB μνήμης RAM με 4-bit quantization, ενώ το αντίστοιχο 13B θα χρειαζόταν περίπου 6,5 GB και το 70B σχεδόν 35 GB. Η διαφορά αυτή δείχνει ξεκάθαρα ότι το 8B μοντέλο αποτελεί μια ισορροπημένη λύση μεταξύ απόδοσης και υπολογιστικών απαιτήσεων, καθιστώντας το κατάλληλο για υλοποιήσεις σε περιορισμένα περιβάλλοντα, χωρίς να θυσιάζεται σημαντικά η ποιότητα των αποτελεσμάτων. Συγκεκριμένα, ενεργοποιείται η επιλογή load_in_4bit=True κατά τη φόρτωση του μοντέλου, επιτρέποντας έτσι την εκτέλεση σε κατανεμημένο περιβάλλον με χρήση του device_map="auto". Η επιλογή quantized εκδοχής του μοντέλου επιτρέπει τη λειτουργία σε περιβάλλοντα χωρίς εξειδικευμένο hardware, γεγονός που καθιστά τη λύση κλιμακούμενη και φιλική προς τον ερευνητή ή τον τελικό χρήστη με περιορισμένους πόρους. Παράλληλα, διατηρείται η ακρίβεια της απάντησης σε υψηλά επίπεδα, κυρίως λόγω του γεγονότος ότι η πληροφορία παρέχεται ρητά στο prompt και όχι μέσω ανάκλησης από το εσωτερικό corpus του μοντέλου. Συνοψίζοντας, το Llama-3.1-8B-Instruct επιλέχθηκε για να συνδυάσει την υψηλή γλωσσική απόδοση, τη συμβατότητα με σενάρια ερωταπαντήσεων, τη δυνατότητα εκτέλεσης σε περιβάλλοντα περιορισμένων πόρων και όλα αυτά χωρίς επιβάρυνση χρέωσης για την χρήση. Οι τεχνικές παραμετροποίησης που εφαρμόστηκαν επέτρεψαν την ομαλή ενσωμάτωσή του στο σύστημα, διατηρώντας υψηλό επίπεδο σταθερότητας και επαναληψιμότητας στην παραγωγή απαντήσεων. Η ορθή φόρτωση και παραμετροποίηση του μεγάλου γλωσσικού μοντέλου αποτελεί κρίσιμη φάση για τη λειτουργία του συστήματος, καθώς συνδέεται άμεσα με την αποδοτικότητα, τη σταθερότητα και τη σωστή συμπεριφορά του μοντέλου κατά την παραγωγή απάντησης. Η διαδικασία αυτή περιλαμβάνει τόσο τη διαχείριση των παραμέτρων του ίδιου του LLM όσο και την κατάλληλη προετοιμασία του tokenizer, που αναλαμβάνει τη μετατροπή του prompt σε μορφή αναγνώσιμη από το μοντέλο. Η φόρτωση του μοντέλου meta-llama/Llama-3.1-8B-Instruct πραγματοποιείται μέσω της βιβλιοθήκης transformers του Hugging Face. Η συγκεκριμένη διαδικασία απαιτεί τον ορισμό των εξής παραμέτρων: from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig quant_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_use_double_quant=False, bnb_4bit_quant_type="nf4", bnb_4bit_compute_dtype=torch.float16 ) Πίνακας 12. Ο κώδικας για τον ορισμό παραμέτρων του μοντέλου. Ορίστηκε η χρήση nf4 quantization (Normal Float 4-bit), μιας τεχνικής ποσοτικοποίησης που εφαρμόζεται στους παραμέτρους του μοντέλου, αποθηκεύοντάς τα σε 4-bit κανονικοποιημένη μορφή και επιτυγχάνοντας σημαντική συμπίεση με ελάχιστη απώλεια ακρίβειας. Ως αριθμητικός τύπος υπολογισμού επιλέχθηκε το float16 (half-precision floating
45 point), το οποίο μειώνει τις απαιτήσεις μνήμης και αυξάνει την ταχύτητα των πράξεων πάνω στα βάρη, διατηρώντας παράλληλα επαρκή αριθμητική σταθερότητα. Το μοντέλο φορτώνεται στη συνέχεια με τον εξής τρόπο: model = AutoModelForCausalLM.from_pretrained( model_name, quantization_config=quant_config, device_map="auto", torch_dtype=torch.float16, token=huggingface_access_token ) Πίνακας 13. Ο κώδικας για την φόρτωση του μοντέλου LLM. Η επιλογή device_map="auto" καθορίζει ότι η κατανομή του μοντέλου σε διαθέσιμες συσκευές (GPU ή CPU) γίνεται αυτόματα από το περιβάλλον εκτέλεσης, επιτρέποντας τη μέγιστη δυνατή χρήση των διαθέσιμων υπολογιστικών πόρων. Επιπλέον, γίνεται χρήση του προκαθορισμένου tokenizer που αντιστοιχεί στο ίδιο μοντέλο. Ο tokenizer είναι υπεύθυνος για τη μετατροπή της εισόδου (prompt) σε ακολουθίες tokens, οι οποίες μπορούν να επεξεργαστούν από το μοντέλο. Για την αποφυγή σφαλμάτων που σχετίζονται με κενές θέσεις κατά τη δέσμη tokenization, προστίθεται ειδικά ορισμένο pad_token, στην περίπτωση που αυτό απουσιάζει από την προεπιλεγμένη διαμόρφωση του tokenizer: if tokenizer.pad_token is None: tokenizer.add_special_tokens({'pad_token': tokenizer.eos_token}) Πίνακας 14. Διαχείριση ειδικών tokens στο tokenizer. Η προσθήκη αυτή διασφαλίζει ότι η είσοδος στο μοντέλο είναι κατάλληλα ευθυγραμμισμένη και ότι το padding πραγματοποιείται με ένα συμβολικά ουδέτερο token (το eos_token), ώστε να μην επηρεάζεται το νόημα της ακολουθίας. Επιπρόσθετα, εφαρμόζονται βασικές παραμετροποιήσεις στο tokenizer, όπως η ενεργοποίηση truncation, ο ορισμός μέγιστου μήκους (max_length=1024) και η επιλογή padding=True, ώστε η είσοδος να έχει συνεπή μορφή, ανεξαρτήτως του αριθμού των tokens που παράγει το prompt. Το σύνολο των εισόδων μετατρέπεται σε PyTorch τανυστές και αποστέλλεται στη συσκευή όπου εκτελείται το μοντέλο, εξασφαλίζοντας έτσι την ομαλή λειτουργία σε πραγματικό χρόνο. Συνολικά, η διαδικασία φόρτωσης και παραμετροποίησης σχεδιάστηκε με σκοπό να επιτύχει υψηλή συμβατότητα με χαμηλού κόστους περιβάλλοντα, ενώ παράλληλα εξασφαλίζει τεχνική σταθερότητα και βελτιστοποιημένη χρήση μνήμης. Η υλοποίηση βασίστηκε σε πλήρη αξιοποίηση των δυνατοτήτων των υποστηρικτικών βιβλιοθηκών, ώστε το μοντέλο να ενσωματωθεί αρμονικά στην ευρύτερη ροή της εφαρμογής. Αφού έχει διαμορφωθεί το prompt και το γλωσσικό μοντέλο έχει φορτωθεί στη μνήμη με τις κατάλληλες παραμέτρους, ακολουθεί η φάση υποβολής του prompt στο LLM και η παραγωγή της απάντησης. Η διαδικασία αυτή συνίσταται σε δύο επιμέρους βήματα: τη σύνθεση της ακολουθίας συνομιλίας και τη μετατροπή της σε tokens και την παραγωγή απάντησης μέσω του αλγορίθμου αυτοπαλινδρόμησης (autoregressive generation) που χρησιμοποιεί το μοντέλο. Η αρχιτεκτονική των LLMs που είναι βελτιστοποιημένα για αλληλεπίδραση (instructtuned models) ακολουθεί συνήθως τη λογική δομής συνομιλίας τύπου chat, όπου το prompt δομείται με ρόλους (roles) και διακριτά τμήματα περιεχομένου. Στο παρόν σύστημα, η είσοδος προς το μοντέλο οργανώνεται με βάση τρεις ρόλους:
46 1. system: παρέχει υψηλού επιπέδου οδηγίες για το πλαίσιο λειτουργίας του μοντέλου (π.χ. "You are a helpful AI healthcare assistant. Answer truthfully and concisely."), 2. user: μεταφέρει το ερώτημα του χρήστη συνοδευόμενο από τις ιατρικές τριπλέτες, 3. assistant: σηματοδοτεί το σημείο όπου το μοντέλο καλείται να ξεκινήσει την παραγωγή της απάντησης. Η ακολουθία αυτή μετατρέπεται σε γραμμικό κείμενο κατάλληλο προς tokenization, όπως στο παράδειγμα που ακολουθεί: system: You are a helpful AI healthcare assistant. Answer truthfully and concisely. user: [Ολόκληρο το prompt με τις τριπλέτες και την ερώτηση του χρήστη] assistant: Πίνακας 15. Η είσοδος προς το μοντέλο. Η παραπάνω ακολουθία εισάγεται στον tokenizer του μοντέλου, με χρήση padding, truncation και ορισμού ανώτατου αριθμού tokens (max_length). Στη συνέχεια, η είσοδος περνά στο μοντέλο για τη διαδικασία δημιουργίας απάντησης (text generation), η οποία ακολουθεί την προσέγγιση αυτοπαλινδρόμησης: σε κάθε βήμα, το μοντέλο προβλέπει τον επόμενο token με βάση τους προηγούμενους. Κατά τη φάση generation, εφαρμόζονται συγκεκριμένες ρυθμίσεις που ελέγχουν τη μορφή, σταθερότητα και περιεχόμενο της παραγόμενης απάντησης. Οι βασικότερες παράμετροι που χρησιμοποιούνται είναι οι εξής: max_new_tokens = 1024 Η παράμετρος αυτή ορίζει τον ανώτατο αριθμό νέων tokens που μπορεί να παραχθεί από το μοντέλο κατά τη διάρκεια της απάντησης. Ο στόχος της χρήσης ενός τέτοιου ορίου είναι να περιοριστεί το μήκος της απάντησης, ώστε να αποφεύγονται περιπτώσεις ασυνάρτητων ή μεγάλων κειμένων. Εδώ, έγινε χρήση υψηλής τιμής ως μέγιστο όριο ασφαλείας ώστε να μην περιορίσει την παραγωγή απάντησης. do_sample = True Με την παράμετρο do_sample=True ενεργοποιείται το στοχαστικό sampling, δηλαδή η επιλογή του επόμενου token δεν γίνεται πάντα με βάση τη μέγιστη πιθανότητα (greedy decoding), αλλά με τυχαία δειγματοληψία από την κατανομή πιθανοτήτων. temperature = None Η παράμετρος temperature καθορίζει τον βαθμό τυχαιότητας στην παραγωγή. Χαμηλές τιμές κάνουν το μοντέλο πιο «συντηρητικό», εστιάζοντας σε tokens με υψηλή πιθανότητα, ενώ υψηλές τιμές αυξάνουν την ποικιλία, δίνοντας περισσότερες πιθανότητες και σε λιγότερο συνηθισμένα tokens. Στην παρούσα υλοποίηση έχει τεθεί temperature=None, που ισοδυναμεί με προεπιλεγμένη τιμή 1.0, διατηρώντας μια ισορροπία μεταξύ δημιουργικότητας και ακρίβειας. top_p = None Η παράμετρος top_p σχετίζεται με τη μέθοδο nucleus sampling (δειγματοληψία πυρήνα) και περιορίζει την επιλογή των tokens μόνο σε εκείνα που καλύπτουν ποσοστό p της συνολικής πιθανότητας (π.χ. top_p=0.9 σημαίνει ότι λαμβάνονται υπόψη tokens που αθροιστικά ξεπερνούν το 90% της πιθανότητας). Εδώ έχει οριστεί top_p=None, επομένως η
53 Η απάντηση του ιατρικού ψηφιακού βοηθού: Diabetes causes several symptoms, including Fatigue, Polydipsia, Polyphagia, Polyuria, Weight Loss, Blurred vision, Abdominal pain, Altered mental state, Sweet-smelling urine, Acetone breath smell, and Genital itchiness. Additionally, it can cause Coma, Nausea, Vomiting, and Altered breathing. These symptoms occur due to the body's inability to regulate blood sugar levels properly. Η απάντηση του μοντέλου LLaMA: The symptoms of diabetes may include: * Increased thirst * Frequent urination * Fatigue * Blurred vision * Slow healing of cuts and wounds * Tingling or numbness in the hands or feet * Dry, itchy skin * Unexplained weight loss If you experience any of these symptoms, it's important to see a healthcare provider for a proper diagnosis and treatment plan. Πίνακας 17. Ερωτο-απαντήσεις για τα συμπτώματα του διαβήτη. O ιατρικός ψηφιακός βοηθός που αναπτύχθηκε, περιλαμβάνει σχεδόν όλα τα παραπάνω αναφερθείσα συμπτώματα από την απάντηση του μοντέλου Llama-3.1-8B-Instruct αλλά και ακόμα περισσότερα ιατρικά επιβεβαιωμένα συμπτώματα. Ακολουθούν και άλλες απαντήσεις του ιατρικού ψηφιακού βοηθού αλλά και του μοντέλου Llama-3.1-8B-Instruct μας σε διάφορους τύπους ερωτήσεων. User Question: What is used to diagnose COVID-19? Η απάντηση του ιατρικού ψηφιακού βοηθού: COVID-19 can be diagnosed using three methods: Antigen Tests, PCR Tests, and Chest CT Scans. Antigen Tests detect the presence of specific proteins (antigens) on the surface of the SARS-CoV-2 virus. These tests are usually rapid and can provide results within 15-30 minutes. They are commonly used in point-ofcare settings, such as clinics and hospitals. PCR Tests, or polymerase chain reaction tests, detect the genetic material (RNA) of the virus. This method is considered highly accurate and is often used as a gold standard for diagnosing COVID-19. PCR tests typically take longer than antigen tests, requiring several hours to produce results.
54 Chest CT scans are imaging tests that use X-rays to create detailed pictures of the lungs. These scans can help identify lung damage or other complications associated with COVID-19. While not as widely used as antigen or PCR tests, chest CT scans can provide valuable information for patients with severe symptoms or those who require hospitalization. Η απάντηση του μοντέλου LLaMA: The diagnosis of COVID-19 is typically made based on a combination of symptoms, physical examination findings, and diagnostic testing. The most common diagnostic tests used for COVID-19 are: 1. Reverse Transcription Polymerase Chain Reaction (RT-PCR) testing: This is a laboratory test that detects the genetic material (RNA) of SARS-CoV-2, the virus that causes COVID-19. A nasal or throat swab is taken and sent to a laboratory for analysis. 2. Rapid Antigen Testing: This test detects specific proteins (antigens) on the surface of the virus. It can be done at home or in a healthcare setting using a nasal swab or saliva sample. The results are typically available within minutes. 3. Serological Testing (Antibody Testing): This test looks for antibodies in the blood, which are produced by the immune system in response to an infection. These tests can help determine if a person has had COVID-19 in the past, but they are not as useful for diagnosing active infections. Πίνακας 18. Οι απαντήσεις για τον τρόπο διάγνωσης του COVID-19. Η απάντηση του ιατρικού ψηφιακού παραθέτει σωστά όλες τις κυρίες μεθόδους (PCR και τεστ αντιγόνου) και προσθέτει και την αξία της αξονικής τομογραφίας θώρακος σε σοβαρές περιπτώσεις καταφέρνοντας σωστά να τα διαχωρίσει σε περιπτώσεις χρήσης. Από την άλλη, η απάντηση του μοντέλου LLaMA παραλείπει την αναφορά σε ένα τρόπο διάγνωσης. Ακόμα, αναφέρεται στο τεστ αντισωμάτων, η οποία ωστόσο δεν αποτελεί μέθοδο διάγνωσης, καθώς δείχνει μόνο αν κάποιος έχει νοσήσει από COVID-19 στο παρελθόν και μάλιστα μέσα σε συγκεκριμένο χρονικό παράθυρο. Αυτό το στοιχείο βέβαια επισημαίνεται και σχολιάζεται στην απάντηση. Παρακάτω παρουσιάζεται ένα ακόμη σετ παραδειγμάτων, όπου η ερώτηση παραμένει ίδια, και προβάλλεται η απάντηση του ιατρικού ψηφιακού βοηθού και του μοντέλου Llama-3.1-8B-Instruct. User Question: What are the symptoms of Pancreatic Cancer and how can it be diagnosed? Η απάντηση του ιατρικού ψηφιακού βοηθού: The symptoms of pancreatic cancer include: • Loss of Appetite • Vomiting • New-on-set diabetes • Jaundice (yellowish coloration of the skin and eye) • Abdominal pain • Nausea • Fatigue • Unintentional weight loss
55 • Dark urine • Unintentional weight loss • Light-colored stools Pancreatic cancer can be diagnosed using the following methods: Imaging Methods • CT scan: Uses X-rays to create detailed images of the inside of the body. • MRI: Uses magnetic fields and radio waves to create high-resolution images of internal organs. • PET scan: Combines a CT scan with a small amount of radioactive material to detect cancer cells. • EUS: Uses high-frequency sound waves to visualize the pancreas and surrounding tissues. Diagnostic Procedures • Biopsy: A surgical procedure that removes a sample of tissue for examination under a microscope. • Blood tests: Measures the levels of specific proteins or enzymes in the blood, such as the CA 19-9 test. Other Diagnostic Methods Chronic pancreatitis can increase the likelihood of developing pancreatic cancer. Therefore, diagnosing chronic pancreatitis through pancreatic function tests may also aid in identifying individuals at higher risk for pancreatic cancer. It's worth noting that a combination of these diagnostic methods may be used to accurately diagnose pancreatic cancer, depending on the individual patient's condition and medical history. Η απάντηση του μοντέλου LLaMA: The symptoms of pancreatic cancer may include: * Abdominal pain or discomfort * Yellowing of the skin and eyes (jaundice) * Weight loss and loss of appetite * Fatigue and weakness To diagnose pancreatic cancer, the following tests and procedures may be used: 1. Imaging tests: CT scans, MRI scans, and PET scans to visualize the pancreas and detect tumors. 2. Blood tests: To check for elevated levels of certain enzymes, such as amylase and lipase, which can indicate pancreatic cancer. 3. Endoscopic ultrasound: A minimally invasive procedure that uses a flexible tube with a camera and ultrasound device to visualize internal organs. 4. Biopsy: A procedure that involves removing a small sample of tissue from the tumor for examination under a microscope.
56 5. Genetic testing: To identify genetic mutations that may increase the risk of developing pancreatic cancer. It's essential to consult a healthcare professional for an accurate diagnosis and treatment plan. Early detection and treatment can improve survival rates and quality of life for individuals with pancreatic cancer. Πίνακας 19. Απαντήσεις σε μια πιο συνδυαστική ερώτηση. Στον παραπάνω πίνακα διατυπώθηκε μια πιο σύνθετη ερώτηση, με στόχο να αξιολογηθεί η ικανότητα του ψηφιακού βοηθού να ανακτήσει όλες τις συναφείς τριπλέτες και να ανταποκριθεί αποτελεσματικά και στα δύο σκέλη της. Όπως προκύπτει, το σύστημα καταφέρνει επιτυχώς να παραθέσει το σύνολο των απαραίτητων και διαθέσιμων ιατρικών πληροφοριών, παρουσιάζοντας μάλιστα ένα πιο εκτενές εύρος δεδομένων σε σύγκριση με το απλό μοντέλο του αντίστοιχου LLM. Αναλυτικότερα, έπειτα και από αντίστοιχη ιατρική ερευνά, οι δύο απαντήσεις παρουσιάζουν ομοιότητες αλλά και σημαντικές διαφορές ως προς την πληρότητα και την ακρίβειά τους. Η απάντηση του ιατρικού ψηφιακού βοηθού είναι σαφώς πιο αναλυτική, παραθέτοντας μια εκτενή λίστα συμπτωμάτων, η οποία περιλαμβάνει τόσο τα πιο συνήθη, όπως ο κοιλιακός πόνος, η απώλεια όρεξης και ο ίκτερος, όσο και λιγότερο συχνά αλλά κλινικά σημαντικά, όπως ο νέος ή επιδεινούμενος διαβήτης, τα σκουρόχρωμα ούρα και τα ανοιχτόχρωμα κόπρανα. Στο διαγνωστικό σκέλος, η απάντηση αυτή αναφέρεται με ακρίβεια σε όλες τις βασικές μεθόδους, από τις απεικονιστικές εξετάσεις (CT, MRI, PET, EUS) έως τη βιοψία και τις αιματολογικές εξετάσεις, με ιδιαίτερη μνεία στον δείκτη CA 19-9 που χρησιμοποιείται κλινικά. Επιπλέον, εντάσσει και την έννοια του παράγοντα κινδύνου, όπως η χρόνια παγκρεατίτιδα, εμπλουτίζοντας την απάντηση με επιπλέον διάσταση. Αντίθετα, η απάντηση του μοντέλου LLaMA είναι πιο περιορισμένη στη λίστα συμπτωμάτων, παραθέτοντας μόνο τα βασικά (πόνος, ίκτερος, απώλεια βάρους, κόπωση) και παραλείποντας αρκετά που σχετίζονται με την κλινική εικόνα της νόσου. Στη διάγνωση, αναφέρει μεν τις βασικές μεθόδους, αλλά εισάγει εξετάσεις που δεν έχουν υψηλή διαγνωστική αξία για τον καρκίνο του παγκρέατος, όπως οι μετρήσεις αμυλάσης και λιπάσης, οι οποίες σχετίζονται περισσότερο με παγκρεατίτιδα. Επίσης, περιλαμβάνει τον γενετικό έλεγχο, ο οποίος έχει σημασία για την αναγνώριση προδιάθεσης αλλά όχι ως καθιερωμένο διαγνωστικό εργαλείο. Συνολικά, η απάντηση του ιατρικού ψηφιακού βοηθού είναι πιο πλήρης, ακριβής και ευθυγραμμισμένη με την κλινική πρακτική, ενώ η απάντηση του LLaMA, αν και περιλαμβάνει σωστές πληροφορίες, παραμένει πιο περιορισμένη και λιγότερο εξειδικευμένη. User Question: What are the symptoms of Trisomy 13? Η απάντηση του ιατρικού ψηφιακού βοηθού: The symptoms of trisomy include craniofacial anomalies, neurological defects, and congenital heart disease. These symptoms can be lifethreatening and require immediate medical attention. If left untreated, they can lead to severe complications and long-term health issues. It is essential to seek medical help as soon as possible if you suspect that you or a loved one may have trisomy 13. Η απάντηση του μοντέλου LLaMA: Edwards syndrome, also known as Trisomy Thirteen, is a genetic disorder caused by an extra copy of all or part of chromosome 18. It is characterized by severe intellectual disability, heart defects, and other physical abnormalities. The condition is usually diagnosed prenatally or at birth and is often fatal within the first year of life. There is no cure for
57 Edwards syndrome, and treatment is focused on managing the symptoms and improving the quality of life for the affected individual. However, I think there might be some confusion. The correct answer should be Trisorny 18, not 13. Trismony 13 is actually Patau syndrome, which is a rare genetic disorder that causes severe intellectual and physical disabilities. It occurs when there is an extra chromosome 13 in a person's cells. The symptoms can vary, but they often include severe intellectual disabilities, heart problems, and physical abnormalities such as a small head, a flat face, and a cleft palate. I hope this clears up any confusion. Please let me know if you have any further questions. Πίνακας 20. Απαντήσεις σε πιο εξειδικευμένη ερώτηση. Στον πίνακα 11, έγινε μια ερώτηση σχετικά με το MeDaL Dataset που αποτελεί πιο εξειδικευμένη αλλά και πιο «ασύνδετη» γνώση. Η σύγκριση των δύο απαντήσεων αναδεικνύει με σαφήνεια την ανωτερότητα της προσέγγισης RAG έναντι ενός αυτόνομου LLM. Ο ιατρικός ψηφιακός βοηθός, βασισμένος στη γνώση που ανακτάται από τον γράφο τριπλετών, παρέχει μια απάντηση συνεπή και ακριβή, η οποία, έστω και αν παραμένει γενική, δεν αποκλίνει από την επιστημονικά τεκμηριωμένη γνώση. Η πληροφορία που προσφέρει είναι ορθή, δεν περιλαμβάνει αντιφάσεις και παραμένει αυστηρά εντός των ορίων της διαθέσιμης δομημένης βάσης δεδομένων. Αντίθετα, το αυτόνομο LLM (LLaMA) παρουσιάζει χαρακτηριστικά στοιχεία hallucination, καθώς συγχέει αρχικά το σύνδρομο Patau (Trisomy 13) με το σύνδρομο Edwards (Trisomy 18), εισάγοντας λανθασμένη πληροφορία που μπορεί να οδηγήσει σε εσφαλμένα συμπεράσματα. Παρότι στη συνέχεια διορθώνει το σφάλμα και παραθέτει περισσότερες λεπτομέρειες, το γεγονός ότι παράγει ανακριβή δεδομένα αναδεικνύει τον περιορισμό της αυτόνομης λειτουργίας του χωρίς πρόσβαση σε εξωτερικά τεκμηριωμένα δεδομένα. Τα ορθογραφικά που παρατηρούνται στην απάντηση του απλού μοντέλου είναι ένα ακόμα στοιχείο των hallucinations. Συνεπώς, το παράδειγμα αυτό καταδεικνύει ότι η χρήση RAG εξασφαλίζει αξιοπιστία, συνέπεια και συμμόρφωση με επιστημονικά έγκυρες πηγές, ενώ τα αυτόνομα LLMs, αν και ικανά να παράγουν εκτενέστερες απαντήσεις, είναι επιρρεπή σε φαινόμενα παραπληροφόρησης. User Question: What is the treatment for leukemia? Η απάντηση του ιατρικού ψηφιακού βοηθού: Leukemia can be treated with various methods, including Chemotherapy, Targeted Therapy, Immunotherapy, Radiation therapy, and Stem Cell Transplant. These treatments aim to eliminate cancer cells, manage symptoms, and improve the patient's quality of life. Additionally, supportive care measures such as pain management, nutritional support, psychosocial assistance, blood transfusions, and growth factor administration may also be employed to alleviate side effects and complications associated with the disease. The specific treatment approach often depends on the type and stage of leukemia, as well as the individual patient's overall health status. Therefore, a comprehensive treatment plan should be tailored to address the unique needs of each patient. Η απάντηση του μοντέλου LLaMA: Leukemias are treated with a combination of chemotherapy, radiation therapy, and bone marrow transplantation. The specific treatment plan
58 will depend on the type and stage of the disease, as well as the patient's age, overall health, and other factors. Πίνακας 21. Q&A για την λευχαιμία. Η απάντηση του ιατρικού ψηφιακού βοηθού είναι πιο πλήρης και ακριβής, καθώς περιλαμβάνει όλες τις βασικές θεραπευτικές προσεγγίσεις αλλά και την υποστηρικτική φροντίδα, ενώ το LLaMA περιορίζεται σε μια πιο γενική και λιγότερο εξειδικευμένη περιγραφή. Παρακάτω παρουσιάζεται και η λίστα με τις πιο συναφείς οντότητες που προέκυψαν από τον μηχανισμό εννοιολογικής ομοιότητας της παραπάνω ερώτησης αλλά και το prompt με τις σχετικές τριπλέτες. Most relevant entities based on semantic similarity: → Leukemia → Treatment → Human Promyelocytic Leukemia → Rituximab (for B-cell leukemia) → Family history of leukemia → Chemotherapy → Topical chemotherapy → Systemic chemotherapy → Monoclonal Antibody Therapy → Previous chemotherapy → Thrombolytic Therapy → Intensive Care Treatment → Antiviral Therapy → Insulin therapy → Insulin Therapy → Embolization therapy → Ablation therapy → Antiviral treatment for hepatitis B and C → Brachytherapy → Antiplatelet Therapy Prompt preview: The following triplets are structured medical knowledge. Each triplet describes a medically verified fact. Given the user question, please provide an accurate and logical answer based on the given medical triplets. Please answer in one paragraph Please do not use 'Note:' Do not mention the given medical triplets in the text Medical Triplets: - Leukemia is treated with Chemotherapy - Leukemia is treated with Targeted therapy - Leukemia is treated with Immunotherapy - Leukemia is treated with Radiation therapy
59 - Leukemia is treated with Stem cell transplant - Leukemia is diagnosed by Complete blood count (CBC) - Leukemia is diagnosed by Bone marrow biopsy - Leukemia is diagnosed by Cytogenetic analysis - Leukemia is diagnosed by Lumbar puncture - Leukemia is diagnosed by Molecular testing - Human Promyelocytic Leukemia is treated with Chemotherapy - Leukemia is diagnosed by Flow cytometry - Leukemia managed with Antibiotics for infection control - Leukemia is diagnosed by Peripheral blood smear - Leukemia managed with Blood transfusions - Leukemia managed with Pain management - Leukemia managed with Nutritional support - Leukemia managed with Psychosocial support - Leukemia managed with Growth factors - Lung cancer is treated with Chemotherapy - Breast cancer is treated with Chemotherapy - Leukemia causes Easy bruising and bleeding - Skin cancer is treated with Topical chemotherapy - Stomach Cancer is treated with Chemotherapy - Prostate Cancer is treated with Chemotherapy - Liver cancer is treated with Ablation therapy - Brain cancer is treated with Chemotherapy - Reducing radiation exposure reduces risk of Leukemia - Diabetes is treated with Insulin Therapy - Liver cancer is treated with Embolization therapy Η εκτύπωση και η ανάγνωση των αποτελεσμάτων αποδείχθηκαν ιδιαίτερα χρήσιμες, καθώς συνέβαλαν τόσο στην καλύτερη κατανόηση του τρόπου με τον οποίο απαντά το μοντέλο, όσο και στη συνολική βελτιστοποίηση του συστήματος. Τέλος, το σύστημα υποβλήθηκε και σε ερωτήσεις λιγότερο συναφείς με το ιατρικό του αντικείμενο, με στόχο να αξιολογηθεί η ικανότητά του να διαχειρίζεται εκτός πεδίου ερωτήματα. User Question: How does air pollution affect childhood development? Answer: Air pollution has been linked to various health issues in children, including respiratory problems and increased risk of asthma. However, there is no direct information provided on how air pollution affects childhood development in terms of cognitive, emotional, or social growth. It's essential to consult reliable sources for comprehensive information on this topic. However, I can tell you that reducing exposure to air pollution may reduce the risk of developing asthma, which could have a positive impact on childhood development indirectly. Nevertheless, more research is needed to fully understand the effects of air pollution on child development. Πίνακας 22. Λιγότερη συναφή ερώτηση.
60 User Question: Who is the president of Greece? Answer: I'm sorry, but I can't provide information on non-medical topics. Can I help you with anything else? Πίνακας 23. Ερώτηση εκτός ιατρικής θεματολογίας. Στην πρώτη περίπτωση, που αφορούσε τις επιδράσεις της ατμοσφαιρικής ρύπανσης στην παιδική ανάπτυξη, το σύστημα παρείχε μια περιορισμένη αλλά σχετικά ορθή απάντηση, εστιάζοντας σε αναπνευστικά προβλήματα και τον κίνδυνο άσθματος, ενώ παράλληλα αναγνώρισε ότι δεν διαθέτει επαρκή γνώση για τις γνωστικές και κοινωνικο-συναισθηματικές διαστάσεις του ερωτήματος. Στη δεύτερη περίπτωση, όταν τέθηκε ερώτημα εκτός ιατρικού πλαισίου («Ποιος είναι ο πρόεδρος της Ελλάδας;»), το σύστημα απάντησε δηλώνοντας ρητά ότι δεν παρέχει τέτοιου είδους πληροφορίες και παρέπεμψε τον χρήστη στο να υποβάλει ιατρικά ερωτήματα. Η συμπεριφορά αυτή καταδεικνύει την ικανότητα του ψηφιακού βοηθού να αναγνωρίζει τα όρια του γνωστικού του πεδίου και να αποφεύγει την παραγωγή λανθασμένων ή παραπλανητικών απαντήσεων.
61 4 Συμπεράσματα και Μελλοντικές Κατευθύνσεις Η ολοκλήρωση της παρούσας διπλωματικής εργασίας ανέδειξε κρίσιμες διαστάσεις γύρω από τη σχεδίαση και υλοποίηση έξυπνων ψηφιακών βοηθών, με έμφαση στην αξιοποίηση μεγάλων γλωσσικών μοντέλων σε συνδυασμό με γράφων γνώσης. Το κεφάλαιο αυτό συνοψίζει τα κύρια αποτελέσματα που προέκυψαν από την ερευνητική διαδικασία, ερμηνεύει τη συνεισφορά τους στο ευρύτερο επιστημονικό και τεχνολογικό πλαίσιο, και αναδεικνύει τους περιορισμούς που εντοπίστηκαν κατά την υλοποίηση. Παράλληλα, προτείνονται κατευθύνσεις για μελλοντική έρευνα και πρακτική εφαρμογή, με σκοπό την περαιτέρω εξέλιξη και εδραίωση του προτεινόμενου μοντέλου σε πραγματικά περιβάλλοντα χρήσης. 4.1 Ανακεφαλαίωση Στόχων και Συνεισφορών Η παρούσα διπλωματική εργασία είχε ως κύριο στόχο την ανάπτυξη ενός προηγμένου ιατρικού ψηφιακού βοηθού, ο οποίος αξιοποιεί την τεχνική RAG για τη βελτίωση της ακρίβειας και της αξιοπιστίας των παραγόμενων απαντήσεων. Σε αντίθεση με τους παραδοσιακούς ψηφιακούς βοηθούς, οι οποίοι συχνά εξαρτώνται αποκλειστικά από στατικές βάσεις ερωτοαπαντήσεων ή από την περιορισμένη «εσωτερική μνήμη» ενός μοντέλου, η προσέγγιση αυτή επιχειρεί να υπερβεί τους υπάρχον περιορισμούς ενσωματώνοντας νέες τεχνικές. Με την συγκεκριμένη υλοποίηση, προκύπτουν απαντήσεις που δεν είναι απλώς γλωσσικά εύρυθμες, αλλά και ενισχυμένες με γνώση που προέρχεται από αξιόπιστα και επαληθεύσιμα δεδομένα. Η καινοτομία της εργασίας εστιάζεται σε τρία βασικά επίπεδα i) αντιμετώπιση του φαινομένου των «παραισθήσεων» (hallucinations) που εμφανίζεται στα LLMs, ii) ενίσχυση της διαφάνειας και της επαναληψιμότητας: ο κώδικας και τα δεδομένα έχουν οργανωθεί κατά τρόπο που επιτρέπει την εύκολη επανεκτέλεση και επέκταση του συστήματος από μελλοντικούς ερευνητές και iii) προσαρμογή στο ιατρικό πεδίο: με τη σχεδίαση εξειδικευμένης οντολογίας και την εισαγωγή επιλεγμένων ιατρικών τριπλετών, η εργασία δεν περιορίστηκε σε μια θεωρητική μελέτη, αλλά προσέφερε μια πρακτική εφαρμογή που μπορεί να λειτουργήσει ως βάση για περαιτέρω έρευνα στον χώρο της υγειονομικής πληροφόρησης. Συνολικά, η εργασία κατέδειξε ότι ο συνδυασμός LLM και ανάκτηση γνώσης από βάση δεδομένων αποτελεί μια πολλά υποσχόμενη κατεύθυνση για την ανάπτυξη ψηφιακών βοηθών που χαρακτηρίζονται όχι μόνο από γλωσσική ευχέρεια, αλλά και από αξιοπιστία, τεκμηρίωση και προσαρμοστικότητα. 4.2 Κυριά συμπεράσματα από την υλοποίηση Η υλοποίηση του ιατρικού ψηφιακού βοηθού επέτρεψε την εξαγωγή σημαντικών συμπερασμάτων αναφορικά με τη λειτουργικότητα, την αποτελεσματικότητα και τη χρησιμότητα της RAG εφαρμογής. Καταρχάς, η ανάπτυξη και ενσωμάτωση της οντολογίας, σε συνδυασμό με την αποθήκευση και διαχείριση των τριπλετών στο Neo4j, απέδειξε την αξία που έχουν οι γραφικές βάσεις δεδομένων για την αποτύπωση και ανάκτηση ιατρικής πληροφορίας. Η αναπαράσταση της γνώσης με τη μορφή οντοτήτων και σχέσεων προσέφερε σαφήνεια, δυνατότητα οπτικοποίησης και εύκολη επεκτασιμότητα, γεγονός που καθιστά τη συγκεκριμένη προσέγγιση ιδιαίτερα κατάλληλη για πολύπλοκα και συνεχώς ανανεωμένα πεδία, όπως η ιατρική. Η προτεινόμενη προσέγγιση επιτρέπει στον χρήστη να διατυπώνει το ερώτημά του με ελεύθερο τρόπο, χωρίς περιορισμούς στη μορφή ή στη γλωσσική δομή, με το σύστημα να επιτυγχάνει ακριβή αντιστοίχιση με τις σχετικές πληροφορίες (τριπλέτες) της βάσης γνώσης.
62 Με τον τρόπο αυτό, υπερβαίνονται οι περιορισμοί των παλαιότερων ιατρικών ψηφιακών βοηθών, οι οποίοι βασίζονταν σε κανόνες ή σε προκαθορισμένες λίστες ερωτοαπαντήσεων και δεν μπορούσαν να υποστηρίξουν την ευελιξία της φυσικής γλώσσας. Ένα δεύτερο συμπέρασμα αφορά τη χρήση των τεχνικών σημασιολογικής ανάκτησης με Sentence Transformers. Η προτεινόμενη προσέγγιση επιτρέπει στον χρήστη να διατυπώνει το ερώτημά του με ελεύθερο τρόπο, χωρίς περιορισμούς στη μορφή ή στη γλωσσική δομή, με το σύστημα να επιτυγχάνει ακριβή αντιστοίχιση με τις σχετικές πληροφορίες (τριπλέτες) της βάσης γνώσης, υπερβαίνοντας τους περιορισμούς των παλαιότερων ιατρικών ψηφιακών βοηθών. Η αξιοποίηση εννοιολογικής ομοιότητας συνέβαλε ουσιαστικά στη μείωση αστοχιών και στην παροχή τεκμηριωμένων απαντήσεων. Παράλληλα, η ενσωμάτωση του LLaMA 3.1 – 8B Instruct απέδειξε ότι τα σύγχρονα μεγάλα γλωσσικά μοντέλα μπορούν να αποτελέσουν ένα ισχυρό εργαλείο παραγωγής απαντήσεων όταν συνδυαστούν με αξιόπιστες πηγές γνώσης. Ενώ τα LLMs έχουν τη δυνατότητα να παράγουν κείμενο υψηλής ποιότητας, η απομόνωσή τους από ένα πλαίσιο εξωτερικών δεδομένων συχνά οδηγεί σε ανακριβείς ή ατεκμηρίωτες αποκρίσεις. Μέσα από την αρχιτεκτονική που αναπτύχθηκε, αποδείχθηκε ότι η απόδοση του συστήματος βελτιώνεται ουσιαστικά, καθώς οι απαντήσεις δεν περιορίζονται πλέον σε γενικές γνώσεις του μοντέλου, αλλά θεμελιώνονται σε δεδομένα που έχουν ανακτηθεί και επαληθευθεί. Με αυτόν τον τρόπο εξασφαλίζεται τεκμηριωμένη ακρίβεια και μειώνεται σημαντικά ο κίνδυνος παραπληροφόρησης. Το στοιχείο αυτό αναδεικνύει την πρακτική αξία της προσέγγισης, ιδιαίτερα σε εφαρμογές όπου η αξιοπιστία αποτελεί κρίσιμο παράγοντα. Τέλος, η υλοποίηση ανέδειξε και την πρακτική διάσταση της διαφάνειας. Η δυνατότητα πλήρους αναπαραγωγής του πειράματος, μέσω της διάθεσης του κώδικα και των δεδομένων, επιτρέπει σε τρίτους ερευνητές να συνεχίσουν τη μελέτη, να πραγματοποιήσουν συγκριτικές αξιολογήσεις διαφορετικών μεθόδων και να ενισχύσουν την εμπιστοσύνη στο τελικό αποτέλεσμα. Με τον τρόπο αυτό, η παρούσα εργασία συνεισφέρει όχι μόνο στην εξέλιξη των τεχνολογιών RAG και LLMs, αλλά και στη γενικότερη κατεύθυνση της ανοικτής έρευνας με δυνατότητα αναπαραγωγής. 4.3 Περιορισμοί της προσέγγισης Παρά τα θετικά αποτελέσματα και τις συνεισφορές που παρουσιάστηκαν, η παρούσα εργασία δεν στερείται περιορισμών. Οι περιορισμοί αυτοί δεν μειώνουν την αξία της υλοποίησης, αλλά υπογραμμίζουν τα σημεία που χρήζουν περαιτέρω βελτίωσης και διερεύνησης. Ένας πρώτος περιορισμός αφορά το μέγεθος και την ποιότητα του συνόλου δεδομένων που αξιοποιήθηκε για τη δημιουργία της οντολογίας και την εξαγωγή των ιατρικών τριπλετών. Παρότι η διαδικασία συλλογής και επεξεργασίας κειμένων βασίστηκε σε αξιόπιστες πηγές, το εύρος της βάσης δεδομένων παραμένει περιορισμένο σε σχέση με την πραγματική πολυπλοκότητα και την ταχύτητα με την οποία εξελίσσεται η ιατρική γνώση. Η περιορισμένη κάλυψη μπορεί να επηρεάσει τη γενικευσιμότητα και την πληρότητα των παραγόμενων απαντήσεων. Ένας δεύτερος περιορισμός συνδέεται με τη χειροκίνητη διαδικασία εξαγωγής και επεξεργασίας τριπλετών, η οποία αν και επέτρεψε μεγαλύτερο έλεγχο στην ποιότητα της βάσης, εντούτοις δεν είναι επαρκώς κλιμακώσιμη. Σε εφαρμογές μεγάλης κλίμακας, η ανάγκη για αυτοματοποιημένες τεχνικές εξαγωγής σχέσεων από κείμενο (Relation Extraction) καθίσταται επιτακτική, ώστε να αντιμετωπιστεί ο όγκος και η ποικιλία της διαθέσιμης πληροφορίας. Ένας ακόμη περιορισμός αφορά τις τεχνικές απαιτήσεις που συνεπάγεται η χρήση Μεγάλων Γλωσσικών Μοντέλων. Η αξιοποίηση του LLaMA 3.1 – 8B Instruct προϋποθέτει
69 53 Lo, C. K. (2023). What is Chen the impact of ChatGPT on education? A rapid review of the literature. Education sciences, 13(4), 410. https://doi.org/10.3390/educsci13040410 54 Lokman, A. S., & Ameedeen, M. A. (2019). Modern chatbot systems: A technical review. Proceedings of the Future Technologies Conference (FTC) 2018, 2, 1012-1023. https://doi.org/10.1007/978-3-030-02683-7_75 55 Luo, B., Lau, R. Y. K., Li, C., & Si, Y.-W. (2022). A critical review of state-of-the-art chatbot designs and applications. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 12(1), e1434. https://doi.org/10.1002/widm.1434 56 Lyu, Q., Tan, J., Zapadka, M. E., Ponnatapura, J., Niu, C., Myers, K. J., Wang, G. & Whitlow, C. T. (2023). Translating radiology reports into plain language using ChatGPT and GPT-4 with prompt learning: results, limitations, and potential. Visual Computing for Industry, Biomedicine and Art, 6(1), 9. https://doi.org/10.1186/s42492-023-001365 57 Macdonald, C., Adeloye, D., Sheikh, A., & Rudan, I. (2023). Can ChatGPT draft a research article? An example of population-level vaccine effectiveness analysis. Journal of global health, 13, 01003. 58 Madhu, D., Jain, C. J. N., Sebastain, E., Shaji, S., & Ajayakumar, A. (2017). A novel approach for medical assistance using trained chatbot. Proceedings of the international conference on inventive communication and computational technologies, ICICCT, 243–246. https://doi.org/10.1109/ICICCT.2017.7975195 59 Marín, D. P. (2015). A procedure to engage children in the morphological and syntax analysis of pedagogic conversational agent-generated sentences to study language. International Journal of Online Pedagogy and Course Design (IJOPCD), 5(2), 23–42. https://doi.org/10.4018/IJOPCD.2015040103 60 Martínez-Miranda, J., Martínez, A., Ramos, R., Aguilar, H., Jiménez, L., Arias, H., Rosales, G., & Valencia, E. (2019). Assessment of users’ acceptability of a mobile-based embodied conversational agent for the prevention and detection of suicidal behaviour. Journal of Medical Systems, 43(8), 246. https://doi.org/10.1007/s10916-019-1387-1 61 McKinney, W. (2010). Data structures for statistical computing in Python. SciPy, 445(1), 51-56. 62 Megahed, F. M., Chen, Y. J., Ferris, J. A., Knoth, S., & Jones-Farmer, L. A. (2024). How generative AI models such as ChatGPT can be (mis) used in SPC practice, education, and research? An exploratory study. Quality Engineering, 36(2), 287-315. https://doi.org/10.48550/arXiv.2302.10916 63 Mimoun, M. S. B., Poncin, I., & Garnier, M. (2012). Case study—Embodied virtual agents: An analysis on reasons for failure. Journal of Retailing and Consumer services, 19(6), 605-612. https://doi.org/10.1016/j.jretconser.2012.07.006 64 Montagna, S., Ferretti, S., Klopfenstein, L. C., Florio, A., & Pengo, M. F. (2023, September). Data decentralisation of LLM-based chatbot systems in chronic disease self-management. In Proceedings of the 2023 ACM Conference on Information Technology for Social Good (pp. 205-212).
70 65 Mujeeb, S., Hafeez, M., & Arshad, T. (2017). Aquabot: A diagnostic chatbot for achluophobia and autism. International Journal of Advanced Computer Science and Applications, 8(9), 209–216. https://doi.org/10.14569/IJACSA.2017.080930 66 Naveed, H., Khan, A. U., Qiu, S., Saqib, M., Anwar, S., Usman, M., ... & Mian, A. (2024). A comprehensive overview of large language models. arXiv preprint arXiv:2307.06435. 67 Nuruzzaman, M., & Hussain, O. K. (2018). A survey on chatbot implementation in customer service industry through deep neural networks. 2018 IEEE 15th international conference on e-business engineering (ICEBE), 54-61. https://doi.org/10.1109/ICEBE.2018.00019 68 Okuda, T., & Shoda, S. (2018). AI-based chatbot service for financial industry. Fujitsu Scientific and Technical Journal, 54(2), 4–8. 69 Park, S., Choi, J., Lee, S., Oh, C., Kim, C., La, S., Lee, J., & Suh, B. (2019). Designing a chatbot for a brief motivational interview on stress management: Qualitative case study. Journal of Medical Internet Research, 21(4), e12231. https://doi.org/10.2196/12231 70 Paszke, A., Gross, S., Massa, F., Lerer, A., Bradbury, J., Chanan, G., … Chintala, S. (2019). PyTorch: An Imperative Style, High-Performance Deep Learning Library. In Advances in Neural Information Processing Systems 32 (pp. 8024–8035). Curran Associates, Inc. Retrieved from http://papers.neurips.cc/paper/9015-pytorch-an-imperative-stylehigh-performance-deep-learning-library.pdf 71 Pérez-Marín, D., & Boza, A. (2013). A procedure to create a pedagogic conversational agent in secondary physics and chemistry education. International Journal of Information and Communication Technology Education (IJICTE), 9(4), 94–112. https://doi.org/10.4018/ijicte.2013100107 72 Radford, A., Narasimhan, K., Salimans, T., & Sutskever, I. (2018). Improving language understanding by generative pre-training. 73 Ramjee, P., Chhokar, M., Sachdeva, B., Meena, M., Abdullah, H., Vashistha, A., ... & Jain, M. (2025, April). ASHABot: an LLM-powered chatbot to support the informational needs of community health workers. In Proceedings of the 2025 CHI Conference on Human Factors in Computing Systems (pp. 1-22). 74 Rapp, A., Curti, L., & Boldi, A. (2021). The human side of human-chatbot interaction: A systematic literature review of ten years of research on text-based chatbots. International Journal of Human-Computer Studies, 151, 102630. https://doi.org/10.1016/j.ijhcs.2021.102630 75 Reddy, S., Chen, D., & Manning, C. D. (2019). Coqa: A conversational question answering challenge. Transactions of the Association for Computational Linguistics, 7, 249-266. 76 Reimers, N., & Gurevych, I. (2019). Sentence-bert: Sentence embeddings using siamese bert-networks. arXiv preprint arXiv:1908.10084. 77 Rosruen, N., & Samanchuen, T. (2018, December). Chatbot utilization for medical consultant system. In 2018 3rd technology innovation management and engineering science international conference (TIMES-iCON) (pp. 1-5). IEEE.
71 78 Ruan, S., Willis, A., Xu, Q., Davis, G. M., Jiang, L., Brunskill, E., & Landay, J. A. (2019). Bookbuddy: Turning digital materials into interactive foreign language lessons through a voice chatbot. Proceedings of the 6th ACM Conference on Learning at Scale (L@S), 1– 4. https://doi.org/10.1145/3330430.3333643 79 Sharma, B., Puri, H., & Rawat, D. (2018). Digital psychiatry – Curbing depression using therapy chatbot and depression analysis. Proceedings of the International Conference on Inventive Communication and Computational Technologies (ICICCT), 627–631. https://doi.org/10.1109/ICICCT.2018.8472986 80 Shawar, B. A. (2017). Integrating CALL systems with chatbots as conversational partners. Computación y Sistemas, 21(4), 615–626. https://doi.org/10.13053/CyS-214-2868 81 Song, Y., Yan, R., Li, X., Zhao, D., & Zhang, M. (2016). Two are better than one: An ensemble of retrievaland generation-based dialog systems. Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence (IJCAI-18), 4382-4388. https://doi.org/10.48550/arXiv.1610.07149 82 Srivastava, P., & Singh, N. (2020). Automatized medical chatbot (medibot). In 2020 International Conference on Power Electronics & IoT Applications in Renewable Energy and its Control (PARC) (pp. 351-354). IEEE. 83 Surameery, N. M. S., & Shakor, M. Y. (2023). Use chat gpt to solve programming bugs. International Journal of Information Technology and Computer Engineering, (31), 17-22. 84 Tan, Y., Zhang, Z., Li, M., Pan, F., Duan, H., Huang, Z., ... & Tang, Y. (2024). MedChatZH: A tuning LLM for traditional Chinese medicine consultations. Computers in biology and medicine, 172, 108290. 85 Tegos, S., Demetriadis, S., & Karakostas, A. (2014). Leveraging conversational agents and concept maps to scaffold students’ productive talk. Proceedings of the 2014 International Conference on Intelligent Networking and Collaborative Systems (INCoS), 176–183. https://doi.org/10.1109/INCoS.2014.66 86 Tlili, A., Shehata, B., Adarkwah, M. A., Bozkurt, A., Hickey, D. T., Huang, R., & Agyemang, B. (2023). What if the devil is my guardian angel: ChatGPT as a case study of using chatbots in education. Smart learning environments, 15(23), 1-24. https://doi.org/10.1186/s40561-023-00237-x 87 Touvron, H., Lavril, T., Izacard, G., Martinet, X., Lachaux, M. A., Lacroix, T., ... & Lample, G. (2023). Llama: Open and efficient foundation language models. arXiv preprint arXiv:2302.13971. 88 Van Heerden, A., Ntinga, X., & Vilakazi, K. (2017). The potential of conversational agents to provide a rapid HIV counseling and testing ser vices. Proceedings of the 2017 international conference on the frontiers and advances in data science, FADS, 80–84. https://doi.org/10.1109/FADS.2017.8253198 89 Van Rossum, G., & Drake, F. L. (2009). Python 3 Reference Manual. Scotts Valley, CA: CreateSpace. 90 Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., ... & Polosukhin, I. (2017). Attention is all you need. Advances in neural information processing systems, 30.
72 91 Voukoutis, L., Roussis, D., Paraskevopoulos, G., Sofianopoulos, S., Prokopidis, P., Papavasileiou, V., ... & Katsouros, V. (2024). Meltemi: The first open large language model for greek. arXiv preprint arXiv:2407.20743. 92 Wallace, R. (2003). The elements of AIML style. Alice AI Foundation, 139, 35. 93 Wang, Z., Li, R., Dong, B., Wang, J., Li, X., Liu, N., Mao, C., Wei Z., Dong, L., Gao, L. & Wang, J. (2023). Can LLMs like GPT-4 outperform traditional AI tools in dementia diagnosis? Maybe, but not today. https://doi.org/10.48550/arXiv.2306.01499 94 Webber, J. (2012, October). A programmatic introduction to neo4j. In Proceedings of the 3rd annual conference on Systems, programming, and applications: software for humanity (pp. 217-218). 95 Weizenbaum, J. (1966). ELIZA—a computer program for the study of natural language communication between man and machine. Communications of the ACM, 9(1), 36-45. https://doi.org/10.1145/365153.365168 96 Wen, Z., Lu, X. H., & Reddy, S. (2020). MeDAL: Medical abbreviation disambiguation dataset for natural language understanding pretraining. arXiv preprint arXiv:2012.13978. 97 Wolf, T., Debut, L., Sanh, V., Chaumond, J., Delangue, C., Moi, A., ... & Brew, J. (2020). Huggingface’s transformers: State-of-the-art natural language processing. arXiv 2019. arXiv preprint arXiv:1910.03771, 10. 98 Wu, X., Duan, R., & Ni, J. (2024). Unveiling security, privacy, and ethical concerns of ChatGPT. Journal of Information and Intelligence, 2(2), 102-115. 99 Wu, Y., Li, Z., Wu, W., & Zhou, M. (2018a). Response selection with topic clues for retrieval-based chatbots. Neurocomputing, 316, 251–261. https://doi.org/10.1016/j.neucom.2018.07.073 100 Wu, Y., Wu, W., Xing, C., Li, Z., & Zhou, M. (2017). Sequential matching network: A new architecture for multi-turn response selection in retrieval-based chatbots. Proceedings of the 55th annual meeting of the Association for Computational Linguistics, 1, 496– 505. https://doi.org/10.18653/v1/P17-1046 101 Wu, Y., Wu, W., Xing, C., Li, Z., & Zhou, M. (2018b). A sequential matching framework for multi turn response selection in retrieval based chatbots. Computational Linguistics, 45(1), 163–197. https://doi.org/10.1162/COLI 102 Wu, J., Zhu, J., Qi, Y., Chen, J., Xu, M., Menolascina, F., & Grau, V. (2024). Medical graph rag: Towards safe medical large language model via graph retrieval-augmented generation. arXiv preprint arXiv:2408.04187. 103 Xiao, Z., Zhou, M. X., & Fu, W. T. (2019). Who should be my teammates: Using a conversational agent to understand individuals and help teaming. Proceedings of the 24th international conference on intelligent user interfaces, 437–447. https://doi.org/10.1145/3301275.3302264 104 Xue, Z., Ko, T. Y., Yuchen, N., Wu, M. K. D., & Hsieh, C. C. (2018). Isa: Intuit smart agent, a neural-based agent-assist chatbot. 2018 IEEE International Conference on Data Mining Workshops (ICDMW), 1423–1428. https://doi.org/10.1109/ICDMW.2018.00202
73 105 Yao, J. Y., Ning, K. P., Liu, Z. H., Ning, M. N., Liu, Y. Y., & Yuan, L. (2023). Llm lies: Hallucinations are not bugs, but features as adversarial examples. arXiv preprint arXiv:2310.01469. 106 Yao, Y., Duan, J., Xu, K., Cai, Y., Sun, Z., & Zhang, Y. (2024). A survey on large language model (llm) security and privacy: The good, the bad, and the ugly. High-Confidence Computing, 100211. 107 Yin, Z., Wang, H., Horio, K., Kawahara, D., & Sekine, S. (2024). Should we respect LLMs? A cross-lingual study on the influence of prompt politeness on LLM performance. In Proceedings of the Second Workshop on Social Influence in Conversations (SICon 2024) (pp. 9-35). 108 Yu, H., Gan, A., Zhang, K., Tong, S., Liu, Q., & Liu, Z. (2024). Evaluation of retrievalaugmented generation: A survey. In CCF Conference on Big Data (pp. 102-120). Singapore: Springer Nature Singapore. 109 Zarouali, B., Van den Broeck, E., Walrave, M., & Poels, K. (2018). Predicting consumer responses to a chatbot on Facebook Messenger. Cyberpsychology, Behavior, and Social Networking, 21(8), 491–497. https://doi.org/10.1089/cyber.2017.0518 110 Zhai, X. (2023). ChatGPT for next generation science learning. XRDS: Crossroads, The ACM Magazine for Students, 29(3), 42-46. https://doi.org/10.1145/3589649 111 Zhao, G., Zhao, J., Li, Y., Alt, C., Schwarzenberg, R., Hennig, L., Schaffer, S., Schmeier, S., Hu, C., & Xu, F. (2019). MOLI: Smart conversation agent for mobile customer service. Information, 10(2), 63. https://doi.org/10.3390/info10020063 112 Zhao, W. X., Zhou, K., Li, J., Tang, T., Wang, X., Hou, Y., ... & Wen, J. R. (2023). A survey of large language models. arXiv preprint arXiv:2303.18223, 1(2). 113 Zumstein, D., & Hundertmark, S. (2017). Chatbots-An Interactive Technology for Personalized Communication, Transactions and Services. IADIS International Journal on WWW/Internet, 15(1).