Η αρχιτεκτονική πίσω από το Jev
Το Jev έχει προκαλέσει έντονο ενδιαφέρον ως μια νέα προσέγγιση στα μοντέλα συλλογιστικής (reasoning models), όμως η τεχνική του βάση είναι εξαιρετικά απλή. Αντί για την παραγωγή κειμένου, το μοντέλο χρησιμοποιείται ως ένας ταξινομητής (classifier) που αξιολογεί την πιθανότητα συγκεκριμένων tokens (labels) να εμφανιστούν ως η επόμενη απάντηση.
Υλοποίηση με άμεση πρόσβαση στα logits
Η υλοποίηση βασίζεται στη χρήση του llama-cpp-python για τη φόρτωση ενός μοντέλου σε μορφή GGUF. Με την ενεργοποίηση του logits_all=True, έχουμε πρόσβαση στα raw logits του τελευταίου token της ακολουθίας. Η διαδικασία περιλαμβάνει:
- Tokenization των πιθανών επιλογών (π.χ. 'A', 'B', 'C').
- Εξαγωγή των αντίστοιχων τιμών από το διάνυσμα των logits.
- Εφαρμογή της συνάρτησης softmax για την κανονικοποίηση των τιμών σε πιθανότητες (probabilities).
Αυτή η μέθοδος επιτρέπει την άμεση λήψη αποφάσεων χωρίς το overhead της παραγωγής κειμένου (text generation latency).
Γιατί η τοπική εκτέλεση υπερέχει
Η δυνατότητα εκτέλεσης τέτοιων μοντέλων τοπικά προσφέρει σημαντικά πλεονεκτήματα:
- Ιδιωτικότητα: Τα δεδομένα δεν εξέρχονται ποτέ από το περιβάλλον του χρήστη.
- Ταχύτητα: Αποφεύγεται το network latency των API calls.
- Έλεγχος: Ο μηχανικός έχει πλήρη πρόσβαση στο distribution των πιθανοτήτων, επιτρέποντας custom κατώφλια (thresholds) για την αποδοχή ή απόρριψη μιας απόφασης.