Σχεδιασμός και Υλοποίηση εξειδικευμένου chatbot για διαδικτυακές πλατφόρμες
52
λίγα μόλις gigabytes και καθιστά εφικτή την εκτέλεση στα 12 gigabytes μνήμης VRAM της
RX 6700 XT. Η ίδια λογική επιτρέπει στο μοντέλο ενσωματώσεων και στο μοντέλο παραγωγής
κειμένου να συνυπάρχουν στην ίδια κάρτα, με το Ollama να εναλλάσσει αποδοτικά τη
φόρτωσή τους ανάλογα με το ποιο χρειάζεται κάθε στιγμή.
Οι τρεις επικρατέστερες προσεγγίσεις τοπικής εκτέλεσης γλωσσικών μοντέλων, με τα
χαρακτηριστικά και τους συμβιβασμούς τους, συνοψίζονται στον Πίνακα 6. Το Ollama
προτιμήθηκε γιατί συνδυάζει την ευκολία ενός σταθερού REST API με την αυτόματη
διαχείριση μνήμης και ένα έτοιμο μητρώο μοντέλων.
Πίνακας 6: Σύγκριση εργαλείων τοπικής εκτέλεσης γλωσσικών μοντέλων
Εργαλείο
Βάση
Επιτάχυνση
Διεπαφή
Ευκολία
χρήσης
Ollama
llama.cpp
CPU/GPU
(ROCm/CUDA/Metal)
REST API, model registry
Υψηλή
llama.cpp
—
CPU/GPU, κβαντοποίηση 4–
5 bit
Βιβλιοθήκη / CLI
Μεσαία
vLLM
PyTorch
GPU (PagedAttention)
OpenAI-compatible API
Μεσαία
Πέρα από το εργαλείο εκτέλεσης, εξίσου καθοριστική ήταν η επιλογή των ίδιων των
μοντέλων. Για την παραγωγή των απαντήσεων δοκιμάσαμε διάφορα ανοιχτά μοντέλα, από τις
πολύ μικρές εκδόσεις της οικογένειας Llama 3.2 [19] μέχρι μεγαλύτερα, και τελικά
καταλήξαμε στο Llama 3.1 8B της Meta [9]. Με οκτώ δισεκατομμύρια παραμέτρους παραμένει
ένα σχετικά μικρό μοντέλο μπροστά στα τεράστια εμπορικά συστήματα, αποδείχθηκε όμως
αρκετά ικανό για τη δουλειά που του ζητάμε, δηλαδή να συνθέσει μια καθαρή απάντηση πάνω
σε κείμενο που του δίνουμε ήδη ως πλαίσιο. Στη δική μας περίπτωση αυτό μετράει πολύ, γιατί
το μοντέλο δεν χρειάζεται να γνωρίζει από μόνο του την απάντηση, αλλά να διαβάσει σωστά
τα ανακτημένα αποσπάσματα και να τα αποδώσει σε σωστά ελληνικά. Παρατηρήσαμε ότι το
Llama 3.1 8B τα καταφέρνει αρκετά καλά σε αυτό, ενώ οι ακόμη μικρότερες εκδόσεις