Wuwejův zápisník

Ollama a přepojení cesty k modelům

07.02.2025 20:24, Wu | počítače | komentáře -

S objevením Deepseeku (deepseek-r1) mezi ollama modely a dalšími pokusnými stahováními jsem narazil na velkost systémového disku. Ollama totiž v defaultním nastavení ukládá modely do /usr/share/ollama.

(Kromě toho jsem přikoupil paměť na maximum, co má stará deska unese, tj. 64 GB, a můžu zkoušet i 70B modely – které mají přes 40 GB, takže bych disk zaplnil asi tak jedním pokusem.)

Vedle malého systémového SSD mám v počítači klasické disky spojené do diskového pole a na nich je místa dost. Potřeboval jsem tedy změnit cestu k úložišti modulů.

AI ollama datastore, generated by Midjourney

Slepá ulička číslo jedna (konfigurace)

Vygooglil jsem návod, kde se věnovali i konfiguraci, tedy spustit

systemctl edit ollama.service

v editaci přidat do sekce [Service] řádek Environment s cestou,

### Editing /etc/systemd/system/ollama.service.d/override.conf
### Anything between here and the comment below will become the contents of the drop-in file

[Service]
Environment="OLLAMA_MODELS=/media/local_work/LLM_Library/ollama_models"

### Edits below this comment will be discarded

pak uložit a restartovat systemd i ollama službu:

sudo systemctl daemon-reload
sudo systemctl restart ollama

Bohužel přesunuté modely se nenačetly, ollama neběžela a tohle nastavení prostě ignoruje.

Slepá ulička číslo dvě (symlink)

Dobře, když trvá na své cestě, můžeme to obejít symlinky. Vytvořil jsem tedy /usr/share/ollama/.ollama/models jako symlink na cílové úložiště, nastavil (po chvilce zjišťování) všechna práva pro uživatele ollama:ollama, a to jak na symlinku (chown -h ollama:ollama models), tak na cílové složce…

A zase nic!

Podle výpisů (tail -100 /var/log/messages) se pokouší vytvářet soubor, který už existuje (jako by ho při ohledání adresáře neviděl – ale práva byla správně):

Jan 24 17:48:02 ollama[27576]: Error: mkdir /usr/share/ollama/.ollama/models: file exists
Jan 24 17:48:02 systemd[1]: ollama.service: Main process exited, code=exited, status=1/FAILURE
Jan 24 17:48:02 systemd[1]: ollama.service: Failed with result 'exit-code'.

Funkční řešení (mount --bind)

Vysvětlení a radu jsem našel v další diskuzi – symlink nemusí poskytnout všechny informace. Lepší je použít mount --bind:

mount --bind /media/local_work/LLM_Library/ollama_models /usr/share/ollama/.ollama/models

To opravdu pomohlo. Bohužel při restartu se připojení ztratí, pokud ho potřebujeme mít permanentní, je třeba přidat si příkaz do /etc/fstab

# prepojeni adresare pro LLM (co, kam, ...)
/media/local_work/LLM_Library/ollama_models /usr/share/ollama/.ollama/models none bind 0 0

12345
1738956240000

Hodnocení hvězdičkami používá jako prevenci
opakovaného kliknutí anonymní cookie.
Pokud s tím nesouhlasíte, neklikejte.
Další podrobnosti k cookies zde.

Informace

Kontakt

Vyhledávání

Kategorie

Archiv

STRÁNKY ARCHIVOVÁNY NÁRODNÍ KNIHOVNOU ČR

CBDB.cz – Databáze knih a spisovatelů, knihy online