Песочница LocalNode: тренажёр для локальных LLM

Перед тем как ставить языковую модель на свой VPS, полезно потрогать её руками — посмотреть, как она «думает», сколько токенов в секунду выдаёт, сколько памяти ест и как реагирует на temperature. Облачные API показывают только ответ, а внутреннюю механику прячут. Песочница LocalNode на CodeStack.space — это учебный полигон, где видны все девять метрик генерации в реальном времени: от наносекундных таймингов до загрузки CPU и SWAP.

Эта статья — мост между теорией и практикой. Она не учит ставить модель (это в статье про Ollama на VPS) и не учит генерировать контент (это в серии про ИИ-инструменты для контента и SEO). Она учит понимать, что происходит внутри модели, когда вы нажимаете «Отправить». После песочницы вы будете знать, на что смотреть, когда поставите свою модель на свой сервер.

Часть I. Девять метрик: что видит разработчик

Когда вы отправляете запрос в песочницу, система выводит девять ключевых метрик, разделённых на три логических слоя. Они помогают понять, за сколько наносекунд «думает» модель и как она утилизирует ресурсы сервера.

Слой 1: Скорость и объём (базовый)

  • ⚡ Скорость (токенов/сек) — чистая производительность генерации. Сколько текстовых единиц процессор успевает рассчитать за одну секунду после старта.
  • ⏱️ Задержка старта (TTFT) — Time to First Token, время ожидания первой буквы. Главный показатель того, сколько времени уходит на «разогрев» контекста и выделение памяти.
  • 📦 Объём ответа — суммарное количество токенов, которое сгенерировала модель в рамках текущего запроса.

Эти три метрики — базовый уровень. Если скорость низкая, а TTFT высокий — модель либо тяжёлая, либо сервер загружен. Если объём ответа маленький, а вы просили длинный текст — возможно, модель уперлась в лимит или «забыла» контекст.

Слой 2: Наносекундные тайминги Ollama (отладка)

  • 🚀 Загрузка модели — сколько времени ушло на поднятие весов LLM с диска в ОЗУ. Если модель уже «прогрета» и сидит в памяти, счётчик выдаст 0.00 сек (из ОЗУ).
  • 🧠 Промпт-токены — точный объём входящего вопроса, переведённый в токены. Помогает оценивать плотность инструкций.
  • ⏳ Анализ промпта — время, которое потребовалось процессору, чтобы полностью прочитать, проанализировать и «осознать» вопрос перед тем, как выдать первый токен ответа.

Эти метрики — для отладки. Если загрузка модели долгая — значит, модель не в памяти, и первый запрос будет медленным (холодный старт). Если анализ промпта долгий — промпт слишком сложный или модель медленная.

Слой 3: Ресурсы железа и ИИ-контекст (DevOps)

  • 💾 ОЗУ сервера — реальное потребление оперативной памяти активной моделью в процессе работы.
  • 🔄 Файл подкачки (SWAP) — показывает, хватает ли модели выделенной памяти или она начинает задействовать виртуальный буфер подкачки на диске.
  • 🔥 Нагрузка CPU — процент утилизации ядер процессора, выделенных под расчёт математических матриц нейросети в реальном времени.
  • 📉 Наполненность контекста чата — динамический индикатор (в процентах и токенах), показывающий, сколько места из жёсткого лимита памяти текущего диалога занято историей беседы.

Эти метрики — для DevOps. Если SWAP растёт — модель не хватает памяти, и генерация замедлится. Если CPU на 100% — сервер уперся в потолок, и скорость упадёт. Если контекст заполнен — модель начнёт «забывать» начало диалога.

Часть II. Два режима работы моделей

На песочнице стоят три модели, но они работают по-разному. Понимание разницы — ключ к тому, чтобы не разочароваться в «тупой модели».

Режим Chat / Instruct: Phi-3.5 Mini и Gemma 2

Эти модели обучены вести диалог. Задавайте им прямые вопросы, просите написать код или исправить ошибку. Благодаря встроенной чат-памяти в сессиях PHP, они помнят контекст прошлых сообщений.

Когда использовать:

  • Прямые вопросы: «Объясни, как работает RAG».
  • Генерация кода: «Напиши функцию на PHP для парсинга JSON».
  • Исправление ошибок: «Вот код, найди баг».
  • Диалог с контекстом: «Продолжи мысль из прошлого сообщения».

Особенности:

  • Phi-3.5 Mini (Microsoft) — компактная, быстрая, хорошо держит английский и базовый русский.
  • Gemma 2 (Google) — сильнее в многоязычных задачах, но чуть медленнее.

Обе модели — это Chat/Instruct, то есть они ожидают вопрос и отвечают. Это привычный режим, как в ChatGPT.

Режим Base: ruGPT3 Large

Эта модель не понимает вопросов и не умеет общаться. Она работает как продвинутый Т9. Чтобы с ней работать, напишите начало технической фразы (например, «Функции в языке PHP используются для...») и нажмите «Запустить» — модель продолжит вашу мысль.

Когда использовать:

  • Автодополнение кода: начните функцию, модель предложит тело.
  • Генерация текста по шаблону: начните предложение, модель закончит.
  • Творческие задачи: начните фразу, модель разовьёт идею.

Особенности:

  • ruGPT3 Large — отечественная модель, обученная на русском корпусе.
  • Не ждите от неё диалога — она не понимает вопросов, только продолжает текст.
  • Для серьёзных задач на русском безопаснее Qwen2.5 (об этом в статье про Ollama), но ruGPT3 на песочнице — хороший исторический пример, как работает Base-модель.

Практический совет: если вы написали вопрос, а модель отвечает бессмыслицей — проверьте, не в Base-ли режиме она работает. Переключитесь на Phi-3.5 или Gemma 2 для диалога.

Часть III. Temperature: управление креативностью

Temperature — это параметр, который управляет «смелостью» модели при выборе следующего токена. Низкая temperature заставляет модель выбирать самые вероятные токены (консервативно), высокая — разрешает брать менее вероятные (креативно).

Когда сдвигать к 0.1–0.3

Если вы просите модель написать строгий код, алгоритм или выдать точные факты — сдвигайте ползунок Temperature к значению 0.1–0.3. Это заставит модель выбирать самые вероятные токены и исключит «галлюцинации».

Примеры:

  • Генерация кода: temperature = 0.1
  • Ответ на фактический вопрос: temperature = 0.2
  • Перевод текста: temperature = 0.1

Когда сдвигать к 1.0–1.2

Если вам нужен творческий текст, идеи для нейминга или черновик статьи — сдвигайте ползунок к 1.0–1.2. Модель будет брать менее вероятные токены и выдавать более разнообразные ответы.

Примеры:

  • Генерация идей для названия: temperature = 1.0
  • Черновик маркетингового текста: temperature = 1.1
  • Творческое продолжение текста: temperature = 1.2

Что происходит при extremes

  • Temperature = 0 — модель всегда выбирает самый вероятный токен. Ответы предсказуемые, но могут быть скучными или повторяющимися.
  • Temperature > 1.5 — модель начинает «бредить» и выдавать бессвязный текст. Это не баг, а особенность: высокая temperature разрешает брать очень маловероятные токены.

Практический совет: начните с temperature = 0.7 (дефолт) и смотрите на ответ. Если слишком скучно — повышайте. Если слишком хаотично — понижайте.

Часть IV. Окно контекста: 1024 токенов

Для обеспечения высокой скорости на серверном CPU окно контекста чата ограничено 1024 токенами. Это значит, что модель помнит только последние 1024 токена вашего диалога (вопросы + ответы).

Как следить за наполненностью

С каждым новым вопросом и ответом нижняя розовая шкала «Наполненность контекста чата» будет заполняться. Когда наполненность приблизится к 100%, модель начнёт постепенно «забывать» ваши самые первые сообщения.

Пример:

  • Вы задали 5 вопросов, и каждый ответ был длинным.
  • Наполненность контекста — 90%.
  • Вы задаёте 6-й вопрос, ссылаясь на первый ответ.
  • Модель «забыла» первый ответ, потому что он вышел за пределы 1024 токенов.

Когда нажимать «Очистить»

Если вам нужно начать решать совершенно новую задачу — нажмите кнопку «Очистить», чтобы полностью обнулить память сессии, сбросить кэш и вернуть защиту в исходное состояние.

Когда нажимать:

  • Переходите к новой теме, не связанной с предыдущим диалогом.
  • Модель начала «путаться» в контексте.
  • Наполненность контекста > 90%, и вы хотите начать с чистого листа.

Когда НЕ нажимать:

  • Если вы хотите, чтобы модель помнила предыдущие сообщения (например, «продолжи мысль из прошлого ответа»).

Почему именно 1024 токенов

1024 токенов — это компромисс между скоростью и памятью. Чем больше контекст, тем больше RAM ест модель и тем медленнее генерация. На серверном CPU (без GPU) 1024 токенов — это разумный лимит, чтобы песочница оставалась быстрой для всех пользователей.

Если вам нужен больший контекст — ставьте свою модель на свой VPS (об этом в статье про Ollama). Там вы можете настроить контекст под свои задачи (например, 32K для Qwen2.5 или 128K для Llama 3.1).

Часть V. Ограничения песочницы: что она не может

Песочница — это учебный полигон, а не замена облаку или своей модели. Важно понимать её ограничения, чтобы не разочароваться.

Модели маленькие

На песочнице стоят модели 7–8B параметров (Phi-3.5 Mini, Gemma 2, ruGPT3 Large). Это маленькие модели по современным меркам. Они хорошо подходят для обучения и простых задач, но уступают облачным флагманам (GPT-4, Claude 3.5 Sonnet, Qwen 2.5 72B) на сложных задачах.

Что песочница делает хорошо:

  • Простые вопросы и ответы.
  • Генерация короткого кода.
  • Объяснение базовых концепций.
  • Демонстрация работы LLM.

Что песочница делает плохо:

  • Сложные рассуждения и многошаговые задачи.
  • Генерация длинного кода с архитектурой.
  • Анализ больших документов.
  • Творческие задачи высокого уровня.

Нет гарантии качества

Песочница — это демо. Модели работают на общем сервере, и ресурсы делятся между пользователями. Если сервер загружен, генерация будет медленной. Если модель «устала» (много запросов подряд), ответы могут быть хуже.

Не используйте песочницу для:

  • Продакшн-задач (генерация контента для сайта).
  • Критичных решений (анализ данных, на которых основаны бизнес-решения).
  • Работы с чувствительными данными (пароли, токены, персональные данные).

Для чего песочница идеальна

  • Обучение. Понять, как работает LLM, что такое токены, temperature, контекст.
  • Калибровка ожиданий. Перед тем как ставить свою модель, потрогать маленькую и понять, чего ждать.
  • Тестирование промптов. Быстро проверить, работает ли промпт, без оплаты облака.
  • Демонстрация. Показать коллегам, как работает LLM, без настройки инфраструктуры.

Инструменты под задачу

Песочница LocalNode — это и есть инструмент. Попробуйте её прямо сейчас: https://codestack.space/sravnenie-ii/.

Задайте простой вопрос, посмотрите на метрики, поиграйте с temperature, переключитесь между моделями. После этого вы будете понимать, что происходит внутри модели, и сможете осознанно выбрать, какую модель ставить на свой VPS и для каких задач.

Если после песочницы захотите поставить свою модель — читайте статью про Ollama на VPS. Там разобрано, как выбрать модель по размеру и языку, сколько памяти нужно, и как интегрировать с PHP.

Что дальше

Песочница — это мост между теорией и практикой. Вы увидели, как работает модель изнутри, поняли, что такое токены, temperature, контекст. Следующий шаг — либо поставить свою модель на свой VPS (статья про Ollama), либо начать использовать модели для генерации контента (серия про ИИ-инструменты для контента и SEO).

Если вы ещё не читали серию про ИИ-инструменты — начните с Промпт-инжиниринга. Там разобрано, как формулировать запросы к модели, чтобы получать предсказуемый результат. После песочницы вы будете понимать, почему промпт-инжиниринг важен: вы видели, как модель «думает», и теперь можете осознанно управлять её поведением.

👤 Зарегистрируйтесь, чтобы добавить материал в закладки.