Хмарний сервер для Ollama в Європі: самохостинг ШІ
Ollama - це найшвидший спосіб запустити локальну LLM - одна команда встановлює середовище виконання, завантажує модель та відкриває OpenAI-сумісний API. Для європейських команд запуск Ollama на хмарному сервері ЄС означає, що вся ШІ-інференція залишається під юрисдикцією ЄС, задовольняючи вимоги GDPR.
Чому варто запускати Ollama на хмарному сервері ЄС
Запуск Ollama локально на ноутбуках розробників підходить для тестування, але виробничі функції ШІ потребують сервера: стабільна доступність, GPU-прискорення, спільний доступ для кількох сервісів та стабільні кінцеві точки API.
Хостинг в ЄС важливий, оскільки Ollama служить кінцевою точкою інференції для ваших застосунків. Кожен запит користувача проходить через цей сервер. Відповідно до GDPR, якщо ці запити містять персональні дані, інференція повинна відбуватися на інфраструктурі під юрисдикцією ЄС. Хмарний сервер DCXV ЄС з Ollama надає відповідну приватну кінцеву точку ШІ.
Вибір правильної моделі
- llama3.1:8b - найкраща універсальна для чату, узагальнення, Q&A. 4-5 ГБ VRAM при Q4.
- llama3.1:70b - якість, близька до GPT-4. Потребує 40+ ГБ VRAM.
- mistral:7b - швидка, ефективна, відмінна для структурованого виводу.
- nomic-embed-text - модель вбудовування для RAG-конвеєрів. 274 МБ.
- codellama:13b - генерація та перегляд коду.
- phi3:mini - дуже швидка на CPU, корисна для класифікації.
Мінімальні характеристики для Ollama
- Лише CPU (малі моделі, 7B Q4) - 8 vCPU, 16 ГБ RAM, 100 ГБ NVMe SSD
- CPU виробничий (паралельні запити) - 16 vCPU, 32 ГБ RAM, 200 ГБ NVMe SSD
- GPU початковий (7B-13B при FP16) - 4 vCPU, 16 ГБ RAM, 16-24 ГБ VRAM
- GPU виробничий (34B+ моделі) - 8 vCPU, 64 ГБ RAM, 40-80 ГБ VRAM
Рекомендована конфігурація DCXV
Хмарні сервери DCXV працюють на інфраструктурі Tier III в ЄС:
- CPU сервер, 16 vCPU / 32 ГБ RAM - обслуговує моделі 7B зі швидкістю 18-28 токенів/с
- GPU сервер, 16-24 ГБ VRAM - обслуговує моделі 7B-13B зі швидкістю 80-120 токенів/с
- GPU сервер, 80 ГБ VRAM - обслуговує моделі 70B зі швидкістю 25-40 токенів/с
Зв'яжіться з sales@dcxv.com для налаштування GPU або CPU екземплярів.
Команди швидкого налаштування
# Встановлення Ollama на Ubuntu 22.04
curl -fsSL https://ollama.com/install.sh | sh
ollama --version
# Завантаження моделей
ollama pull llama3.1:8b
ollama pull mistral:7b
ollama pull nomic-embed-text
ollama list
# Налаштування Ollama для приватної мережі
# /etc/systemd/system/ollama.service:
# Environment="OLLAMA_HOST=0.0.0.0:11434"
# Environment="OLLAMA_NUM_PARALLEL=4"
sudo systemctl daemon-reload && sudo systemctl restart ollama
curl http://10.0.0.5:11434/api/tags
# Використання OpenAI-сумісного API
curl http://10.0.0.5:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.1:8b",
"messages": [{"role": "user", "content": "Що таке GDPR?"}]
}'
Яку квантизацію завантажувати
Кожна модель вище має кілька збірок, і тег визначає, скільки від оригінальних ваг залишиться. ollama pull llama3.1:8b дає вам Q4_K_M - ті самі 4,7 ГБ з команд вище - і цей типовий вибір частіше правильний, ніж ні:
| Збірка | Модель 8B потребує | Чим ви поступаєтеся | Коли завантажувати |
|---|---|---|---|
| Q4_K_M | близько 4,7 ГБ | Майже нічого помітного в чаті чи стисканні тексту | Типовий вибір, і він правильний для більшості задач |
| Q5_K_M | близько 5,7 ГБ | Практично нічого, що ви помітите | Пам'ять є вільна і ви хочете її використати |
| Q8_0 | близько 8,5 ГБ | Нічого, про що варто згадувати | Структурований вивід, який мусить розбиратися щоразу |
| fp16 | близько 16 ГБ | Нічого, це оригінальні ваги | Порівняння з базовою лінією або тонке налаштування |
Планувати треба не за розміром файлу, а за розміром файлу плюс контекстне вікно. Модель на 4,7 ГБ із контекстом 32k може попросити ще два-три гігабайти на KV-кеш, і саме так модель 7B на машині, де "16 ГБ достатньо", починає використовувати swap.
Очікувані показники продуктивності
CPU (16 vCPU), llama3.1:8b Q4_K_M:
- Генерація (один запит) - 18-28 токенів/с
- Пропускна здатність вбудовування - 250-400 векторів/с
GPU (16 ГБ VRAM), llama3.1:8b FP16:
- Генерація (один запит) - 80-120 токенів/с
- Час до першого токена - 100-250 мс
Це очікування для заліза цього класу, а не заміри в нашій лабораторії. Використовуйте їх як відправну точку для сайзингу і міряйте своє навантаження: реальні числа залежать від ваших даних, запитів і налаштувань значно більше, ніж від провайдера.
Висновок
Ollama на хмарному сервері DCXV ЄС надає вашій команді приватну, GDPR-сумісну кінцеву точку ШІ. Встановлення займає менше пяти хвилин, а OpenAI-сумісний API означає, що будь-який застосунок, що використовує OpenAI SDK, працює без змін коду.
