Spiegare cos’è Ollama in modo che possa essere una buone introduzione Andare a spieagre anche quali sono gli elementi che è necessario andare a considerare durante questo tutotial Spieagre che questa guida è per Linux e che potrebbe seguire anche una per Windows.

Per installare i Drivers

Come prima cosa è necessario andare ad intallare i drivers, in questo caso siamo andati a prendere in considerazione quelli di NVIDIA in quanto questo testo los tiamo facendo con una scheda video RTX 30360 Ti. Quindi per poter fare quello che è necesasrio bisogna

Aggiornare il sistema

Qui abbiamo la necessitò di andare ad aggiornare il sistema in modo da avere le ultime versioni. Poi successivamente abbiamo la necessitò di adnare ad instllare i driver della scehda video.

sh
sudo apt update && sudo apt -y upgrade

Qui abbiamo la possibilitò di adnare ad instalalre i vari elementi che possono servire per la gestione dei driver delal scheda video. In questo caso andiamo ad installare tutto.

sh
sudo ubuntu-drivers autoinstall
sudo ubuntu-drivers install --gpgpu

Una volta che abbiamo installato gli applicativi, abbiamo bisogno di capire quali siano il driver corretto da poter utilizzare per la nostra scheda. io utilizzo quello che viene suggerito.

sh
ubuntu-drivers devices

Andiamo a capire quali driver utilizzare

Una volta capito qual’è la device ed il driver che è utile per la nsotra scheda e configurazione, abbiamo la necessitò di anadre ad installare i driver di NVIDIA.

sh
sudo apt -y install nvidia-driver-550
sudo apt -y install nvidia-cuda-toolkit

UNa volta fatto abbiamo la possibilià di chiudere il tutto andando ad aggiornare il sistema nuovamente e poi andare ad esegure un reboot del sistema.

sh
sudo apt update && sudo apt -y upgrade
sudo reboot now

Per instrallare Ollama

L’installazion di Ollama è semplicisimmo, in quanto è encessario andare ad eseguire un comedo che va a scaricare ed eseguire un file SH che andarà a gestire lo sarico e tutte le dipendenze necessarie.

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

Una volta che l’installazione p finita abbiamo quindi la possibilià di adnare ad installare il nostro paramtero di LLM, in modo che possiamo adnare ad interrogare il modello. Nel sistema che possiamo adnare ad instalalre i lmodello. Da considerare anche il fatto che è necessario andare a scaricare un sistema che stia all’interno della VRAM della scheda. Quindi in questo esempio possiamo instalalre quella con 7B di paramteri.

sh
ollama pull codellama:13b-python'

Andiamo a capire quali driver utilizzare

sh
ollama run llama3.1

Andiamo a capire quali driver utilizzare

Qui un altro codice che possiamo utilizzare è quanche quello per il Python, in modo che possiamo andare a salavre e fare delle prove, ma anche compeltare tutto in locale.

Come sblocacre le porte

L’installazion di Ollama

sh
sudo ufw enable
sudo ufw allow 11434
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw reload

Poi abbiamo la ncecessitò di adnare a m,odificare un file in modo che punti all’esterno ed accetti tutte le connessioni:

sh
sudo systemctl edit ollama.service
systemctl daemon-reload
systemctl restart ollama

Esempio di immagine

bash
[Service]
Environment="OLLAMA_HOST=0.0.0.0"

Piccolo programam in Python per fare la richesta

L’installazion di Ollama

python
def ollama_request(prompt_txt:str, request_txt:str):
    api_prompt = prompt_txt + "\n" + request_txt
    url = f"http://{str(llm_ip)}:11434/api/generate"
    payload = {"model": llm_model, "prompt": api_prompt, "stream": False}
    headers = {"Content-Type": "application/json"}
    response = requests.post(url, data=json.dumps(payload), headers=headers)
    response = response.json()
    return response['response']

Altrimenti possiamo utilizzare la libreria ufficiale

python
def ollama_request2(prompt_txt:str, request_txt:str):
    client = Client(host=f'http://{str(llm_ip)}:11434')
    response = client.chat(
        model='llama3.1',
        messages = [
            {"role": "system",  "content": str(prompt_txt)},
            {"role": "user",    "content": str(request_txt)}]
        )
    return response['message']['content']

Nel caso di utilizzi Fedora:

sudo dnf update -y

sudo bash -c "echo 'blacklist nouveau' > /etc/modprobe.d/blacklist-nouveau.conf"
sudo bash -c "echo 'options nouveau modeset=0' >> /etc/modprobe.d/blacklist-nouveau.conf"

sudo dracut --force

sudo reboot

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

sudo dnf install akmod-nvidia
sudo dnf install xorg-x11-drv-nvidia-cuda

Alla fine su Fedraon è necessario andare ad aprire la porta apposito in modo che OLLAMA possa andare a connettersi