Представьте классический сценарий: ваш отдел разработки утопает в запросах к ChatGPT, а бюджет на API-токены уже превысил зарплату мидла, которого хотят заменить на ИИ, чтобы еще больше платить за токены.
Руководству плохо от трат за токены, безопасности и юристам плохо от рассылки личных данных всему миру, а аналитики просят ещё.
Как поднять собственный LLM-контур за один вечер?
В статье мы разберем три ключевых шага на основе реального запроса. Мы посчитаем экономику, настроим сервер за 5 минут и выберем железо, которое не разорит компанию.
Руководству плохо от трат за токены, безопасности и юристам плохо от рассылки личных данных всему миру, а аналитики просят ещё.
Как поднять собственный LLM-контур за один вечер?
В статье мы разберем три ключевых шага на основе реального запроса. Мы посчитаем экономику, настроим сервер за 5 минут и выберем железо, которое не разорит компанию.
Часть 1. Экономика и стратегия. Зачем компании локальный LLM?
Ключевые преимущества локального контура:
- Экономия на масштабе. Если ваш проект потребляет от 10 миллионов токенов в месяц, локальная инфраструктура начинает окупаться. Вы платите не за каждое слово, а за время работы железа — и чем активнее используете, тем дешевле токен.
- Конфиденциальность. Данные не покидают ваш сервер. Никаких рисков, что промпты с финансовой отчетностью или исходным кодом попадут в обучающую выборку провайдера.
- Предсказуемость. Цена фиксирована, нет внезапных лимитов скорости.
- Кастомизация. Вы вольны экспериментировать с оптимизацией, менять батчинг и параметры инференса под свои задачи.
Облачный GPU против Облачного API: Сравнительная таблица
Мы не рассматриваем покупку физических серверов. Вместо этого сравним два подхода к облаку:
Сколько стоят токены GPT-4? Считаем точку безубыточности
Чтобы понять, когда локальный запуск становится выгодным, возьмем цены в рублях (данные агрегатора llmoney.ru) для GPT-4.1:
В зависимости от задачи, итоговый чек за 1M токенов будет разным:
- Стоимость входа (Input): ~154 ₽ за 1M токенов.
- Стоимость выхода (Output): ~616 ₽ за 1M токенов.
В зависимости от задачи, итоговый чек за 1M токенов будет разным:
Вывод по первой части (экономика)
Давайте приземлим цифры на реальный проект. Предположим, у вас внутренний RAG-чат для техподдержки, который обрабатывает 50 000 запросов в месяц со средним объемом 2K токенов на диалог. Это 100M токенов в месяц.
На первый взгляд API дешевле. Но дьявол в деталях:
В нашем случае с 8-часовым рабочим днем (160 часов в месяц) стоимость составит ~5 280 ₽. Это уже в 2.3 раза дешевле API, а конфиденциальность — в подарок.
Когда точно стоит переходить? Если ваш ежемесячный счет за API превышает 5–7 тысяч рублей, а трафик равномерный — локальный GPU окупится за месяц-два.
- На GPT-4.1 API вы отдадите ~12 300 ₽ (из расчета 123 ₽ за 1M токенов).
- На локальном GPU (например, RTX 4090 за 33 ₽/час) при круглосуточной работе получится ~23 760 ₽ в месяц.
На первый взгляд API дешевле. Но дьявол в деталях:
- На локальном GPU вы можете поставить Qwen-3.5, которые закрывают бизнес задачи, и при этом ваши данные никогда не утекут.
- Если нагрузка неравномерная (пик днем, спад ночью), вы можете использовать прерываемые инстансы и платить только за рабочие часы.
В нашем случае с 8-часовым рабочим днем (160 часов в месяц) стоимость составит ~5 280 ₽. Это уже в 2.3 раза дешевле API, а конфиденциальность — в подарок.
Когда точно стоит переходить? Если ваш ежемесячный счет за API превышает 5–7 тысяч рублей, а трафик равномерный — локальный GPU окупится за месяц-два.
Часть 2. Технический запуск за 5 минут на облачном GPU
Итак, вы арендовали сервер с GPU (например, в Selectel или Yandex Cloud) на Ubuntu 22.04. Задача — за минимальное время поднять эндпоинт, совместимый с OpenAI API.
У нас два инструмента: Ollama — для быстрого старта без головной боли, и llama.cpp — для тонкой настройки производительности.
В статье мы не рассматриваем UI только REST API для работы сервисов.
У нас два инструмента: Ollama — для быстрого старта без головной боли, и llama.cpp — для тонкой настройки производительности.
В статье мы не рассматриваем UI только REST API для работы сервисов.
Вариант А: Ollama (Самый быстрый старт)
Идеален для POC (доказательства концепции) и разработки.
1. Установка и запуск сервера
1. Установка и запуск сервера
# Установка
curl -fsSL https://ollama.com/install.sh | sh
# Запускаем сервер, слушая все интерфейсы
OLLAMA_HOST=0.0.0.0:11434 ollama serve
# Скачиваем легковесную модель (Qwen 3.5 на 2B параметров — отлично для тестов)
ollama pull qwen3.5:2b
2. Проверка API
Убеждаемся, что модель загружена и сервер отвечает:
curl http://localhost:11434/api/tags | jq3. Отправка запроса (как в OpenAI)
Любой сотрудник может отправлять запросы на IP сервера:
Любой сотрудник может отправлять запросы на IP сервера:
curl http://<IP-ВАШЕГО-СЕРВЕРА>:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.5:2b",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Объясни, что такое квантование модели, простыми словами."}
],
"temperature": 0.7,
"max_tokens": 500
}'Вариант Б: llama.cpp (Максимальный контроль)
Выбирайте этот путь, если нужна поддержка экзотических моделей или максимальная скорость инференса на конкретном GPU.
1. Сборка с поддержкой CUDA
1. Сборка с поддержкой CUDA
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
mkdir build && cd build
# Указываем путь к CUDA компилятору
export CUDACXX=/usr/local/cuda/bin/nvcc
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DGGML_CUDA=ON \
-DLLAMA_CURL=ON \
-DGGML_CUDA_FA=ON \ # Flash Attention для ускорения
-DCMAKE_CUDA_ARCHITECTURES=89 # Укажите вашу архитектуру (например, 89 для RTX 40xx)
cmake --build . --config Release --target llama-server --parallel2. Скачивание модели (формат GGUF)
mkdir -p ./models
wget -O ./models/Qwen3.5-9B_Q4_k_m.gguf \
"https://huggingface.co/SandLogicTechnologies/qwen3.5-9b-GGUF/resolve/main/Qwen3.5-9B_Q4_k_m.gguf"3. Запуск сервера
Запускаем с переносом слоев на GPU (-ngl 40) и увеличенным контекстом (-c 16384).
Запускаем с переносом слоев на GPU (-ngl 40) и увеличенным контекстом (-c 16384).
./bin/llama-server \
-m ./models/Qwen3.5-9B_Q4_k_m.gguf \
--host 0.0.0.0 \
--port 8089 \
-c 16384 \
-ngl 40 \
--jinja # Включаем поддержку шаблонов токенизации4. Отправка запроса
API полностью совместимо с OpenAI, поэтому код клиента менять не нужно:
API полностью совместимо с OpenAI, поэтому код клиента менять не нужно:
curl http://<IP-ВАШЕГО-СЕРВЕРА>:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.5:2b",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Объясни, что такое квантование модели, простыми словами."}
],
"temperature": 0.7,
"max_tokens": 500
}'Частые проблемы на облачных GPU и их решение
Часть 3. Где это запустить? Облачный GPU за ~50 ₽/час
Теперь самый важный вопрос: где взять GPU дешево и надежно? Рассмотрим российского провайдера Selectel, у которого можно арендовать сервер с NVIDIA GPU по часам.
Сравнение тарифов (прерываемые инстансы)
Это особенно удобно когда у вас:
- Нет физического сервера
- Нет доступа к зарубежным API по причине блокировки
- Есть ограничения по требованиям безопасности
Итоговый вывод: Собираем пазл
Давайте соединим все три части в единый план действий.
Запустив этот контур, вы получите полный контроль над данными, предсказуемый бюджет и возможность экспериментировать с любыми open-source моделями без оглядки на счета за токены.
- Экономика. Если ваш API-счет превышает 5–7 тысяч рублей в месяц — локальный GPU уже выгоден. При 8-часовом рабочем дне RTX 4090 обойдется в ~5300 ₽/мес, что в 2–3 раза дешевле GPT-4 для RAG-задач.
- Скорость запуска. С Ollama вы поднимаете сервер за 3 минуты. С llama.cpp — за 10 минут (с учетом сборки). В обоих случаях API совместимо с OpenAI, так что ваши клиенты не заметят подмены.
- Где хостить. RTX 4090 от Selectel — золотая середина для большинства задач: 24 ГБ VRAM хватает на модели 7B–8B с контекстом 8K–16K. Если нужны 70B-модели — берите RTX 6000 Ada (48 ГБ) или A100 (80 ГБ).
Запустив этот контур, вы получите полный контроль над данными, предсказуемый бюджет и возможность экспериментировать с любыми open-source моделями без оглядки на счета за токены.