Как стать автором
Обновить

Google представила открытый набор localllm для работы ИИ-приложений на локальных процессорах без GPU

Время на прочтение4 мин
Количество просмотров3.1K

Google презентовала набор localllm с открытым исходным кодом, который позволяет разработчикам использовать возможности больших языковых моделей локально на процессоре и в Workstations, полностью управляемой среде разработки Google Cloud. 

Языковые модели расположены на Hugging Face и находятся в репозитории The Bloke, они совместимы с методом квантования, который позволяет им работать на процессорах или графических процессорах с низким энергопотреблением.

Квантованные модели — это модели искусственного интеллекта, оптимизированные для работы на локальных устройствах с ограниченными вычислительными ресурсами. Они разработаны таким образом, чтобы быть более эффективными с точки зрения использования памяти и вычислительной мощности, что позволяет им бесперебойно работать на таких устройствах, как смартфоны, ноутбуки и другие периферийные устройства. В Google предложили запускать их на облачных рабочих станциях.

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

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

localllm — это набор инструментов и библиотек, который обеспечивает лёгкий доступ к квантованным моделям из HuggingFace через утилиту командной строки. Этот репозиторий предоставляет комплексную структуру и инструменты для локального запуска LLM на ЦП и в памяти прямо на Google Cloud Workstation или на компьютере или ином устройстве.

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

localllm интегрируется с различными сервисами Google Cloud, включая хранилище данных, API машинного обучения и т.д.

Чтобы начать работу с localllm, нужно зайти на репозиторий GitHub, где содержится подробная документация, примеры кода и пошаговые инструкции по настройке и использованию LLM локально на процессоре и в памяти в среде Google Cloud. После клонирования репозитория localllm запустит модель по выбору из HuggingFace, а затем выполнит первоначальный пример запроса подсказки. 

# Install the tools
pip3 install openai
pip3 install ./llm-tool/.

# Download and run a model
llm run TheBloke/Llama-2-13B-Ensemble-v5-GGUF 8000

# Try out a query
./querylocal.py

Чтобы начать работу с localllm и облачными рабочими станциями, понадобится проект Google Cloud и установка интерфейса командной строки gcloud. Сначала нужно создать контейнер Cloud Workstations, включающий localllm, а затем использовать его в качестве основы для рабочей станции разработчика (которая также поставляется с VS Code).

gcloud config set project $PROJECT_ID

# Enable needed services
gcloud services enable \
  cloudbuild.googleapis.com \
  workstations.googleapis.com \
  container.googleapis.com \
  containeranalysis.googleapis.com \
  containerscanning.googleapis.com \
  artifactregistry.googleapis.com

# Create AR Docker repository
gcloud artifacts repositories create localllm \
  --location=us-central1 \
  --repository-format=docker

Затем нужно отправить сборку Dockerfile, которая также направит образ в реестр артефактов.

gcloud builds submit .

Имя образа:

us-central1-docker.pkg.dev/$PROJECT_ID/localllm/localllm.

Следующим шагом будет создание и запуск рабочей станции с использованием пользовательского образа. В примере Google используется машина типа e2-standard-32 (32 виртуальных ЦП, 16 ядер и 128 ГБ памяти).

gcloud позволяет настроить кластер, конфигурацию и рабочую станцию с использованием пользовательского базового образа с установленной моделью. $CLUSTER нужно заменить на желаемое имя кластера, и команда ниже создаст новый. Процесс займёт около 20 минут.

gcloud workstations clusters create $CLUSTER \
  --region=us-central1

Следующие шаги создают рабочую станцию и запускают её:

# Create workstation configuration
gcloud workstations configs create localllm-workstation \
  --region=us-central1 \
  --cluster=$CLUSTER \
  --machine-type=e2-standard-32 \
  --container-custom-image=us-central1-docker.pkg.dev/$PROJECT_ID/localllm/localllm

# Create the workstation
gcloud workstations create localllm-workstation \
  --cluster=$CLUSTER \
  --config=localllm-workstation \
  --region=us-central1

# Grant access to the default Cloud Workstation Service Account
gcloud artifacts repositories add-iam-policy-binding \
  localllm \
  --location=us-central1 \
  --member=serviceAccount:service-$PROJECT_NUM@gcp-sa-workstationsvm.iam.gserviceaccount.com \
  --role=roles/artifactregistry.reader

# Start the workstation
gcloud workstations start localllm-workstation \
  --cluster=$CLUSTER \
  --config=localllm-workstation \
  --region=us-central1

Подключиться к ней можно с помощью ssh или интерактивно в браузере.

gcloud workstations ssh localllm-workstation \
  --cluster=$CLUSTER \
  --config=localllm-workstation \
  --region=us-central1

После обслуживания модели с ней можно взаимодействовать, посетив действующую страницу документации OpenAPI. Сначала нужно получить имя хоста рабочей станции, используя:

gcloud workstations describe localllm-workstation \
  --cluster=$CLUSTER \
  --config=localllm-workstation \
  --region=us-central1

Затем в браузере требуется открыть https://$PORT-$HOSTNAME/docs.

Ранее Meta* представила большую языковую модель Code Llama с 70 млрд параметров. Нейросеть обучена на коде и других данных, связанных с программированием. Все версии Code Llama, включая новую, открытые и бесплатные для коммерческого использования. Они опубликованы на портале Hugging Face, а исходный код доступен на GitHub.

Meta Platforms*, а также принадлежащие ей социальные сети Facebook** и Instagram**:
* — признана экстремистской организацией, её деятельность в России запрещена
** — запрещены в России

Теги:
Хабы:
Всего голосов 4: ↑3 и ↓1+7
Комментарии4

Другие новости

Истории

Работа

Data Scientist
83 вакансии

Ближайшие события

Конференция HR API 2024
Дата14 – 15 июня
Время10:00 – 18:00
Место
Санкт-ПетербургОнлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область