Сегодня мы рады сообщить, что базовая модель языка GPT-NeoXT-Chat-Base-20B компании Together Computer доступна для клиентов, использующих Amazon SageMaker JumpStart. GPT-NeoXT-Chat-Base-20B — это модель с открытым исходным кодом для создания диалоговых ботов. Вы можете легко опробовать эту модель и использовать ее с JumpStart. JumpStart — это центр машинного обучения (ML) Создатель мудреца Амазонки который предоставляет доступ к базовым моделям в дополнение к встроенным алгоритмам и шаблонам комплексных решений, чтобы помочь вам быстро приступить к работе с ML.
В этом посте мы рассмотрим, как развернуть GPT-NeoXT-чат-Base-20B модель и вызвать модель в OpenChatKit интерактивная оболочка. В этой демонстрации представлен чат-бот базовой модели с открытым исходным кодом для использования в вашем приложении.
В моделях JumpStart используется технология Deep Java Serving, в которой используется библиотека Deep Java (DJL) с высокоскоростными библиотеками для оптимизации моделей и минимизации задержки при выводе. Базовая реализация в JumpStart следует за реализацией, похожей на следующую ноутбук. Как клиент концентратора моделей JumpStart, вы получаете повышенную производительность без необходимости поддерживать сценарий модели вне SageMaker SDK. Модели JumpStart также обеспечивают повышенную безопасность благодаря конечным точкам, обеспечивающим сетевую изоляцию.
Базовые модели в SageMaker
JumpStart предоставляет доступ к ряду моделей из популярных концентраторов моделей, включая Hugging Face, PyTorch Hub и TensorFlow Hub, которые вы можете использовать в процессе разработки машинного обучения в SageMaker. Недавние достижения в области машинного обучения привели к появлению нового класса моделей, известных как модели фундамента, которые обычно обучаются на миллиардах параметров и адаптируются к широкому кругу вариантов использования, таких как суммирование текста, создание цифрового искусства и языковой перевод. Поскольку обучение этих моделей обходится дорого, клиенты хотят использовать существующие предварительно обученные базовые модели и настраивать их по мере необходимости, а не обучать эти модели самостоятельно. SageMaker предоставляет список моделей, которые вы можете выбрать на консоли SageMaker.
Теперь вы можете найти модели фундамента от разных поставщиков моделей в JumpStart, что позволит вам быстро приступить к работе с моделями фундамента. Вы можете найти базовые модели, основанные на различных задачах или поставщиках моделей, и легко просматривать характеристики моделей и условия использования. Вы также можете опробовать эти модели с помощью тестового виджета пользовательского интерфейса. Если вы хотите использовать базовую модель в масштабе, вы можете легко сделать это, не выходя из SageMaker, используя готовые блокноты от поставщиков моделей. Поскольку модели размещаются и развертываются на AWS, вы можете быть уверены, что ваши данные, независимо от того, используются ли они для оценки или использования модели в масштабе, никогда не будут переданы третьим лицам.
Базовая модель GPT-NeoXT-Chat-Base-20B
Вместе Компьютер разработал GPT-NeoXT-Chat-Base-20B, языковую модель с 20 миллиардами параметров, точно настроенную на основе модели GPT-NeoX от ElutherAI с более чем 40 миллионами инструкций, ориентированную на взаимодействие в стиле диалога. Кроме того, модель настроена на несколько задач, таких как ответы на вопросы, классификация, извлечение и обобщение. Модель основана на наборе данных OIG-43M, созданном в сотрудничестве с LAION и Ontocord.
В дополнение к вышеупомянутой тонкой настройке GPT-NeoXT-Chat-Base-20B-v0.16 также подвергся дальнейшей тонкой настройке с помощью небольшого количества данных обратной связи. Это позволяет модели лучше адаптироваться к человеческим предпочтениям в разговорах. GPT-NeoXT-Chat-Base-20B предназначен для использования в приложениях чат-ботов и может плохо работать в других случаях использования, выходящих за рамки его предполагаемой области применения. Вместе Ontocord и LAION совместно выпустили OpenChatKit, альтернативу ChatGPT с открытым исходным кодом с сопоставимым набором возможностей. OpenChatKit был запущен под лицензией Apache-2.0, предоставляющей полный доступ к исходному коду, весам моделей и обучающим наборам данных. Есть несколько задач, с которыми OpenChatKit отлично справляется из коробки. Сюда входят задачи суммирования, задачи извлечения, которые позволяют извлекать структурированную информацию из неструктурированных документов, и задачи классификации для классификации предложения или абзаца по разным категориям.
Давайте рассмотрим, как мы можем использовать модель GPT-NeoXT-Chat-Base-20B в JumpStart.
Обзор решения
Вы можете найти код, показывающий развертывание GPT-NeoXT-Chat-Base-20B в SageMaker, и пример того, как использовать развернутую модель в диалоговом режиме с помощью командной оболочки, в следующем Блокнот GitHub.
В следующих разделах мы подробно раскрываем каждый шаг, чтобы развернуть модель, а затем использовать ее для решения различных задач:
- Настройте предварительные условия.
- Выберите предварительно обученную модель.
- Получите артефакты и разверните конечную точку.
- Запросите конечную точку и проанализируйте ответ.
- Используйте оболочку OpenChatKit для взаимодействия с развернутой конечной точкой.
Настроить предварительные условия
Этот блокнот был протестирован на экземпляре ml.t3.medium в Студия Amazon SageMaker с ядром Python 3 (Data Science) и в экземпляре ноутбука SageMaker с ядром conda_python3.
Перед запуском записной книжки используйте следующую команду, чтобы выполнить некоторые начальные шаги, необходимые для установки:
Выберите предварительно обученную модель
Мы настраиваем сеанс SageMaker, как обычно, используя Boto3, а затем выбираем идентификатор модели, которую хотим развернуть:
Извлечение артефактов и развертывание конечной точки
С помощью SageMaker мы можем выполнять логические выводы на предварительно обученной модели, даже без ее предварительной точной настройки на новом наборе данных. Начнем с извлечения instance_type
, image_uri
качества model_uri
для предварительно обученной модели. Для размещения предварительно обученной модели мы создаем экземпляр sagemaker.model.Model и разверните его. В следующем коде в качестве конечной точки вывода используется ml.g5.24xlarge. Метод развертывания может занять несколько минут.
Запросите конечную точку и проанализируйте ответ
Далее мы покажем вам пример того, как вызвать конечную точку с подмножеством гиперпараметров:
Вот ответ, который мы получаем:
Здесь мы предоставили аргумент полезной нагрузки "stopping_criteria": ["<human>"]
, что привело к тому, что ответ модели закончился генерацией последовательности слов <human>
. Сценарий модели JumpStart будет принимать любой список строк в качестве желаемых стоп-слов, преобразовать этот список в действительный аргумент ключевого слова stop_criteria преобразователям генерировать API и останавливать генерацию текста, когда выходная последовательность содержит какие-либо указанные стоп-слова. Это полезно по двум причинам: во-первых, время вывода сокращается, поскольку конечная точка не продолжает генерировать нежелательный текст за пределами стоп-слов, а во-вторых, это предотвращает появление в модели OpenChatKit галлюцинаций дополнительных ответов человека и бота до тех пор, пока не будут выполнены другие критерии остановки. .
Используйте оболочку OpenChatKit для взаимодействия с развернутой конечной точкой.
OpenChatKit предоставляет оболочку командной строки для взаимодействия с чат-ботом. На этом шаге вы создаете версию этой оболочки, которая может взаимодействовать с вашей развернутой конечной точкой. В этом репозитории OpenChatKit мы предоставляем минимальное упрощение сценариев логического вывода, которые могут взаимодействовать с нашей развернутой конечной точкой SageMaker.
В этом есть два основных компонента:
- Интерпретатор оболочки (
JumpStartOpenChatKitShell
), что позволяет выполнять итеративные вызовы логического вывода конечной точки модели. - Объект разговора (
Conversation
), который сохраняет предыдущие взаимодействия человека и чат-бота локально в интерактивной оболочке и соответствующим образом форматирует прошлые разговоры для будущего контекста вывода.
Ассоциация Conversation
объект импортируется как есть из репозитория OpenChatKit. Следующий код создает собственный интерпретатор оболочки, который может взаимодействовать с вашей конечной точкой. Это упрощенная версия реализации OpenChatKit. Мы рекомендуем вам изучить репозиторий OpenChatKit, чтобы увидеть, как вы можете использовать в этом контексте более подробные функции, такие как потоковая передача токенов, модели модерации и расширенная генерация извлечения. Контекст этой записной книжки сосредоточен на демонстрации минимально жизнеспособного чат-бота с конечной точкой JumpStart; здесь вы можете добавить сложность по мере необходимости.
Небольшая демонстрация для демонстрации JumpStartOpenChatKitShell
показано в следующем видео.
Следующий фрагмент показывает, как работает код:
Теперь вы можете запустить эту оболочку как командный цикл. Это будет неоднократно выдавать приглашение, принимать ввод, анализировать вводную команду и отправлять действия. Поскольку результирующая оболочка может использоваться в бесконечном цикле, в этом ноутбуке предусмотрена очередь команд по умолчанию (cmdqueue
) в виде списка входных строк в очереди. Поскольку последним вводом является команда /quit
, оболочка завершит работу после исчерпания очереди. Чтобы динамически взаимодействовать с этим чат-ботом, удалите cmdqueue
.
Пример 1: контекст разговора сохраняется
Следующая подсказка показывает, что чат-бот может сохранять контекст разговора, чтобы отвечать на дополнительные вопросы:
Пример 2: Классификация настроений
В следующем примере чат-бот выполнил задачу классификации, определив тональность предложения. Как видите, чат-бот смог успешно классифицировать положительные и отрицательные настроения.
Пример 3: задачи суммирования
Затем мы попробовали суммировать задачи с оболочкой чат-бота. В следующем примере показано, как длинный текст о Amazon Comprehend был сведен к одному предложению, и чат-бот смог ответить на дополнительные вопросы по тексту:
Пример 4. Извлечение структурированной информации из неструктурированного текста
В следующем примере мы использовали чат-бот для создания таблицы уценки с заголовками, строками и столбцами для создания плана проекта с использованием информации, предоставленной в свободной форме:
Пример 5: Команды в качестве входных данных для чат-бота
Мы также можем предоставить ввод в виде команд, таких как /hyperparameters
чтобы увидеть значения гиперпараметров и /quit
чтобы выйти из командной оболочки:
Эти примеры продемонстрировали лишь некоторые из задач, в которых OpenChatKit превосходно справляется. Мы рекомендуем вам попробовать различные подсказки и посмотреть, что лучше всего подходит для вашего случая использования.
Убирать
После того, как вы протестировали конечную точку, убедитесь, что вы удалили конечную точку вывода SageMaker и модель, чтобы избежать взимания платы.
Заключение
В этом посте мы показали вам, как тестировать и использовать модель GPT-NeoXT-Chat-Base-20B с помощью SageMaker и создавать интересные приложения для чат-ботов. Попробуйте базовую модель в SageMaker сегодня и поделитесь с нами своим мнением!
Это руководство предназначено только для информационных целей. Вы по-прежнему должны проводить свою собственную независимую оценку и принимать меры для обеспечения соблюдения ваших собственных конкретных методов и стандартов контроля качества, а также местных правил, законов, положений, лицензий и условий использования, которые применяются к вам, вашему контенту и сторонняя модель, упомянутая в этом руководстве. AWS не имеет контроля или полномочий в отношении сторонней модели, упомянутой в этом руководстве, и не делает никаких заявлений и не гарантирует, что сторонняя модель безопасна, не содержит вирусов, работоспособна или совместима с вашей производственной средой и стандартами. AWS не делает никаких заявлений и не гарантирует, что любая информация, содержащаяся в этом руководстве, приведет к определенному результату или результату.
Об авторах
Рахна Чадха является главным архитектором решений AI/ML в области стратегических счетов в AWS. Рахна — оптимистка, считающая, что этичное и ответственное использование ИИ может улучшить общество в будущем и принести экономическое и социальное процветание. В свободное время Рахна любит проводить время со своей семьей, ходить в походы и слушать музыку.
Доктор Кайл Ульрих является ученым-прикладником с Встроенные алгоритмы Amazon SageMaker команда. Его исследовательские интересы включают масштабируемые алгоритмы машинного обучения, компьютерное зрение, временные ряды, байесовские непараметрические и гауссовские процессы. Его докторская степень получена в Университете Дьюка, и он опубликовал статьи в NeurIPS, Cell и Neuron.
Доктор Ашиш Хетан — старший научный сотрудник, работающий со встроенными алгоритмами Amazon SageMaker и помогающий разрабатывать алгоритмы машинного обучения. Он получил докторскую степень в Университете Иллинойса в Урбана-Шампейн. Он является активным исследователем в области машинного обучения и статистических выводов и опубликовал множество статей на конференциях NeurIPS, ICML, ICLR, JMLR, ACL и EMNLP.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- ПлатонАйСтрим. Анализ данных Web3. Расширение знаний. Доступ здесь.
- Чеканка будущего с Эдриенн Эшли. Доступ здесь.
- Покупайте и продавайте акции компаний PREIPO® с помощью PREIPO®. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/gpt-neoxt-chat-base-20b-foundation-model-for-chatbot-applications-is-now-available-on-amazon-sagemaker/
- :имеет
- :является
- :нет
- $UP
- 1
- 100
- 12
- 13
- 15%
- 20
- 23
- 30
- 40
- 50
- 500
- 7
- 9
- a
- в состоянии
- О нас
- Принять
- доступ
- По
- Учетные записи
- Достигать
- действия
- активный
- приспосабливать
- Добавить
- дополнение
- дополнительный
- Дополнительно
- продвинутый
- авансы
- AI
- AI / ML
- алгоритмы
- позволять
- позволяет
- Также
- альтернатива
- am
- Amazon
- Amazon Comprehend
- Создатель мудреца Амазонки
- Amazon Web Services
- количество
- an
- анализ
- анализировать
- и
- анонсировать
- ответ
- любой
- API
- API
- приложение
- Применение
- Приложения
- прикладной
- Применить
- надлежащим образом
- примерно
- МЫ
- аргумент
- Искусство
- AS
- оценки;
- уверил
- At
- дополненная
- власть
- доступен
- избежать
- AWS
- основанный
- байесовский
- BE
- , так как:
- до
- считает,
- ЛУЧШЕЕ
- Лучшая
- Beyond
- миллиарды
- Бот
- боты
- Коробка
- приносить
- строить
- встроенный
- by
- CAN
- возможности
- столица
- случаев
- случаев
- категории
- Категории
- характеристика
- расходы
- Chatbot
- ChatGPT
- Выберите
- Город
- класс
- классификация
- классифицировать
- код
- сотрудничало
- сотрудничество
- Колонки
- Общий
- сравнимый
- совместим
- полный
- сложность
- компоненты
- постигать
- компьютер
- Компьютерное зрение
- Обеспокоенность
- конференции
- Консоли
- Container
- содержит
- содержание
- контекст
- продолжать
- контроль
- Разговор
- диалоговый
- Беседы
- конвертировать
- Холодные
- Создайте
- создали
- создает
- Создающий
- Критерии
- Куратор
- изготовленный на заказ
- клиент
- Клиенты
- Постоянный ток
- данным
- наука о данных
- Наборы данных
- глубоко
- глубокое обучение
- По умолчанию
- Демо
- демонстрирующий
- в зависимости
- развертывание
- развернуть
- развертывание
- описание
- предназначенный
- желанный
- подробность
- Определять
- развивать
- развитый
- застройщиков
- Развитие
- развивается
- различный
- Интернет
- цифровое искусство
- Отправка
- do
- Docker
- Докер Контейнер
- документ
- Документация
- приносит
- не
- доминирующий
- Герцог
- Университет Дюка
- продолжительность
- динамично
- каждый
- легко
- Экономические
- элементы
- еще
- включить
- позволяет
- поощрять
- впритык
- Конечная точка
- обеспечивать
- Весь
- лиц
- организация
- Окружающая среда
- Эфир (ETH)
- этический
- оценки
- Даже
- исследовать
- пример
- Примеры
- возбужденный
- существующий
- Выход
- Расширьте
- дорогим
- Больше
- извлечение
- добыча
- Лицо
- семья
- далеко
- Избранное
- страх
- Особенность
- Особенности
- Обратная связь
- несколько
- Файлы
- Найдите
- First
- фокусируется
- фокусировка
- после
- следующим образом
- Что касается
- Год основания
- от
- далее
- будущее
- порождать
- порождающий
- поколение
- получить
- данный
- будет
- хорошо
- предоставление
- гарантии
- руководство
- Есть
- имеющий
- he
- Заголовки
- помощь
- помогает
- ее
- здесь
- пеший туризм
- его
- кашель
- состоялся
- Как
- How To
- HTML
- HTTPS
- хаб
- человек
- i
- ICLR
- ID
- идентифицирующий
- if
- Иллинойс
- изображение
- реализация
- улучшать
- улучшенный
- in
- углубленный
- включают
- включает в себя
- В том числе
- независимые
- информация
- Информационный
- начальный
- вход
- затраты
- размышления
- устанавливать
- пример
- инструкции
- предназначенных
- взаимодействовать
- взаимодействие
- интерактивный
- интересный
- интересы
- в
- изоляция
- вопрос
- IT
- ЕГО
- Java
- Джобс
- JPG
- всего
- Основные
- Вид
- Знать
- известный
- язык
- Языки
- большой
- Фамилия
- Задержка
- запуск
- запустили
- Законодательство
- изучение
- уход
- библиотеки
- Библиотека
- Лицензия
- лицензии
- такое как
- линия
- линий
- Список
- Listening
- локальным
- в местном масштабе
- Длинное
- серия
- машина
- обучение с помощью машины
- Главная
- поддерживать
- сделать
- способ
- многих
- Май..
- меры
- средний
- упоминает
- метод
- миллиона
- минимальный
- минимизировать
- минут
- ML
- модель
- Модели
- умеренность
- модифицировало
- БОЛЕЕ
- утро
- Музыка
- натуральный
- Естественный язык
- Обработка естественного языка
- Необходимость
- необходимый
- отрицательный
- сеть
- сетей
- НейриПС
- никогда
- Новые
- новые продукты
- Новости
- НЛП
- нет
- ноутбук
- ноутбуки
- сейчас
- объект
- of
- оливки
- on
- ONE
- только
- с открытым исходным кодом
- оперативный
- Оптимизировать
- Опции
- or
- Другие контрактные услуги
- наши
- внешний
- Результат
- изложенные
- выходной
- внешнюю
- за
- собственный
- бумага
- параметры
- особый
- Стороны
- мимо
- выполнять
- производительность
- фразы
- пицца
- план
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- Играть
- Популярное
- положительный
- После
- практиками
- Predictor
- предпочтения
- предпосылки
- предотвращает
- предыдущий
- Основной
- приоритет
- Процессы
- обработка
- Производство
- Продукция
- Проект
- процветание
- обеспечивать
- при условии
- поставщики
- приводит
- опубликованный
- целей
- Питон
- pytorch
- вопрос
- Вопросы
- быстро
- ассортимент
- скорее
- реального времени
- причины
- последний
- рецепт
- признание
- признавая
- Цена снижена
- Рефакторинг
- правила
- освободить
- удаление
- НЕОДНОКРАТНО
- хранилище
- обязательный
- исследованиям
- исследователь
- ответ
- ответы
- ответственный
- ОТДЫХ
- результат
- в результате
- сохранять
- возвращают
- обзоре
- Рост
- условиями,
- Run
- s
- sagemaker
- Вывод SageMaker
- сообщили
- масштабируемые
- Шкала
- сканирование
- Наука
- Ученый
- сфера
- скрипты
- SDK
- Поиск
- Во-вторых
- разделах
- безопасный
- безопасность
- посмотреть
- выбор
- SELF
- старший
- предложение
- настроение
- Последовательность
- Серии
- обслуживание
- Услуги
- выступающей
- Сессия
- набор
- Наборы
- установка
- несколько
- общие
- Оболочка
- Короткое
- должен
- показывать
- демонстрации
- продемонстрированы
- показал
- показанный
- Шоу
- аналогичный
- упрощенный
- ШЕСТЬ
- небольшой
- So
- Соцсети
- Социальная сеть
- Общество
- Решение
- Решения
- РЕШАТЬ
- некоторые
- Источник
- исходный код
- конкретный
- указанный
- скорость
- Расходы
- распространение
- стандартов
- Начало
- и политические лидеры
- статистический
- Шаг
- Шаги
- По-прежнему
- Stop
- магазины
- Стратегический
- потоковый
- Структура
- структурированный
- Успешно
- такие
- РЕЗЮМЕ
- Поддержанный
- Убедитесь
- ТАБЛИЦЫ
- взять
- Сложность задачи
- задачи
- команда
- снижения вреда
- сказать
- шаблоны
- tensorflow
- terms
- тестXNUMX
- Тестеры
- генерация текста
- чем
- который
- Ассоциация
- Столица
- Будущее
- информация
- Источник
- Их
- сами
- тогда
- Там.
- Эти
- В третьих
- третье лицо
- сторонние
- этой
- Через
- время
- Временные ряды
- в
- сегодня
- вместе
- знак
- Train
- специалистов
- Обучение
- трансформеры
- Переводы
- пыталась
- правда
- стараться
- два
- напишите
- типично
- ui
- под
- лежащий в основе
- понимание
- Университет
- до
- на
- URI
- us
- Применение
- использование
- прецедент
- используемый
- через
- использовать
- Наши ценности
- разнообразие
- различный
- версия
- с помощью
- жизнеспособный
- Видео
- видение
- хотеть
- теплый
- законопроект
- Вашингтон
- we
- Погода
- Web
- веб-сервисы
- Недели
- добро пожаловать
- ЧТО Ж
- Что
- Что такое
- когда
- будь то
- который
- КТО
- широкий
- Шире
- будете
- в
- без
- Word
- слова
- рабочий
- работает
- записывать
- являетесь
- ВАШЕ
- зефирнет