Основные понятия — модели малого и большого языка
В этой статье вы узнаете о небольших и крупных языковых моделях, в том числе о том, когда они используются и как их можно использовать с рабочими процессами искусственного интеллекта и машинного обучения в Служба Azure Kubernetes (AKS).
Что такое языковые модели?
Языковые модели — это мощные модели машинного обучения, используемые для задач обработки естественного языка (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 ознакомьтесь с вариантами поддержки, доступными от соответствующих сообществ и обслуживающих проектов для разработки плана.
Например, репозиторий Ray GitHub описывает несколько платформ, которые зависят от времени отклика, назначения и уровня поддержки.
Корпорация Майкрософт несет ответственность за создание пакетов с открытым кодом, которые мы развертываем в AKS. Эта ответственность включает полное владение сборкой, сканированием, подписью, проверкой и исправлением, а также контролем над двоичными файлами в образах контейнеров. Дополнительные сведения см. в статье об управлении уязвимостями для поддержки AKS и AKS.
Следующие шаги
Дополнительные сведения о контейнерных рабочих нагрузках искусственного интеллекта и машинного обучения в AKS см. в следующих статьях:
Azure Kubernetes Service