Установка DeepSeek на Ubuntu: пошаговая инструкция 2024 | AdminWiki

DeepSeek установка на Ubuntu: полное руководство для разработчиков

18 декабря 2025 6 мин. чтения #ai #deepseek #devops #linux #python #ubuntu #модели #установка

Представь, что ты начинаешь работать с современными языковыми моделями и тебе нужно развернуть DeepSeek на Ubuntu. Это мощный инструмент для разработки AI-приложений, но установка может показаться сложной. Давай разберем весь процесс от подготовки системы до запуска первой модели.

Подготовка системы Ubuntu

Перед установкой DeepSeek убедимся, что система готова. Работаем с Ubuntu 20.04 LTS или новее.

Важно: Проверь версию Ubuntu командой lsb_release -a. Для работы с моделями DeepSeek требуется минимум 16 ГБ оперативной памяти и 50 ГБ свободного места на диске.

Обновление системы и установка зависимостей

Начнем с базовой подготовки:

bash
# Обновление пакетов системы
sudo apt update && sudo apt upgrade -y

# Установка Python и инструментов разработки
sudo apt install -y python3 python3-pip python3-venv git wget curl

# Установка CUDA для GPU (опционально, но рекомендуется)
sudo apt install -y nvidia-cuda-toolkit

# Проверка установки Python
python3 --version
pip3 --version

Установка DeepSeek через pip

Самый простой способ установки — использование Python и pip. Создадим виртуальное окружение для изоляции зависимостей.

bash
# Создание виртуального окружения
python3 -m venv deepseek_env

# Активация окружения
source deepseek_env/bin/activate

# Установка DeepSeek и зависимостей
pip install deepseek-api
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

# Дополнительные библиотеки для работы с моделями
pip install transformers accelerate sentencepiece protobuf
Внимание: При установке PyTorch убедись, что версия CUDA соответствует твоей видеокарте. Для проверки выполни nvidia-smi.

Проверка установки

Убедимся, что все установлено корректно:

python
# Создаем тестовый скрипт
import torch
import deepseek
from transformers import AutoTokenizer, AutoModelForCausalLM

print(f"PyTorch версия: {torch.__version__}")
print(f"CUDA доступна: {torch.cuda.is_available()}")
if torch.cuda.is_available():
    print(f"GPU: {torch.cuda.get_device_name(0)}")
    print(f"CUDA версия: {torch.version.cuda}")

Загрузка и настройка моделей DeepSeek

DeepSeek предлагает несколько моделей разного размера. Выбери подходящую для твоих задач:

Модель Размер Требования RAM Рекомендации
DeepSeek-Coder-1.3B 1.3B параметров 8 ГБ Для начала работы
DeepSeek-Coder-6.7B 6.7B параметров 16 ГБ Баланс качества и скорости
DeepSeek-Coder-33B 33B параметров 64 ГБ Для production

Загрузка модели через Hugging Face

Используем transformers для загрузки модели:

python
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

# Выбор модели (измени на нужную тебе)
model_name = "deepseek-ai/deepseek-coder-6.7b-instruct"

# Загрузка токенизатора и модели
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float16,
    device_map="auto",
    trust_remote_code=True
)

print(f"Модель {model_name} успешно загружена!")

Настройка окружения для оптимальной работы

Для повышения производительности настроим несколько параметров системы:

bash
# Настройка swap (если мало RAM)
sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

# Добавление в fstab для сохранения после перезагрузки
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# Оптимизация параметров ядра для работы с большими моделяns
echo 'vm.swappiness = 10' | sudo tee -a /etc/sysctl.conf
echo 'vm.vfs_cache_pressure = 50' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

Создание конфигурационного файла

Создадим конфиг для удобного управления настройками:

config
# config.yaml
model:
  name: "deepseek-coder-6.7b-instruct"
  path: "./models/deepseek"
  precision: "float16"
  device: "cuda"  # или "cpu" если нет GPU

generation:
  max_length: 2048
  temperature: 0.7
  top_p: 0.9
  repetition_penalty: 1.1

system:
  cache_dir: "./cache"
  log_level: "INFO"
  enable_profiling: false

Тестирование установки DeepSeek

Создадим простой тестовый скрипт для проверки работоспособности:

python
# test_deepseek.py
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

def test_deepseek():
    model_name = "deepseek-ai/deepseek-coder-1.3b-instruct"
    
    print("Загрузка токенизатора...")
    tokenizer = AutoTokenizer.from_pretrained(model_name)
    
    print("Загрузка модели...")
    model = AutoModelForCausalLM.from_pretrained(
        model_name,
        torch_dtype=torch.float16,
        device_map="auto",
        trust_remote_code=True
    )
    
    # Тестовый промпт
    prompt = "def fibonacci(n):"
    inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
    
    print("Генерация ответа...")
    with torch.no_grad():
        outputs = model.generate(
            **inputs,
            max_length=100,
            temperature=0.7,
            do_sample=True
        )
    
    result = tokenizer.decode(outputs[0], skip_special_tokens=True)
    print("\nРезультат:\n")
    print(result)
    print("\nТест пройден успешно!")

if __name__ == "__main__":
    test_deepseek()

Запуск теста

bash
# Активируем окружение и запускаем тест
source deepseek_env/bin/activate
python test_deepseek.py
Совет: Первый запуск может занять время из-за загрузки модели. Последующие запуски будут значительно быстрее благодаря кэшированию.

Автоматизация запуска через systemd

Для production-использования настроим автозапуск через systemd:

config
# /etc/systemd/system/deepseek.service
[Unit]
Description=DeepSeek AI Service
After=network.target

[Service]
Type=simple
User=ubuntu
WorkingDirectory=/home/ubuntu/deepseek
Environment="PATH=/home/ubuntu/deepseek_env/bin"
ExecStart=/home/ubuntu/deepseek_env/bin/python /home/ubuntu/deepseek/api_server.py
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
bash
# Регистрация и запуск сервиса
sudo systemctl daemon-reload
sudo systemctl enable deepseek.service
sudo systemctl start deepseek.service
sudo systemctl status deepseek.service

Частые проблемы и решения

Вот список распространенных проблем при установке DeepSeek на Ubuntu:

  • Нехватка памяти: Увеличьте swap или используйте меньшую модель
  • Ошибки CUDA: Проверьте совместимость версий PyTorch и драйверов NVIDIA
  • Медленная загрузка: Используйте локальное зеркало моделей или кэширование
  • Проблемы с токенизатором: Обновите transformers до последней версии

Команды для диагностики

bash
# Проверка использования памяти
free -h

# Проверка GPU
nvidia-smi

# Проверка дискового пространства
df -h

# Проверка версий библиотек
pip list | grep -E "torch|transformers|deepseek"

Оптимизация производительности

Для максимальной производительности DeepSeek на Ubuntu:

  1. Используйте quantization для уменьшения использования памяти
  2. Включите использование GPU через CUDA
  3. Настройте кэширование внимания (KV-cache)
  4. Используйте batch processing для обработки нескольких запросов
  5. Оптимизируйте параметры генерации под ваши задачи
python
# Пример оптимизированной загрузки модели с quantization
from transformers import BitsAndBytesConfig
import torch

quantization_config = BitsAndBytesConfig(
    load_in_4bit=True,
    bnb_4bit_compute_dtype=torch.float16,
    bnb_4bit_use_double_quant=True,
    bnb_4bit_quant_type="nf4"
)

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    quantization_config=quantization_config,
    device_map="auto",
    trust_remote_code=True
)

Теперь у тебя есть полностью настроенная система DeepSeek на Ubuntu. Ты можешь использовать её для разработки AI-приложений, анализа кода, генерации текста и других задач. Помни, что работа с большими моделями требует ресурсов — начинай с небольших моделей и масштабируй по мере необходимости.

Итог: Установка DeepSeek на Ubuntu — процесс, требующий внимания к деталям. Следуй этому руководству шаг за шагом, и ты получишь рабочую систему для экспериментов с современными языковыми моделями.
Поделиться:
Сохранить гайд? В закладки браузера