Эта запись в блоге написана в соавторстве с Хвальсуком Ли из Upstage.
Сегодня мы рады сообщить, что Солнечная базовая модель, разработанная Upstage, теперь доступна для клиентов, использующих Amazon SageMaker JumpStart. Solar — это модель большого языка (LLM), на 100% предварительно обученная с помощью Amazon SageMaker, которая превосходит по производительности и использует свой компактный размер и богатый опыт работы для специализации в целевом обучении, что делает ее универсальной для разных языков, областей и задач.
Теперь вы можете использовать предварительно обученные модели Solar Mini Chat и Solar Mini Chat – Quant в SageMaker JumpStart. SageMaker JumpStart — это центр машинного обучения (ML) SageMaker, который предоставляет доступ к базовым моделям в дополнение к встроенным алгоритмам, которые помогут вам быстро приступить к работе с ML.
В этом посте мы расскажем, как обнаружить и развернуть модель Solar с помощью SageMaker JumpStart.
Что такое модель Solar?
Solar — компактная и мощная модель для английского и корейского языков. Он специально настроен для многоразового чата и демонстрирует повышенную производительность при выполнении широкого спектра задач обработки естественного языка.
Модель Solar Mini Chat основана на Солнечная 10,7Бс 32 слоями Лама 2 структуру и инициализируется с предварительно обученными весами из Мистраль 7Б совместим с архитектурой Llama 2. Эта тонкая настройка дает ему возможность более эффективно обрабатывать расширенные разговоры, что делает его особенно подходящим для интерактивных приложений. Он использует метод масштабирования, называемый увеличение глубины (DUS), который состоит из глубинного масштабирования и непрерывного предварительного обучения. DUS позволяет гораздо более просто и эффективно увеличивать модели меньшего размера, чем другие методы масштабирования, такие как смесь экспертов (МО).
В декабре 2023 года модель Solar 10.7B произвела фурор, достигнув вершины Открыть таблицу лидеров LLM обнимающего лица. Используя значительно меньше параметров, Solar 10.7B обеспечивает отклик, сравнимый с GPT-3.5, но в 2,5 раза быстрее. Solar 10.7B не только возглавляет таблицу лидеров Open LLM, но и превосходит GPT-4 благодаря специально обученным моделям в определенных областях и задачах.
На следующем рисунке показаны некоторые из этих показателей:
С помощью SageMaker JumpStart вы можете развернуть предварительно обученные модели на базе Solar 10.7B: Solar Mini Chat и квантованную версию Solar Mini Chat, оптимизированную для приложений чата на английском и корейском языках. Модель Solar Mini Chat обеспечивает расширенное понимание нюансов корейского языка, что значительно повышает качество взаимодействия с пользователем в чате. Он обеспечивает точную реакцию на вводимые пользователем данные, обеспечивая более четкое общение и более эффективное решение проблем в чат-приложениях на английском и корейском языках.
Начало работы с моделями солнечных батарей в SageMaker JumpStart
Чтобы начать работу с моделями Solar, вы можете использовать SageMaker JumpStart, полностью управляемый сервис-концентратор машинного обучения для развертывания предварительно созданных моделей машинного обучения в готовой к работе размещенной среде. Вы можете получить доступ к моделям Solar через SageMaker JumpStart в Amazon SageMaker Studio, интегрированной веб-среде разработки (IDE), где вы можете получить доступ к специально созданным инструментам для выполнения всех этапов разработки ML: от подготовки данных до построения, обучения и развертывания вашего ML. модели.
На консоли SageMaker Studio выберите Толчок в панели навигации. Вы можете ввести «солнечная» в строке поиска, чтобы найти солнечные модели Upstage.
Давайте развернем модель Solar Mini Chat – Quant. Выберите карточку модели, чтобы просмотреть сведения о модели, такие как лицензия, данные, используемые для обучения, и способы использования модели. Вы также найдете Развертывать вариант, который приведет вас на целевую страницу, где вы сможете проверить вывод с помощью примера полезной нагрузки.
Для этой модели требуется подписка на AWS Marketplace. Если вы уже подписались на эту модель и получили разрешение на использование продукта, вы можете развернуть модель напрямую.
Если вы не подписались на эту модель, выберите Подписатьсяперейдите на AWS Marketplace, ознакомьтесь с условиями ценообразования и Лицензионным соглашением с конечным пользователем (EULA) и выберите Принять предложение.
После того как вы подписались на модель, вы можете развернуть ее на конечной точке SageMaker, выбрав ресурсы развертывания, такие как тип экземпляра и начальное количество экземпляров. Выбирать Развертывать и дождитесь создания конечной точки для вывода модели. Вы можете выбрать ml.g5.2xlarge
экземпляр как более дешевый вариант вывода с помощью солнечной модели.
После успешного создания конечной точки SageMaker вы можете протестировать ее в различных средах приложений SageMaker.
Запустите свой код для моделей Solar в SageMaker Studio JupyterLab.
SageMaker Studio поддерживает различные среды разработки приложений, включая JupyterLab — набор возможностей, дополняющих предложение полностью управляемых блокнотов. Он включает в себя ядра, которые запускаются за секунды, предварительно настроенную среду выполнения с популярными научными данными, платформы машинного обучения и высокопроизводительное частное блочное хранилище. Для получения дополнительной информации см. SageMaker JupyterLab.
Создайте пространство JupyterLab в SageMaker Studio, которое будет управлять хранилищем и вычислительными ресурсами, необходимыми для запуска приложения JupyterLab.
Вы можете найти код, показывающий развертывание моделей Solar в SageMaker JumpStart, а также пример использования развернутой модели в Репозиторий GitHub. Теперь вы можете развернуть модель с помощью SageMaker JumpStart. Следующий код использует экземпляр по умолчанию ml.g5.2xlarge для конечной точки вывода модели Solar Mini Chat — Quant.
Модели Solar поддерживают полезную нагрузку запроса/ответа, совместимую с конечной точкой завершения чата OpenAI. Вы можете протестировать примеры одноходового или многоходового чата с помощью Python.
# Get a SageMaker endpoint
sagemaker_runtime = boto3.client("sagemaker-runtime")
endpoint_name = sagemaker.utils.name_from_base(model_name)
# Multi-turn chat prompt example
input = {
"messages": (
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Can you provide a Python script to merge two sorted lists?"
},
{
"role": "assistant",
"content": """Sure, here is a Python script to merge two sorted lists:
```python
def merge_lists(list1, list2):
return sorted(list1 + list2)
```
"""
},
{
"role": "user",
"content": "Can you provide an example of how to use this function?"
}
)
}
# Get response from the model
response = sagemaker_runtime.invoke_endpoint(EndpointName=endpoint_name, ContentType="application/json", Body=json.dumps (input))
result = json.loads(response('Body').read().decode())
print result
Вы успешно выполнили вывод в реальном времени с помощью модели Solar Mini Chat.
Очистить
После тестирования конечной точки удалите конечную точку вывода SageMaker и модель, чтобы избежать дополнительных расходов.
Вы также можете запустить следующий код, чтобы удалить конечную точку и режим в записной книжке SageMaker Studio JupyterLab:
# Delete the endpoint
model.sagemaker_session.delete_endpoint(endpoint_name)
model.sagemaker_session.delete_endpoint_config(endpoint_name)
# Delete the model
model.delete_model()
Дополнительные сведения см. в разделе Удаление конечных точек и ресурсов. Кроме того, вы можете отключить ресурсы SageMaker Studio, которые больше не нужны.
Заключение
В этом посте мы показали вам, как начать работу с моделями Upstage Solar в SageMaker Studio и развернуть модель для вывода. Мы также показали вам, как запустить пример кода Python в SageMaker Studio JupyterLab.
Поскольку модели Solar уже предварительно обучены, они могут помочь снизить затраты на обучение и инфраструктуру, а также обеспечить настройку для ваших генеративных приложений искусственного интеллекта.
Попробуйте это на консоли SageMaker JumpStart или консоли SageMaker Studio! Вы также можете посмотреть следующее видео, Попробуйте «Солнечную энергию» с Amazon SageMaker.
Данное руководство предназначено только для информационных целей. Вам все равно следует провести собственную независимую оценку и принять меры для обеспечения соблюдения ваших собственных конкретных методов и стандартов контроля качества, а также местных правил, законов, положений, лицензий и условий использования, которые применимы к вам, вашему контенту, и сторонняя модель, упомянутая в этом руководстве. AWS не контролирует и не имеет полномочий в отношении сторонней модели, упомянутой в этом руководстве, а также не делает никаких заявлений и не дает гарантий, что сторонняя модель является безопасной, свободной от вирусов, работоспособной или совместимой с вашей производственной средой и стандартами. AWS не делает никаких заявлений и не дает никаких гарантий в отношении того, что любая информация, содержащаяся в этом руководстве, приведет к определенному результату или результату.
Об авторах
Чэнни Юн является главным консультантом разработчиков в AWS и с радостью помогает разработчикам создавать современные приложения с использованием новейших сервисов AWS. В душе он прагматичный разработчик и блоггер, любит обучение и обмен технологиями, основанные на инициативе сообщества.
Хвальсук Ли является главным техническим директором (CTO) в Upstage. Он работал исследователем искусственного интеллекта в компаниях Samsung Techwin, NCSOFT и Naver. Он защищает докторскую диссертацию в области компьютерной и электротехники в Корейском институте передовых наук и технологий (KAIST).
Брэндон Ли является старшим архитектором решений в AWS и в основном помогает крупным заказчикам образовательных технологий в государственном секторе. Он имеет более чем 20-летний опыт руководства разработкой приложений в глобальных компаниях и крупных корпорациях.