В этом блоге я очень рад поделиться пониманием тщательного подхода, который мы обязались обучать базу Амабри (когнитивно-лаб/Ambari-7B-Instruct-V0.1) и Амабри инструктирование (когнитивно-лаб/Ambari-7B-Instruct-V0.1). Предлагая на нашем процесс высокий уровень, это повествование служит предшественником предстоящего откровения всех технических деталей-кульминации обширного тестирования и оценки. Следите за обновлениями, когда мы разгадываем тонкости, которые привели к созданию Амабри, инновационной двуязычной большой языковой модели с открытым исходным кодом.
Цель Амабри
В динамическом ландшафте моделей крупных языков (LLMS) создание амабри вызвано многогранной целью:
Поскольку LLMS все чаще проникает в основное использование, модели с открытым исходным кодом, в то же время обогащенные мировыми знаниями, преимущественно вытекают из обучения на английском языке. Амабри служит новаторской инициативой, чтобы расширить этот объем и адаптировать LLM к разнообразным языкам.
В развивающемся ландшафте LLMS спрос на обширные объемы обучающих данных в диапазоне от 1 триллиона до 10 триллионов токенов стал нормой. Тем не менее, это создает проблему для языков с ограниченными документированными ресурсами. В нашем стремлении мы сосредоточились на адаптации предварительно обученного LLM, такой как Llama/Mistral, чтобы понять нюансы нового языка-каннада в случае Амабри. Несмотря на то, что Каннада не была классифицирована как язык с очень низким ресурсом, она служила идеальным кандидатом для проверки наших гипотез и методологий. Строгое определение этапов обучения и создания, мы установили ограничение в 1 миллиард обучающих токенов для всего процесса.
Впоследствии мы тщательно проработали наборы данных, распределили их соответственно и определили этапы нашего процесса:
Этот преднамеренный подход заложил основу для развития Амабри, раздвигая границы адаптивности языка в сфере LLMS.
Токенизация, критический компонент в эффективности языковых моделей, создала уникальную проблему для текста Каннады в контексте LLM с открытым исходным кодом. Многие существующие модели неэффективно прибегают к токенизации на уровне персонажа, особенно во время вывода, влияя на общую производительность. Чтобы решить эту проблему, мы разработали специализированную модель токенизации для текста Каннады с использованием предложения. Эта модель была легко интегрирована с базовым токенизатором Llama, что привело к всестороннему словару 49 600, расширенный на 17 600.
Наш подход включал в себя обучение модели токенизатора на трех различных размерах набора данных, выявляя оптимальные результаты с набором данных, содержащим 100 000 токенов. По мере того, как мы развиваемся Amabri, в предстоящей итерации будет представлена утонченная стратегия токенизации, в которой используется сокращенный размер словарного запаса 48 000. Эта корректировка, подтвержденная Insights, разделяемой Андреем Карпати в своем сообщении в Твиттере (Андрей Карпати в Твиттере), предназначена для повышения общей эффективности.
Любопытно изучить эффективность повышает из первых рук? Вы можете проверить токенизатор в действии здесь.
Предварительное обучение
Благодаря эффективному токенизаторе на месте, нашим следующим важным шагом была фаза предварительного обучения, направленная на ознакомление модели с недавно обогащенным словарем. Чтобы оптимизировать этот процесс, мы курировали комплексный набор данных из разных источников. Примечательно, что мы исследовали два различных подхода на этом этапе-обучение с Лорой и полностью обучали модель. Это стратегическое решение проистекало из нашего желания различить оптимальный путь развития Амабри.
Подробное сравнение между этими методологиями будет представлено в ближайшее время, но мы получили некоторые первоначальные наблюдения:
Хотя мы признаем, что наше постоянное тестирование может усовершенствовать эти наблюдения, этот снимок дает ценную информацию о нашем прогрессе. В фазе предварительной тренировки использовалась кластер 2xa100 графических процессоров, в результате чего примерно 25 часов для полного веса на предварительном обучении на существенном корпусе, состоящем из 500 миллионов токенов.
Стоит отметить, что веса полностью настраиваемой модели теперь доступны для обнимающего лица? -https://huggingface.co/cognitive-lab/ambari-7b-base-v0.1, способствуя обмену знаниями с открытым исходным кодом в сообществе.
Двуязычное предсказание токенов
Этот этап, вдохновленный серией Open Hathi By Sarvam.ai, был незапланированным, но ключевым дополнением к нашей стратегии обучения. Создавая набор данных из 200 000 токенов, мы использовали LORA для точной настройки, стремясь оборудовать модель улучшенным пониманием языка. По мере того, как мы прогрессировали, наша фокус сместился на привитие «мировых знаний» в Каннаде. Учитывая дефицит содержания каннады, особенно по сравнению с английским, мы обратились к переводу. Используя Indictrans2, мы перевели контент по английскому языку, в основном поставляемый из Википедии, в Каннада. Тем не менее, вместо обычного монолингального предсказания токенов мы ввели революционный подход - двуязычный, рядом с прогнозом токена. Чередующиеся предложения между Каннадой и английским, этот метод заставил модель кросс-игрока в сфере информации во время предсказания следующего ток. Этот нюансированный подход не только способствовал увеличению выравнивания между каннадой и английским языком, но и естественным образом сбалансированным воздействием токенов на хинди и английского языка во время обучения. Этот этап добавил дополнительный слой изысканности в учебное путешествие Амабри.
Перевод, создание
Целью этой фазы было установить согласованные отношения между английским языком и соответствующими токенами каннады. Используя адаптацию с низкой оценкой для точной настройки, мы столкнулись с некоторыми проблемами, особенно с решением использовать очень низкую стоимость, что оказалось менее эффективным. Благодаря размеру набора данных 100 000 токенов, этот этап представил ограничения, и мы признаем необходимость улучшения. Когда мы усовершенствоваем этот аспект процесса обучения, наша приверженность расширению двуязычных возможностей Амабри остается непоколебимой.
Двуязычная инструкция тонкая настройка
На этой ключевой стадии мы использовали контролируемую точную настройку с низкой адаптацией для формирования отзывчивости модели. Принимая структуру шаблона чата, состоящая из подсказок/инструкций пользователя и соответствующих ответов, мы отправились в сферу двуязычной инструкции тонкой настройки. Этот подход включал в себя обучение модели, чтобы умело реагировать на английский язык или каннада на основе языка, указанного в пользовательской подсказке или инструкции.
Шаблон чата
< | user | >
{user prompt / instruction}
< | endoftext | >
< | assistant | >
{response}
< | endoftext | >Например, с учетом подсказки пользователя, как
«Дай мне 10 советов по обучению в Каннаде»,
Ответ
Модель плавно генерирует ответ в Каннаде, сохраняя лингвистическую когерентность. Чтобы обогатить процесс обучения, мы объединили различные наборы данных инструкций, включая инструктирование Alpaca, Dolly Instruct и многое другое. Используя API -интерфейсы перевода, такие как Google, Azure и пользовательское развертывание модели Indictrans2 из AI4Bharat, мы создали комплексный набор данных двуязычных инструктов.
Набор данных, который теперь общедоступный для обнимающегося лицом здесь, охватывает разнообразные лингвистические сценарии. Во время обучения мы внедрили контролируемую тонкую настройку с четырьмя различными представлениями:
Этот тщательный подход не только ознакомил модель с ответом на разных языках, но и заложил основу для освоения различных межсовых задач.
Веса этой тонко настроенной модели доступны для обнимающего лица, и для практического опыта вы можете исследовать 4-битную квантовую версию на чате. Cognitivelab.in.
На кульминационной фазе уточнения нашей модели мы углубились в мир непосредственной оптимизации предпочтений (DPO). Этот стратегический выбор, вдохновленный успехом, наблюдаемым в различных моделях с открытым исходным кодом, направленный не только на то, чтобы выравнивать нашу модель, но и на улучшение контрольных показателей. Вступив в это экспериментальное путешествие, мы использовали набор данных Anpropic/HH-RLHF. Переводя его в Каннада, мы подвергли модель DPO Fine-Muning, в настоящее время проходя всеобъемлющую оценку для оценки его влияния на производительность.
Объем улучшения
Крайне важно знать, что модели, представленные в этой структуре, не подвергались детоксикации. Хотя они демонстрируют впечатляющие лингвистические возможности, существует потенциал для создания контента, который можно считать вредным или оскорбительным. Пользователям настоятельно рекомендуется осуществлять усмотрение и внимательно следить за результатами модели, особенно в общественных или чувствительных приложениях.
Мы приветствуем вклад в улучшение и расширение этого проекта. Если у вас есть предложения или улучшения, откройте проблему или отправьте запрос на привлечение.
Этот проект лицензирован по лицензии GNU GPL v3.0. Для получения подробной информации обратитесь к файлу License.md.
ВАЖНО: Лицензия GPL 3.0 применяется исключительно к исходному коду и наборам данных, представленным в этом репозитории. Поскольку IND-LLM является производной модели Meta Llama 2, он подлежит первоначальному лицензированию Llama 2, которое не может быть изменено. Поэтому, чтобы получить исчерпывающую информацию о лицензировании модели, пожалуйста, проконсультируйтесь с файлом Llama2-License.
Этот репозиторий черпает вдохновение в следующих репозиториях: