Фраза «языковая модель запускается на вашем компьютере» заставляет людей представить, как раскручивается вентилятор и ноутбук нагревается вхолостую. Это вполне разумное предположение, ведь именно так бывает, если неправильно запустить чат-модель.

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

Четыре вида нагрузки, и постоянная только одна

Диск. Файл модели загружается один раз. От нескольких сотен мегабайт до нескольких гигабайт — столько места потребуется после загрузки.

Память. Пока модель загружена, её веса должны оставаться в памяти: примерно столько же, сколько занимает файл, плюс небольшие накладные расходы. Это постоянная нагрузка и именно она определяет, подходит ли размер модели вашему компьютеру. На ноутбуке с 16 ГБ памяти один гигабайт под модель — обычное дело. На ноутбуке с 8 ГБ, когда открыт браузер, три гигабайта — уже много.

Вычисления. Они выполняются только во время создания подсказки. Для дополнения предложения это несколько сотен миллисекунд — несколько раз в минуту. Основная часть времени уходит на паузы между вашими нажатиями клавиш. Для сравнения: чат-помощник, генерирующий шестьсот слов, несколько секунд загружает процессор на полную.

Батарея. Расход заряда зависит от вычислений. Короткие запуски потребляют мало энергии. Честно говоря, компьютер, который никогда не переходит в глубокий режим энергосбережения в простое, расходует больше, чем компьютер, который туда переходит, поэтому эффект не совсем нулевой.

Главное: предсказание текста почти всё время простаивает. Реальная нагрузка — занимаемая память; всем остальным можно пренебречь, если размер модели не слишком велик для компьютера.

Почему файл меньше, чем кажется

Модель размером в несколько сотен мегабайт — это не модель с несколькими сотнями миллионов параметров. Модели распространяются в квантованном виде: значения весов хранятся с пониженной точностью — обычно в четырёх или пяти битах вместо шестнадцати. Это примерно вчетверо уменьшает размер файла и потребление памяти при умеренном, измеримом снижении качества.

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

Главное ограничение — задержка, а не качество

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

Этот срок ограничивает размер модели независимо от объёма памяти вашего компьютера. После определённого размера более качественная модель становится более медленной, а медленные подсказки остаются неиспользованными. Практическая цель — чтобы подсказка появлялась, пока ваши пальцы ещё делают паузу между словами: примерно за несколько сотен миллисекунд, а не за полторы секунды.

Это противоречит обычной интуиции. Здесь увеличение размера не улучшает результат, если подсказка приходит с опозданием. Подходящий размер — самый большой из тех, которые успевают ответить в промежутке между словами на вашем оборудовании. Для ультрабука 2019 года и настольного компьютера с дискретной видеокартой ответ будет разным.

Как выбрать размер

Typeahead предлагает три варианта, которые напрямую отражают этот компромисс.

Размер На диске Заявленные требования Для кого
Быстрая (по умолчанию) ~600 МБ — Любой поддерживаемый компьютер; с неё лучше всего начать
Сбалансированная ~1,2 ГБ 8 ГБ системной памяти Компьютеры с запасом ресурсов: подсказки лучше, скорость по-прежнему высокая
Максимальное качество ~2,5 ГБ Дискретная видеокарта с 8 ГБ собственной памяти, 16 ГБ системной памяти Настольные компьютеры и рабочие станции с полноценной видеокартой

О таблице стоит помнить две вещи.

Начните с быстрой модели, даже если ваш компьютер может работать с более крупной. Попользуйтесь ею неделю. Если подсказки достаточно точны, более крупная модель не даст ничего, что вы заметите при наборе сообщения в чате. Если подсказки явно не подходят, перейдите на модель побольше — и вы будете знать, за счёт чего получаете улучшение, а чем приходится жертвовать.

Для варианта максимального качества нужна дискретная видеокарта с 8 ГБ собственной памяти, а не 8 ГБ общей системной памяти. Встроенная видеокарта ноутбука этому требованию не соответствует. Принудительный запуск модели на оборудовании, которому приходится выгружать её части в файл подкачки, — как раз способ добиться раскручивающегося вентилятора, о котором шла речь в начале статьи.

Компьютеры, которым действительно не хватает ресурсов

  • 8 ГБ оперативной памяти, открыты браузер, Teams и Office. Вы уже близки к пределу ещё до запуска чего-либо другого. Используйте самую маленькую модель и учитывайте, что нагрузка будет заметнее, чем на компьютере с 16 ГБ. Если компьютер и так использует файл подкачки в обычный рабочий день, загруженная в память модель усугубит ситуацию.
  • Старые процессоры без AVX2. Библиотеки для инференса используют векторные инструкции. Процессор, выпущенный до 2013 года, будет работать медленнее, чем предполагают любые приведённые цифры; именно здесь сказывается описанное выше ограничение по задержке.
  • Тонкие ноутбуки с ограничением по температуре. Запуски настолько короткие, что одна эта нагрузка вряд ли вызовет длительное снижение производительности из-за перегрева. Но у компьютера, который уже перегревается под другой нагрузкой, запаса ресурсов нет.
  • Работа от батареи вдали от розетки. Подсказки продолжат работать, поскольку они создаются локально и не требуют подключения к сети. Если вы хотите как можно дольше обходиться без подзарядки во время долгого перелёта, выбирайте модель поменьше.

Как проверить на своём компьютере

Замеры на чужом ноутбуке мало о чём вам скажут. Два измерения — десять минут.

  1. 1. Перед установкойоткройте Диспетчер задач → Производительность и запишите, сколько памяти занято при обычной рабочей конфигурации: с привычными вкладками браузера, почтой и чатом.
  2. 2. После установки и загрузки моделипосмотрите на те же показатели, а также на потребление памяти приложением во вкладке «Процессы».

Если после этого у вас остаётся достаточный запас памяти, всё в порядке. Если вы упираетесь в предел, выберите модель поменьше.

Оценка задержки субъективна, и это хорошо: наберите предложение, которое вы набрали бы обычно, и обратите внимание, появляется ли подсказка, пока ваши пальцы делают паузу, или приходит позже. Лучше всего проверить это в течение пробного периода — у Typeahead он длится семь дней, и в нём доступны модели всех размеров.

Что вы получаете взамен

  • Всё, что вы печатаете, остаётся на компьютере. Это не обещание того, как сервер будет обрабатывать ваш текст, а следствие того, где именно он обрабатывается.
  • Работает без подключения к сети. В самолёте, поезде или отеле, где Wi-Fi перестал разрешать DNS-имена.
  • Без подписки за каждого пользователя и без учётной записи, потому что нет сервера, за который нужно платить.
  • Без переменной задержки. Локальная модель работает с одинаковой скоростью в девять утра и в пять вечера, в отличие от общей облачной службы.

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

Часто задаваемые вопросы

Сколько оперативной памяти нужно локальной модели для набора текста?
Примерно размер файла модели плюс накладные расходы; столько памяти она занимает, пока загружена. Модель размером 600 МБ создаёт нагрузку на память в несколько сотен мегабайт, а модель размером 2,5 ГБ — в пару гигабайт. Прежде чем считать это большим объёмом, сравните его с тем, сколько памяти уже использует ваш браузер.
Используется ли видеокарта?
Да, она может использоваться, а для модели максимального размера нужна дискретная видеокарта с 8 ГБ собственной памяти. Модели поменьше отлично работают на процессоре для этой задачи.
Будет ли расходоваться заряд батареи?
Расход зависит только от того, как часто модель запускается. Для подсказок при наборе текста это короткие запуски по несколько раз в минуту. Их нельзя сравнить с генерацией длинных ответов чат-помощником, а энергопотребление значительно ниже, чем во время видеозвонка.
Будут ли подсказки лучше у более крупной модели?
В некоторой степени. Но после определённого размера подсказки появляются позже, а это хуже. Подходящий размер — самый большой из тех, которые успевают ответить до того, как вы продолжите печатать.
Что произойдёт, если я отключусь от интернета?
Ничего не изменится. После загрузки модели подсказки генерируются на вашем компьютере. Подключение нужно только для загрузки модели или проверки обновлений.
Можно ли сменить размер модели после покупки?
Да. Это настройка, а не отдельная редакция. Можно загрузить модель другого размера и переключиться на неё — так и следует искать подходящий вариант.
Не будет ли небольшая модель плохо писать?
Она не пишет текст, а заканчивает ваше предложение, и слова перед курсором задают большую часть ограничений. Поэтому модель, слишком маленькая для написания эссе, подходит для этой задачи. Здесь важно следить за другим: не предложит ли модель беглое продолжение, которое вы не имели в виду. Поэтому подсказка принимается только отдельным нажатием клавиши.