Основные понятия — модели малого и большого языка

В этой статье вы узнаете о небольших и крупных языковых моделях, в том числе о том, когда они используются и как их можно использовать с рабочими процессами искусственного интеллекта и машинного обучения в Служба Azure Kubernetes (AKS).

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

Что такое языковые модели?

Языковые модели — это мощные модели машинного обучения, используемые для задач обработки естественного языка (NLP), таких как создание текста и анализ тональности. Эти модели представляют естественный язык на основе вероятности слов или последовательностей слов, происходящих в определенном контексте.

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

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

В целом небольшие языковые модели имеют менее 10 миллиардов параметров, а большие языковые модели имеют более 10 миллиардов параметров. Например, новая семейство моделей Microsoft Phi-3 имеет три версии с различными размерами: мини (3,8 млрд параметров), малый (7 млрд параметров) и средний (14 млрд параметров).

Когда использовать малые языковые модели

Достоинства

Малые языковые модели — хороший выбор, если вам нужны модели, которые:

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

Случаи использования

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

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

В следующей таблице перечислены некоторые популярные высокопроизводительные модели малого языка:

Семейство моделей Размеры модели (число параметров) Лицензия на программное обеспечение
Microsoft Phi-3 Phi-3-mini (3,8 млрд), Phi-3-small (7 млрд) Лицензия MIT
Microsoft Phi-2 Phi-2 (2,7 млрд) Лицензия MIT
Фалькон Falcon-7B (7 млрд) Лицензия Apache 2.0

Когда следует использовать большие языковые модели

Достоинства

Большие языковые модели — хороший выбор, если вам нужны модели, которые:

  • Мощный и экспрессивный: они могут записывать более сложные шаблоны и связи в данных.
  • Общие и адаптируемые: они могут обрабатывать более широкий спектр задач и передавать знания между доменами.
  • Надежный и согласованный: они могут обрабатывать шумные или неполные входные данные и избегать распространенных ошибок и предвзятости.

Случаи использования

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

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

В следующей таблице перечислены некоторые популярные, высокопроизводительные большие языковые модели:

Семейство моделей Размеры модели (число параметров) Лицензия на программное обеспечение
Microsoft Phi-3 Phi-3-medium (14 млрд) Лицензия MIT
Фалькон Falcon-40B (40 млрд) Лицензия Apache 2.0

Эксперимент с небольшими и большими языковыми моделями в AKS

Оператор цепочки инструментов ИИ Kubernetes (KAITO) — это оператор с открытым кодом, который автоматизирует развертывания небольших и крупных языковых моделей в кластерах Kubernetes. Надстройка KAITO для AKS упрощает подключение и сокращает время вывода для моделей с открытым исходным кодом в кластерах AKS. Надстройка автоматически подготавливает узлы GPU правильного размера и настраивает связанный сервер вывода в качестве сервера конечной точки в выбранной модели.

Дополнительные сведения см. в статье Развертывание модели ИИ в AKS с помощью оператора цепочки инструментов ИИ. Чтобы приступить к работе с рядом поддерживаемых малых и больших языковых моделей для процессов инференса, см. репозиторий GitHub модели KAITO.

Внимание

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

Корпорация Майкрософт несет ответственность за создание пакетов с открытым кодом, которые мы развертываем в AKS. Эта ответственность включает полную ответственность за процессы сборки, сканирования, подписывания, проверки и выпуска срочных исправлений, а также контроль над двоичными файлами в образах контейнеров. Дополнительные сведения см. в статьях Управление уязвимостями для AKS и Объем поддержки AKS.

Руководство по платформе AKS для рабочих нагрузок искусственного интеллекта и машинного обучения

Для большинства рабочих нагрузок искусственного интеллекта и машинного обучения используйте AKS Automatic в качестве отправной точки по умолчанию.

AkS Automatic помогает сократить эксплуатационные расходы с помощью:

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

Используйте AKS Standard, если для рабочей нагрузки требуется расширенная настройка кластера за пределами стандартных параметров AKS Automatic.

Дополнительные сведения см. в статье Введение в Azure Kubernetes Service (AKS) Automatic.

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