В течении последнего месяца в сфере текстовых нейронок всё кипит — после слитой в сеть модели Llama, aka «ChatGPT у себя на пекарне» люди ощутили, что никакой зацензуренный OpenAI по сути им и не нужен, а хорошие по мощности нейронки можно запускать локально, имея минимум 16ГБ обычной ОЗУ и хороший процессор.
Пока технические паблики только начинают отдуплять что происходит, и выкладывают какие-то протухшие гайды месячной давности, я вам закину пару вещей прямо с фронта.
Где запускать?
Способ первый — на процессоре (koboldcpp)
Я бы мог вставить сюда ссылку на репозиторий llama.cpp, который запускали чуть ли не на кофеварке, и сказать — пользуйтесь!
Но как бы там ни было, это — для гиков. А у нас всё в пару кликов и без командной строки.И работать должно нормально, а не «на 4ГБ».
Поэтому, вот обещанная возможность запустить хорошую модель (13B параметров) на 16ГБ обычной ОЗУ без лишних мозгоделок — koboldcpp.
koboldcpp — это форк репозитория llama.cpp, с несколькими дополнениями, и в частности интегрированным интерфейсом Kobold AI Lite, позволяющим «общаться» с нейросетью в нескольких режимах, создавать персонажей, сценарии, сохранять чаты и многое другое.
Скачиваем любую стабильную версию скомпилированного exe, запускаем, выбираем модель (где их взять ниже), переходим в браузер и пользуемся. Всё!
Если у вас 32ГБ ОЗУ, то можно запустить и 30B модель — качество будет сильно лучше, но скорость ниже.Данный способ принимает модели в формате ggml, и не требует видеокартыP.S. Если у кого-то есть сомнения о запуске exe, то вы всегда можете проверить исходники и собрать всё самостоятельно — программа открыта.
Теперь koboldcpp поддерживает также и разделение моделей на GPU/CPU по слоям, что означает, что вы можете перебросить некоторое количество слоёв модели на GPU, тем самым ускорив работу модели, и освободив немного ОЗУ.Так что, если у вас есть видеокарта от Nvidia, можете смело перераспределять часть нагрузки на GPU. Как это сделать: Выберите пресет CuBLAS в лаунчере, и установить кол-во слоёв, которые вы хотите выделить на видеокарту.
Чем больше VRAM = тем больше слоёв можно выделить = тем быстрее работа нейросети
Способ второй — запуск на видеокарте (oobabooga)
Требует много VRAM, но скорость генерации выше. Запуск чуть сложнее, но также без выноса мозгов.
Скачиваем вот этот репозиторий oobabooga/one-click-installers и читаем приложенные инструкции — нужно будет запустить несколько батников.К вам в ту же папку загрузится репозиторий oobabooga/text-generation-webui, и подтянет за собой все необходимые зависимости. Установка проходит чисто, используется виртуальная среда.
К сожалению, в повсеместные 8ГБ VRAM поместится только 7B модель в 4bit режиме, что по факту будет хуже модели 13B из первого способа. 13B влезет только в 16GB VRAM видеокарту.А если у вас есть 24ГБ VRAM (RTX 4090, ага), то к вам влезет даже 30B модель! Но это, конечно, меньшая часть людей.
Интерфейс чуть менее удобен, чем в первом способе. Чуток тормозной. Единственный плюс — есть extensions, такие как встроенный Google Translate, который позволит общаться с моделью на русском языке.
oobabooga — cкриншот со страницы проекта на github
Выбор движка GPTQ-for-LLaMa, и внизу мы можем выделить кол-во слоёв для разделения на CPU/GPU
Где брать модели?
Сейчас есть 3 качественных модели, которые действительно имеет смысл попробовать — LLama, Alpaca и Vicuna.
Llama — оригинал слитой в первые дни модели. По заявлениям синей компании, запрещённой в РФ, 13B версия в тестах равносильна ChatGPT (135B).По моим ощущениям — на 80% это может быть и правда, но и не с нашей 4bit моделью.
Alpaca — дотренировка Llama на данных с инструкциями. Сделай мне то, расскажи мне это и т.д.Эта модель лучше чем LLama в чат режиме.
Vicuna — дотренировка LLama прямо на диалогах с ChatGPT. Максимально похожа на ChatGPT. Есть только 13b версия, на данный момент.Подчеркну — МАКСИМАЛЬНО похожа. А значит — также как и ChatGPT процензурена.
Скачать каждую из них можно вот здесь — https://huggingface.co/TheBloke (Профиль huggingface пользователя, который делает качественные кванты моделей в любом формате. Можно найти почти всё.)Обратите внимание на формат перед скачиванием — ggml или gptq.
Варианты использования?
Оба интерфейса позовляют создавать персонажа, в роли которого будет работать AI.Поэтому, вариантов использования может быть довольно много.
Пропишите персонажу, что он — AI-ассистент программист, и он будет помогать с кодом.Скажите, что он повар — и он поможет с рецептами.Скажите, что он милая девушка — и придумайте сами там что-нибудь…В общем, тут всё как с ChatGPT — взаимодействие в чате мало чем отличается.
Также, в первом интерфейсе есть режимы Adventure и Story — позволяющие играть с нейросетью, или писать истории.
Продвинутые же пользователи могут подключиться к API запущенных моделей, и использовать их в своих проектах. Оба интерфейса позволяют подключиться по API.
Если вам хочется попробовать оригинальный Chat GPT-4, то велком в моего телеграм-бота. Безлимитные запросы и стоит дешевле в 2 раза, чем на официальном сайте. Потому, что работает через api Open AI.