Большие языковые модели (LLM) можно использовать для анализа сложных документов и предоставления сводок и ответов на вопросы. Пост Адаптация предметной области Точная настройка базовых моделей в Amazon SageMaker JumpStart для финансовых данных описывает, как точно настроить LLM, используя ваш собственный набор данных. Когда у вас будет надежный LLM, вы захотите предоставить его бизнес-пользователям для обработки новых документов, которые могут состоять из сотен страниц. В этом посте мы покажем, как создать пользовательский интерфейс в реальном времени, позволяющий бизнес-пользователям обрабатывать PDF-документ произвольной длины. После обработки файла вы можете обобщить документ или задать вопросы по его содержимому. Пример решения, описанный в этом посте, доступен на GitHub.
Работа с финансовыми документами.
Финансовые отчеты, такие как квартальные отчеты о прибылях и убытках и годовые отчеты для акционеров, часто состоят из десятков или сотен страниц. Эти документы содержат много стандартного языка, такого как заявления об отказе от ответственности и юридические формулировки. Если вы хотите извлечь ключевые данные из одного из этих документов, вам потребуется как время, так и некоторое знакомство с шаблонным языком, чтобы вы могли выявить интересные факты. И, конечно же, вы не можете задавать LLM вопросы о документе, который он никогда не видел.
LLM, используемые для суммирования, имеют ограничение на количество токенов (символов), передаваемых в модель, и, за некоторыми исключениями, обычно не превышает нескольких тысяч токенов. Обычно это исключает возможность резюмировать более длинные документы.
Наше решение обрабатывает документы, которые превышают максимальную длину последовательности токенов LLM, и делает этот документ доступным LLM для ответа на вопросы.
Обзор решения
Наш дизайн состоит из трех важных частей:
- Он имеет интерактивное веб-приложение для бизнес-пользователей для загрузки и обработки PDF-файлов.
- Он использует библиотеку langchain для разделения большого PDF-файла на более управляемые фрагменты.
- Он использует метод расширенной генерации поиска, чтобы пользователи могли задавать вопросы о новых данных, которые LLM раньше не видел.
Как показано на следующей диаграмме, мы используем внешний интерфейс, реализованный с помощью React JavaScript, размещенный в Простой сервис хранения Amazon (Amazon S3) ведро, перед которым стоит Amazon CloudFront. Интерфейсное приложение позволяет пользователям загружать PDF-документы в Amazon S3. После завершения загрузки вы можете запустить задание по извлечению текста на базе Амазонка Текст. В рамках постобработки AWS Lambda Функция вставляет в текст специальные маркеры, обозначающие границы страницы. Когда эта работа выполнена, вы можете вызвать API, который резюмирует текст или отвечает на вопросы по нему.
Поскольку некоторые из этих шагов могут занять некоторое время, в архитектуре используется несвязанный асинхронный подход. Например, вызов для суммирования документа вызывает лямбда-функцию, которая отправляет сообщение в Простой сервис очередей Amazon (Amazon SQS). Другая функция Lambda принимает это сообщение и запускает Amazon Elastic Контейнерный Сервис (Амазон ЭКС) АМС Фаргейт задача. Задача Фаргейта вызывает Создатель мудреца Амазонки конечная точка вывода. Здесь мы используем задачу Фаргейта, потому что суммирование очень длинного PDF-файла может занять больше времени и памяти, чем доступно функции Lambda. Когда суммирование завершено, клиентское приложение может получить результаты из Amazon DynamoDB таблице.
Для обобщения мы используем модель Summarize AI21, одну из базовых моделей, доступных через Amazon SageMaker JumpStart. Хотя эта модель обрабатывает документы объемом до 10,000 40 слов (приблизительно 10,000 страниц), мы используем разделитель текста langchain, чтобы гарантировать, что каждый вызов сводки к LLM не превышает XNUMX XNUMX слов. Для генерации текста мы используем модель Cohere Medium, а для встраивания используем GPT-J, оба через JumpStart.
Обработка суммирования
При работе с большими документами нам необходимо определить, как разделить документ на более мелкие части. Когда мы получаем результаты извлечения текста из Amazon Textract, мы вставляем маркеры для больших фрагментов текста (настраиваемое количество страниц), отдельных страниц и разрывов строк. Langchain будет разделяться на основе этих маркеров и собирать меньшие документы, которые не превышают лимит токенов. См. следующий код:
LLM в цепочке суммирования — это тонкая оболочка нашей конечной точки SageMaker:
Ответ на вопрос
В методе расширенной генерации поиска мы сначала разбиваем документ на более мелкие сегменты. Мы создаем вложения для каждого сегмента и сохраняем их в векторной базе данных Chroma с открытым исходным кодом через интерфейс langchain. Мы сохраняем базу данных в Эластичная файловая система Amazon (Amazon EFS) для последующего использования. См. следующий код:
Когда вложения готовы, пользователь может задать вопрос. Мы ищем в векторной базе данных фрагменты текста, наиболее точно соответствующие вопросу:
Мы берем ближайший соответствующий фрагмент и используем его в качестве контекста для модели генерации текста, чтобы ответить на вопрос:
Пользователь опытом
Хотя LLM представляют передовую науку о данных, большинство вариантов использования LLM в конечном итоге связаны с взаимодействием с нетехническими пользователями. Наш пример веб-приложения обрабатывает интерактивный вариант использования, когда бизнес-пользователи могут загружать и обрабатывать новый PDF-документ.
На следующей диаграмме показан пользовательский интерфейс. Пользователь начинает с загрузки PDF-файла. После того, как документ сохранен в Amazon S3, пользователь может запустить задание по извлечению текста. Когда это будет завершено, пользователь может вызвать задачу суммирования или задать вопросы. Пользовательский интерфейс предоставляет некоторые дополнительные параметры, такие как размер фрагмента и перекрытие фрагментов, которые могут быть полезны для опытных пользователей, тестирующих приложение на новых документах.
Следующие шаги
LLM предоставляют значительные новые возможности поиска информации. Бизнес-пользователям нужен удобный доступ к этим возможностям. Можно рассмотреть два направления будущей работы:
- Воспользуйтесь преимуществами мощных LLM, уже доступных в базовых моделях Jumpstart. С помощью всего нескольких строк кода наш образец приложения может развернуть и использовать расширенные LLM от AI21 и Cohere для суммирования и генерации текста.
- Сделайте эти возможности доступными для нетехнических пользователей. Обязательным условием обработки PDF-документов является извлечение текста из документа, а выполнение заданий суммирования может занять несколько минут. Для этого требуется простой пользовательский интерфейс с возможностями асинхронной серверной обработки, который легко разработать с помощью облачных сервисов, таких как Lambda и Fargate.
Также отметим, что PDF-документ представляет собой полуструктурированную информацию. Важные подсказки, такие как заголовки разделов, трудно идентифицировать программно, поскольку они зависят от размера шрифта и других визуальных индикаторов. Выявление базовой структуры информации помогает LLM обрабатывать данные более точно, по крайней мере, до тех пор, пока LLM не сможет обрабатывать ввод неограниченной длины.
Заключение
В этом посте мы показали, как создать интерактивное веб-приложение, которое позволяет бизнес-пользователям загружать и обрабатывать PDF-документы для обобщения и ответов на вопросы. Мы увидели, как воспользоваться базовыми моделями Jumpstart для доступа к продвинутым LLM, а также использовать методы разделения текста и поиска с расширенными возможностями генерации для обработки более длинных документов и предоставления их в качестве информации для LLM.
На данный момент нет причин не сделать эти мощные возможности доступными для ваших пользователей. Мы рекомендуем вам начать использовать Модели фундамента Jumpstart прямо сейчас
Об авторе
Рэнди ДеФо является старшим главным архитектором решений в AWS. Он имеет степень MSEE Мичиганского университета, где работал над компьютерным зрением для автономных транспортных средств. Он также имеет степень магистра делового администрирования Университета штата Колорадо. Рэнди занимал различные должности в сфере технологий, от разработки программного обеспечения до управления продуктами. Вошел в пространство больших данных в 2013 году и продолжает исследовать эту область. Он активно работает над проектами в области машинного обучения и выступал на многочисленных конференциях, включая Strata и GlueCon.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- PlatoData.Network Вертикальный генеративный ИИ. Расширьте возможности себя. Доступ здесь.
- ПлатонАйСтрим. Интеллект Web3. Расширение знаний. Доступ здесь.
- ПлатонЭСГ. Автомобили / электромобили, Углерод, чистые технологии, Энергия, Окружающая среда, Солнечная, Управление отходами. Доступ здесь.
- Смещения блоков. Модернизация права собственности на экологические компенсации. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/use-a-generative-ai-foundation-model-for-summarization-and-question-answering-using-your-own-data/
- :имеет
- :является
- :нет
- :куда
- $UP
- 000
- 10
- 100
- 13
- 14
- 15%
- 2013
- 25
- 40
- 500
- 7
- a
- способность
- в состоянии
- О нас
- об этом
- доступ
- доступной
- точно
- активно
- продвинутый
- плюс
- После
- AI
- уже
- причислены
- Несмотря на то, что
- Amazon
- Создатель мудреца Амазонки
- Amazon SageMaker JumpStart
- Амазонка Текст
- Amazon Web Services
- an
- анализировать
- и
- годовой
- Другой
- ответ
- ответы
- API
- Применение
- подхода
- примерно
- архитектура
- МЫ
- ПЛОЩАДЬ
- около
- AS
- At
- дополненная
- автор
- автономный
- автономные транспортные средства
- доступен
- AWS
- назад
- Backend
- основанный
- BE
- , так как:
- большой
- Big Data
- изоферменты печени
- Границы
- брейки
- строить
- бизнес
- by
- призывают
- Объявления
- CAN
- возможности
- случаев
- случаев
- цепь
- символы
- тесно
- код
- Колорадо
- полный
- комплекс
- компьютер
- Компьютерное зрение
- конференции
- Рассматривать
- строить
- содержать
- Container
- содержание
- контекст
- продолжается
- Удобно
- может
- "Курс"
- Создайте
- данным
- точки данных
- наука о данных
- База данных
- разъединены
- определять
- демонстрировать
- развертывание
- описано
- Проект
- трудный
- документ
- Документация
- сделанный
- каждый
- Заработок
- легко
- поощрять
- конец
- Конечная точка
- Проект и
- вошел
- пример
- превышать
- Больше
- извлечение
- Факты
- фамильярность
- несколько
- Файл
- финансовый
- Во-первых,
- после
- Что касается
- Год основания
- от
- передний
- Внешний интерфейс
- функция
- будущее
- поколение
- генеративный
- Генеративный ИИ
- получить
- обрабатывать
- Ручки
- Управляемость
- Есть
- he
- Герой
- помогает
- здесь
- имеет
- состоялся
- Как
- How To
- HTTP
- HTTPS
- Сотни
- определения
- идентифицирующий
- if
- в XNUMX году
- важную
- in
- В том числе
- индикаторы
- individual
- информация
- вход
- Вставки
- взаимодействие
- интерактивный
- интересный
- Интерфейс
- в
- Запускает
- включать в себя
- IT
- JavaScript
- работа
- Джобс
- JPG
- всего
- Основные
- язык
- большой
- больше
- новее
- наименее
- Юр. Информация
- Длина
- позволять
- Lets
- Библиотека
- такое как
- ОГРАНИЧЕНИЯ
- линия
- линий
- LLM
- загрузчик
- Длинное
- дольше
- серия
- сделать
- управляемый
- управление
- Совпадение
- согласование
- максимальный
- Май..
- средний
- Память
- сообщение
- метод
- Мичиган
- Минут
- ML
- модель
- Модели
- БОЛЕЕ
- самых
- Необходимость
- никогда
- Новые
- нет
- нетехнических
- нормально
- номер
- многочисленный
- of
- .
- on
- консолидировать
- ONE
- с открытым исходным кодом
- Опции
- or
- Другое
- наши
- собственный
- страница
- страниц
- часть
- Прошло
- выбирать
- Выборы
- картина
- штук
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- Точка
- пунктов
- позиции
- После
- Блог
- Питание
- мощный
- представлены
- Основной
- процесс
- Обработанный
- обработка
- Продукт
- Управление продуктом
- проектов
- обеспечивать
- вопрос
- Вопросы
- ранжирование
- реагировать
- готовый
- реального времени
- причина
- полагаться
- Отчеты
- представлять
- ответ
- ответы
- Итоги
- возвращают
- Run
- sagemaker
- Сохранить
- видел
- Наука
- Поиск
- Раздел
- посмотреть
- видел
- сегмент
- сегментами
- SELF
- старший
- Последовательность
- Услуги
- несколько
- Акционеры
- показал
- показанный
- Шоу
- значительный
- просто
- Размер
- Размеры
- меньше
- So
- Software
- разработка программного обеспечения
- твердый
- Решение
- Решения
- некоторые
- Space
- особый
- раскол
- расколы
- Начало
- начинается
- Область
- отчетность
- Шаги
- Stop
- диск
- магазин
- хранить
- Структура
- такие
- суммировать
- РЕЗЮМЕ
- Убедитесь
- система
- ТАБЛИЦЫ
- взять
- Сложность задачи
- снижения вреда
- Технологии
- десятки
- Тестирование
- чем
- который
- Ассоциация
- Их
- Там.
- Эти
- они
- этой
- те
- три
- Через
- время
- в
- сегодня
- знак
- Лексемы
- вызвать
- два
- типично
- В конечном счете
- под
- лежащий в основе
- Университет
- до
- Загрузка
- использование
- прецедент
- используемый
- Информация о пользователе
- Пользовательский интерфейс
- пользователей
- использования
- через
- разнообразие
- Транспорт
- очень
- с помощью
- видение
- хотеть
- we
- Web
- веб приложение
- веб-сервисы
- когда
- , которые
- КТО
- будете
- слова
- Работа
- работавший
- работает
- бы
- Ты
- ВАШЕ
- зефирнет