Повышение доступности подкастов Руководство по выделению текста в формате LLM

Секреты форматирования текста в формате LLM Сделайте подкасты более доступными

Введение

Представьте себе, что вам нравится подкаст, и вы хотите запомнить лучшие моменты, но все это звук, без текста. Что делать? В этом случае приходят на помощь такие замечательные инструменты, как LLM и переводчики аудио-в-текст. Они волшебным образом превращают произнесенные слова в письменные заметки, позволяя вам легко выделить самое ценное и создать удобные ключевые моменты. Таким образом, ваш любимый момент подкаста находится всего в нескольких шагах от того, чтобы быть транскрипцией! С момента его первого дебюта в ноябре 2022 года, LLM стал настоящим хитом. LLM может использоваться для различных задач, и суммирование текста является одним из основных приложений. Мы можем делать суммирование не только для текста, но и для аудио и видео. Мы можем использовать LLM для улучшения доступности подкастов и создания выделенных ключевых моментов для удобства использования или для создания заметок для будущего.

PaLM (Pathways Language LLM) – это важный LLM, учрежденный Google AI в прошлом году, апреле 2022 года. В этом году, в марте 2023 года, была выпущена вторая версия PaLM 2 – улучшенная и обновленная версия. Она предназначена для обладания высокими навыками в области двуязычности, кодирования и мышления. Преимущество использования API PaLM 2 LLM перед другими LLM заключается в том, что его API предоставляется бесплатно. В отличие от ChatGPT OpenAI, PaLM 2 производит лучшие результаты и обладает более развитыми навыками рассуждений по сравнению с другими LLM.

В этой статье мы узнаем, как использовать эти инструменты, а именно API PaLM 2 и Maker Suite, чтобы создать простой подсветчик текста подкаста и научиться оптимизировать настройки модели LLM для генерации более качественных резюме с ключевыми пунктами. Изучите возможности этих инструментов и попытайтесь понять различные случаи использования, в которых они могут быть полезны. Итак, приступим!

Цели обучения

  • Понять модель PaLM и ее возможности.
  • Узнать о настройках модели PaLM.
  • Реализовать проект на Python, генерирующий краткое резюме аудио подкаста с ключевыми пунктами.

Эта статья опубликована в рамках Блогонаты по науке о данных.

Обзор PaLM 2

PaLM 2 – это огромная нейронная модель с 540 миллиардами параметров, масштабированная с использованием метода Pathways для достижения прорывного качества работы. PaLM 540B превосходит текущее состояние искусства на различных задачах многоступенчатого рассуждения и превосходит среднюю производительность человека на новом бенчмарке BIG-bench, достигая прорыва в работе. Она изучает отношения между словами и фразами и может использовать этот навык для различных задач.

Архитектура Pathways AI

Pathways – это новый способ мышления в области искусственного интеллекта, который устраняет многие из недостатков существующих систем. Модели машинного обучения часто специализируются на одной задаче, когда они могли бы быть отличными во многих. Вот основные концепции этой архитектуры:

  • Множественные задачи: Базовая идея заключается в том, чтобы не обучать тысячи разных моделей для разных задач с нуля. Мы используем одну и ту же модель и пытаемся расширить ее возможности для выполнения новых задач, подобно тому, как люди осваивают любую задачу.
  • Мультимодальность: Pathways может одновременно обеспечивать мультимодальные модели, охватывающие зрительное, слуховое и языковое понимание. Таким образом, когда модель обрабатывает слово “леопард”, звук человека, произносящего “леопард” или видео леопарда, активируется один и тот же внутренний ответ: представление о леопарде. Результатом является более проницательная модель, менее подверженная ошибкам и предубеждениям.
  • Разреженность и эффективность: Мы можем создать единственную модель, которая “разреженно” активна, что означает, что только несколько каналов внутри сети активируются по мере необходимости. На самом деле модель динамически учится, какие части сети хорошо справляются с конкретными заданиями – она знает, как маршрутизировать задачи через наиболее важные секции модели. Поскольку мы не запускаем полную сеть для каждой активности, такая архитектура не только обладает более выдающейся способностью к обучению различным задачам, но и работает быстрее и энергоэффективнее.

Характеристики PaLM 2

PaLM 2 обучена на более чем 100 языках и может успешно сдавать экзамены на владение языком на уровне эксперта. Она является второй по величине моделью по количеству параметров – первая модель GPT-4 с 1 трлн параметров. Она обладает высокой эффективностью обучения на 6k-чипах (TPU v4) в 2 платах или кластерах. PaLM использует стандартную архитектуру модели Transformer только в качестве декодера.

Активации SwiGLU

Они используются в промежуточных слоях MLP и имеют более высокое качество работы по сравнению с ReLU, GeLU или Swish. Активации SwiGLU более эффективны, чем традиционные функции активации, и они также помогают улучшить стабильность LLM. SwiGLU использует механизм управления, который позволяет активировать нейроны на основе полученного входа селективно. Это может помочь снизить переобучение и улучшить обобщающую способность. Функция активации SwiGLU – это кусочно-линейная функция, которая определяется следующим образом:

SwiGLU(x) = max(x, 0) + min(α(x – ReLU(x)), 0)

где x – входные данные функции, ReLU(x) – функция выпрямленного линейного блока (т.е. max(x, 0)), а α – настраиваемый параметр, который контролирует форму отрицательной части функции.

Функция активации SwiGLU разработана для преодоления некоторых ограничений функции ReLU, которая может приводить к “мертвым” нейронам, не вносящим вклада в выход нейронной сети. Введение кусочно-линейного отрицательного уклона позволяет функции SwiGLU предотвращать эту проблему и улучшать производительность нейронных сетей.

Разница между ReLU и SwiGLU - Источник

Параллельные формации

Вместо использования последовательной формулировки, в каждом блоке трансформатора используется параллельная формулировка. Параллельная формулировка позволяет ускорить обучение LLM на 15% при больших масштабах. Параллельная формулировка – это новый подход к обучению LLM, позволяющий обучать их гораздо быстрее, чем традиционные LLM. Традиционные LLM обучаются на одном GPU, что может потребовать много времени. Параллельная формулировка позволит обучать LLM на нескольких GPU одновременно, значительно ускоряя процесс обучения. Вот пример работы параллельной формулировки. Представим, что у нас есть LLM, обученная на одном GPU. В LLM используется словарь из 10 000 слов, и каждому слову соответствует вектор размерностью 100. LLM обучается на наборе данных из 1 миллиона предложений.

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

Множественное внимание запроса

Каждая голова использует общие ключи/значения, что приводит к экономии затрат при авторегрессивном декодировании. Можно сказать, что в многоголовом внимании весь процесс вычисления внимания повторяется h раз, тогда как в множественном внимании запроса каждая “голова” значения запроса Q имеет применение той же самой трансформации K и V. Объем вычислений, выполняемых при приращении MQA, аналогичен объему приращения MHA. Основное различие заключается в уменьшенном количестве данных, считываемых/записываемых из памяти при использовании MQA.

Встроенные положения RoPE

“Rotary Positional Embedding” – это новый тип встраивания позиций, объединяющий абсолютные и относительные подходы и дает более превосходные результаты. Он учитывает “относительные” положения двух токенов, а не их абсолютные позиции при вычислении самого внимания. Трансформаторы используют механизмы самовнимания или взаимного внимания, которые не зависят от порядка токенов. Это означает, что модель воспринимает входные токены как множество, а не как последовательность. При этом потеряется важная информация о взаимосвязях между токенами на основе их позиций в последовательности. Для устранения этой проблемы позиционные кодировки встраивают информацию о позициях токенов непосредственно в модель.

Этот тип встраивания позиций использует матрицу поворота, чтобы включить явную зависимость относительной позиции в формулировку самовнимания. Ротационные встраивания являются важными для обработки естественного языка, потому что они позволяют моделям лучше понимать контекст, в котором используются слова. Когда у модели лучше представление о позиции входных токенов, она может делать более точные прогнозы. Например, языковая модель, использующая RoPE, может лучше понимать, что фразы “Я люблю пиццу” и “Пицца – это то, что я люблю” имеют различные значения из-за позиции слов. Модель может делать более сложные прогнозы с лучшим пониманием относительного расположения.

Без предубеждений

В детерминированных и слое нормах не было применено никаких предубеждений, что повысило стабильность обучения для больших моделей. Это увеличивает эффективность обучения и стабильность LLM, а также позволяет сократить избыточные параметры и увеличить использование пространства и масштабирование.

Вариации моделей

Palm предлагает множество вариантов моделей разных размеров. Они назвали различные модели исходя из названий животных и их размеров.

  • Геккон – самая маленькая и быстрая модель, которая может работать на мобильных устройствах даже в автономном режиме.
  • Выдра – больше, чем Геккон, и может выполнять сложные задачи.
  • Единорог – более значительная, чем Выдра, и может использоваться для чата, текста и др.
  • Бизон – самая значительная и стабильная модель Palm, широко используемая для текстового чата.

Настройки параметров модели

Параметры модели помогают нам изменять и генерировать разные ответы на наш запрос. Давайте попробуем разобраться в них поочередно:

Температура

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

Пример температуры со значением 0.5
Пример температуры со значением 1

Лимит токенов

Токен относится к фрагменту текста и определяет, как много текста модель может обработать. Больший лимит токенов позволяет модели охватить более широкий объем информации за один раз, а меньший лимит ограничивает количество токенов, который она может обрабатывать. Например, Palm 2 теперь может одновременно обрабатывать 8 000 токенов ввода.

Сравнение лимита токенов для разных моделей LLM

Top – K

При генерации текста модель рассматривает множество возможных слов для продолжения текущего слова. Отсечение top-k ограничивает выбор следующих слов только до k наиболее вероятных слов. Меньшее значение параметра k делает содержимое более предсказуемым, а более высокое число делает его более разнообразным.

Пример работы параметров top-k и temperature модели LLM

Top -p

Это вероятностное пороговое значение для рассмотрения слов и контроля разнообразия вывода. Модель продолжает рассматривать следующее слово из top k вариантов, пока общая вероятность не достигнет значения top-p. Это означает, что вместо сосредоточения только на нескольких самых вероятных словах модель может принять менее вероятные слова, если они вместе достигают вероятности top-p, что приводит к более разнообразному выводу. Более высокая вероятность приводит к более разнообразной комбинации.

Максимальные выводы

Это указывает количество созданных выводов для конкретного входа, то есть мы можем указать, хотим ли мы видеть более одного вывода модели и в соответствии с этим решить, какой выбрать. Ниже на изображении мы можем увидеть пример, где мы получаем 2 ответа на один и тот же ввод, когда мы устанавливаем Max Output равным 2.

Пример ответа LLM при установке максимального вывода 2

Python реализация подсветки текста подкаста

Схема реализации на Python

1: Скачать аудио подкаста

Мы можем скачать любое аудио подкаста, используя эту ссылку, вставив нашу ссылку на подкаст. Здесь мы используем ссылку на подкаст Indian Express url.

2: Загрузка и установка библиотек

!pip install openai-whisperimport whisper

3: Транскрибация аудио в текст

Изначально мы использовали вариант модели “tiny”, а затем использовали вариант “base”, который является более обширным и дает лучшие результаты в отношении правописания слов и грамматики. Мы транскрибируем два аудиоподкаста.

Примечание: После загрузки mp3-файла аудиоподкаста по ссылке, указанной выше, загрузите его в свою среду Colab и вставьте путь к аудиофайлу в функцию transcribe, как показано.

# Загрузка модели whisperwhisper_model = whisper.load_model("base")# Транскрибирование аудиодеф transcribe(file_path: str) -> str:    # Аргумент `fp16` по умолчанию равен `True`, что заставляет модель пытаться запуститься на GPU.    # Мы будем запускать это на CPU для локальной демонстрации, установив его на `False`.    transcription = whisper_model.transcribe(file_path, fp16=False)    return transcription['text']  transcript = transcribe('/content/CATCH-UP-2023-10th-October-v1.mp3')print(transcript)

Вывод

#ВЫВОДЭто догонка за 3 вещами для Indian Express, и я - Флора Свайн. Сегодня, 10 октября, вот заголовки. Четыре дня после атаки ХАМАСа армия Израиля заявила сегодня, что они восстановили контроль над границей Газы. Она предупредила население о бегстве в соседнюю Египет в мрачное напоминание о предстоящей мести. Армия Израиля также сообщила о обнаружении тел 1500 боевиков ХАМАСа на израильской территории. Нескончаемый конфликт унес жизни около 1600 человек, с 900 жертвами в Израиле и почти 700 в Газе. Тем временем премьер-министр Индии Нарендра Моди выступил с публичным заявлением и сказал, что он разговаривал с израильским премьер-министром Биньямином Нетаньяху, заверив его, что Индия твердо стоит на стороне Израиля и его защищает. Он также заявил, что Индия твёрдо и однозначно осуждает терроризм во всех его формах и проявлениях. Начальник Верховного суда Индии Д. Чандрачуд заявил сегодня, что роль Верховного суда заключается не в микроменеджменте вопросов, возникающих по всей стране. Он подчеркнул, что местные вопросы лучше оставить в юрисдикции соответствующего Высшего суда. Он председательствовал на трёхлетней скамье из трёх судей. Главный судья Майнс сделал эти замечания во время рассмотрения вопроса, связанного с пленными слонами, и сказал, что суду нужно обладать более широким функциональным пониманием в качестве суда. Какова роль Верховного суда в стране? Не заниматься микроменеджментом вопросов, возникающих повсюду по стране. Двое боевиков, причастных к террористической группировке Лашкаре Таибарвак, были убиты в столкновении с силами безопасности в районе Яман Кашмира сегодня. Столкновение произошло, когда силы безопасности начали антитеррористическую операцию в районе Аль-Сипура, руководствуясь полученной разведданными о наличии боевиков. Засечеными боевиками являются Морифат Магбул и Джазим Фарок. Чинтанубхадхай был приговорён к пожизненному заключению сегодня за его участие в пособничестве и задумке убийства его бывшей жены Хемы Обадхая в 2015 году. Сессионный суд также назначил пожизненное заключение для трёх соучастников, а именно Виджай Раджвахар, Прадип Раджвахар и Шивкума Раджвахар. В субботу обвинение потребовало смертной казни для всех четырёх лиц. В чемпионате мира по крикету ICC 2023 сегодня запланированы две игры. Пакистанские команды вступают в бой с Шри-Ланкой в Хаградвадвале, а Бангладеш сыграет с Англией в Харамшалле. В других новостях о чемпионате мира Новая Зеландия обыграла голландцев, победив вторую игру подряд на соревновании. Ранее они победили защитников титула - Англию – на открытии турнира, разместив их на пике таблицы очков. Это был обзор трех вещей от Indian Express.

4- Создание сводки с использованием Maker Suite

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

Maker Suite для создания исходной сводки текста

Мы настраиваем параметры модели для генерации сводок.

5. Генерация кода с использованием Maker Suite

Генерируем код с использованием API-ключа Palm API. Мы сгенерировали свой собственный API-ключ на этом сайте.

"""At the command line, only need to run once to install the package via pip:$ pip install google-generativeai"""import google.generativeai as palmpalm.configure(api_key="API_KEY")defaults = {  'model': 'models/text-bison-001',  'temperature': 1,  'candidate_count': 1,  'top_k': 40,  'top_p': 0.95,  'max_output_tokens': 1024,  'stop_sequences': [],  'safety_settings': [{"category":"HARM_CATEGORY_DEROGATORY","threshold":4},{"category":"HARM_CATEGORY_TOXICITY","threshold":4},{"category":"HARM_CATEGORY_VIOLENCE","threshold":4},{"category":"HARM_CATEGORY_SEXUAL","threshold":4},{"category":"HARM_CATEGORY_MEDICAL","threshold":4},{"category":"HARM_CATEGORY_DANGEROUS","threshold":4}],}Sentence = "Это обзор трех вещей для Indian Express, и я Флора Свэйн. Сегодня 10 октября, а вот заголовки. Четыре дня после атаки Хамаса Израильская армия заявила сегодня, что восстановила контроль над границей с Газой. В неприятной предвестнике возмездия Израильская армия также сообщила о нахождении тел 1500 боевиков Хамаса на израильской территории. Текущий конфликт унес около 1600 жизней, среди них 900 человек являются жертвами в Израиле и почти 700 в Газе. Тем временем Премьер-министр Нарендра Моди выступил сегодня и сказал, что он разговаривал с Израильским премьер-министром Бенджамином Нетаньяху, заверив его, что Индия твердо стоит на стороне Израиля в этом трудном времени. Он также заявил, что Индия твердо и однозначно осуждает терроризм во всех его формах и проявлениях. Главный судья Индии Д. Й. Чандрачуд сегодня заявил, что роль Верховного суда заключается не в микроменеджменте проблем, возникающих по всей стране. Он подчеркнул, что местные вопросы лучше оставить в компетенции соответствующих высших судов. Председательствуя над трехчленным составом суда, Чандрачуд сделал эти замечания в ходе слушания дела, связанного с каптацией слонов, сказав: "Мы, как суд, должны иметь широкое функциональное понимание. Какова роль Верховного суда в стране? Не заниматься микроуправлением проблем, возникающих по всей стране". В Сопианском районе Джамму и Кашмира в результате столкновения сил безопасности с двумя боевиками, связанными с террористической организацией Лашкар-э-Тайбах (let), сегодня были убиты двое боевиков. Столкновение произошло после проведения операции против боевиков в районе альсепуры по информации о наличии боевиков. Погибшие боевики идентифицированы как Муреффат Магбул и Ясм Фарух. Хинтанубхади Хая был приговорен к пожизненному заключению сегодня за свою причастность к пари и замыслу убить свою разлучницу Хему Упадхьяй в 2015 году. Сесшенс-казня также назначил пожизненное заключение троим соучастникам, а именно Виджаю Раджпур, Прадипу Раджпур и Шивкумару Раджпур. В субботу обвинение просил смертной казни для всех четырех лиц. В Мужском Кубке Мира ICC 2023 года сегодня запланированы два матча. Пакистан сражается с Шри-Ланкой в Хайдерабаде, а Бангладеш противостоит Англии в Харамшалле. В других новостях о Кубке Мира Новая Зеландия победила Голландию и выиграла свою вторую игру подряд на турнире. Ранее они победили защищающих чемпионов Англию в матче открытия, заняв верхнюю строчку в таблице очков. Это было Заглавие на Три Вещи от Indian Express".prompt = f"""Преобразуйте предложение в список с маркерами.Предложение:  Это обзор трех вещей для Indian Express, и я Флора Свэйн. Сегодня 11 октября, а вот заголовки. Дни после атаки Хамаса Израильская армия заявила, что проводит удары по Ливану после того, как противотанковая управляемая ракета была запущена из соседней страны по одной из ее позиций у синей линии. По некоторым сообщениям, произошло массовое накопление войск вдоль границы Израиля с Газой, так как страна готовится к наземному вторжению в ближайшие дни. За это время война унесла более 2 000 жизней. Верховный суд сегодня серьезно возразил АИМС-властям, которые требуют разъяснений его решения от 9 октября об аборте 26-недельного плода. Суд АИМС назвал некоторые свежие обсуждения и спросил, почему они не были препровождены ранее суду, когда он просил медицинское заключение о запросе женщины о разрешении медицинского прекращения беременности. Особая планка судей Б.В. Нагаратма и Хемы Кохли также вызвала карцер центра за обращение к председателю Верховного суда Индии Д. Й. Чандрачуду во вторник после его решения. Президент Самаджвади, Ахилеш Яд

Финальный результат

Ниже приведен полученный результат нашего подкаста. Большая часть контента точна, за исключением орфографии и имен собственных, таких как Дарамшала и Лашкар-э-Таиба и т.д.

LLM Output of Bulleted List
  • Армия Израиля восстановила контроль над границей с Газой и предупредила население о бегстве в соседнего Египта.
  • Премьер-министр Индии Нарендра Моди разговаривал с премьер-министром Израиля Биньямином Нетаньяху. Индия категорически осуждает терроризм.
  • Председатель Верховного суда ДИ Чандрачуд заявил, что роль ВС не в микроменеджменте вопросов. Местные вопросы лучше оставить в компетенции Высших судов.
  • 2 боевика, связанные с Лашкар-э-Таиба, были убиты при столкновении сил безопасности в Джамму и Кашмир.
  • Чинтанубхади Хая был приговорен к пожизненному заключению за участие в ставках и замысле убийства его бывшей жены, Хемы Упадхьяй, в 2015 году.
  • В Мужском Чемпионате мира по крикету 2023 года сегодня запланированы две игры.
  • Пакистан сыграет с Шри-Ланкой в Хайдарабаде, а Бангладеш сыграет с Англией в Дарамшале.
  • Новая Зеландия обыграла голландцев и выиграла свою вторую игру в турнире.

Вывод

Мощные инструменты, такие как LLM, могут совмещаться с другими инструментами для создания быстрых прототипов, что позволяет нам тестировать и экспериментировать с различными вариантами использования LLM. Поскольку LLM - это очень новая технология, ее потенциал и реализация требуют множество экспериментов и проб и ошибок. Именно здесь инструменты, такие как Maker Suite, позволяют специалистам по науке о данных и аналитике быстро воплощать свои идеи в код с минимальным временем и усилиями, сконцентрированными на настройке и улучшении данных и других необходимых элементов.

Основные выводы

  • Мы узнали о основной концепции PALM 2 API и его функциях.
  • Также мы поняли о различных настройках модельных параметров и способах их оптимизации для достижения требуемого вывода.
  • Мы рассмотрели различные аспекты инструмента Google Maker Suite и использовали его для генерации нашего LLM-кода.
  • Мы использовали API Whisper и Palm для создания маркированных сводок релевантных и точных подкастов.

Часто задаваемые вопросы

Медиаматериал, показанный в этой статье, не является собственностью Analytics Vidhya и используется по усмотрению автора.