Home Машинное обучение Модели фундамента Llama 2 от Meta теперь доступны в Amazon SageMaker JumpStart | DeepTech

Модели фундамента Llama 2 от Meta теперь доступны в Amazon SageMaker JumpStart | DeepTech

0
Модели фундамента Llama 2 от Meta теперь доступны в Amazon SageMaker JumpStart
 | DeepTech

Сегодня мы рады сообщить, что базовые модели Llama 2, разработанные Meta, доступны для клиентов через Amazon SageMaker JumpStart. Семейство больших языковых моделей (LLM) Llama 2 представляет собой набор предварительно обученных и точно настроенных генеративных текстовых моделей с масштабом от 7 до 70 миллиардов параметров. Тонко настроенные LLM, называемые Llama-2-chat, оптимизированы для использования в диалогах. Вы можете легко опробовать эти модели и использовать их с помощью SageMaker JumpStart — центра машинного обучения (ML), предоставляющего доступ к алгоритмам, моделям и решениям ML, чтобы вы могли быстро приступить к работе с ML.

В этом посте мы расскажем, как использовать модели Llama 2 через SageMaker JumpStart.

Что такое Лама 2

Llama 2 — это авторегрессивная языковая модель, использующая оптимизированную архитектуру преобразователя. Llama 2 предназначена для коммерческого и исследовательского использования на английском языке. Он поставляется с различными размерами параметров — 7 миллиардов, 13 миллиардов и 70 миллиардов — а также с предварительно обученными и точно настроенными вариантами. По словам Меты, в настроенных версиях используется контролируемая точная настройка (SFT) и обучение с подкреплением с обратной связью с человеком (RLHF), чтобы соответствовать предпочтениям человека в отношении полезности и безопасности. Llama 2 был предварительно обучен на 2 триллионах токенов данных из общедоступных источников. Настроенные модели предназначены для чата, похожего на помощника, тогда как предварительно обученные модели могут быть адаптированы для различных задач генерации естественного языка. Независимо от того, какую версию модели использует разработчик, руководство по ответственному использованию от Meta может помочь в проведении дополнительной тонкой настройки, которая может потребоваться для настройки и оптимизации моделей с соответствующими мерами по снижению безопасности.

Что такое SageMaker JumpStart

С помощью SageMaker JumpStart специалисты по машинному обучению могут выбирать из широкого набора базовых моделей с открытым исходным кодом. Специалисты по машинному обучению могут развертывать базовые модели на выделенных инстансах Amazon SageMaker из изолированной от сети среды и настраивать модели с помощью SageMaker для обучения и развертывания моделей.

Теперь вы можете обнаружить и развернуть Llama 2 несколькими щелчками мыши в Amazon SageMaker Studio или программно с помощью SageMaker Python SDK, что позволит вам получить производительность модели и элементы управления MLOps с помощью таких функций SageMaker, как Amazon SageMaker Pipelines, Amazon SageMaker Debugger или журналы контейнеров. Модель развернута в безопасной среде AWS и находится под контролем вашего VPC, что помогает обеспечить безопасность данных. Модели Llama 2 доступны сегодня в Amazon SageMaker Studio, первоначально в us-east 1 и us-west 2 регионы.

Откройте для себя модели

Вы можете получить доступ к базовым моделям через SageMaker JumpStart в пользовательском интерфейсе SageMaker Studio и SageMaker Python SDK. В этом разделе мы рассмотрим, как обнаруживать модели в SageMaker Studio.

SageMaker Studio — это интегрированная среда разработки (IDE), которая предоставляет единый визуальный веб-интерфейс, где вы можете получить доступ к специально созданным инструментам для выполнения всех этапов разработки машинного обучения, от подготовки данных до создания, обучения и развертывания моделей машинного обучения. Дополнительные сведения о том, как приступить к работе и настроить SageMaker Studio, см. в Amazon SageMaker Studio.

Перейдя в SageMaker Studio, вы можете получить доступ к SageMaker JumpStart, который содержит предварительно обученные модели, записные книжки и готовые решения, в разделе Готовые и автоматизированные решения.

На целевой странице SageMaker JumpStart вы можете просматривать решения, модели, блокноты и другие ресурсы. Вы можете найти две флагманские модели Llama 2 в Модели фундамента: Генерация текста карусель. Если вы не видите модели Llama 2, обновите версию SageMaker Studio, выключив и перезапустив программу. Дополнительные сведения об обновлениях версий см. в разделе Завершение работы и обновление приложений Studio.

Вы также можете найти другие четыре варианта модели, выбрав Исследуйте все модели генерации текста или поиск llama в поле поиска.

Вы можете выбрать карточку модели, чтобы просмотреть сведения о модели, такие как лицензия, данные, используемые для обучения, и способы использования. Вы также можете найти две кнопки, Развертывать и Открыть блокноткоторые помогут вам использовать модель.

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

После подтверждения вы перейдете к следующему шагу использования модели.

Развернуть модель

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

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

from sagemaker.jumpstart.model import JumpStartModel
my_model = JumpStartModel(model_id = "meta-textgeneration-llama-2-70b-f")
predictor = my_model.deploy()

При этом модель развертывается в SageMaker с конфигурациями по умолчанию, включая тип экземпляра по умолчанию и конфигурации VPC по умолчанию. Вы можете изменить эти конфигурации, указав значения не по умолчанию в JumpStartModel. После развертывания вы можете выполнить вывод по развернутой конечной точке с помощью предиктора SageMaker:

payload = {
    “inputs”:  
      (
        (
         {"role": "system", "content": "Always answer with Haiku"},
         {"role": "user", "content": "I am going to Paris, what should I see?"},
        )   
      ),
   "parameters":{"max_new_tokens":256, "top_p":0.9, "temperature":0.6}
}

Точно настроенные модели чата (Llama-2-7b-chat, Llama-2-13b-chat, Llama-2-70b-chat) принимают историю чата между пользователем и помощником чата и генерируют последующий чат. Предварительно обученные модели (Llama-2-7b, Llama-2-13b, Llama-2-70b) требуют строкового приглашения и выполняют завершение текста в предоставленном приглашении. См. следующий код:

predictor.predict(payload, custom_attributes="accept_eula=true")

Обратите внимание, что по умолчанию accept_eula установлено значение «ложь». Вам нужно установить accept_eula=true для успешного вызова конечной точки. Тем самым вы принимаете пользовательское лицензионное соглашение и политику допустимого использования, как упоминалось ранее. Вы также можете скачать лицензионное соглашение.

Custom_attributes используемые для передачи EULA, являются парами ключ/значение. Ключ и значение разделены = и пары разделены ;. Если пользователь передает один и тот же ключ более одного раза, последнее значение сохраняется и передается обработчику сценария (т. е. в данном случае используется для условной логики). Например, если accept_eula=false; accept_eula=true передается на сервер, затем accept_eula=true сохраняется и передается обработчику скрипта.

Параметры вывода управляют процессом генерации текста в конечной точке. Максимальный контроль новых токенов относится к размеру вывода, генерируемого моделью. Обратите внимание, что это не то же самое, что количество слов, потому что словарь модели не совпадает со словарем английского языка, и каждая лексема может не быть словом английского языка. Температура контролирует случайность на выходе. Более высокая температура приводит к более творческим и галлюцинациям. Все параметры вывода являются необязательными.

В следующей таблице перечислены все модели лам, доступные в SageMaker JumpStart, а также model_idsтипы экземпляров по умолчанию и максимальное общее количество токенов (сумма количества входных токенов и количества сгенерированных токенов), поддерживаемое для каждой из этих моделей.

Название модели Идентификатор модели Максимальное количество токенов Тип экземпляра по умолчанию
Лама-2-7б метатекстгенерация-лама-2-7b 4096 мл.g5.2xбольшой
Лама-2-7б-чат метатекстгенерация-лама-2-7b-f 4096 мл.g5.2xбольшой
Лама-2-13б метатекстгенерация-лама-2-13b 4096 мл.g5.12xбольшой
Лама-2-13б-чат метатекстгенерация-лама-2-13b-f 4096 мл.g5.12xбольшой
Лама-2-70б метатекстгенерация-лама-2-70b 4096 мл.г5.48xбольшой
Лама-2-70б-чат метатекстгенерация-лама-2-70b-f 4096 мл.г5.48xбольшой

Обратите внимание, что конечные точки SageMaker имеют лимит времени ожидания 60 с. Таким образом, даже несмотря на то, что модель может сгенерировать 4096 токенов, если генерация текста занимает более 60 секунд, запрос завершится ошибкой. Для моделей 7B, 13B и 70B рекомендуется установить max_new_tokens не более 1500, 1000 и 500 соответственно, при сохранении общего количества токенов менее 4К.

Подсказки к выводам и примерам для Llama-2-70b

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

payload = {
    “inputs”: str,
   (optional)"parameters":{"max_new_tokens":int, "top_p":float, "temperature":float}
}

Ниже приведены некоторые примеры подсказок и текст, сгенерированный моделью. Все выходные данные генерируются с параметрами вывода {"max_new_tokens":256, "top_p":0.9, "temperature":0.6}.

Input: Simply put, the theory of relativity states that  

 Output: 
1) the laws of physics are the same for all observers in uniform motion relative to one another, and 2) the speed of light is the same for all observers, regardless of their relative motion or of the motion of the source of the light.
In the late 1800s, scientists believed that light travelled through a medium they called the luminiferous ether. But in 1887, Albert Michelson and Edward Morley designed an experiment to measure the speed of light in the ether, and found that the speed of light was the same no matter how they oriented their equipment. This result seemed to contradict the idea of the ether, and Michelson and Morley’s experiment became one of the most famous failed experiments in history.
In 1905, Albert Einstein published a paper that used the results of the Michelson-Morley experiment to develop the theory of special relativity. In 1915, Einstein published a paper on general relativity, which is a theory of gravitation.
In physics, the speed of light is considered to be a constant, and its value is 299,792,458 metres

Input: I believe the meaning of life is 

 Output: 
to be happy, to find joy in life, to love and be loved. To have the courage to be yourself and to be kind to others. To be able to express yourself, to create and to be inspired. To be able to give and receive. To be able to learn and grow. To be able to find beauty in the world and to be able to appreciate it. To be able to find peace and contentment. To be able to find meaning and purpose. To be able to make a difference in the world. To be able to find joy in the simple things. To be able to find joy in the difficult things. To be able to find joy in the journey. To be able to find joy in the destination. To be able to find joy in the present moment. To be able to find joy in the future. To be able to find joy in the past. To be able to find joy in the present. To be able to find joy in the future. To be able to find joy in the past. To be able to find joy in the present. To be able to find joy in the future. To be able to find joy in the past. To be able to find joy in the present. To be able to find joy

Input: A brief message congratulating the team on the launch:

        Hi everyone,
        
        I just  

 Output: 
wanted to send a quick note to congratulate everyone on the launch of our new website. I know it’s been a long time coming and I’m sure we’re all relieved that it’s finally out there.
        
        Thanks to everyone for their hard work and dedication over the last few months. I know it wasn’t always easy, but I think we can all be proud of the final product.
        
        I’m looking forward to seeing how our users respond to the new site and I’m confident that it will be a success.
        
        Thanks again, and enjoy the rest of your day!
        
        Best,
        
        (Your Name)
        
        (Your Title)
        
        (Your Company)
        
        (Your Email)
        
        (Your Phone Number)
        
        (Your Website)
        
        (Your Social Media Handles)
        
        (Your Address)
        
        (Your City, State, Zip Code)
        
        (Your Country)
        
        (Your Postal Code)
        
        (Your Website)
        
        (

В следующем примере мы покажем, как использовать модели Llama с контекстным обучением с несколькими выстрелами, где мы предоставляем обучающие образцы, доступные для модели. Обратите внимание, что мы делаем вывод только о развернутой модели, и во время этого процесса веса модели не меняются.

Input: Translate English to French:
        
        sea otter => loutre de mer
        peppermint => menthe poivrée
        plush girafe => girafe peluche
        cheese => 

 Output: 
fromage
        chocolate => chocolat
        car => voiture
        hamster => hamster
        beer => bière
        bicycle => bicyclette
        banana => banane
        strawberry => fraise
        pizza => pizza
        cheeseburger => cheeseburger
        pineapple => ananas
        carrot => carotte
        watermelon => pastèque
        whale => baleine
        eggplant => aubergine
        cat => chat
        penguin => manchot
        lion => lion
        elephant => éléphant
        panda => panda
        tiger => tigre
        salmon => saumon
        squirrel => écureuil
        kangaroo => kangourou
        turtle => tortue
        octopus => poulpe
        frog => grenouille
        pig => cochon
        goldfish => poisson rouge
        tiger shark => requin tigre
        gorilla => gorille
        dol

Подсказки к выводам и примерам для Llama-2-70b-chat

В моделях Llama-2-Chat, которые оптимизированы для вариантов использования диалога, входными данными для конечных точек модели чата является предыдущая история между помощником чата и пользователем. Вы можете задавать вопросы в контексте разговора, который произошел до сих пор. Вы также можете указать конфигурацию системы, например, персонажей, которые определяют поведение помощника по чату. Входная полезная нагрузка для конечной точки выглядит следующим образом:

payload = {
    “inputs”:  (
     (
      (optional){"role": "system", "content": str},
      (repeated k times) {"role": "user", "content": str}, {"role": "assistant", "content": str},
      {"role": "user", "content": str},
     )
    ),
   (optional)"parameters":{"max_new_tokens":int, "top_p":float, "temperature":float}
}

Ниже приведены некоторые примеры подсказок и текст, сгенерированный моделью. Все выходные данные генерируются с параметрами вывода {"max_new_tokens": 512, "top_p": 0.9, "temperature": 0.6}.

Input:
User: what is the recipe of mayonnaise?

Output:
Assistant:  Sure, I can help you with that! Mayonnaise is a thick, creamy condiment made from a mixture of egg yolks, oil, vinegar or lemon juice, and seasonings. Here's a basic recipe for homemade mayonnaise:

Ingredients:

* 2 egg yolks
* 1/2 cup (120 ml) neutral-tasting oil, such as canola or grapeseed
* 1 tablespoon (15 ml) vinegar or lemon juice
* 1/2 teaspoon salt
* 1/4 teaspoon black pepper

Instructions:

1. In a medium-sized bowl, whisk together the egg yolks, salt, and black pepper until well combined.
2. Slowly pour the oil into the bowl while continuously whisking the mixture. It's important to add the oil very slowly, otherwise the mixture can break and you'll end up with a separated, curdled mess.
3. Continue whisking until the mixture thickens and emulsifies, which should take about 5-7 minutes. You'll know it's ready when the mixture has doubled in volume and has a thick, creamy consistency.
4. Add the vinegar or lemon juice and continue whisking for another minute or two, until the flavors are fully incorporated.
5. Taste the mayonnaise and adjust the seasoning as needed. You can add more salt, pepper, or acid if desired.
6. Cover the bowl with plastic wrap and refrigerate the mayonnaise for at least 30 minutes before serving. This will allow the flavors to meld together and the mayonnaise to thicken further.

That's it! This recipe makes about 1 1/2 cups (360 ml) of mayonnaise, which should be enough for a small to medium-sized batch of sandwiches or salads. You can also customize the recipe by adding different flavorings, such as garlic, mustard, or herbs, to create a unique taste. Enjoy!

В следующем примере пользователь разговаривал с помощником о туристических объектах в Париже. Далее пользователь спрашивает о первом варианте, рекомендованном чат-помощником.

Input:
User: I am going to Paris, what should I see?
Assistant: Paris, the capital of France, is known for its stunning architecture, art museums, historical landmarks, and romantic atmosphere. Here are some of the top attractions to see in Paris:

1. The Eiffel Tower: The iconic Eiffel Tower is one of the most recognizable landmarks in the world and offers breathtaking views of the city.
2. The Louvre Museum: The Louvre is one of the world's largest and most famous museums, housing an impressive collection of art and artifacts, including the Mona Lisa.
3. Notre-Dame Cathedral: This beautiful cathedral is one of the most famous landmarks in Paris and is known for its Gothic architecture and stunning stained glass windows.

These are just a few of the many attractions that Paris has to offer. With so much to see and do, it's no wonder that Paris is one of the most popular tourist destinations in the world.
User: What is so great about #1?

Output:
Assistant:  The Eiffel Tower is a world-renowned iconic landmark that symbolizes Paris and France. It was built for the World's Fair in 1889 and was initially intended to be a temporary structure, but it has become a permanent part of the Parisian skyline. Here are some reasons why the Eiffel Tower is so great:

1. Engineering marvel: The Eiffel Tower was a groundbreaking feat of engineering at the time of its construction. It stands at 324 meters (1,063 feet) tall and was the tallest structure in the world for over 40 years.
2. Iconic design: The Eiffel Tower's distinctive shape and design make it instantly recognizable. It has been the subject of countless works of art, photographs, and films, and has become a symbol of Paris and France.
3. Panoramic views: The Eiffel Tower offers breathtaking views of the city from its observation decks. Visitors can enjoy a 360-degree view of Paris, including famous landmarks such as the Seine River, the Arc de Triomphe, and the Montmartre neighborhood.
4. Historical significance: The Eiffel Tower has played a significant role in Paris's history, having been the site of numerous important events, including the famous "Battle of the Eiffel Tower" during World War II.
5. Cultural impact: The Eiffel Tower has had a significant impact on popular culture, inspiring countless works of art, literature, and music. It has also been the subject of numerous documentaries and films, including the classic movie "An American in Paris."
6. Romantic setting: The Eiffel Tower is known for its romantic atmosphere, making it a popular destination for couples and newlyweds. It has been the site of countless marriage proposals and has been featured in numerous romantic films and literature.
7. Accessibility: The Eiffel Tower is easily accessible by public transportation, making it a convenient destination for visitors. It is also wheelchair-friendly, with elevators and ramps providing access to all levels.

Overall, the Eiffel Tower is a must-see destination for anyone visiting Paris, offering a unique and unforgettable experience that combines history, culture, engineering, and rom

В следующих примерах мы устанавливаем конфигурацию системы:

Input:
System: Always answer with Haiku
User: I am going to Paris, what should I see?

Output:
Assistant:  Eiffel Tower high
Art in the Louvre Museum
River Seine flows

Input:
System: Always answer with emojis
User: How to go from Beijing to NY?

Output:
Assistant:  Here are the emojis that represent the steps to go from Beijing to New York:

🇨🇳🛫🛬🇺🇸🗽🏙️🚕💨🛩️🛬🛫😴💤🛩️🛬🛫😍

Очистить

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

predictor.delete_model()
predictor.delete_endpoint()

Заключение

В этом посте мы показали вам, как начать работу с моделями Llama 2 в SageMaker Studio. При этом у вас есть доступ к шести моделям фундамента Llama 2, которые содержат миллиарды параметров. Поскольку базовые модели предварительно обучены, они также могут помочь снизить затраты на обучение и инфраструктуру и обеспечить возможность настройки для вашего варианта использования. Чтобы начать работу с SageMaker JumpStart, посетите следующие ресурсы:


Об авторах

июнь выиграл является менеджером по продукту в SageMaker JumpStart. Он фокусируется на том, чтобы сделать базовые модели легко обнаруживаемыми и пригодными для использования, чтобы помочь клиентам создавать генеративные приложения ИИ. Его опыт работы в Amazon также включает мобильное приложение для покупок и доставку последней мили.

Вивек Мадан
Доктор Вивек Мадан — ученый-прикладник в команде Amazon SageMaker JumpStart. Он получил докторскую степень в Университете Иллинойса в Урбана-Шампейн и был постдокторантом в Технологическом институте Джорджии. Он является активным исследователем в области машинного обучения и разработки алгоритмов и публиковал статьи на конференциях EMNLP, ICLR, COLT, FOCS и SODA.


Доктор Кайл Ульрих — ученый-прикладник в команде Amazon SageMaker JumpStart. Его исследовательские интересы включают масштабируемые алгоритмы машинного обучения, компьютерное зрение, временные ряды, байесовские непараметрические и гауссовские процессы. Его докторская степень получена в Университете Дьюка, и он опубликовал статьи в NeurIPS, Cell и Neuron.


Доктор Ашиш Хетан является старшим научным сотрудником Amazon SageMaker JumpStart и помогает разрабатывать алгоритмы машинного обучения. Он получил докторскую степень в Университете Иллинойса в Урбане-Шампейне. Он является активным исследователем в области машинного обучения и статистических выводов и опубликовал множество статей на конференциях NeurIPS, ICML, ICLR, JMLR, ACL и EMNLP.


Сундар Ранганатан является глобальным руководителем специалистов GenAI/Frameworks GTM в AWS. Он занимается разработкой стратегии GTM для больших языковых моделей, GenAI и крупномасштабных рабочих нагрузок машинного обучения в таких сервисах AWS, как Amazon EC2, EKS, EFA, AWS Batch и Amazon SageMaker. Его опыт включает в себя руководящие должности в области управления продуктами и разработки продуктов в NetApp, Micron Technology, Qualcomm и Mentor Graphics.

LEAVE A REPLY

Please enter your comment!
Please enter your name here