Великі мовні моделі (LLM) можна використовувати для аналізу складних документів і надання резюме та відповідей на запитання. Пошта Адаптація до домену Точне налаштування базових моделей в Amazon SageMaker JumpStart on Financial data описує, як точно налаштувати LLM за допомогою власного набору даних. Якщо у вас є надійний ступінь магістра права, ви захочете надати її бізнес-користувачам для обробки нових документів, які можуть мати сотні сторінок. У цій публікації ми демонструємо, як побудувати інтерфейс користувача в режимі реального часу, щоб бізнес-користувачі могли обробляти PDF-документ довільної довжини. Після обробки файлу ви можете підсумувати документ або поставити запитання щодо вмісту. Зразок рішення, описаний у цій публікації, доступний на GitHub.
Робота з фінансовими документами
Фінансові звіти, такі як квартальні звіти про прибутки та річні звіти для акціонерів, часто мають десятки чи сотні сторінок. Ці документи містять багато шаблонних формулювань, таких як застереження та юридичні формулювання. Якщо ви хочете отримати ключові дані з одного з цих документів, вам потрібен час і деяке знайомство з шаблонною мовою, щоб ви могли визначити цікаві факти. І, звичайно, ви не можете ставити LLM питання про документ, який він ніколи не бачив.
LLM, які використовуються для підсумовування, мають обмеження на кількість токенів (символів), що передаються в модель, і, за деякими винятками, це зазвичай не більше кількох тисяч токенів. Зазвичай це виключає можливість підсумовувати довші документи.
Наше рішення обробляє документи, які перевищують максимальну довжину послідовності токенів LLM, і робить цей документ доступним LLM для відповідей на запитання.
Огляд рішення
Наш дизайн має три важливі частини:
- Він має інтерактивну веб-програму для бізнес-користувачів для завантаження та обробки PDF-файлів
- Він використовує бібліотеку langchain для поділу великого PDF-файлу на зручніші частини
- Він використовує техніку розширеного пошуку, щоб дозволити користувачам ставити запитання про нові дані, яких LLM раніше не бачив
Як показано на наступній діаграмі, ми використовуємо інтерфейс, реалізований за допомогою React JavaScript, розміщеного в Служба простого зберігання Amazon (Amazon S3) відро перед Amazon CloudFront. Інтерфейсна програма дозволяє користувачам завантажувати PDF-документи на Amazon S3. Після завершення завантаження ви можете запустити завдання вилучення тексту за допомогою Текст Amazon. У рамках постобробки ан AWS Lambda функція вставляє в текст спеціальні маркери, що позначають межі сторінки. Коли цю роботу виконано, ви можете викликати API, який підсумовує текст або відповідає на запитання щодо нього.
Оскільки деякі з цих кроків можуть зайняти деякий час, архітектура використовує роз’єднаний асинхронний підхід. Наприклад, виклик для резюме документа викликає функцію Lambda, яка надсилає повідомлення на Служба простої черги Amazon (Amazon SQS) черга. Інша функція Lambda підбирає це повідомлення та запускає Служба еластичних контейнерів Amazon (Amazon ECS) AWS Fargate завдання. Завдання Fargate викликає Amazon SageMaker кінцева точка висновку. Ми використовуємо тут завдання Fargate, тому що підсумовування дуже довгого PDF може зайняти більше часу та пам’яті, ніж функція Lambda. Після завершення узагальнення зовнішня програма може отримати результати з Amazon DynamoDB таблиці.
Для узагальнення ми використовуємо модель Summarize AI21, одну з основних моделей, доступних через Amazon SageMaker JumpStart. Незважаючи на те, що ця модель обробляє документи обсягом до 10,000 40 слів (приблизно 10,000 сторінок), ми використовуємо текстовий роздільник langchain, щоб переконатися, що кожен виклик підсумку до LLM містить не більше XNUMX XNUMX слів. Для створення тексту ми використовуємо модель Cohere Medium і GPT-J для вбудовування, обидва через JumpStart.
Опрацювання підсумків
При роботі з великими документами нам потрібно визначити, як розділити документ на менші частини. Коли ми отримуємо результати вилучення тексту з Amazon Texttract, ми вставляємо маркери для більших фрагментів тексту (настроюється кількість сторінок), окремих сторінок і розривів рядків. 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 Мічиганського університету, де працював над комп’ютерним зором для автономних транспортних засобів. Він також має ступінь магістра ділового адміністрування в Університеті штату Колорадо. Ренді обіймав різні посади в технологічному просторі, починаючи від розробки програмного забезпечення та закінчуючи управлінням продуктами. In увійшов у сферу великих даних у 2013 році та продовжує досліджувати цю сферу. Він активно працює над проектами у сфері машинного навчання та виступає з доповідями на численних конференціях, зокрема Strata та GlueCon.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. Автомобільні / електромобілі, вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- BlockOffsets. Модернізація екологічної компенсаційної власності. Доступ тут.
- джерело: 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
- Amazon SageMaker JumpStart
- Текст Amazon
- Amazon Web Services
- an
- аналізувати
- та
- щорічний
- Інший
- відповідь
- Відповіді
- API
- додаток
- підхід
- приблизно
- архітектура
- ЕСТЬ
- ПЛОЩА
- навколо
- AS
- At
- збільшено
- автор
- автономний
- автономні транспортні засоби
- доступний
- AWS
- назад
- Backend
- заснований
- BE
- оскільки
- Великий
- Великий даних
- обидва
- Межі
- ламається
- будувати
- бізнес
- by
- call
- Виклики
- CAN
- можливості
- випадок
- випадків
- ланцюг
- символи
- тісно
- код
- Колорадо
- повний
- комплекс
- комп'ютер
- Комп'ютерне бачення
- конференції
- Вважати
- будувати
- містити
- Контейнер
- зміст
- контекст
- триває
- Зручний
- може
- Курс
- створювати
- дані
- точки даних
- наука про дані
- Database
- відокремлені
- визначати
- демонструвати
- розгортання
- описаний
- дизайн
- важкий
- документ
- документація
- зроблений
- кожен
- Доходи
- легко
- заохочувати
- кінець
- Кінцева точка
- Машинобудування
- увійшов
- приклад
- перевищувати
- дослідити
- витяг
- Факти
- Знайомство
- кілька
- філе
- фінансовий
- Перший
- після
- для
- фонд
- від
- перед
- передня частина
- функція
- майбутнє
- покоління
- генеративний
- Генеративний ШІ
- отримати
- обробляти
- Ручки
- Обробка
- Мати
- he
- Герой
- допомагає
- тут
- тримає
- відбувся
- Як
- How To
- HTTP
- HTTPS
- Сотні
- ідентифікувати
- ідентифікує
- if
- реалізовані
- важливо
- in
- У тому числі
- індикатори
- індивідуальний
- інформація
- вхід
- Вставки
- взаємодія
- інтерактивний
- цікавий
- інтерфейс
- в
- викликає
- залучати
- IT
- JavaScript
- робота
- Джобс
- JPG
- просто
- ключ
- мова
- великий
- більше
- пізніше
- найменш
- легальний
- довжина
- дозволяти
- дозволяє
- бібліотека
- як
- МЕЖА
- Лінія
- ліній
- LLM
- завантажувач
- Довго
- довше
- серія
- зробити
- керований
- управління
- матч
- узгодження
- максимальний
- Може..
- середа
- пам'ять
- повідомлення
- метод
- Мічиган
- хвилин
- ML
- модель
- Моделі
- більше
- найбільш
- Необхідність
- ніколи
- Нові
- немає
- нетехнічні
- нормально
- номер
- численний
- of
- часто
- on
- один раз
- ONE
- з відкритим вихідним кодом
- Опції
- or
- Інше
- наші
- власний
- сторінка
- сторінок
- частина
- Пройшов
- вибирати
- Вибори
- картина
- частин
- plato
- Інформація про дані Платона
- PlatoData
- точка
- точок
- позиції
- пошта
- Пости
- Харчування
- потужний
- представлений
- Головний
- процес
- Оброблено
- обробка
- Product
- Управління продуктом
- проектів
- забезпечувати
- питання
- питань
- ранжування
- Реагувати
- готовий
- реального часу
- причина
- покладатися
- Звіти
- представляти
- відповідь
- відповіді
- результати
- повертати
- прогін
- мудрець
- зберегти
- бачив
- наука
- Пошук
- розділ
- побачити
- бачив
- сегмент
- сегменти
- SELF
- старший
- Послідовність
- Послуги
- кілька
- Акціонери
- показав
- показаний
- Шоу
- значний
- простий
- Розмір
- розміри
- менше
- So
- Софтвер
- розробка програмного забезпечення
- solid
- рішення
- Рішення
- деякі
- Простір
- спеціальний
- розкол
- Розколи
- старт
- починається
- стан
- заяви
- заходи
- Стоп
- зберігання
- зберігати
- зберігати
- структура
- такі
- підсумовувати
- РЕЗЮМЕ
- Переконайтеся
- система
- таблиця
- Приймати
- Завдання
- методи
- Технологія
- тензор
- Тестування
- ніж
- Що
- Команда
- Їх
- Там.
- Ці
- вони
- це
- ті
- три
- через
- час
- до
- сьогодні
- знак
- Жетони
- викликати
- два
- типово
- Зрештою
- при
- що лежить в основі
- університет
- до
- Завантаження
- використання
- використання випадку
- використовуваний
- користувач
- Інтерфейс користувача
- користувачі
- використовує
- використання
- різноманітність
- Транспортні засоби
- дуже
- через
- бачення
- хотіти
- we
- Web
- Веб-додаток
- веб-сервіси
- коли
- який
- ВООЗ
- волі
- з
- слова
- Work
- працював
- робочий
- б
- Ти
- вашу
- зефірнет