mirror of
https://codeberg.org/postscriptum/gemlog.git
synced 2026-02-19 14:32:40 +00:00
76 lines
No EOL
5.6 KiB
Text
76 lines
No EOL
5.6 KiB
Text
# Перший досвід з Ollama / LLM
|
||
|
||
Схоже, я значно відстаю від загальних трендів і хайпу довкола ШІ, хоча й давно вже користуюсь цим інструментом, зокрема - засобами Duck.ai
|
||
|
||
Тільки зараз знайшов час поставити собі локально відкритий сервер Ollama, здебільшого - з метою приватного користування, без відправлення хоч й анонімних, але цілком очевидних запитів на сторонні сервери. Нижче коротенький "дамп" з цього досвіду, може комусь також згодиться.
|
||
|
||
## Встановлення
|
||
|
||
Ollama - сервер з відкритим кодом, який надає API для роботи з мовними моделями від різних постачальників. Завантажити його можна з офіційного сайту:
|
||
=> https://ollama.com
|
||
|
||
Є також останні релізи в репозиторії на GitHub:
|
||
=> https://github.com/ollama/ollama/releases
|
||
|
||
Зібрати з сорсу в мене не вийшло через помилку Vulkan. Наскільки я зрозумів (з попереднього досвіду встановлення графічного редактора Zed) його API не підтримується моїм старим залізом (iMac 2011)
|
||
|
||
Вперше, я спробував поставити сервер Ollama з репозиторію Fedora:
|
||
|
||
``` bash
|
||
dnf install ollama
|
||
```
|
||
|
||
Він працює, але модель gpt-oss не запустилась через баг з датою, дуже дивно, що в репозиторії (Fedora 43) й досі якась допотопна версія цього серверу:
|
||
=> https://github.com/ollama/ollama/issues/11680
|
||
|
||
Отже, збирайтесь одразу або з сорсу (якщо зможете) або з бінарників останніх релізів на GitHub - там по суті треба розпакувати теку та виконати:
|
||
|
||
``` bash
|
||
bin/ollama --help
|
||
```
|
||
* або поставити його в систему командою `install`
|
||
|
||
## Моделі LLM
|
||
|
||
Після встановлення сервера, потрібно завантажити мовну модель. Вони бувають різні, для кожної задачі - своя спеціалізація, така спеціалізація може бути "універсальною". Для коду (в рамках тестування на Duck.ai) мені сподобались Claude Haiku та загальний GPT-4o mini. Обрати популярні моделі можна зі списку:
|
||
=> https://ollama.com/search
|
||
* інші можна скачати на офіційних сайтах окремих моделей
|
||
|
||
Для тестів я обрав:
|
||
|
||
* Mistral (~4Gb)
|
||
* GPT-OSS (~14Gb або 65Gb) - в залежності від кількості "нейронів" та конкретної версії
|
||
|
||
Встановлюються і запускаються моделі після запуску сервера Ollama:
|
||
|
||
``` bash
|
||
ollama serve
|
||
```
|
||
|
||
Потрібна модель вказується аргументом run, я це роблю в окремому табі (сесії) терміналу:
|
||
|
||
``` bash
|
||
ollama run mistral
|
||
```
|
||
* якщо модель відсутня, її буде автоматично завантажено з репозиторію
|
||
* тут варто зауважити, що у вас повинно бути достатньо оперативної пам'яті, інакше ймовірне її переповнення з подальшим завісанням системи. Скільки для якої моделі потрібно пам'яті - дивіться в специфікації. Скажу тільки що моїх 12 Gb + 8 Gb swap достатньо лише для Mistral. Наскільки розумію, розмір пам'яті приблизно дорівнюватиме розміру моделі + витрати на систему і сам сервер Ollama. Так собі думаю, що теоретично можна організувати swap-файл на SSD, звісно буде не дуже швидко і не дуже "гуманно" для цього типу носія, але якось буде.
|
||
|
||
Щоб видалити модель і звільнити простір, виконуємо послідовність команд:
|
||
|
||
``` bash
|
||
ollama list
|
||
ollama rm ID
|
||
```
|
||
* ID - назва зі списку
|
||
* файли завантажених моделей можна знайти в теці `~/.ollama` поточного користувача
|
||
|
||
## Клієнти
|
||
|
||
Не довго обираючи, поставив зі стандартного магазина застосунків Alpaca, ця "альпака" також є на GitHub:
|
||
=> https://github.com/Jeffser/Alpaca
|
||
|
||
В іншому, тут що кому треба: можна прикрутити плагіни для VSCode та інших програм, або ж просто користуватись штатним CLI сервера Ollama без додаткового софту.
|
||
|
||
## Посилання
|
||
|
||
=> https://devzone.org.ua/post/pershyy-dosvid-z-ollama-llm Веб-адаптація цього матеріалу з коментарями на DevZone |