Запуск ChatGPT и рост популярности генеративного искусственного интеллекта захватили воображение клиентов, которым интересно, как они могут использовать эту технологию для создания новых продуктов и услуг на AWS, таких как корпоративные чат-боты, которые более интерактивны. В этом посте показано, как создать веб-интерфейс, который мы называем Chat Studio, чтобы начать разговор и взаимодействовать с базовыми моделями, доступными в Amazon SageMaker JumpStart такие как Llama 2, Stable Diffusion и другие модели, доступные на Создатель мудреца Амазонки. После развертывания этого решения пользователи смогут быстро приступить к работе и оценить возможности нескольких базовых моделей диалогового ИИ через веб-интерфейс.
Chat Studio также может дополнительно вызвать конечную точку модели Stable Diffusion, чтобы вернуть коллаж из соответствующих изображений и видео, если пользователь запрашивает отображение мультимедиа. Эта функция может помочь улучшить взаимодействие с пользователем за счет использования мультимедиа в качестве сопутствующего ресурса к ответу. Это всего лишь один пример того, как вы можете обогатить Chat Studio дополнительными интеграциями для достижения своих целей.
На следующих снимках экрана показаны примеры того, как выглядят пользовательский запрос и ответ.
Большие языковые модели
Чат-боты с генеративным искусственным интеллектом, такие как ChatGPT, основаны на больших языковых моделях (LLM), которые основаны на нейронной сети глубокого обучения, которую можно обучать на больших объемах неразмеченного текста. Использование LLM позволяет улучшить общение, которое очень похоже на взаимодействие с реальными людьми, способствует развитию чувства связи и повышению удовлетворенности пользователей.
Базовые модели SageMaker
В 2021 году Стэнфордский институт человеко-ориентированного искусственного интеллекта назвал некоторые программы LLM модели фундамента. Базовые модели предварительно обучаются на большом и широком наборе общих данных и призваны служить основой для дальнейшей оптимизации в широком диапазоне вариантов использования, от создания цифрового искусства до классификации многоязычного текста. Эти базовые модели пользуются популярностью у клиентов, поскольку обучение новой модели с нуля требует времени и может быть дорогостоящим. SageMaker JumpStart предоставляет доступ к сотням базовых моделей, поддерживаемых сторонними поставщиками с открытым исходным кодом и проприетарными поставщиками.
Обзор решения
В этом посте рассматривается рабочий процесс с низким кодом для развертывания предварительно обученных и пользовательских LLM с помощью SageMaker и создания веб-интерфейса для взаимодействия с развернутыми моделями. Мы рассмотрим следующие шаги:
- Развертывание базовых моделей SageMaker.
- Развертывание AWS Lambda и Управление идентификацией и доступом AWS (IAM) разрешения с использованием AWS CloudFormation.
- Настройте и запустите пользовательский интерфейс.
- При необходимости добавьте другие модели фундамента SageMaker. Этот шаг расширяет возможности Chat Studio по взаимодействию с дополнительными базовыми моделями.
- При необходимости разверните приложение, используя АМС Усиление. На этом этапе Chat Studio развертывается в Интернете.
На следующей диаграмме представлен обзор архитектуры решения.
Предпосылки
Чтобы пройти через решение, у вас должны быть следующие предварительные условия:
- An Аккаунт AWS с достаточными правами пользователя IAM.
npm
установлен в вашей локальной среде. Для получения инструкций по установкеnpm
, Ссылаться на Загрузка и установка Node.js и npm.- Квота службы 1 для соответствующих конечных точек SageMaker. Для чата Llama 2 13b мы используем экземпляр ml.g5.48xlarge, а для Stable Diffusion 2.1 — экземпляр ml.p3.2xlarge.
Чтобы запросить увеличение квоты на обслуживание, на Консоль квот сервисов AWS, перейдите в Сервисы AWS, SageMakerи запросите повышение квоты службы до значения 1 для ml.g5.48xlarge для использования конечной точки и ml.p3.2xlarge для использования конечной точки.
Утверждение запроса на квоту службы может занять несколько часов, в зависимости от доступности типа экземпляра.
Развертывание базовых моделей SageMaker
SageMaker — это полностью управляемый сервис машинного обучения (ML), позволяющий разработчикам быстро создавать и обучать модели машинного обучения. Выполните следующие шаги, чтобы развернуть базовые модели Llama 2 13b Chat и Stable Diffusion 2.1, используя Студия Amazon SageMaker:
- Создайте домен SageMaker. Инструкции см. Подключение к домену Amazon SageMaker с помощью быстрой настройки.
Домен настраивает все хранилище и позволяет добавлять пользователей для доступа к SageMaker.
- На консоли SageMaker выберите Студия в области навигации, затем выберите Открытая студия.
- После запуска Studio в разделе SageMaker JumpStart на панели навигации выберите Модели, ноутбуки, решения.
- В строке поиска найдите Llama 2 13b Chat.
- Под Конфигурация развертывания, Для Хостинг-экземпляр SageMaker, выберите мл.g5.48xбольшой и для Имя конечной точки, войти
meta-textgeneration-llama-2-13b-f
. - Выберите Развертывание.
После успешного развертывания вы сможете увидеть In Service
Статус.
- На Модели, ноутбуки, решения страница, найдите Стабильную диффузию 2.1.
- Под Конфигурация развертывания, Для Хостинг-экземпляр SageMaker, выберите мл.p3.2xбольшой и для Имя конечной точки, войти
jumpstart-dft-stable-diffusion-v2-1-base
. - Выберите Развертывание.
После успешного развертывания вы сможете увидеть In Service
Статус.
Развертывание разрешений Lambda и IAM с помощью AWS CloudFormation
В этом разделе описывается, как запустить стек CloudFormation, который развертывает функцию Lambda, которая обрабатывает ваш пользовательский запрос и вызывает развернутую вами конечную точку SageMaker, а также развертывает все необходимые разрешения IAM. Выполните следующие шаги:
- Перейдите в Репозиторий GitHub и скачайте шаблон CloudFormation (
lambda.cfn.yaml
) на ваш локальный компьютер. - В консоли CloudFormation выберите Создать стек выпадающее меню и выберите С новыми ресурсами (стандарт).
- На Укажите шаблон страницы, выберите Загрузить файл шаблона и Выберите файл.
- Выберите
lambda.cfn.yaml
файл, который вы скачали, затем выберите Следующая. - На Укажите детали стека странице, введите имя стека и ключ API, полученный при выполнении предварительных требований, затем выберите Следующая.
- На Настроить параметры стека выберите страницу Следующая.
- Просмотрите и подтвердите изменения и выберите Отправить.
Настройка веб-интерфейса
В этом разделе описаны шаги по запуску веб-интерфейса (созданного с помощью Система дизайна Cloudscape) на вашем локальном компьютере:
- В консоли IAM перейдите к пользователю
functionUrl
. - На Учетные данные безопасности , выберите Создать ключ доступа.
- На Получите доступ к ключевым передовым практикам и альтернативам страницы, выберите Интерфейс командной строки (CLI) , а затем выбрать Следующая.
- На Установить тег описания выберите страницу Создать ключ доступа.
- Скопируйте ключ доступа и секретный ключ доступа.
- Выберите Готово.
- Перейдите в Репозиторий GitHub и скачать
react-llm-chat-studio
код. - Запустите папку в предпочитаемой вами IDE и откройте терминал.
- Перейдите в
src/configs/aws.json
и введите полученный ключ доступа и секретный ключ доступа. - Введите в терминал следующие команды:
- Откройте http://localhost:3000 в своем браузере и начните взаимодействовать со своими моделями!
Чтобы использовать Chat Studio, выберите базовую модель в раскрывающемся меню и введите запрос в текстовое поле. Чтобы получить вместе с ответом изображения, сгенерированные ИИ, добавьте в конец запроса фразу «с изображениями».
Добавьте другие модели тональной основы SageMaker
Вы можете расширить возможности этого решения, включив в него дополнительные модели фундаментов SageMaker. Поскольку каждая модель ожидает разные форматы ввода и вывода при вызове конечной точки SageMaker, вам потребуется написать некоторый код преобразования в функции callSageMakerEndpoints Lambda для взаимодействия с моделью.
В этом разделе описаны общие шаги и изменения кода, необходимые для реализации дополнительной модели по вашему выбору. Обратите внимание, что для шагов 6–8 требуются базовые знания языка Python.
- В SageMaker Studio разверните выбранную вами базовую модель SageMaker.
- Выберите SageMaker JumpStart и Запуск ресурсов JumpStart.
- Выберите конечную точку недавно развернутой модели и выберите Открыть блокнот.
- В консоли ноутбука найдите параметры полезной нагрузки.
Это поля, которые новая модель ожидает при вызове конечной точки SageMaker. На следующем снимке экрана показан пример.
- В консоли Lambda перейдите к
callSageMakerEndpoints
. - Добавьте собственный обработчик ввода для вашей новой модели.
На следующем снимке экрана мы преобразовали входные данные для Falcon 40B Instruct BF16 и GPT NeoXT Chat Base 20B FP16. Вы можете вставить свою логику настраиваемых параметров, как указано, чтобы добавить логику входного преобразования со ссылкой на скопированные вами параметры полезной нагрузки.
- Вернитесь к консоли ноутбука и найдите
query_endpoint
.
Эта функция дает вам представление о том, как преобразовать выходные данные моделей для извлечения окончательного текстового ответа.
- Ссылаясь на код в
query_endpoint
, добавьте собственный обработчик вывода для вашей новой модели. - Выберите Развертывание.
- Откройте свою IDE, запустите
react-llm-chat-studio
код и перейдите кsrc/configs/models.json
. - Добавьте название модели и конечную точку модели, а также введите параметры полезной нагрузки из шага 4 в разделе
payload
используя следующий формат: - Обновите браузер, чтобы начать взаимодействовать с вашей новой моделью!
Разверните приложение с помощью Amplify
Amplify — это комплексное решение, позволяющее быстро и эффективно развернуть ваше приложение. В этом разделе описаны шаги по развертыванию Chat Studio на Amazon CloudFront распространение с помощью Amplify, если вы хотите поделиться своим приложением с другими пользователями.
- Перейдите в
react-llm-chat-studio
папку кода, которую вы создали ранее. - Введите в терминал следующие команды и следуйте инструкциям по настройке:
- Инициализируйте новый проект Amplify, используя следующую команду. Укажите имя проекта, примите конфигурации по умолчанию и выберите Ключи доступа к АВС когда будет предложено выбрать метод аутентификации.
- Разместите проект Amplify, используя следующую команду. Выбирать Amazon CloudFront и S3 когда будет предложено выбрать режим плагина.
- Наконец, соберите и разверните проект с помощью следующей команды:
- После успешного развертывания откройте URL-адрес, указанный в вашем браузере, и начните взаимодействовать со своими моделями!
Убирать
Чтобы избежать дополнительных расходов в будущем, выполните следующие действия:
- Удалите стек CloudFormation. Инструкции см. Удаление стека в консоли AWS CloudFormation.
- Удалите конечную точку SageMaker JumpStart. Инструкции см. Удалить конечные точки и ресурсы.
- Удалите домен SageMaker. Инструкции см. Удалить домен Amazon SageMaker.
Заключение
В этом посте мы объяснили, как создать веб-интерфейс для взаимодействия с LLM, развернутыми на AWS.
С помощью этого решения вы можете взаимодействовать со своим LLM и вести беседу в удобной для пользователя форме, чтобы протестировать или задать вопросы LLM, а также получить коллаж из изображений и видео, если потребуется.
Вы можете расширить это решение различными способами, например интегрировать дополнительные модели фундамента, интеграция с Amazon Kendra чтобы включить интеллектуальный поиск на основе машинного обучения для понимания корпоративного контента и многое другое!
Приглашаем вас поэкспериментировать на AWS доступны различные предварительно обученные LLMили создайте свои собственные LLM в SageMaker. Дайте нам знать ваши вопросы и выводы в комментариях и получайте удовольствие!
Об авторах
Джарретт Йео Шан Вэй является младшим облачным архитектором в сфере профессиональных услуг AWS, охватывающей государственный сектор в странах АСЕАН, и выступает за помощь клиентам в модернизации и переходе в облако. Он получил пять сертификатов AWS, а также опубликовал исследовательскую работу по ансамблям машин для повышения градиента на 8-й Международной конференции по искусственному интеллекту. В свободное время Джарретт занимается и вносит свой вклад в сферу генеративного искусственного интеллекта в AWS.
Тэмми Лим Ли Синь — младший облачный архитектор в AWS. Она использует технологии, чтобы помочь клиентам достичь желаемых результатов на пути внедрения облака, и увлечена искусственным интеллектом и машинным обучением. Вне работы она любит путешествовать, ходить в походы и проводить время с семьей и друзьями.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- PlatoData.Network Вертикальный генеративный ИИ. Расширьте возможности себя. Доступ здесь.
- ПлатонАйСтрим. Интеллект Web3. Расширение знаний. Доступ здесь.
- ПлатонЭСГ. Углерод, чистые технологии, Энергия, Окружающая среда, Солнечная, Управление отходами. Доступ здесь.
- ПлатонЗдоровье. Биотехнологии и клинические исследования. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/create-a-web-ui-to-interact-with-llms-using-amazon-sagemaker-jumpstart/
- :имеет
- :является
- $UP
- 1
- 10
- 120
- 160
- 2021
- 3000
- 320
- 7
- 8
- 8
- a
- в состоянии
- О нас
- Принять
- доступ
- признавать
- через
- Добавить
- дополнительный
- Принятие
- адвокат
- После
- AI
- AI / ML
- Все
- позволяет
- вдоль
- причислены
- Amazon
- Создатель мудреца Амазонки
- Amazon SageMaker JumpStart
- Amazon Web Services
- усиливать
- an
- и
- API
- Применение
- утвержденный
- архитектура
- МЫ
- Искусство
- искусственный
- искусственный интеллект
- AS
- Asean
- спросить
- Активы
- Юрист
- At
- достигается
- Аутентификация
- свободных мест
- доступен
- избежать
- AWS
- AWS CloudFormation
- Профессиональные услуги AWS
- бар
- Использование темпера с изогнутым основанием
- основанный
- основной
- BE
- , так как:
- ЛУЧШЕЕ
- лучшие практики
- Лучшая
- стимулирование
- Коробка
- широкий
- браузер
- строить
- by
- призывают
- Объявления
- CAN
- Может получить
- возможности
- возможности
- захваченный
- случаев
- сертификаты
- изменения
- расходы
- chatbots
- ChatGPT
- выбор
- Выберите
- классификация
- тесно
- облако
- принятие облака
- код
- Комментарии
- полный
- Конференция
- Конфигурация
- связи
- Консоли
- содержание
- способствует
- Разговор
- диалоговый
- разговорный ИИ
- соответствующий
- чехол для варгана
- покрытие
- Создайте
- создали
- Создающий
- любопытный
- изготовленный на заказ
- Клиенты
- данным
- глубоко
- глубокое обучение
- По умолчанию
- доставить
- в зависимости
- развертывание
- развернуть
- развертывание
- развертывание
- развертывает
- описание
- Проект
- желанный
- подробнее
- застройщиков
- различный
- Вещание
- Интернет
- цифровое искусство
- отображается
- распределение
- домен
- скачать
- Ранее
- простота
- эффективно
- включить
- конец
- Конечная точка
- повышать
- обогащать
- Enter
- Предприятие
- Окружающая среда
- Даже
- Каждая
- пример
- Примеры
- надеется
- дорогим
- опыт
- эксперимент
- объяснены
- продлить
- продолжается
- извлечение
- семья
- Особенность
- несколько
- Поля
- Файл
- окончательный
- Найдите
- результаты
- 5
- фокусируется
- следовать
- после
- Что касается
- формат
- содействие
- Год основания
- основополагающий
- Бесплатно
- друзья
- от
- полностью
- функция
- далее
- будущее
- Общие
- Общие данные
- порождающий
- генеративный
- Генеративный ИИ
- получить
- дает
- Цели
- Есть
- he
- помощь
- помощь
- его
- держать
- хостинг
- ЧАСЫ
- Как
- How To
- HTML
- HTTP
- HTTPS
- Людей
- Сотни
- идея
- Личность
- if
- изображений
- воображение
- осуществлять
- улучшенный
- in
- включают
- Увеличение
- указанный
- вход
- устанавливать
- установлен
- Установка
- пример
- Институт
- инструкции
- интегрировать
- интеграций
- Интеллекта
- Умный
- взаимодействовать
- взаимодействующий
- взаимодействие
- Интерфейс
- Мультиязычность
- в
- приглашать
- ЕГО
- путешествие
- JPG
- всего
- только один
- Основные
- Знать
- знания
- язык
- большой
- запуск
- запуск
- изучение
- подветренный
- позволять
- такое как
- линия
- Лама
- LLM
- локальным
- логика
- посмотреть
- выглядит как
- любит
- машина
- обучение с помощью машины
- управляемого
- способ
- Май..
- означает,
- Медиа
- Встречайте
- Меню
- метод
- мигрировать
- ML
- режим
- модель
- Модели
- модернизировать
- БОЛЕЕ
- с разными
- должен
- имя
- Откройте
- Навигация
- необходимо
- Необходимость
- сеть
- нервный
- нейронной сети
- Новые
- новые продукты
- вновь
- узел
- Node.js
- в своих размышлениях
- ноутбук
- полученный
- of
- on
- ONE
- открытый
- с открытым исходным кодом
- Опции
- or
- Другое
- Результаты
- выходной
- внешнюю
- обзор
- собственный
- страница
- хлеб
- бумага & картон
- параметр
- параметры
- страстный
- Разрешения
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- плагин
- Популярное
- популярность
- После
- Питание
- практиками
- привилегированный
- предпосылки
- привилегии
- Процессы
- Продукция
- профессиональный
- Проект
- ( изучите наши патенты),
- обеспечивать
- при условии
- поставщики
- приводит
- что такое варган?
- опубликованный
- Питон
- Вопросы
- САЙТ
- быстро
- повышение
- ассортимент
- реальные
- относиться
- ссылка
- соответствующие
- запросить
- Запросы
- обязательный
- исследованиям
- походит
- Полезные ресурсы
- ответ
- возвращают
- Рост
- Run
- sagemaker
- удовлетворение
- сцена
- поцарапать
- скриншоты
- Поиск
- Secret
- Раздел
- сектор
- посмотреть
- выберите
- смысл
- служить
- обслуживание
- Услуги
- набор
- Наборы
- установка
- Поделиться
- она
- должен
- показывать
- Шоу
- отрывок
- Решение
- некоторые
- Источник
- Расходы
- стабильный
- стек
- стандарт
- Стэнфорд
- Начало
- и политические лидеры
- Статус:
- Шаг
- Шаги
- диск
- студия
- такие
- достаточный
- взять
- принимает
- Технологии
- шаблон
- Терминал
- тестXNUMX
- текст
- Классификация текста
- который
- Ассоциация
- их
- тогда
- Эти
- они
- сторонние
- этой
- хоть?
- Через
- время
- в
- топ
- Train
- специалистов
- Обучение
- Transform
- трансформация
- преобразован
- напишите
- ui
- под
- понимание
- URL
- us
- Применение
- использование
- Информация о пользователе
- Пользовательский опыт
- Пользовательский интерфейс
- удобно
- пользователей
- использования
- через
- ценностное
- различный
- Видео
- от
- прогулки
- способы
- we
- Web
- веб-сервисы
- Что
- когда
- который
- КТО
- широкий
- Широкий диапазон
- будете
- желание
- Работа
- рабочий
- записывать
- Ео
- Ты
- ВАШЕ
- зефирнет