Σχεδιασμός και Υλοποίηση εξειδικευμένου chatbot για διαδικτυακές πλατφόρμες
48
Οι κυριότεροι αλγόριθμοι προσεγγιστικού κοντινότερου γείτονα, μαζί με τους
συμβιβασμούς που εισάγουν μεταξύ ταχύτητας, μνήμης και ακρίβειας, παρουσιάζονται στον
Πίνακα 5. Το ChromaDB βασίζεται στον HNSW, που προσφέρει εξαιρετική ισορροπία
ταχύτητας και ανάκλησης με αντίτιμο την αυξημένη χρήση μνήμης.
Πίνακας 5: Αλγόριθμοι προσεγγιστικού κοντινότερου γείτονα (ANN)
Αλγόριθμος
Δομή
Πλεονέκτημα
Συμβιβασμός
HNSW
Ιεραρχία γράφων small-world
Πολύ γρήγορη αναζήτηση, υψηλό
recall
Υψηλή χρήση μνήμης
IVF
Διαμέριση σε λίστες (clusters)
Μικρό αποτύπωμα μνήμης
Χαμηλότερο recall
PQ (κβαντοποίηση)
Συμπίεση διανυσμάτων
Μεγάλη εξοικονόμηση μνήμης
Απώλεια ακρίβειας
Flat
Εξαντλητική σύγκριση
Recall = 100%
Απαγορευτικό κόστος
σε κλίμακα
Το ChromaDB, που χρησιμοποιήσαμε στην παρούσα εργασία, βασίζεται εσωτερικά στον
HNSW. Η επιλογή του δεν ήταν τυχαία. Σε σύγκριση με το Milvus, που είναι ίσως το πιο ώριμο
σύστημα ανοιχτού κώδικα της κατηγορίας [33], το ChromaDB είναι πολύ πιο εύκολο στην
εγκατάσταση και τη λειτουργία. Δεν χρειάζεται ξεχωριστό εξυπηρετητή, τρέχει ενσωματωμένο
μέσα στην εφαρμογή και αποθηκεύει τα δεδομένα του σε έναν τοπικό κατάλογο. Για μια
διπλωματική εργασία με μερικές χιλιάδες έγγραφα, αυτή η απλότητα ζυγίζει περισσότερο από
την πιθανή επιβάρυνση επιδόσεων. Σύμφωνα και με την επισκόπηση των Pan και
συνεργατών [22], η επιλογή VDBMS εξαρτάται σε μεγάλο βαθμό από τις απαιτήσεις της κάθε
εφαρμογής, με τα νεφογενή συστήματα σχεδίασης όπως το Milvus να έχουν πλεονέκτημα σε
κλίμακα παραγωγής και τα ενσωματωμένα συστήματα όπως το ChromaDB να ταιριάζουν
καλύτερα σε πρωτότυπα και ερευνητικές εφαρμογές.
Ένα στοιχείο που αξίζει να αναφερθεί είναι ότι η ποιότητα της αναζήτησης δεν εξαρτάται
μόνο από την επιλογή του VDBMS αλλά κυρίως από την ποιότητα των ίδιων των
ενσωματώσεων. Στο Dense Passage Retrieval [15] αποδείχθηκε ότι ένα καλά εκπαιδευμένο
μοντέλο διπλού κωδικοποιητή μπορεί να ξεπεράσει τις παραδοσιακές μεθόδους BM25 ακόμα