Точная настройка функций Gemma 270M для мобильных устройств.

Обзор

Mobile Actions — это демонстрационное приложение, в котором пользователи могут запускать действия на своих устройствах с помощью голосового или текстового ввода. Оно переосмысливает взаимодействие с голосовым помощником, предлагая полностью автономную работу. Будь то «Создать событие в календаре на завтрашний обед», «Добавить Джона в мои контакты» или «Включить фонарик», модель анализирует естественный язык и определяет правильный инструмент операционной системы для выполнения команды.

В этом руководстве показано, как:

  1. Тонкая настройка модели FunctionGemma 270M с использованием набора данных Mobile Actions.
  2. Развертывание пользовательской модели в Google AI Edge Gallery

Вы сможете изучить весь процесс от тонкой настройки модели до ее развертывания на устройстве.

Шаг 1: Тонкая настройка FunctionGemma с использованием набора данных Mobile Actions.

FunctionGemma — это модель с 270 миллионами параметров, основанная на архитектуре Gemma 3. Она была специально обучена для вызова функций, что позволяет ей преобразовывать запросы на естественном языке в вызовы функций.

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

Для точной настройки FunctionGemma мы используем набор данных Mobile Actions , который находится в открытом доступе на Hugging Face. Каждая запись в этом наборе данных содержит:

  • Набор инструментов (функций), которые может использовать модель:
    1. Включает фонарик
    2. Выключает фонарик
    3. Создает контакт в списке контактов телефона.
    4. Отправляет электронное письмо
    5. Отображает местоположение на карте.
    6. Открывает настройки Wi-Fi.
    7. Создает новое событие в календаре.
  • Системное сообщение предоставляет контекст, например, текущую дату и время.
  • Подсказка пользователю, например, turn on the flashlight .
  • Ожидаемый ответ модели, включая соответствующие вызовы функций.

Вот как выглядит функция отображения карты:

{
  "function": {
    "name": "show_map",
    "description": "Shows a location on the map.",
    "parameters": {
      "type": "OBJECT",
      "properties": {
        "query": {
          "type": "STRING",
          "description": "The location to search for. May be the name of a place, a business, or an address."
        }
      },
      "required": [
        "query"
      ]
    }
  }
}

В блокноте Colab описаны все необходимые шаги, включая:

  • Настройка среды
  • Загрузка и предварительная обработка набора данных Mobile Actions.
  • Тонкая настройка модели с использованием Hugging Face TRL
  • Преобразование модели в формат .litertlm для развертывания.

Предварительное условие : Вам потребуется та же учетная запись Google, которую вы использовали для сохранения файла .litertlm на шаге 1, и вы должны войти в систему с этой учетной записью на своем телефоне Android.

После тонкой настройки мы преобразуем и квантуем веса модели в формат .litertlm .

Вы можете развернуть модель в галерее Google AI Edge — в разделе «Мобильные действия», выбрав Load Model и выбрав её из своего Google Диска (или другим способом распространения). Галерея Google AI Edge доступна в Google Play Store.

Mobile Actions Finetune Challenge в галерее Google AI EdgeЗадача Mobile Actions в Google AI Edge Gallery

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

Следующие шаги

Поздравляем! Теперь вы знаете, как доработать модель с помощью Hugging Face и развернуть её на устройстве с помощью LiteRT-LM.