Запуск Mixtral 8x7b у Google Colab безкоштовно - KDnuggets

Запуск Mixtral 8x7b у Google Colab безкоштовно – KDnuggets

Вихідний вузол: 3059535

Запуск Mixtral 8x7b у Google Colab безкоштовно
Зображення автора
 

У цій публікації ми розглянемо нову сучасну модель з відкритим кодом під назвою Mixtral 8x7b. Ми також дізнаємося, як отримати до нього доступ за допомогою бібліотеки LLaMA C++ і як запускати великі мовні моделі при обмеженому обчисленні та пам’яті.

Мікстраль 8x7b це високоякісна розріджена модель експертів (SMoE) з відкритими вагами, створена Mistral AI. Він ліцензований під Apache 2.0 і перевершує Llama 2 70B у більшості тестів, маючи в 6 разів швидший висновок. Mixtral відповідає або перевершує GPT3.5 за більшістю стандартних тестів і є найкращою відкритою моделлю щодо ціни та продуктивності.

 

Запуск Mixtral 8x7b у Google Colab безкоштовно
Зображення з Суміш експертів
 

Mixtral 8x7B використовує розріджену мережу змішування експертів лише для декодера. Це передбачає блок прямого зв’язку, який вибирає з 8 груп параметрів, при цьому мережа маршрутизатора вибирає дві з цих груп для кожного маркера, комбінуючи їхні виходи додатково. Цей метод покращує кількість параметрів моделі, одночасно керуючи вартістю та затримкою, роблячи її такою ж ефективною, як і модель 12.9 B, незважаючи на загальну кількість параметрів 46.7 B.

Модель Mixtral 8x7B чудово працює з широким контекстом із 32 тисяч токенів і підтримує кілька мов, включаючи англійську, французьку, італійську, німецьку та іспанську. Він демонструє високу продуктивність у генерації коду та може бути налаштований на модель, що виконує інструкції, досягаючи високих результатів у таких тестах, як MT-Bench.

LLaMA.cpp це бібліотека C/C++, яка забезпечує високопродуктивний інтерфейс для великих мовних моделей (LLM) на основі архітектури LLM Facebook. Це легка та ефективна бібліотека, яку можна використовувати для різноманітних завдань, зокрема для створення тексту, перекладу та відповідей на запитання. LLaMA.cpp підтримує широкий спектр LLM, включаючи LLaMA, LLaMA 2, Falcon, Alpaca, Mistral 7B, Mixtral 8x7B і GPT4ALL. Він сумісний з усіма операційними системами і може працювати як на процесорах, так і на графічних процесорах.

У цьому розділі ми запустимо веб-програму llama.cpp у Colab. Написавши кілька рядків коду, ви зможете відчути нову найсучаснішу продуктивність моделі на своєму ПК або в Google Colab.

Приступаючи до роботи

Спочатку ми завантажимо репозиторій llama.cpp GitHub за допомогою командного рядка нижче: 

!git clone --depth 1 https://github.com/ggerganov/llama.cpp.git

Після цього ми змінимо каталог на репозиторій і встановимо llama.cpp за допомогою команди `make`. Ми встановлюємо llama.cpp для графічного процесора NVidia з інстальованою CUDA. 

%cd llama.cpp

!make LLAMA_CUBLAS=1

Завантажте модель

Ми можемо завантажити модель із Hugging Face Hub, вибравши відповідну версію файлу моделі `.gguf`. Додаткову інформацію про різні версії можна знайти в TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF.

 

Запуск Mixtral 8x7b у Google Colab безкоштовно
Зображення з TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF
 

Ви можете скористатися командою `wget`, щоб завантажити модель у поточний каталог. 

!wget https://huggingface.co/TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF/resolve/main/mixtral-8x7b-instruct-v0.1.Q2_K.gguf

Зовнішня адреса для сервера LLaMA

Коли ми запускаємо сервер LLaMA, він надасть нам локальну IP-адресу, яка для нас у Colab марна. Нам потрібне підключення до проксі-сервера localhost за допомогою порту проксі-сервера ядра Colab. 

Після виконання наведеного нижче коду ви отримаєте глобальне гіперпосилання. Пізніше ми скористаємося цим посиланням для доступу до нашої веб-програми. 

from google.colab.output import eval_js
print(eval_js("google.colab.kernel.proxyPort(6589)"))

 

https://8fx1nbkv1c8-496ff2e9c6d22116-6589-colab.googleusercontent.com/

Запуск сервера

Щоб запустити сервер LLaMA C++, вам потрібно вказати серверній команді розташування файлу моделі та правильний номер порту. Важливо переконатися, що номер порту збігається з тим, який ми ініціювали на попередньому кроці для порту проксі.  

%cd /content/llama.cpp

!./server -m mixtral-8x7b-instruct-v0.1.Q2_K.gguf -ngl 27 -c 2048 --port 6589

 

Запуск Mixtral 8x7b у Google Colab безкоштовно
 

Доступ до веб-програми чату можна отримати, клацнувши гіперпосилання проксі-порту на попередньому кроці, оскільки сервер не працює локально.

Веб-програма LLaMA C++

Перш ніж почати використовувати чат-бот, нам потрібно його налаштувати. Замініть «LLaMA» назвою вашої моделі в розділі запитів. Крім того, змініть ім’я користувача та ім’я бота, щоб розрізняти згенеровані відповіді.

 

Запуск Mixtral 8x7b у Google Colab безкоштовно
 

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

 

Запуск Mixtral 8x7b у Google Colab безкоштовно
 

Якщо у вас виникнуть проблеми з програмою, ви можете спробувати запустити її самостійно за допомогою Google Colab: https://colab.research.google.com/drive/1gQ1lpSH-BhbKN-DdBmq5r8-8Rw8q1p9r?usp=sharing

Цей підручник містить вичерпний посібник із запуску розширеної моделі з відкритим вихідним кодом Mixtral 8x7b у Google Colab за допомогою бібліотеки C++ LLaMA. Порівняно з іншими моделями, Mixtral 8x7b забезпечує чудову продуктивність і ефективність, що робить його чудовим рішенням для тих, хто хоче експериментувати з великими мовними моделями, але не має значних обчислювальних ресурсів. Ви можете легко запустити його на своєму ноутбуці або на безкоштовному хмарному обчисленні. Це зручно для користувачів, і ви навіть можете розгорнути свою програму для чату, щоб інші могли використовувати та експериментувати з нею.

Сподіваюся, вам було корисно це просте рішення для запуску великої моделі. Я завжди шукаю прості та кращі варіанти. Якщо у вас є ще краще рішення, дайте мені знати, і я розповім про нього наступного разу.
 
 

Абід Алі Аван (@1abidaliawan) є сертифікованим фахівцем із дослідження даних, який любить створювати моделі машинного навчання. Зараз він зосереджується на створенні контенту та написанні технічних блогів про технології машинного навчання та науки про дані. Абід має ступінь магістра з управління технологіями та ступінь бакалавра в галузі телекомунікаційної інженерії. Його бачення полягає в тому, щоб створити продукт AI з використанням нейронної мережі графа для студентів, які борються з психічними захворюваннями.

Часова мітка:

Більше від KDnuggets