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

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

Исходный узел: 3059535

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

В этом посте мы рассмотрим новую современную модель с открытым исходным кодом под названием Mixtral 8x7b. Мы также узнаем, как получить к нему доступ с помощью библиотеки LLaMA C++ и как запускать большие языковые модели с меньшими вычислительными ресурсами и объемом памяти.

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

 

Запуск Mixtral 8x7b в Google Colab бесплатно
Изображение из Микстрал экспертов
 

Mixtral 8x7B использует разреженную сеть экспертов, состоящую только из декодеров. Это включает в себя блок прямой связи, выбирающий из 8 групп параметров, при этом сеть маршрутизаторов выбирает две из этих групп для каждого токена, аддитивно объединяя их выходные данные. Этот метод увеличивает количество параметров модели, одновременно управляя затратами и задержкой, что делает ее такой же эффективной, как модель 12.9B, несмотря на то, что общее количество параметров составляет 46.7B.

Модель 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 с использованием библиотеки LLaMA C++. По сравнению с другими моделями Mixtral 8x7b обеспечивает превосходную производительность и эффективность, что делает его отличным решением для тех, кто хочет экспериментировать с большими языковыми моделями, но не обладает обширными вычислительными ресурсами. Вы можете легко запустить его на своем ноутбуке или на бесплатном облачном компьютере. Он удобен для пользователя, и вы даже можете развернуть свое приложение чата, чтобы другие могли его использовать и экспериментировать.

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

Абид Али Аван (@ 1abidaliawan) — сертифицированный специалист по анализу данных, который любит создавать модели машинного обучения. В настоящее время он занимается созданием контента и ведением технических блогов по технологиям машинного обучения и обработки данных. Абид имеет степень магистра в области управления технологиями и степень бакалавра в области телекоммуникаций. Его видение состоит в том, чтобы создать продукт искусственного интеллекта с использованием графовой нейронной сети для студентов, борющихся с психическими заболеваниями.

Отметка времени:

Больше от КДнаггетс