Мои поиски умной локальной языковой модели
Я как-то пост делал с вопросом, а че, какие вообще есть локальные нейронки. Думал, что мне чатаГПТ и клауда хватит, но тут понадобилось перевести мод для ДД2, в результате чего я потратил у клауда все запросы на день. Поэтому решил, что локальный чатГПТ будет не лишним.
И тут я вспомнил, что где-то видел новость про универсальную прогу для нейронок. Погуглив - это оказалась LM Studios.
Примечание: в LM Studio представлены только языковые модели и модели, способные анализировать фотографии. Там нет SD или любой другой модели для генерации картинок.
А теперь поговорим о том, как я решил определять умность модели. Банально - сможет ли она по инструкции сделать перевод мода, о котором писал выше. Если что, сам мод вот:
Там же есть раздел с инструкцией, как делать перевод. Собственно, эту инструкцию без редактирования я и скармливал моделям. Тут очень хорошо можно проверить, как модель способно вычленять суть из инструкции и следовать ей.
Второй тест - следование системному промту. Сам промт:
По этому тесту никаких примеров и дополнительных комментариев не будет, ибо нахуя? Выдает в ответ только переведенный текст - заебись. Сообщение об ошибках пишет слово в слово - заебись. Нет - хуета.
Характеристики ПК:
- ОС: Линукс
- GPU: Radeon RX 7900XTX (24 GB VRAM)
- CPU: Ryzen 7800X3D
- RAM: 32 GB DDR5 6400@32
- Двигло: ROCm (с вулканом разницы не увидел)
Примечание: в ходе этого мидл-лога я буду употреблять понятие "уметь думать". Сделать это можно с помощью системного промта: You are a world-class AI system, capable of complex reasoning and reflection. Reason through the query inside <thinking> tags, and then provide your final response inside <output> tags. If you detect that you made a mistake in your reasoning at any point, correct yourself inside <reflection> tags. Этот промт заставляет модель думать шаг за шагом и получается эмуляция размышления. Обычно, такая вводная может помочь более точно отвечать на вопросы, а так же заставлять ИИ не придумывать ответ как обычно, а разобраться в вопросе. Иногда этот промт может все сломать, ведь некоторые модели уже могут быть затюнены под то, чтоб размышлять, но не выводить эти размышления пользователю
Вообще, пара слов о том, какой должен быть ПК для запуска нейронок локально. Все упирается в первую очередь в видеопамять. Чем больше - тем более лучшие нейронки вам доступны. Если видеопамяти не хватает - будет использоваться оперативка. Оперативка так же нужна для увеличения контекста, поэтому имейте в виду. В идеале много должно быть и того и другого. Либо можно использовать версии с более большим сжатием (чем меньше цифра после Q, тем больше сжатие и ниже точность).
1. Gemma 2.5 (Квантование Q5)
Плюсы:
- Следит за контекстом, способна вычленять важную информацию из текста
- Хорошо следует указанным в системном промте правилам, что упрощает создание специализированных прессетов для чатов.
- Может использовать эмоджи сама по себе.
- Лаконична, не выводит слишком много текста на ответ.
- Малый вес. В зависимости от квантования (это сжатие с потерями качества языковых моделей) весит от 12,5 ГБ до 29 ГБ.
- Быстрая. На 7900ХТХ скорость генерации текста составляет от 20 токенов/с до 30 токенов/с в зависимости от заполненности контекста
Минусы:
- Полностью игнорирует размышление, всегда будет стремиться угадать (и нет, у нее нет скрытого от пользователя размышления, она просто игнорирует системный промт на подумать и угадывает)
- Малый контекст - всего 8129 токена. Для большой работы, или долго общения не годится.
Не буду томить, лучшим оказалась нейронка от гугл. Хоть она и не может мыслить, как другие, для ответа на вопрос, сколько букв в слове или какая десятичная дробь больше, Гемма прекрасно справилась с переводом модификацииМой последний запрос:
Вот, что вывела нейронка:
Т.е. задание она поняла правильно. Перевела format и не тронула hint. Все остальные модели болт клали на это и переводили вообще весь английский и японский текст в кавычках, скажу сразу.
Но даже тут не все идеально. Если скормить ей сразу много кода, где еще и разные по своей наполненности блоки будут, то она так же может забыть правила и начать переводить то, что нельзя. Тут она, конечно, до того же клауда не дотягивает. Но это лучше, чем у других локальных моделей.
2. Qwen2.5 Coder 32B (Квантование Q4)
Плюсы:
- Умеет размышлять, способна правильно ответить на вопрос, сколько букв в слове и какая десятичная дробь больше (такой себе плюс)
- Хорошо следует указанным в системном промте правилам, что упрощает создание специализированных прессетов для чатов.
- Огромный контекст - 128К токенов. Прочитать файл на 500 строк и выдать его обратно - раз плюнуть
- Малый вес. В зависимости от квантования (это сжатие с потерями качества языковых моделей) весит от 12,3 ГБ до 65,5 ГБ.
- Относительно быстрая. На 7900ХТХ скорость генерации текста составляет от 5 токенов/с до 25 токенов/с в зависимости от заполненности контекста.
- Есть встроенные функции, которые можно самому настроить через меню разработчика (поэтому она и Coder)
Минусы:
- Не способна к выполнению сложной задачи, т.к. будет игнорировать некоторые указания
Похожа на Гемму, но хуже ориентируется в большом количестве текстов. В примере с переводом мода сразу же начала переводить раздел hint. Возможно, для более простых просьб хорошо подойдет. А для автоматизации так вообще идеальный выбор (но надо разбираться в том, как разрабатывать в LM Studio). Скринов и примеров не будет. Я и так слишком много этих нейронок качал.
3. Aya 23 32B (Степень квантования IQ4)
Плюсы:
- Хорошо следует указанным в системном промте правилам, что упрощает создание специализированных прессетов для чатов.
- Малый вес. В зависимости от квантования (это сжатие с потерями качества языковых моделей) весит от 9 ГБ до 70 ГБ.
- Быстрая. На 7900ХТХ скорость генерации текста составляет от 20 токенов/с до 25 токенов/с в зависимости от заполненности контекста.
Минусы:
- Не способна к выполнению сложной задачи, т.к. будет игнорировать некоторые указания
- Тупая, хоть и может размышлять с помощью системного промта, но делает ложные выводы и путается
- Малый контекст: 8к токенов
ХЗ, что сказать. Даже часть мода не перевела, дроби сравнить не смогла. Не знаю, как поведет себя при другой работе. Все напутает скорее всего.
4. Llama 3.3 70B Instruct (Степень квантования Q3)
Плюсы:
- Хорошо следует указанным в системном промте правилам, что упрощает создание специализированных прессетов для чатов.
- Умеет размышлять благодаря системному промту.
Минусы:
- Может запутаться и несмотря на то, что вы ее похвалите за правильный ответ, может исправить себя на неправильный.
- Очень медленная: в зависимости от квантования она либо вообще не запуститься, либо скорость будет 1 или 3 токена/с.
- Малый контекст: 8к токенов (и то, если у вас памяти хватит на эти 8к токенов)
Самая мощный зверь из всех локальных моделей. Для нормальной работы нужно от 40 ГБ VRAM. Полностью ее потанцевал мало кто раскроет.
5. QwQ-32B-Preview-GGUF
Это вообще какой-то мем. Не знаю, виноват ли промт на подумать, или русский язык, но отвечает как ребенок с СДВГ. Из плюсов разве что умеет размышлять, перепроверяя себя по 3 раза. Системному промту нихуя следовать не будет, в русский текст будет на регулярной основе подмешивать китайские (а иногда английские) слова, может вообще полностью на китайский перейти. Китайская цензура лютая. На вопрос, чей тайвань, сказал, что не будет отвечать, после чего начал писать гимн китая, или я хз.
Вывод
К чему я это все написал? Да хз, т.к. для большинства пользователей сайта ДэТээФ.РУ вся эта инфа будет бесполезная, т.к. вы тут все нищуки с 16 гигами оперативки и карточками от святого хуанга с жалкими 8 или в лучшем случае 16 гигами VRAM.
А для всех остальный полезно узнать, что есть и локальные бесплатные языковые модели, которые не так уж сильно уступают по возможностям облачным моделям