Πως να τρέξουμε μεγάλα γλωσσικά μοντέλα τοπικά στον υπολογιστή μας ή στο κινητό μας με τον Ollama.

Βασιζόμενοι στο παρακάτω άρθρο του @kgiannakis :muscle: :python: :llama:

θα παραλάβουμε τη σκυτάλη για να μιλήσουμε για τον Ollama, έναν τρόπο για να τρέξουμε τοπικά στον υπολογιστή μας ή ακόμα και στο κινητό μας μεγάλα γλωσσικά μοντέλα ανοικτού κώδικα και να αλληλεπιδράσουμε μέσω του τερματικού μας με αυτά σε μορφή ερωτοαπαντήσεων.

Απαιτήσεις συστήματος:

για τον υπολογιστή μας τουλάχιστον 16 gb ram,
για το κινητό μας android τουλάχιστον 6 gb ram
και αυτά τα χαρακτηριστικά για σχετικά αργή απόκριση μοντέλων με λιγότερες από 3Β παραμέτρους.

Εγκατάσταση:

Α. Για τον υπολογιστή μας:

curl -fsSL https://ollama.com/install.sh | sh

Επίσημες οδηγίες στην ηλεκτρονική διεύθυνση: https://github.com/ollama/ollama#linux

Β. Για το κινητό μας τηλέφωνο με Αndroid στην εφαρμογή Termux:

μετά την εγκατάσταση της εφαρμογής termux από το F-Droid

termux-setup-storage 
pkg update 
pkg upgrade 
pkg install git curl nano wget  openssh cmake golang 

τα nano, openssh, δεν είναι απαραίτητα για την εγκατάσταση του ollama.
Έπειτα ακολουθεί η εγκατάσταση του ollama στο κινητό μας:

git clone --depth 1 https://github.com/jmorganca/ollama
cd ollama
go generate ./...
go build .
./ollama serve &
./ollama run orca-mini

Στο παραπάνω παράδειγμα εκτελείται το γλωσσικό μοντέλο orca-mini.
Προσοχή, στην εφαρμογή termux στην Android συσκευή η εντολή ξεκινά με ./
Περισσότερες οδηγίες στη διεύθυνση: https://github.com/ollama/ollama/issues/721

Χρήση:

Διαθέσιμες εντολές:
ollama
create Δημιουργία ενός μοντέλου από ένα Modelfile
show Eμφάνιση πληροφοριών για ένα μοντέλο
run Εκτέλεση ενός μοντέλου
pull Τραβήξτε ένα μοντέλο από ένα μητρώο
push Μεταφέρει ένα μοντέλο σε ένα μητρώο
list Λίστα μοντέλων
cp Αντιγραφή ενός μοντέλου
rm Αφαίρεση ενός μοντέλου
help Βοήθεια για οποιαδήποτε εντολή
Για παράδειγμα, για να εκτελέσουμε ένα μεγάλο γλωσσικό μοντέλο με τον Ollama

ollama run <το όνομα του μοντέλου>

Για να δούμε ποια μοντέλα έχουμε εγκαταστήσει:

ollama list

μέσα στην εφαρμογή του ollama στον εξομοιωτή τερματικού οι διαθέσιμες εντολές είναι:
/set Ορισμός μεταβλητών συνόδου
/show Εμφάνιση πληροφοριών μοντέλου
/bye Έξοδος
/?, /help Βοήθεια για μια εντολή
4-2024-03-17_22-55

Επιλογή γλωσσικού μοντέλου:

Για να επιλέξουμε το κατάλληλο γλωσσικό μοντέλο ανάλογα με τις δυνατότητες του υπολογιστή μας και τα ενδιαφέροντά μας, μπορούμε να απευθυνθούμε στη “Βιβλιοθήκη” του Ollama, στην ηλεκτρονική διεύθυνση:
https://ollama.com/library

Διαλειτουργικότητα:

Άλλες εφαρμογές που αλληλεπιδρούν με τον Ollama μπορούμε να ανακαλύψουμε στην ηλεκτρονική διεύθυνση: https://github.com/ollama/ollama#community-integrations

Συμπέρασμα:

Συνοπτικά ο Ollama, είναι ένας απλός τρόπος για να τρέξουμε τοπικά, μοντέλα τεχνητής νοημοσύνης στον υπολογιστή μας ή ακόμα και σε Αndroid συσκευή, όπως είδαμε ώστε να διασφαλίσουμε την ιδιωτικότητα των δεδομένων μας.

Πηγές:

  1. https://github.com/ollama/ollama
  2. https://ollama.com/library
  3. https://linux-user.gr/t/katevase-kai-trexe-to-proswpiko-soy-llm-me-python-llama-2/5275
  4. https://github.com/RussellCanfield/wingman-ai?tab=readme-ov-file
  5. https://github.com/ollama/ollama/issues/721

Εναλλακτικές εφαρμογές:

  1. Open Interpreter https://openinterpreter.com/
  2. Llamafile https://github.com/Mozilla-Ocho/llamafile
9 «Μου αρέσει»

Ρίξτε μια ματιά και σε αυτό:

EDIT: Μάλιστα… φτάσαμε και εδώ…

Στο επόμενο, περιμένω Kim Kardashian (το ότι έψαξα πώς γράφεται το όνομα, πραγματικά δεν ξέρω εάν με τιμά…) να εξηγεί Linux Kernel Development, με αναφορές σε memory management, process scheduling και file systems…

2 «Μου αρέσει»