Компания 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 через готовые сервисы. Если ваша задача укладывается в одну цепочку «вопрос → поиск → ответ», начните с минимального стека и наращивайте сложность только когда появится конкретная потребность.
Полезные внутренние материалы
- Обзор последних обновлений LangChain
- Как запустить локальную LLM в России
Часто задаваемые вопросы
Нужна ли подписка 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 и собрать прототип на готовых моделях. Это сэкономит недели работы по развёртыванию. Самостоятельный стек становится оправданным, когда появляются конкретные ограничения — приватность данных, кастомные модели или предсказуемая стоимость на больших объёмах.