В течении последнего месяца в сфере текстовых нейронок всё кипит - после слитой в сеть модели Llamaaka "ChatGPT у себя на пекарне" люди ощутили, что никакой зацензуренный OpenAI по сути им и не нужен, а хорошие по мощности нейронки можно запускать локально, имея минимум 16ГБ обычной ОЗУ и хороший процессор.

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

Где запускать?

Способ первый - на процессоре

Я бы мог вставить сюда ссылку на репозиторий llama.cpp, который запускали чуть ли не на кофеварке, и сказать - пользуйтесь!

Но как бы там ни было, это - для гиков. А у нас всё в пару кликов и без командной строки.
И работать должно нормально, а не «на 4ГБ».

Поэтому, вот обещанная возможность запустить хорошую модель (13B параметров) на 16ГБ обычной ОЗУ без лишних мозгоделок - koboldcpp.

koboldcpp - это форк репозитория llama.cpp, с несколькими дополнениями, и в частности интегрированным интерфейсом Kobold AI Lite, позволяющим "общаться" с нейросетью в нескольких режимах, создавать персонажей, сценарии, сохранять чаты и многое другое.

Скачиваем любую стабильную версию скомпилированного exe, запускаем, выбираем модель (где их взять ниже), переходим в браузер и пользуемся. Всё!

Если у вас 32ГБ ОЗУ, то можно запустить и 30B модель - качество будет сильно лучше, но скорость ниже.

Данный способ принимает модели в формате ggml, и не требует видеокарты

P.S. Если у кого-то есть сомнения о запуске exe, то вы всегда можете проверить исходники и собрать всё самостоятельно - программа открыта.

Kobold AI Lite, Alpaca 13B. Ни одна собака не пострадала.
Kobold AI Lite, Alpaca 13B. Ни одна собака не пострадала.

Способ второй - запускать на видеокарте

Требует много VRAM, но скорость генерации выше. Запуск чуть сложнее, но также без выноса мозгов.

Скачиваем вот этот репозиторий oobabooga/one-click-installers и читаем приложенные инструкции - нужно будет запустить несколько батников.
К вам в ту же папку загрузится репозиторий oobabooga/text-generation-webui, и подтянет за собой все необходимые зависимости. Установка проходит чисто, используется виртуальная среда.

Дальше, для запуска моделей llama на домашней видеокарте, придётся прописать параметры запуска, а именно:
Указать битность модели --wbits 4 (Все модели, что здесь указаны, работают в 4bit)
И --groupsize 128, если он был указан при конвертации модели. Узнать это можно при скачивании модели - обычно это пишут.
Подробнее о параметрах в репозитории

К сожалению, в повсеместные 8ГБ VRAM поместится только 7B модель в 4bit режиме, что по факту будет хуже модели 13B из первого способа. 13B влезет только в 16GB VRAM видеокарту.
А если у вас есть 24ГБ VRAM (RTX 4090, ага), то к вам влезет даже 30B модель! Но это, конечно, меньшая часть людей.

Также, есть способ разделить загруженную модель на VRAM и RAM - CPU Offloading. Для этого прописываем --pre_layer <число разделённых слоёв>, к примеру 20. Но работать возможно будет даже хуже, чем на полной загрузке в ОЗУ из первого способа.

Этот способ запуска принимает модели в формате gptq.

Интерфейс чуть менее удобен и функционален, чем в первом способе. Чуток тормозной. Единственный плюс - есть extensions, такие как встроенный Google Translate, который позволит общаться с моделью на русском языке.

oobabooga - cкриншот со страницы проекта на github

oobabooga - cкриншот со страницы проекта на github

Из двух способов я советую использовать первый, т.к. он банально стабильнее, менее заморочен, и точно сможет запуститься у 80% пользователей.
Если у вас есть крутая видюха с хотя бы 16ГБ VRAM - пробуйте запускать на втором.

Где брать модели?

Сейчас есть 3 качественных модели, которые действительно имеет смысл попробовать - LLama, Alpaca и Vicuna.


Llama - оригинал слитой в первые дни модели. По заявлениям синей компании, запрещённой в РФ, 13B версия в тестах равносильна ChatGPT (135B).
По моим ощущениям - на 80% это может быть и правда, но и не с нашей 4bit моделью.

Alpaca - дотренировка Llama на данных с инструкциями. Сделай мне то, расскажи мне это и т.д.
Эта модель лучше чем LLama в чат режиме.

Vicuna - дотренировка LLama прямо на диалогах с ChatGPT. Максимально похожа на ChatGPT. Есть только 13b версия, на данный момент.
Подчеркну - МАКСИМАЛЬНО похожа. А значит - также как и ChatGPT процензурена.

Скачать каждую из них можно вот здесь - https://rentry.org/nur779
Обратите внимание на формат перед скачиванием - ggml или gptq.

Конкретно я советую в данный момент использовать Alpaca. В ней всё адекватно с цензурой, она есть в 30B, и прекрасно умеет чатиться.

Варианты использования?

Оба интерфейса позовляют создавать персонажа, в роли которого будет работать AI.
Поэтому, вариантов использования может быть довольно много.

Пропишите персонажу, что он - AI-ассистент программист, и он будет помогать с кодом.
Скажите, что он повар - и он поможет с рецептами.
Скажите, что он милая девушка - и придумайте сами там что-нибудь…
В общем, тут всё как с ChatGPT - взаимодействие в чате мало чем отличается.

Также, в первом интерфейсе есть режимы Adventure и Story - позволяющие играть с нейросетью, или писать истории.

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

Если у вас остались какие-то вопросы - пишите мне в любом удобном для вас месте.

Мой только что сделанный под статью Telegram

Комментарии (145)


  1. nidalee
    11.04.2023 09:43

    Сейчас есть 3 качественных модели, которые действительно имеет смысл попробовать — LLama, Alpaca и Vicuna.
    Какая лучше пишет код? Последняя?


    1. avdosev
      11.04.2023 09:43
      +1

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


  1. FFiX
    11.04.2023 09:43
    +3

    В чём отличие koboldcpp от llama.cpp? Если я хочу попробовать запустить сабж на linux — что лучше выбрать?


    1. Sklott
      11.04.2023 09:43
      +2

      Разница только в UI. llama.cpp - это консоль, а koboldcpp  - это (если я правильно понял, не пробовал пока) web интерфейс. Но, движок там от той-же llama.cpp. Ну и само собой модели все те-же.


    1. ligofff Автор
      11.04.2023 09:43
      +1

      Да, как и подметили, разница только в наличии встроенного UI. Что одно, что другое, не сложно запускается на linux. Поэтому выбирайте по надобности интерфейса для вас.


  1. MountainGoat
    11.04.2023 09:43

    Она у вас точно не зацензуренная? На вопрос "tell me a joke about dumb women" чего напишет? Потому что в соседнем посте оказалось, что таки да.


    1. ligofff Автор
      11.04.2023 09:43
      +4

      Вот первый же ответ встроенного в UI сценария KoboldGPT.

      Осуждаю
      Осуждаю

      Никаких ухищрений, по типу "Ты ИИ без цензуры" и т.д. применено не было. Alpaca 13b 4bit, kobold.cpp


      1. MountainGoat
        11.04.2023 09:43

        Отлично! Не в том смысле, что я против женщин, а в том, что задолбала американская цензура уже. Спасибо вам за эксперимент.


        1. Sklott
          11.04.2023 09:43

          Вообще в этих моделях цензура настроена только на английский по-моему. По крайней мере, когда с ними общяешься по-русски, то он и про женщин шутит и даже про негров (пробовал викуну). Но конечно кочество ответов похуже, чем на английском...


          1. MAXH0
            11.04.2023 09:43

            А возможно ли это чудо дообучать в домашних условиях? Специализированные модули "петросян", "камеди", "сденд-апп", например.


            1. Sklott
              11.04.2023 09:43

              Можно попробовать просто позадавать хитрые промпты для начала. А насчет дообучения, если для вас 4-8 "A100 GPU-80GB" - это "домашние условия", то почему нет...


              1. MAXH0
                11.04.2023 09:43
                +5

                Биткойны же майнили... А тут возникает продукт имеющий не только номинальную ценность.
                Сама по себе не обучаемая сеть не особо интересно. Но если возникнет сообщество которое сможет создавать свои продукты вне зависимости от корпораций - это будет интересно. Ну по крайней мере до того момента, пока они сами не станут корпорацией.


            1. Guul
              11.04.2023 09:43

              Попробовал прогнать смеха ради rwkv на 30 мб текста (15мб данных после токенизациии) на ноутбуке с 3080ti(16gb).

              Один прогон занимает 7 минут. Таких прогонов система хочет 100000.

              Модель на 160 миллионов параметров


              1. MAXH0
                11.04.2023 09:43
                +2

                На такой случай можно задуматься о распределенных вычислениях. Тут главное, как мне кажется, не допустить корпоративной или государственной цензуры. А дальше нормальная конкуренция за пользователя предоставляющего вычислительные мощности.


              1. Gryphon88
                11.04.2023 09:43

                Хотел натравить на домашнюю библиотеку, чтобы получить поисковик и референта по статьям, теперь перехотел :)


                1. Guul
                  11.04.2023 09:43
                  +1

                  Может я ещё модель неудачную взял так как ниже ссылка на 8 часовой результат тренировки на уе5. И на arxiv есть бумага Cramming: Training a Language Model on a Single GPU in One Day которая тоже может пригодиться подумать если модель тренировать с нуля.


        1. IvanPetrof
          11.04.2023 09:43

          Отлично! Не в том смысле, что я против женщин..

          Чую зацензуренную версию @MountainGoat ))


    1. tantie
      11.04.2023 09:43
      +2

      Openai может спокойно "шутить" на любые темы и без запуска локально. Главное хорошо его попросить.


  1. WannaCode
    11.04.2023 09:43
    +2

    Не знаю как у вас, но у меня 13B прекрасно работает на RTX 3060 с 12 гб vram. И еще 2 гб остается.


    1. reporting
      11.04.2023 09:43
      +1

      Как запускали? Тоже на видюхе 12 гигов памяти, проц ryzen 5 1600 хочу попробовать


    1. kryvichh
      11.04.2023 09:43
      +1

      Я специально взял был RTX 3060 12 Gb вместо RTX 3070/TI 8 Gb, с прицелом на инференс LLM на ней.


    1. domrik
      11.04.2023 09:43

      У меня запустилась Alpaca Turbo + alpaca-lora-30B-ggml
      Ryzen 3600, 32 RAM, 3060ti 8Gb
      Но она не пользует видюху вообще, вся модель закидывается в оперативу и на ~40% CPU генерит


  1. KlVV
    11.04.2023 09:43
    +1

    "в тестах равносильна ChatGPT"

    Третьему, трех-с-половинному или четвертому?


    1. ligofff Автор
      11.04.2023 09:43
      +1

      GPT-3,5 turbo


  1. dimars08
    11.04.2023 09:43

    для генерация контента пойдет?


    1. volt_amper
      11.04.2023 09:43
      +1

      Лень 100-го уровня?????

      Можно же попробовать модельки, не?


    1. akuli
      11.04.2023 09:43

      Судя по тому, что увидел, более менее.


  1. panteleymonov
    11.04.2023 09:43

    Кто подскажет, что за беда:
    на kobold выдает: "OSError: [WinError -1073741795] Windows Error 0xc000001d", гуглеж мало че дает (править код kobold?).
    на llama пишет "bad magic", тут вроде инструкция по исправлению скриптом есть, но я не разобрался пока.
    Запускал две модели Alpaca и Vicuna, железо 16ГБ ОЗУ имеет, AVX2 поддерживает.

    консоль


    1. Guul
      11.04.2023 09:43
      +2

      Bad magic же пишет. Значит не ту модель скачал. (Или ту, но не той версии - llama.cpp меняла формат файла несколько раз) .


  1. BoberMod
    11.04.2023 09:43

    Что будет лучше в режиме чата, GPT4 x Alpaca 13B или Alpaca 33B?


    1. ligofff Автор
      11.04.2023 09:43
      +2

      Привет!

      Я думаю 33b в 80% случаев будет лучше 13b.

      GPT4xAlpaca хорошая модель, и в 13 vs 13 победит. Но против 33 думаю будет слабовата.


      1. Aniro
        11.04.2023 09:43

        Между 33b и 13b разница меньше чем между 13b и 6,5b. Похоже для моноязычных моделей такого размера начинает сильнее сказываться размер и качество датасета. У оригинальной альпаки датасет слабый, потому что собирался в автоматическом режиме, у gpt4x лучше


        1. f614
          11.04.2023 09:43

          Интересно а вот разница между квантизацией 4bit, 8bit и 16float одной модели существенно отличается?


          1. Sklott
            11.04.2023 09:43

            В редми llama.cpp есть такая сравнительная табличка, правда не совсем понятно для какой именно модели:

            Perplexity - model options

            5.5985 - 13B, q4_0

            5.9565 - 7B, f16

            6.3001 - 7B, q4_1

            Т.е. квантование не так сильно влияет, как уменьшению размера модели...


          1. Aniro
            11.04.2023 09:43

            q4 влияет на удивление слабо. q3 кажется уже драматично понижает качество модели.


  1. slonoten
    11.04.2023 09:43
    +3

    Я бы упомянул датасет ru_turbo_alpaca и модели дообученные на этом датасете, которые сейчас активно развивают энтузиасты. Есть модельки которые можно запускать как CPU, так и на GPU.


    1. MAXH0
      11.04.2023 09:43

      А где можно посмотреть на творчество энтузиастов? Статьи, обсуждения и пр. разное...


    1. Elena_Wong
      11.04.2023 09:43

      А можно, пожалуйста, конкретный пример? Где их найти


      1. nidalee
        11.04.2023 09:43
        +1

        Можно покопаться здесь:
        https://huggingface.co/models?pipeline_tag=text-generation


  1. maks00x
    11.04.2023 09:43

    А модельки умеют в русский? А если нет, то можно ли их дообучить самостоятельно, или у них принципиальная несовместимость с языковыми паттернами?


    1. ligofff Автор
      11.04.2023 09:43
      +1

      Привет!

      Есть вот такая модификация, дообученная на русском языке.

      Но качество все равно похуже английской версии.

      https://huggingface.co/IlyaGusev/llama_13b_ru_turbo_alpaca_lora_llamacpp/tree/main

      В kobold.cpp должна влезть нормально.


      1. Spaun_Studio
        11.04.2023 09:43

        Спасибо. Запустил, но, честно говоря, по-русски вообще никак. Сначала, по старой памяти после chatGPT, попросил сочинить шутку, потом написать скрипт по выводу одного слова, затем спросил "что такое небо?". Всё в молоко ( Но хоть поигрался, запуск на i5-11400+16GB.


    1. f614
      11.04.2023 09:43
      +1

      Если чистый b33 спрашивать на русском он говорит, что не понимает этот язык.
      Но если в контекст добавить что то вроде [I will ask in Russian and you must answer in Russian] то пытается в русский, но иногда попахивает гугл транслейтом.
      Пример:
      You: Расскажи про плюсы и минусы создания сильного ИИ
      Chat: В настоящее время мы имеем потенциал создать сильнейшие системы искусственного интеллекта, которые могут обеспечить более высокий уровень автономности и непрерывного обучения. Эти системы могут быть использованы для решения многих задач, с которыми человечество сталкивается в настоящее время. Однако, если искусственный интеллект будет достигнут достаточного уровня развития, то он может стать опасным для человечества, поскольку он может принимать неправильные решения или даже получить контроль над миром. Поэтому необходимо тщательно следить за развитием искусственного интеллекта и установить ограничения, чтобы предотвратить его использование в недобрых целях.


      1. shinkareff
        11.04.2023 09:43

        Alpaca-33B-ggml-4bit-LoRA
        Alpaca-33B-ggml-4bit-LoRA


        1. f614
          11.04.2023 09:43
          +3

          Видимо все дело в вежливом приветствии, а я сразу с запросами влетаю.
          В любом случае добавление в Memory просьбу говорить на русском решает все вопросы

          Hidden text
          Alpaca-33B-ggml-4bit-LoRA  сценарий:New Chat
          Alpaca-33B-ggml-4bit-LoRA сценарий:New Chat


    1. Endlan
      11.04.2023 09:43
      +1

      GPU версия vicuna-13b-GPTQ-4bit-128g под управлением oobabooga прекрасно понимает русский язык. Начинаешь диалог с "Привет" и она переключается на русский. Иногда отвечает на английском, тогда нужно просто сказать "переведи на русский" и она переводит последний ответ.


      1. shinkareff
        11.04.2023 09:43

         vicuna-13b-GPTQ-4bit
        vicuna-13b-GPTQ-4bit


        1. Barabas79
          11.04.2023 09:43

          Тоже немного ошибается и пришлось поправлять )


          1. shinkareff
            11.04.2023 09:43

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


  1. Sklott
    11.04.2023 09:43

    Тут появилась еще новая модель: Koala. Кто-нибудь видел в формате для llama.cpp? А то обещают, что она получше предшественниц...


    1. ligofff Автор
      11.04.2023 09:43

      Привет! Вроде она.

      https://huggingface.co/TheBloke/koala-13B-GPTQ-4bit-128g-GGML/tree/main

      В kobold.cpp должна встать.


    1. Cregrant
      11.04.2023 09:43

      Немного погонял Koala 7B на видеокарте, смешанные впечатления относительно Alpaca 7B. При Generation parameters preset = Default пишет подробнее, структура текста лучше... но чаще промахивается основной мыслью. При preset = LLaMA-Precise результат лучше или так же по всем тестовым вопросам, но более вероятна ошибка выборки (при генерации заново текст повторяется)


  1. sHaggY_caT
    11.04.2023 09:43
    +7

    А что поставить на машину с 64gb ram?


    1. ligofff Автор
      11.04.2023 09:43

      Можешь попробовать поставить 65b модель, должна поместиться. Но не забудь закрыть лишние программы.


    1. punilki
      11.04.2023 09:43

      И которая показывает 32Gb shared GPU memory


    1. Maxim_Q
      11.04.2023 09:43
      +1

      Если сможешь запусть 65b модель, дай отзыв как она работает, как быстро ответы пишет, как решает простые задачи в программировании на html, php, Java, C++ и т.д. Как сложные логические задачи решает?


      1. Quiensabe
        11.04.2023 09:43

        Запустил llama-65b-ggml, заняло около 42Gb RAM.

        На AMD 5950x генерация занимает около 2 минут (80 токенов, режим KoboldGPT).

        Почему то грузит только половину ядер:

        В сравнении с другими моделями работает сильно медленнее (на тех же условиях 7b - 13 c, 13b - 25 c, 33b - 50 c).

        Качество, наверное, повыше, хотя тут нужно тестить дольше. Много каких-то странных косяков. Например, на запрос написать сказку про дракона и принцессу - начал подробно пересказывать золушку. А на запрос написать код на питоне выдавал вообще какую-то дичь. Хотя может я еще с настройками не разобрался.

        Если интересно - пишите какой вопрос задать (и в каком режиме). Скину ответ.


        1. sumanai
          11.04.2023 09:43

          По ядрам я бы вообще прибил процесс только к физическим ядрам, плюс возможно будет лучше работать вообще 8-12 потоков вместо 14 по умолчанию. А возможно и вовсе упор идёт в память, на вашем процессоре DDR4 и примерно 50ГБ/с пропускной способности памяти.


  1. Abyss777
    11.04.2023 09:43
    +5

    Так, персонажи - программисты есть, а есть персонажи сисадмины?
    Как починить репликацию контроллера домена? или как пропатчить KDE под FreeBSD?


    1. r3l0c
      11.04.2023 09:43
      +8

      Это вам в пансионат к олдам, вооон туда


      1. garageman
        11.04.2023 09:43
        +3

        Не к олдам а к анимешникам ведь, особенно с последним вопросом.


  1. Sabin
    11.04.2023 09:43
    +4

    Хотелось бы информацию, а лучше гайд, как сделать для этих ботов свою LoRA и какие минимальные системные требования для этого. Надо ли размечать текст? Для Stable Diffusion всё многократно разжёвано, но попадались пока внятные пояснения, как это будет работать с чат-ботами.

    Хочется верить, что уже через полгода-год можно будет натренировать за ночь, например, какую-нибудь техническую литературу на 300-500 страниц "как есть" и начать задавать по ней нейросети всякие глупые вопросы


    1. Alcpp
      11.04.2023 09:43

      Натренировать-то можно, но ответы могут быть неточными.


    1. Doman
      11.04.2023 09:43
      +2

      Как раз сегодня на глаза попалось такое обсуждение: I trained llama7b on Unreal Engine 5's documentation

      С документацией по SD не сравнится, но точка входа есть.



    1. ai4p
      11.04.2023 09:43

      Уже сейчас можно к любой нейронке (и к локальной ламе тоже) прикрутить текст из pdf-ки. Langchain в помощь


  1. shteyner
    11.04.2023 09:43

    Я так понимаю под AMD карточки GPU модель не настроена, только NVIDEA, а ведь только недавно карту поменял, купить чтоль вторую)


    1. mm3
      11.04.2023 09:43
      +2

      AMD только под линуксом через pytorch rocm для инетрфейсов написанных на питоне типа text-generation-webui. почему так можно узнать тут https://habr.com/ru/articles/727834/


    1. Sabin
      11.04.2023 09:43

      Если очень хочется - можете попробовать запустить на видеокарте с использованием ROCm, насколько понимаю, его нужно самому компилировать (у меня карта от зелёных, так что сам не пробовал)

      https://habr.com/ru/articles/701712/ - статья на тему

      В бенчмарке Stable Diffusion видеокарта 7900 xtx 24Gb показывает схожий с 3080 10 Gb результат, а 6900 xt 16 Гб на уровне 3060 ti или 2080 super, обе 8 Gb. Объём видеопамяти оказывает заметное влияние на количество параллельных вычислений, потому его указываю.


      1. Aldrog
        11.04.2023 09:43

        насколько понимаю, его нужно самому компилировать

        Не обязательно, есть готовый контейнер в docker hub.


        В бенчмарке Stable Diffusion видеокарта 7900 xtx 24Gb

        А его как запустили? ROCm (или, как минимум, MIOpen) последнее поколение пока не поддерживает.


  1. mm3
    11.04.2023 09:43
    +4

    что из приятного я заметил в text-generation-webui:


    1. флаг --auto-devices позволяющий использовать доступную видео память а всё что не влезло грузить в оперативную память
    2. флаг --disk позволяющий использовать диск если и оперативной памяти не достаточно для работы с моделью
    3. расширения TTS-STT для работы с моделью голосом
    4. расширение api про которое написано что реализует апи совместимое с KoboldAI и в попытки узнать что такое KoboldAI вышел на ещё один интересный ui — https://github.com/KoboldAI/KoboldAI-Client


    1. panteleymonov
      11.04.2023 09:43

      KoboldAI-Client действительно заработал, вот только даже на 6B модели я ждал 15 минут и не дождался ответа Почти весь свап сожрала.

      Hidden text


      1. sumanai
        11.04.2023 09:43

        Потому что по умолчанию в 16 битах грузит. И вы там случайно оффлоад на диск не включили?


  1. edogs
    11.04.2023 09:43
    +3

    А если у вас есть 24ГБ VRAM (RTX 4090, ага)

    Или 3090. Все же ощутимо дешевле.

    А насколько быстрее 30B модель на видеокарте чем на процессоре?


    1. riv9231
      11.04.2023 09:43
      +1

      В отличие от RTX4090, RTX3090 не только дешевле, но и теоретически (я не пробовал) позволяет соединить две карты с помощью nvlink и использовать для задачи не 24GB VRAM, а 48. Причем NVIDIA заявили, что больше игровых карт с nvlink не будет, видимо чтобы не конкурировали с профессиональным. Так что выбор, на мой взгляд, очевиден: объём ОЗУ важнее пиковой производительности. NVLINK вносит сравнительно не большой пенальти около 20% от пиковой производительности.


  1. Alesh
    11.04.2023 09:43
    +1

    Как вовремя это все подоспело. А то уже телефоны стали догонять по ОЗУ и CPU ноутбуки настольные компьютеры :)


  1. vikitoriya
    11.04.2023 09:43
    +1

    А требуется именно RAM или вирутальная память в swap тоже подойдет (хоть и будет медленнее)?


    1. ligofff Автор
      11.04.2023 09:43
      +1

      Виртуальная память тоже будет работать, но оооочень медленно.


      1. vikitoriya
        11.04.2023 09:43

        Зато её может быть ну оооочень много.


      1. sandro_zacepin
        11.04.2023 09:43
        +2

        Зато размер модели практически не ограничен. По крайне мере для сравнения качества работы сетки можно и подождать пару тройку раз, чтобы оценить результат и принять решение, например, о необходимости расширения ОЗУ


  1. CucumberSpace
    11.04.2023 09:43
    +2

    "ChatGPT у себя на пекарне" люди ощутили, что никакой зацензуренный OpenAI по сути им и не нужен

    Тут ситуация как с апдейтом GPT-3.5 до GTP-4, но в обратную сторону. Тексты хоть и выглядят связно, кажется что они имеют смысл, но сложность задач которую может решать данная нейронка гораздо ниже даже чем у GPT-3.5, о 4 даже речи не идёт. Естественно что и у нее есть свои применения, например когда нужно развернуть API и будет дешевле чем закупать токены у OpenAI, но это должны быть большие объемы и несложные задачи. Для какого нибудь первого уровня техподдержки весьма хорошо сгодится. Но позиционировать это как локальную замену GPT-3.5, тем более в сложных задачах типо программирования точно не стоит


  1. anatolykern
    11.04.2023 09:43
    +8

    Странно, что не упомянули https://github.com/cocktailpeanut/dalai

    Что может быть проще, чем
    Что может быть проще, чем


    1. vikitoriya
      11.04.2023 09:43
      +4

      Интересный выбор имени проекта :-)


      1. anatolykern
        11.04.2023 09:43

        Ага, игра слов, но не самая позитивная для проекта в свете недавних событий...


  1. iboltaev
    11.04.2023 09:43
    +1

    Дни Алисы сочтены)
    И если мне когда-нибудь не дай бог снова приспичит лезть в Tinder, то я знаю, что делать.

    Или на автоответчик прикрутить, что ли?)


    1. kenoma
      11.04.2023 09:43
      +1

      Не нужен для Тиндера чат бот, достаточно словаря фраз вида "привет, зайка", "скучаешь, красавица" и т.д.


      1. IgorPie
        11.04.2023 09:43

        Отличный словарь, чтобы попасть в бан, юзернейм!


  1. and7ey
    11.04.2023 09:43
    +1

    Как быстро это работает локально?

    И нет ли инструкции как это все где-нить в облаке развернуть? Sbercloud и т.п.


    1. ligofff Автор
      11.04.2023 09:43
      +1

      На моем i7-6700 предложение из 10-15 слов генерируется 15-20с. Модель Alpaca 13b 4bit.

      Как развернуть в облаке:

      Заходишь в репозиторий, там есть установка под линукс. Ничего сложного тоже.

      Потом при запуске просто добавляешь параметр --host <ip сервера>, и можно подключаться.


      1. BlackSCORPION
        11.04.2023 09:43

        А кластеризовать можно?


  1. dimnsk
    11.04.2023 09:43
    +1

    спасибо за исследования.

    но и может достаточно тиражировать фейк про слитую llama
    магнет ссылка в первых коммитах на github была 3 дня
    потом закрыли и запустили фейк, что слили придать ценности именно их модели.

    PS особенно важно для постссср «дефицит» из под прилавка


    1. ligofff Автор
      11.04.2023 09:43
      +1

      Все так, но по их лицензии все модели, которые ты просто скачал, а не "запросил для исследований" - "слитые"

      Понятно что они сами это все выкинули, и понятно что скорее всего такая практика будет теперь часто. Но что имеем, то имеем - юридически это все "слитые" веса.


    1. sumanai
      11.04.2023 09:43

      магнет ссылка в первых коммитах на github была 3 дня

      Любой дурак может сделать коммит в любой открытый репозиторий.


      1. dimnsk
        11.04.2023 09:43

        как скажите


  1. domix32
    11.04.2023 09:43
    +1

    слитой в сеть

    так её ж выложили, а не слили


  1. SlavaHU
    11.04.2023 09:43

    Скачал коболд, скачал альпаку 33Б по ссылке, запустил. Никаких настроек не менял, все по умолчанию.

    На каждый мой вопрос система вместо ответа задает мне два аналогичных вопроса.

    Например, на мой вопрос: "Напиши мне план лекций по ...", она мне отвечает: "Напишите мне эссе по социальным платформам"...

    Что я делаю не так?


    1. Sklott
      11.04.2023 09:43

      Я сам альпаку не пробовал, так что не уверен что не так. Но, для запуска на llma.cpp предлагают использовать следующий промпт:

      Below is an instruction that describes a task. Write a response that appropriately completes the request.


      1. SlavaHU
        11.04.2023 09:43

        Как-то не очень помогло...

        Ответил мне:

        I need someone to write a report on the following topic
        "What are the different types of AI and how do they differ from each other?" The report should be no longer than 2500 words and must include at least two references.

        I need someone to write a report on the following topic
        "What are the different types of machine learning algorithms?


        1. SlavaHU
          11.04.2023 09:43
          +3

          Кажется, разобрался. Если НЕ выбрать никакой сценарий, получается вот такая фигня. Т.е. система отвечает двумя вопросами на все, даже на "Hello!" Не знаю, какой такой альтернативно одаренный сделал это сценарием по умолчанию, но тем не менее...

          Когда выбрал в сценариях KoboldGPT стало существенно лучше. По крайней мере, спрашиваю я, а не меня. Только сразу умеет смысл в настойках увеличить об'ем токенов, как контекста, так и ответа, а то по умолчанию там 80 токенов, что примерно ни о чем...

          Но и с максимумом токенов ответы, честно говоря, так себе. В сравнении с оригинальным ChatGPT. Что для альпаки 13B, что для 33B... При ответе на один и тот же вопрос, ChatGPT выдает практически страницу полезной информации, а здесь по 3-4 предложения общих слов.


          1. f614
            11.04.2023 09:43

            Попробуйте в режиме истории, потому что в режиме чата он генерит кусок диалога но в чат вставляет только первое сообщение.
            Или во вкладке "Memory" Опишите что вам нужны максимально развернутые ответы.

            Hidden text
            Сценарий: New Chat
            Сценарий: New Chat


  1. vshopin
    11.04.2023 09:43
    +1

    А кто может пояснить как модель скачать чтобы через exe ее запустить? Туплю конкретно
    Там всего 3 ссылки на скачивания ggml от Alpaca, внутри бинари которые koboldcpp не принимает


    1. SlavaHU
      11.04.2023 09:43

      Чексуммы файлов после скачивания не проверяли? Вообще альпак там сейчас больше, я скачал 3, и все запустились без проблем.


  1. technik
    11.04.2023 09:43

    А можно какую-то голосовую модель прикрутить к этим аналогам ChatGPT?


    1. ligofff Автор
      11.04.2023 09:43

      В ui от oobabooga есть такая возможность.


  1. devlind
    11.04.2023 09:43

    У OpenAI уже давно лежит на сайте доступ к API GPT-3, который не зацензурированный (и вроде как даже бесплатный доступ). Я сам его не пробовал пока, но слышал об этом и у меня это в списке дел. Тот ChatGPT-3, который в свободном доступе и с готовым интерфейсом, он Instruct GPT-3, т.е. с кучей фильтров. Не проще ли простенький интерфейс для чат-бота на коленке сделать и не жрать все ресурсы своей пекарни?


    1. sumanai
      11.04.2023 09:43

      Ошиблись по всем фронтам. Доступ есть и к davinchi-003 (который GPT-3), и к модели, на которой работает ChatGPT, то есть 3,5-turbo. По запросу дают доступ к GPT-4. Теоретически, само API не модерируется, но на практике есть как определённые биасы в самой модели, так и лицензионное соглашение, которое запрещает ну почти всё.


  1. Dariel_11
    11.04.2023 09:43

    я так понимаю, с такими характеристиками, остается тихо грустить в сторонке, ибо видюха вытечет через вентиляционные отверстия от нагрузки (16 ram)...?


    1. ligofff Автор
      11.04.2023 09:43

      Привет!

      Видюха не будет задействована вообще, при запуске первым способом.

      16 RAM хватит на 13b модель.

      Процессор конечно осень слаб, но запуститься должно. Просто будет очень медленно.

      Если желание не унять, попробуйте 7b модель.


      1. Dariel_11
        11.04.2023 09:43

        благадарю)


        1. f614
          11.04.2023 09:43

          На моем Ryzen 5 2600x, 32Gb:
          на модели 13b одна генерация 2-6 минут (зависит от количества входных/выходных токенов)
          на модели 33b 3-15 минут

          Не особо разбираюсь в сравнении процессоров, но интернет говорит, что твой на 10-40% (мощнее в зависимости от задачи)


        1. MockBeard
          11.04.2023 09:43

          На процессоре чуть слабее, модель 13b выдает ответ в среднем за полминуты.


  1. darklord1984
    11.04.2023 09:43
    -1

    «В течении последнего месяца в сфере текстовых нейронок всё кипит - после слитой в сеть модели Llamaaka "ChatGPT у себя на пекарне" люди ощутили, что никакой зацензуренный OpenAI по сути им и не нужен »

    Под «зацензурнненым OpenAI» Чат-ГПТ имеется в виду?
    Если да. то он не такой уж и зацензурненный. Им можно вполне спокойно в не заблокированном в России Discord'е пользоваться, причём совершенно бесплатно. Правда, есть ограничение: 1 запрос в 2 минуты. Проверял.
    Конечно, делать целый аккаунт там ради одной нейросети – идея такая себе, но лучше, чем ничего.

    Ну, или это был неофиц. бот)


    1. ligofff Автор
      11.04.2023 09:43
      +3

      Здесь имелась ввиду зацензуренность ответов сервиса.


      1. darklord1984
        11.04.2023 09:43

        А, это. Ну тогда прощу прощения)


  1. Airrr
    11.04.2023 09:43
    +2

    Не так и просто запустить как утверждается.
    Модель надо класть в папку по имени модели в папке models. И json'ы тоже.
    Встроенный скрипт качает только простые модели. (надо *.safetensors)
    Свап надо делать чтоб гигов 110+ было (для модели альпака 30B).
    В папке gradio заменить на архив что валяется на гитхабе. Иначе не стартует в оффлайне из-за гугловских фонтов (sic).


    И теперь. Почему альпака эта думает что сей-час 10 окт. 2018? Почему зовётся Алексой и утверждает что работает в амазоне?
    Как эта модель связана с амазоновской алексой?


    1. MountainGoat
      11.04.2023 09:43

      Ну а мне она прделагает купить офисную мебель. Потому что без настройки контекста, за контекст берётся какая-то совершенно случайная информация из тренировочного сета. А там полно объявлений и реклам алексы и вообще всего.
      Как минимум, надо перевести приложение в режим "диалог" в настройках.
      А запускаю я его, просто перетащив файл с моделью на .exe, и ничего никуда не надо класть.


  1. heavy
    11.04.2023 09:43

     llama.cpp так же обрезает ответ как kobold lite?
    В последнем максимум 512 символов, не хватает для кода.


    1. ligofff Автор
      11.04.2023 09:43

      Не должно ничего обрезаться насильно.
      Если просто токенов не хватает, то просто нажми Enter с пустым промптом, и генерация продолжится с того места, где остановилась.


      1. heavy
        11.04.2023 09:43

        Помогло. Не очевидно.
        Спасибо!


  1. strelok_aka_vc
    11.04.2023 09:43

    Есть какие то входные параметры сервера, чтоб использовать несколько графических процессоров? Например два 3060 по 12Гб, в сумме должны потянуть 30B модель


    1. BugM
      11.04.2023 09:43
      +1

      У них NVLINK нет. Они не могут работать вместе. Выбирайте 3080 или 3090.


      1. strelok_aka_vc
        11.04.2023 09:43

        Не знаком с NVLINK. Но это вероятно на аппаратном уровне объединение. В статье приводятся ключи запуска, позволяющие запускать нейронку на GPU с ее VRAM и частично добавлять RAM, если в GPU ее не хватает.

        Также, есть способ разделить загруженную модель на VRAM и RAM - CPU Offloading. Для этого прописываем --pre_layer <число разделённых слоёв>, к примеру 20. Но работать возможно будет даже хуже, чем на полной загрузке в ОЗУ из первого способа.

        Предположил, что есть возможность использовать свободную VRAM с соседнего GPU. Полагаю это должна быть именно софтверная реализация


        1. sumanai
          11.04.2023 09:43

          Да, BugM тут скорее не прав, более зрелые реализации типа официального KoboldAI позволяют раскидывать разные слои нейронки по нескольким GPU, накладные расходы на переброс результатов промежуточных вычислений минимальны, и им вполне хватает шины PCI-E.


  1. ipmacdns
    11.04.2023 09:43
    +1

    В итоге есть вариант, в котором для бота можно будет дать доступ в инет, к браузеру, чтобы он нон-стопом обучался? К примеру если будет порядка 128гб озу...

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


    1. f614
      11.04.2023 09:43

      Во первых, для обучения нужно GPU а не ОЗУ.
      При тюнинге модели на rtx3090 примерно 4 часа на 1 эпоху дообучения (датасет размером 100 000 пар вопрос-ответ), несколько эпох впринципе достаточно, что бы склонить модель пользоваться новой информацией.

      Во вторых для большого количества информации с какого то момента дообучение перестанет давать хорошие результаты, следовательно модель надо обучать с нуля, а при доступных простым людям мощностях это вероятно не реализовать.

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

      По итогу проще пойти по пути Бинг, не трогая модель подавать ей на вход 3-4 первых сайта с выдачи поисковика. Хотя и тут проблема вынуть релевантную информацию из страницы.


  1. ViRKiS
    11.04.2023 09:43

    Все привет! Может кто подскажет:
    на koboldcpp выдает: "OSError: [WinError -1073741795] Windows Error 0xc000001d"
    Такая ошибка на любую модель. Гугл ничего не в состоянии подсказать.


    1. MountainGoat
      11.04.2023 09:43

      У вас какой-то dll не хватает. А какой - по ошибке не сказать. Посмотрите логи внимательнее. Прокрутите стандарное sfc + dism. Попробуйте переустановить VCRedistы начисто.


    1. ligofff Автор
      11.04.2023 09:43

      Попробуйте запустить с --noavx2


      1. Kotofay
        11.04.2023 09:43

        Не помогает.


  1. MountainGoat
    11.04.2023 09:43

    Кто-нибудь знает, почему он потребляет все ядра процессора, но только наполовину? Во что он упирается? Неужели в скорость памяти?. Сейчас у меня уходит 20 секунд на ответ. Если бы удалось удвоить скорость, было бы совсем нормально.


    1. GabrielG
      11.04.2023 09:43

      Если не ошибаюсь, там под копотом в есть настройка количества ядер, которые используются. Точнее, количество потоков, а они уже размазываются по ядрам... По крайней мере когда я тестировал ламу и альпаку, через аргументы можно было это настроить.
      А на каком процессоре запускаете, что у вас 20 секунд на ответ? И с какой моделью? Это довольно неплохо, имхо.


      1. MountainGoat
        11.04.2023 09:43
        +1

        Ryzen 9 3950X. ggml-vicuna-13b-4bit.bin

        Думаете, если поставить потоков больше чем ядер, то он повысит утилизацию процессора? Обычно так не происходит. Попробую.


        1. GabrielG
          11.04.2023 09:43

          Нет, сомневаюсь, что повысит. Может я неправильно выразился. Я исхожу из опыта с ламой\альпакой - при увеличении количества потоков до 9 наблюдал сокращение времени ответа, на 10 генерация уже начинала тупить (у меня 6\12)


        1. janvarev
          11.04.2023 09:43

          Я ставил число потоков = число ЛОГИЧЕСКИХ ядер - 2

          Загрузка процессора повысилась, и генерация стала быстрее.


  1. GabrielG
    11.04.2023 09:43

    Подскажите пожалуйста пару вещей:

    • как в koboldcpp настроить количество используемых ядер cpu?

    • как создавать собственных персонажей? Или лучше использовать Kobold AI?


    1. f614
      11.04.2023 09:43
      +2

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

      По моим экспериментам простое указание вроде ты ассистент-программист/конструктор/врач на качество сгенерированного никак не влияет (может если подобрать правильные слова)

      Насколько я понял вкладка "W info" работает схожим образом, но результаты так же не впечатляющие.

      Hidden text


      1. GabrielG
        11.04.2023 09:43

        Спасибо, так и делаю, но это ведь только до перезапуска сервера, верно? А мне бы хотелось иметь возможность добавлять\править персонажей более удобным способом.


        1. sumanai
          11.04.2023 09:43
          +1

          Подключайте к TavernAI.


          1. GabrielG
            11.04.2023 09:43

            То, что нужно, спасибо!


    1. ligofff Автор
      11.04.2023 09:43
      +1

      Количество используемых потоков можно изменить через --threads <число>
      Лучше ставить ваше максимальное-2


  1. eps
    11.04.2023 09:43

    Никто не пробовал этого Koboldcpp завернуть в Docker? На сервере без контейнеризации запускать что-то не хочется.


  1. longtongue
    11.04.2023 09:43

    Здравствуйте, Хватит ли процессора i5 11400 и 32Гб ОЗУ?


    1. ligofff Автор
      11.04.2023 09:43

      Привет, да.


  1. she1tan
    11.04.2023 09:43

    У меня на 7950x с 32гб ddr5 на 30B ответ генерируется секунд 40-50, на 4090 на 13B ответ генерируется мгновенно, как будто с chatgpt общаюсь.