Компания Selectel опубликовала вторую часть подробного руководства по развёртыванию облачных LLM на одном GPU с 16 ГБ VRAM. В новом материале на Хабре инженеры разбирают связку из трёх ключевых инструментов экосистемы LangChain: LangGraph Server для оркестрации агентов, LangSmith для мониторинга и LangChain SDK для интеграции. Это означает, что российские разработчики получают готовый рецепт развёртывания production-ready ИИ-агентов без необходимости арендовать дорогие H100. В этой статье разбираем, что именно показал Selectel, какие подводные камни ждут команды в РФ и СНГ и как уже сегодня попробовать аналогичный стек через WebGPT.
Что произошло?
На Хабре вышла вторая часть цикла Selectel о запуске LLM в облаке на скромных 16 ГБ видеопамяти. Если первая часть концентрировалась на выборе модели и базовом инференсе, то новый материал переходит к слою оркестрации: LangGraph Server, LangSmith и SDK для разработчиков. Это естественный шаг — само по себе развёртывание модели не приносит пользы, пока вокруг неё не построен агентный пайплайн с памятью, инструментами и наблюдаемостью.
По данным технического обзора Selectel на Хабре, типичный сценарий выглядит так: модель уровня Qwen2.5 или Llama 3 на 7-8B параметров крутится на одной RTX 4090 или A100 с 16 ГБ, а LangGraph Server берёт на себя маршрутизацию запросов, состояние беседы и вызов внешних инструментов. LangSmith при этом фиксирует каждый шаг выполнения — от системного промпта до итогового ответа.
Главное отличие от первой части — фокус смещается с «как поднять GPU-инстанс» на «как построить продакшн-агента, которого не стыдно отдать пользователям». Для региона это особенно ценно: доступ к зарубежным managed-сервисам вроде OpenAI Assistants или Anthropic Workbench для российских команд остаётся проблематичным, а потребность в стандартизированном production-стеке только растёт.
Ключевые тезисы материала
- LangGraph Server разворачивается как отдельный сервис рядом с моделью
- LangSmith собирает трассировки даже при работе с локальными моделями
- SDK позволяет писать клиентский код на Python и TypeScript без изменений интерфейса
- Связка стабильно работает на 16 ГБ VRAM при правильном тюнинге
- Self-hosted-сценарий покрывает регуляторные требования для финтеха и медицины
Почему LangGraph Server меняет правила игры?
LangGraph — это надстройка над LangChain, в которой агент описывается как граф состояний. До недавнего времени это был просто Python-фреймворк, который вы запускали в своём приложении. LangGraph Server превращает граф в самостоятельный HTTP-сервис со встроенной персистентностью, очередями задач и API для streaming-ответов.
На практике это решает три проблемы, с которыми сталкивается любая команда, выводящая агент в продакшн:
- Длительные операции. Агент может думать минутами — нужен механизм фоновых задач и retry на случай сбоев модели.
- Состояние беседы. Чекпоинты и история должны храниться надёжно, а не в памяти процесса, иначе перезапуск воркера убивает контекст.
- Параллельные сессии. Один сервер должен обслуживать сотни пользователей одновременно без race-conditions в состоянии.
Selectel в материале показывает, как LangGraph Server закрывает все три пункта из коробки. Это критично для тех, кто раньше городил велосипеды на FastAPI поверх LangChain — теперь стандартизированный слой берёт эту работу на себя, а команда фокусируется на бизнес-логике агента.
Что под капотом
Сервер написан на Python с использованием FastAPI и хранит состояние в PostgreSQL или Redis. Из примеров Selectel следует, что для среднего проекта достаточно одного контейнера и базы — никаких Kubernetes-кластеров для старта не требуется. Это особенно ценно для команд в СНГ, у которых нет ресурсов на полноценный DevOps-отдел.
Дополнительно сервер поддерживает webhook-уведомления, double-texting (когда пользователь шлёт второе сообщение пока агент думает над первым) и интерактивный human-in-the-loop через checkpoints. Все эти возможности доступны через единый API без необходимости писать инфраструктурный код.
Что умеет LangSmith?
LangSmith — это observability-платформа, специально заточенная под LLM-приложения. В отличие от классических APM-инструментов вроде Datadog или Sentry, она понимает специфику языковых моделей: токены, температуру, цепочки промптов, вызовы инструментов и стоимость каждого шага.
В материале Selectel LangSmith используется как «чёрный ящик» для отладки: разработчик включает один декоратор и автоматически получает дашборд со всеми запросами к модели. На скриншотах видно, как сервис фиксирует не только финальный ответ, но и промежуточные размышления агента, что особенно важно при работе с reasoning-моделями.
«LangSmith позволяет увидеть, что именно происходит внутри агента — какие инструменты он выбирает, какие данные передаёт между шагами и где теряет качество», — отмечают авторы материала Selectel.
Помимо отладки, платформа решает задачу A/B-тестирования промптов и моделей. Можно подключить датасет из эталонных запросов, прогнать через него две версии агента и сравнить метрики качества — точность, релевантность, удовлетворённость пользователя.
Можно ли использовать LangSmith без облака LangChain?
Да. У LangSmith есть self-hosted-версия, которая запускается рядом с вашими сервисами. Для российских команд это принципиальный момент: данные клиентов и логи промптов не покидают периметр, что критично для финтеха, медицины и любых сегментов с регуляторными требованиями. Selectel прямо упоминает self-hosted-сценарий как рекомендуемый для боевого применения.
Как использовать SDK на практике?
LangChain SDK — это набор клиентских библиотек для Python и TypeScript. Поверх LangGraph Server SDK предоставляет несколько ключевых абстракций:
- Client — обёртка над HTTP-API сервера
- Thread — объект беседы с привязанной историей
- Run — отдельный шаг выполнения агента
- Assistant — версионированная конфигурация графа
- Cron — отложенный или периодический запуск агента
Такая структура напоминает Assistants API от OpenAI, но без vendor lock-in и с полным контролем над инфраструктурой. Это важный момент для разработчиков в РФ, для которых официальный OpenAI API недоступен без обходных маршрутов.
Пример минимального кода
В материале приведён короткий пример вызова: подключение клиента, создание треда, запуск графа и получение streaming-ответа. Весь сценарий укладывается в 15-20 строк кода — порог входа минимальный. Сравнимый функционал на чистом LangChain раньше требовал ручной работы с асинхронными генераторами и менеджерами состояния, что отпугивало разработчиков без глубокого опыта в Python async.
Что это значит для пользователей в России и СНГ?
Для региона рассматриваемый стек особенно актуален по двум причинам. Во-первых, доступ к зарубежным API LLM-вендоров остаётся ограниченным, и собственный инференс на арендованном GPU становится альтернативой подписке на ChatGPT Plus или Claude Pro. Во-вторых, стоимость аренды H100 в РФ непропорционально высока, поэтому стек, работающий на 16 ГБ VRAM, открывает дверь в продакшн-разработку для стартапов и инхаус-команд.
Если вы только присматриваетесь к работе с LLM и пока не готовы поднимать собственный инференс, попробовать аналогичные модели можно через WebGPT — в сервисе уже доступны GPT-4o, Claude 3.5 Sonnet, DeepSeek и Gemini без VPN. Это удобная стартовая точка для прототипирования агентов перед миграцией на собственный стек: можно собрать MVP за день, а потом перенести логику в LangGraph Server без переписывания промптов.
Кому нужен собственный LangGraph Server
- Финтех и медицина — где данные не должны покидать инфраструктуру
- Стартапы с длинными контекстами — где платить per-token становится дорого
- Команды с уникальными доменами — где требуется fine-tuning под задачу
- Образовательные проекты — где важна предсказуемость стоимости
- SaaS-сервисы с высокой нагрузкой — где self-hosted дешевле API
Сколько стоит развернуть такой стек?
Главное преимущество схемы Selectel — предсказуемость затрат. Облачный GPU-инстанс с 16 ГБ VRAM в РФ стоит от 35 до 80 тысяч рублей в месяц в зависимости от провайдера и модели карты. Это сопоставимо с подпиской на 30-50 платных аккаунтов ChatGPT Plus, но даёт неограниченное количество запросов и полный контроль над данными.
К стоимости GPU нужно прибавить:
- База данных PostgreSQL — около 1500-3000 рублей в месяц на managed-инстанс
- Объектное хранилище для логов — 500-1000 рублей в месяц
- Опционально LangSmith self-hosted — отдельный VPS за 1500-3000 рублей
Итого минимальный бюджет старта — около 40-90 тысяч рублей в месяц. При нагрузке в сотни тысяч запросов в сутки стек окупается за пару недель по сравнению с pay-as-you-go API крупных вендоров. Это и есть основной аргумент в пользу собственного инференса для проектов с предсказуемым трафиком.
Какие подводные камни ждут команды?
Несмотря на зрелость стека, в материале Selectel честно перечислены ограничения. Главный из них — порог входа в саму LangChain-экосистему: разработчикам без опыта работы с агентными фреймворками потребуется 1-2 недели на освоение концепций графа состояний, чекпоинтов и tool calling.
Второй подводный камень — качество локальных моделей. Открытые модели на 7-8B параметров заметно уступают GPT-4 или Claude 3.5 на сложных reasoning-задачах. Для агентов с глубокой логикой может потребоваться модель побольше — а это уже 24+ ГБ VRAM и другой ценовой сегмент.
Третья сложность — обновления LangGraph и SDK выходят раз в 1-2 недели, и не все версии совместимы между собой. Команды должны быть готовы к регулярному обновлению зависимостей и тестированию регрессий. Это нормальная цена за быстро развивающийся open-source-проект, но она реальна.
Selectel рекомендует фиксировать версии всех компонентов в lock-файлах и заводить отдельный staging-контур для проверки апгрейдов. На малых масштабах эту дисциплину легко проигнорировать — и потом тратить дни на разбор странных багов после случайного обновления зависимостей.
Как протестировать LangChain-стек уже сегодня?
Selectel предлагает развернуть стек на их облачных GPU-инстансах, но архитектура не привязана к конкретному провайдеру. Вы можете запустить LangGraph Server на любом сервере с Docker и поднять рядом модель через Ollama, vLLM или TGI. Главное требование — 16 ГБ свободной видеопамяти и базовый Linux.
Минимальная конфигурация для старта:
- Облачный GPU — RTX 4090 / A100 16GB или эквивалент
- PostgreSQL 14+ для хранения состояния
- Docker и docker-compose
- Опционально — LangSmith self-hosted для observability
- Reverse-proxy (Caddy или Nginx) для TLS-терминации
В пошаговом руководстве Selectel приведены конкретные docker-compose-файлы и переменные окружения. Это одно из первых в рунете подробных практических руководств по теме, и его можно использовать как шаблон даже без аренды у Selectel — копируете конфиги, подставляете свои домены и переменные, поднимаете на любом VPS с GPU.
Сравнение с конкурирующими решениями
На рынке существуют альтернативы LangGraph Server — например, LlamaIndex с собственным сервером агентов, Haystack от deepset и фреймворки на базе AutoGen. По сравнению с ними LangGraph выигрывает за счёт зрелости экосистемы: уже есть SDK на двух языках, observability-платформа и готовые интеграции с десятками моделей.
При этом для простых задач — например, RAG-чатбота с одним инструментом — стек LangGraph + LangSmith может оказаться избыточным. В таких случаях разумнее использовать более лёгкие решения или вовсе обходиться прямыми вызовами API через готовые сервисы. Если ваша задача укладывается в одну цепочку «вопрос → поиск → ответ», начните с минимального стека и наращивайте сложность только когда появится конкретная потребность.
Полезные внутренние материалы
Часто задаваемые вопросы
Нужна ли подписка LangSmith для использования LangGraph Server?
Нет, эти продукты независимы. LangGraph Server можно запускать полностью бесплатно — open-source-лицензия позволяет коммерческое использование. LangSmith опционален и нужен только если вы хотите получить готовый дашборд для трассировок. Self-hosted-версия LangSmith также доступна, что снимает вопрос с данными для регулируемых отраслей.
Какие модели лучше всего работают на 16 ГБ VRAM?
В материале Selectel упоминаются Qwen2.5-7B, Llama 3 8B и Mistral 7B в квантизации Q4_K_M или GPTQ. Эти модели стабильно влезают в 16 ГБ с контекстом 8-16k токенов. Для агентных задач предпочтительнее модели с поддержкой tool calling — например, Qwen2.5 или Hermes-3. Если хочется попробовать перед развёртыванием — те же модели доступны для тестов через WebGPT.
Подойдёт ли LangGraph для production без выделенного DevOps?
Да, минимальная конфигурация требует только Docker и базу данных. Команда из 2-3 человек способна поддерживать стек самостоятельно. Если же планируется высокая нагрузка с тысячами параллельных пользователей, понадобятся стандартные practices масштабирования — балансировщик, отдельная база, мониторинг ресурсов и регулярные бэкапы PostgreSQL.
Чем LangGraph отличается от обычного LangChain?
LangChain — это библиотека для построения цепочек запросов к LLM. LangGraph надстраивается над ней и добавляет понятие графа состояний с условными переходами, циклами и параллельным выполнением. Если ваш агент должен принимать решения «куда идти дальше» — нужен LangGraph. Для линейных RAG-пайплайнов хватает чистого LangChain.
Можно ли заменить весь стек на готовое решение?
Если вам не нужен собственный инференс и регуляторные требования позволяют использовать SaaS, проще зайти в WebGPT и собрать прототип на готовых моделях. Это сэкономит недели работы по развёртыванию. Самостоятельный стек становится оправданным, когда появляются конкретные ограничения — приватность данных, кастомные модели или предсказуемая стоимость на больших объёмах.