Home Машинное обучение Модель фундамента Falcon 180B от TII теперь доступна через Amazon SageMaker JumpStart | DeepTech

Модель фундамента Falcon 180B от TII теперь доступна через Amazon SageMaker JumpStart | DeepTech

0
Модель фундамента Falcon 180B от TII теперь доступна через Amazon SageMaker JumpStart
 | DeepTech

Сегодня мы рады сообщить, что базовая модель Falcon 180B, разработанная Институтом технологических инноваций (TII), доступна клиентам через Amazon SageMaker JumpStart для развертывания одним щелчком мыши и выполнения логических выводов. Имея размер в 180 миллиардов параметров и обученный на огромном наборе данных из 3,5 триллионов токенов, Falcon 180B является самой крупной и одной из самых производительных моделей с открыто доступными весами. Вы можете опробовать эту модель с помощью SageMaker JumpStart, центра машинного обучения (ML), который предоставляет доступ к алгоритмам, моделям и решениям ML, чтобы вы могли быстро приступить к работе с ML. В этом посте мы расскажем, как обнаружить и развернуть модель Falcon 180B с помощью SageMaker JumpStart.

Что такое Фалькон 180Б

Falcon 180B — модель, выпущенная компанией ТИИ это следует за предыдущими выпусками семейства Falcon. Это увеличенная версия Falcon 40B, в которой для лучшей масштабируемости используется обработка нескольких запросов. Это авторегрессионная языковая модель, использующая оптимизированную архитектуру преобразователя. Он был обучен на 3,5 триллионах токенов данных, в основном состоящих из веб-данных из РафинедВеб (около 85%). Модель имеет две версии: 180B и 180B-Chat. 180B — это сырая, предварительно обученная модель, которую необходимо дополнительно настроить для большинства случаев использования. 180B-Chat лучше подходит для получения общих инструкций. Модель чата была доработана для наборов данных чата и инструкций, а также для нескольких крупномасштабных наборов разговорных данных.

Модель доступна по ссылке Лицензия Falcon-180B TII и Политика приемлемого использования.

Falcon 180B был обучен TII на Amazon SageMaker на кластере примерно из 4K графических процессоров A100. Он использовал специальную кодовую базу распределенного обучения под названием Gigatron, которая использует 3D-параллелизм с ZeRO, и специальные высокопроизводительные ядра Triton. В распределенной архитектуре обучения использовался Amazon Simple Storage Service (Amazon S3) в качестве единственного унифицированного сервиса для загрузки данных, а также записи и чтения контрольных точек, что особенно способствовало надежности рабочей нагрузки и простоте эксплуатации.

Что такое SageMaker JumpStart

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

Теперь вы можете обнаружить и развернуть Falcon 180B несколькими щелчками мыши в Amazon SageMaker Studio или программно с помощью SageMaker Python SDK, что позволит вам получить производительность модели и элементы управления MLOps с помощью таких функций SageMaker, как Amazon SageMaker Pipelines, Amazon SageMaker Debugger или журналы контейнеров. Модель развертывается в безопасной среде AWS и под контролем вашего VPC, что помогает обеспечить безопасность данных. Falcon 180B доступен для обнаружения и может быть развернут в регионах, где доступны необходимые экземпляры. В настоящее время экземпляры ml.p4de доступны на востоке США (Северная Вирджиния) и западе США (Орегон).

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

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

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

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

На целевой странице SageMaker JumpStart вы можете искать решения, модели, ноутбуки и другие ресурсы. Вы можете найти Falcon 180B в Базовые модели: генерация текста карусель.

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

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

Развертывание моделей

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

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

from sagemaker.jumpstart.model import JumpStartModel

my_model = JumpStartModel(model_id="huggingface-llm-falcon-180b-chat-bf16") predictor = my_model.deploy()

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

payload = {
    "inputs": "User: Hello!\nFalcon: ",
    "parameters": {"max_new_tokens": 256, "top_p": 0.9, "temperature": 0.6}
}
response = predictor.predict(payload)

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

Эта модель с параметрами 180 байт занимает 335 ГБ и требует еще больше памяти графического процессора для достаточного выполнения вывода с 16-битной точностью. В настоящее время JumpStart поддерживает эту модель только на экземплярах ml.p4de.24xlarge. Можно развернуть 8-битную квантованную модель на экземпляре ml.p4d.24xlarge, предоставив env={"HF_MODEL_QUANTIZE": "bitsandbytes"} ключевое слово аргумент для JumpStartModel конструктор и указание instance_type="ml.p4d.24xlarge" к методу развертывания. Однако обратите внимание, что задержка на каждый токен примерно в 5 раз медленнее для этой квантовой конфигурации.

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

Название модели Идентификатор модели Тип экземпляра по умолчанию Максимальное количество токенов Задержка на токен*
Сокол 7Б huggingface-llm-falcon-7b-bf16 мл.г5.2xбольшой 2048 34 мс
Сокол 7Б Инструктировать huggingface-llm-falcon-7b-instruct-bf16 мл.г5.2xбольшой 2048 34 мс
Сокол 40Б huggingface-llm-falcon-40b-bf16 мл.г5.12xбольшой 2048 57 мс
Сокол 40Б Инструктировать huggingface-llm-falcon-40b-instruct-bf16 мл.г5.12xбольшой 2048 57 мс
Сокол 180Б huggingface-llm-falcon-180b-bf16 ml.p4de.24xlarge 2048 45 мс
Сокол 180B Чат huggingface-llm-falcon-180b-chat-bf16 ml.p4de.24xlarge 2048 45 мс

*задержка каждого токена указана для среднего времени ответа примеров подсказок, представленных в этом блоге; это значение будет варьироваться в зависимости от длины входных и выходных последовательностей.

Выводы и примеры для Falcon 180B

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

payload = {
    "inputs": str,
    (optional)"parameters": {
        "do_sample": bool,
        "max_new_tokens": int,
        "repetition_penalty": float,
        "return_full_text": bool,
        "stop": List(str),
        "seed": int,
        "temperature": float,
        "top_k": int,
        "top_p": float,
        "truncate": int,
        "typical_p": float,
        "best_of": int,
        "watermark": bool,
        "details": bool,
        "decoder_input_details": bool,
    }
}

Вы можете изучить определение этих параметры клиента и их значения по умолчанию в репозитории вывода текста.

Ниже приведены некоторые примеры подсказок и текст, сгенерированный моделью. Все выходные данные здесь генерируются с параметрами вывода. {"max_new_tokens": 768, "stop": ("<|endoftext|>", "###")}.

Создать сайт можно за 10 простых шагов:

Input Building a website can be done in 10 simple steps:

Output
- Choose a domain name
- Register your domain name
- Choose a web host
- Choose a website builder
- Create your website
- Add content to your website
- Add pages to your website
- Add images to your website
- Add videos to your website
- Add social media to your website
1. Choose a domain name
A domain name is the address of your website. It is what people will type into their browser to find your website. For example, the domain name of this website is.
When choosing a domain name, you should choose something that is easy to remember and that represents your business or website. You should also make sure that the domain name is available. You can check if a domain name is available by using a domain name search tool.
2. Register your domain name
Once you have chosen a domain name, you need to register it. This can be done through a domain name registrar. A domain name registrar is a company that manages the registration of domain names.
When registering your domain name, you will need to provide your contact information and choose a payment method. You will also need to choose a domain name extension. The most common domain name extensions are .com, .net, and .org.
3. Choose a web host
A web host is a company that provides space on a server for your website. When choosing a web host, you should choose one that is reliable and that offers good customer support. You should also make sure that the web host offers the features that you need for your website.
4. Choose a website builder
A website builder is a tool that allows you to create a website without having to learn how to code. There are many different website builders available, so you should choose one that is easy to use and that offers the features that you need.
5. Create your website
Once you have chosen a website builder, you can start creating your website. You will need to choose a template for your website and then add content to your website.
6. Add content to your website
The content of your website is what will make your website unique. You should add content that is relevant to your business or website. You can add text, images, videos, and other types of content to your website.
7. Add pages to your website
A website is made up of pages. You can add as many pages as you want to your website. Each page should have a different purpose. For example, you might have a page for your home page, a page for your about page, and a page for your contact page.
8. Add images to your website
Images can make your website more visually appealing. You can add images to your website by uploading them to your website or by using a image hosting service.
9. Add videos to your website
Videos can also make your website more visually appealing. You can add videos to your website by uploading them to your website or by using a video hosting service.
10. Add social media to your website
Social media can help you promote your website. You can add social media buttons to your website so that people can share your website on social media. You can also add social media feeds to your website so that people can see your latest social media posts.

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

Input
Tweet: "I hate it when my phone battery dies."
Sentiment: Negative
###
Tweet: "My day has been :+1:"
Sentiment: Positive
###
Tweet: "This is the link to the article"
Sentiment: Neutral
###
Tweet: "This new music video was incredible"
Sentiment:

Output
 Positive
###

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

Output
 fromage
###

Выводы и примеры подсказок для Falcon 180B-Chat

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

System: <An optional system prompt>
User: <Optional user message history>
Falcon: <Optional chat history Falcon response>
User: <Current user message>
Falcon:

Ниже приведены некоторые примеры подсказок и текст, сгенерированный моделью. Все выходные данные генерируются с параметрами вывода. {"max_new_tokens":256, "stop": ("\nUser:", "<|endoftext|>", " User:", "###")}.

Input
System: You are a helpful assistant
User: What is Amazon SageMaker JumpStart?
Falcon: 

Output 
Amazon SageMaker JumpStart is a capability of Amazon SageMaker that provides a set of solutions to common machine learning problems. These solutions include pre-built machine learning models, algorithms, and pre-configured model training and deployment settings. JumpStart also provides sample notebooks that demonstrate how to use these solutions for various use cases. The goal of JumpStart is to help users get started with machine learning quickly and easily, without the need for extensive machine learning expertise.
User:

Input
User: Simply put, the theory of relativity states that
Falcon: 

Output 
1. The laws of physics are the same for all observers in uniform motion relative to one another.
2. The speed of light in a vacuum is the same for all observers, regardless of their motion or the motion of the light source.
3. Time and space are relative, meaning that they can vary depending on the observer's frame of reference.
4. Mass and energy are interchangeable, as expressed by the famous equation E=mc².
User:

Input
User: Building a website can be done in 10 simple steps:
Falcon: 

Output
1. Determine the purpose and goals of your website.
2. Choose a domain name and register it.
3. Select a web hosting provider and sign up for a plan.
4. Choose a website builder or content management system (CMS) to use.
5. Select a theme or template for your website.
6. Customize the design and layout of your website.
7. Add content to your website, including text, images, and videos.
8. Set up navigation menus and links to make your website easy to navigate.
9. Test your website to ensure it is functioning properly and is mobile-friendly.
10. Launch your website and promote it to attract visitors.
User:

Input
System: Always answer with a Haiku.
User: I am deploying a large language model on Amazon SageMaker JumpStart. What should I do?
Falcon: 

Output
"JumpStart" your dreams,
Deploy with ease, scale with glee,
SageMaker awaits.

Input
System: Generate a table summarizing the options outlined in this email.
User: Team, we have to make a decision on the product plan for Goocrux v2. The first option will take us 3 weeks of development, and will achieve performance of 80ms, but means that the UI has to change. The second option will take us 4 weeks of development, and will achieve performance of 60ms, without any UI change. The third option will take the longest -- 6 weeks of development, will achieve performance of 30ms, without any UI change. A markdown table with four columns: (1) Option ID, (2) Development time, (3) Performance, (4) UI Change.
Falcon: 

Output
| Option ID | Development time | Performance | UI Change |
| --- | --- | --- | --- |
| 1 | 3 weeks | 80ms | Yes |
| 2 | 4 weeks | 60ms | No |
| 3 | 6 weeks | 30ms | No |

Input
System: You always translate English to French.
User: sea otter => loutre de mer
peppermint => menthe poivrée
plush girafe => girafe peluche
cheese =>
Falcon: 

Output
=> fromage

Input
System: Classify the user prompt as Negative, Positive, or Neutral sentiment. Use a short response.
User: Tweet: "This new music video was awesome" 
Falcon: 

Output
"Positive"

Input
User: What is the recipe of mayonnaise?
Falcon: 

Output 1. In a mixing bowl, whisk together 1 egg yolk, 1 tablespoon of Dijon mustard, and 1 tablespoon of lemon juice until well combined.
2. While whisking continuously, slowly drizzle in 1 cup of vegetable oil until the mixture thickens and emulsifies.
3. Season with salt and pepper to taste.
4. Store in an airtight container in the refrigerator for up to one week.
User:

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

Input
System: You are a helpful trip planner.
User: I am going to Paris, what should I see?
Falcon: 1. Eiffel Tower: No trip to Paris is complete without a visit to the iconic Eiffel Tower.
2. Louvre Museum: Home to some of the world's most famous art, including the Mona Lisa.
3. Notre-Dame Cathedral: A stunning example of Gothic architecture and a must-see for history buffs.
4. Champs-Élysées: One of the most famous avenues in the world, lined with shops, cafes, and theaters.
5. Montmartre: A charming neighborhood known for its bohemian vibe, street art, and stunning views of the city.
6. Palace of Versailles: A short train ride from Paris, this opulent palace was once the seat of French royalty.
7. Musée d'Orsay: Housed in a former train station, this museum boasts an impressive collection of Impressionist and Post-Impressionist art.
8. Sainte-Chapelle: A hidden gem in the heart of Paris, this medieval chapel is famous for its stunning stained glass windows.
9. Luxembourg Gardens: A beautiful park in the heart of the city, perfect for a picnic or a leisurely stroll.
User: What is so great about #1?
Falcon: 

Output
#1 is the Eiffel Tower, which is one of the most famous landmarks in the world. It is a symbol of Paris and a must-see attraction for many visitors. The tower offers stunning views of the city from its observation decks, and it is especially beautiful when lit up at night. Additionally, the Eiffel Tower has a rich history and is an engineering marvel, making it a fascinating destination for anyone interested in architecture or history.
User:

Очистить

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

predictor.delete_model()
predictor.delete_endpoint()

Заключение

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

Ресурсы


Об авторах

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

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

Оливье Крушанt — главный специалист по архитектуре решений в области машинного обучения в AWS, Франция. Оливье помогает клиентам AWS — от небольших стартапов до крупных предприятий — разрабатывать и развертывать приложения машинного обучения промышленного уровня. В свободное время он любит читать научные статьи и исследовать дикую природу с друзьями и семьей.

Карл Альбертсен возглавляет центр базовых моделей Amazon SageMaker, команды по алгоритмам и партнерству.

LEAVE A REPLY

Please enter your comment!
Please enter your name here