Se stai cercando un modo per sfruttare la potenza dell’intelligenza artificiale direttamente sul tuo server, senza dipendere da servizi cloud esterni, sei nel posto giusto.
In questo articolo ti guiderò passo dopo passo nell’installazione di DeepSeek in locale utilizzando Ollama, un moderno gestore di modelli LLM, su Ubuntu Server 24.04.
Grazie a questa configurazione potrai eseguire un Large Language Model (LLM) direttamente sulla tua macchina, in totale autonomia, garantendo massima privacy e controllo sui dati.
Preparati a scoprire quanto sia semplice portare l’AI direttamente sul tuo server!
PREREQUISITI
Prima di iniziare assicurarsi di avere quanto segue:
Ubuntu 24.04 installato sul tuo computer.
Una connessione Internet stabile.
Almeno 8 GB di RAM (si consigliano almeno 16 GB per prestazioni più fluide).
Credenziali con diritti di sudo
AGGIORNAMENTO OS
Prima di procedere con l’installazione è coinsigliato aggiornare il sistema per assicurarsi che tutti i pacchetti esistenti siano aggiornati con il comando:
0 |
sudo apt update && sudo apt upgrade -y
|
INSTALLAZIONE DI PYTHON E GIT
Procedere con l’installazione di Pythoin con il comando:
0 |
sudo apt install python3
|
NOTA BENE: Ubuntu dovrebbe avere a bordo già l’ultima versione di Python
Verificare la versione di Python con il comando:
0 |
python3 --version
|
Dovremmo visualizzare il seguente output:
0 |
Python 3.12.3
|
Procedere con l’installazione di PIP che è il gestore di pacchetti per Python ed è necessario per installare le dipendenze per DeepSeek e Ollama.
Eseguire il comando:
0 |
sudo apt install python3-pip
|
Verificare la versione di PIP installata con il comando:
0 |
pip3 --version
|
Dovremmo visualizzare il seguente output:
0 |
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)
|
Procedere con l’installazione di Git che è essenziale per la clonazione di repository da GitHub.
Eseguire il comando:
0 |
sudo apt install git
|
Verificare la versione di GIT installata con il comando:
0 |
git --version
|
Dovremmo visualizzare il seguente output:
0 |
git version 2.43.0
|
INSTALLAZIONE DI OLLAMA PER DEEPSEEK
Ora che Python e Git sono installati possiamo procedere con l’installazione di Ollama per gestire DeepSeek.
Eseguire il comando:
0 |
curl -fsSL https://ollama.com/install.sh | sh
|
ATTENZIONE: al termine dell’installazione potremmo visualizzare il Warning seguente se sul server non è presente una Scheda Video con GPU utilizzabili.
WARNING: No NVIDIA/AMD GPU detected. Ollama will run in CPU-only mode.
Verificare la versione di Ollama installata con il comando:
0 |
ollama --version
|
Dovremmo visualizzare il seguente output:
0 |
ollama version is 0.6.2
|
Avviare e abilitare Ollama per l’avvio automatico all’avvio del sistema con i seguenti comandi:
0
1
2
|
sudo systemctl start ollama
sudo systemctl enable ollama
|
SCARICARE ED ESEGUIRE IL MODELLO DEEPSEEK
Ora che Ollama è installato, è possibile scaricare il modello DeepSeek con il comando:
0 |
ollama run deepseek-r1:7b
|
L’operazione potrebbe richiedere alcuni minuti a seconda della velocità di Internet, poiché il modello ha una dimensione di diversi gigabyte.
Al termine dovremmo visualizzare il seguente output:
0
1
2
3
4
5
6
7
8
9
|
pulling manifest
pulling 96c415656d37... 100% ▕████████████████▏ 4.7 GB
pulling 369ca498f347... 100% ▕████████████████▏ 387 B
pulling 6e4c38e1172f... 100% ▕████████████████▏ 1.1 KB
pulling f4d24e9138dd... 100% ▕████████████████▏ 148 B
pulling 40fb844194b2... 100% ▕████████████████▏ 487 B
verifying sha256 digest
writing manifest
success
>>> Send a message (/? for help)
|
Una volta completato il download, è possibile verificare che il modello sia disponibile eseguendo il coamndo:
0 |
ollama list
|
Dovremmo visualizzare il seguente output:
0
1
|
NAME ID SIZE MODIFIED
deepseek-r1:7b 0a8c26691023 4.7 GB 2 minutes ago
|
CONFIGURAZIONE DELL’INTERFACCIA OPEN-WEBUI PER DEEPSEEK
Sebbene Ollama ti consente di interagire con DeepSeek tramite la riga di comando, potresti preferire un’interfaccia web più intuitiva.
Per questo, utilizzeremo Ollama Web UI, una semplice interfaccia basata sul web per interagire con i modelli Ollama.
Innanzitutto, creare un ambiente virtuale che isoli le dipendenze Python dall’installazione di Python a livello di sistema.
Eseguire i comandi:
0
1
2
3
4
|
sudo apt install python3-venv
python3 -m venv ~/open-webui-venv
source ~/open-webui-venv/bin/activate
|
Ora che l’ambiente virtuale è attivo, è possibile installare Open WebUI utilizzando .pip con il comando:
0 |
pip install open-webui
|
ATTENZIONE: questa fase può durare diversi minuti
Una volta installato, avviare il server utilizzando il comando:
0 |
open-webui serve
|
Se è andato tutto a buon fine dovremmo visualizzare una schermata come quella sovrastante
Aprire il browser web e richiamare il seguente link
http://IP-SERVER-O-FQDN:8080
Cliccare su Get Started
Inserire nome, mail e password quindi cliccare Create Admin Account
Cliccare Okay, Let’s Go!
Selezionare il modello deepseek dal menu a discesa e iniziare a interagire con esso.
A questo punto è possibile porre domande, generare testo o eseguire altre attività supportate da DeepSeek.
ABILITARE OPEN-WEBUI ALL’AVVIO DEL SISTEMA
Per fare in modo che Open-WebUI si avvii all’avvio, è possibile creare un servizio systemd che avvii automaticamente il server Open-WebUI all’avvio del sistema.
Prima di tutto verificare l’utente connesso con il comando:
0 |
whoami |
Nel mio caso è root
Quindi verificare quale comando viene eseguito per l’avvio di open-webui.
Attivare l’ambiente virtuale utilizzando il comando:
0 |
source ~/open-webui-venv/bin/activate
|
Quindi eseguire il comando:
0 |
which open-webui
|
Dovremmo visualizzare un output simile al seguente:
0 |
/root/open-webui-venv/bin/open-webui
|
Dopo aver reperito le due informazioni creare il file di configurazione open-webui.service con il comando:
0 |
sudo nano /etc/systemd/system/open-webui.service
|
Quindi aggiungere all’interno del file il seguente contenuto:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[Unit]
Description=Open-WebUI Service
After=network.target
[Service]
Type=simple
ExecStart=/USER/open-webui-venv/bin/open-webui serve
WorkingDirectory=/home/USER
User=USER
Restart=always
Environment=PATH=/root/open-webui-venv/bin:/usr/bin:/bin
[Install]
WantedBy=multi-user.target
|
Salvare e chiudere il file di configurazione
NOTA BENE: inserire al posto di USER il proprio utente di servizio
Nel mio caso avendo utilizzato l’utente root come utente con cui far girare open-webui il listato da copiare nel file è il seguente:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[Unit]
Description=Open-WebUI Service
After=network.target
[Service]
Type=simple
ExecStart=/root/open-webui-venv/bin/open-webui serve
WorkingDirectory=/root
User=root
Restart=always
Environment=PATH=/root/open-webui-venv/bin:/usr/bin:/bin
[Install]
WantedBy=multi-user.target
|
Salvare e chiudere il file di configurazione
Ora ricaricare il demone systemd per riconoscere il nuovo servizio con i seguenti comandi:
0
1
2
|
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
|
Infine abilitare e avviare il servizio in modo che si avvii all’avvio con i seguenti comandi:
0
1
2
|
sudo systemctl enable open-webui.service
sudo systemctl start open-webui.service
|
E’ possibile controllare lo stato del servizio per assicurarsi che funzioni correttamente con il comando:
0 |
sudo systemctl status open-webui.service
|
Dovremmo visualizzare il seguente output:
0
1
2
3
4
5
6
7
8
|
● open-webui.service - Open-WebUI Service
Loaded: loaded (/etc/systemd/system/open-webui.service; enabled; preset: enabled)
Active: active (running) since Sun 2025-03-30 19:00:09 UTC; 3min 22s ago
Main PID: 888 (open-webui)
Tasks: 13 (limit: 9440)
Memory: 1.2G (peak: 1.2G)
CPU: 10.041s
CGroup: /system.slice/open-webui.service
└─888 /root/open-webui-venv/bin/python3 /root/open-webui-venv/bin/open-webui serve
|
Riavviare il server per verificare che il servizio parta in automatico e che quindi l’interfaccia web della nostra AI sia raggiunigibile.
COMANDI UTILI
Per verificare lo stato di Ollama eseguire il comando:
0 |
systemctl status ollama
|
Per verificare che DeepSeek sia installato correttamente eseguire il comando:
0 |
ollama list
|
Dovremmo visualizzare un output simile al seguente:
0 |
deepseek-r1:7b 0a8c26691023 4.7 GB 1 days ago
|
Per aggiornare Open WebUI all’interno dell’ambiente virtuale eseguire il comando:
0 |
pip install --upgrade open-webui
|
Prima di ogni aggiornamento, è necessario attivare l’ambiente virtuale utilizzando il comando:
0 |
source ~/open-webui-venv/bin/activate
|
Per verificare se DeepSeek è in esecuzione su un IP e una porta specifici eseguire il comando:
0 |
ss -tulnp | grep LISTEN
|
Dovremmo visualizzare un output simile al seguente:
0
1
|
tcp LISTEN 0 2048 0.0.0.0:8080 0.0.0.0:* users:(("open-webui",pid=11021,fd=17))
tcp LISTEN 0 4096 127.0.0.1:11434 0.0.0.0:* users:(("ollama",pid=1063,fd=3))
|
È possibile passare ai modelli DeepSeek più grandi utilizzando i seguenti comandi:
Per DeepSeek-R1-Distill-Qwen-32B eseguire il comando:
0 |
ollama run deepseek-r1:32b
|
Per DeepSeek-R1-Distill-Llama-70B eseguire il comando:
0 |
ollama run deepseek-r1:70b
|
0 commenti