В современном бизнес-среде организации постоянно ищут способы оптимизации своих финансовых процессов, повышения эффективности и экономии затрат. Одной из областей, которая имеет значительный потенциал для улучшения, является кредиторская задолженность. На высоком уровне процесс кредиторской задолженности включает в себя получение и сканирование счетов, извлечение соответствующих данных из отсканированных счетов, проверку, утверждение и архивирование. Второй этап (экстракция) может быть сложным. Каждый счет и квитанция выглядят по-разному. Этикетки несовершенны и противоречивы. Наиболее важные части информации, такие как цена, название поставщика, адрес поставщика и условия оплаты, часто не помечены явно и должны интерпретироваться в зависимости от контекста. Традиционный подход с привлечением рецензентов для извлечения данных требует много времени, подвержен ошибкам и не поддается масштабированию.
В этой статье мы покажем, как автоматизировать процесс расчета кредиторской задолженности с помощью Амазонка Текст для извлечения данных. Мы также предоставляем эталонную архитектуру для создания конвейера автоматизации счетов, который обеспечивает извлечение, проверку, архивирование и интеллектуальный поиск.
Обзор решения
На следующей схеме архитектуры показаны этапы рабочего процесса обработки квитанций и счетов. Все начинается с этапа ввода документов для безопасного сбора и хранения отсканированных счетов-фактур и квитанций. Следующим этапом является этап извлечения, на котором вы передаете собранные счета и квитанции в Amazon Textract. AnalyzeExpense
API для извлечения финансовых связей между текстом, таким как имя поставщика, дата получения счета, дата заказа, причитающаяся сумма, уплаченная сумма и т. д. На следующем этапе вы используете предопределенные правила расходов, чтобы определить, следует ли вам автоматически утверждать или отклонять квитанцию. Утвержденные и отклоненные документы попадают в соответствующие папки внутри Простой сервис хранения Amazon (Amazon S3) ведро. Для утвержденных документов вы можете выполнить поиск по всем извлеченным полям и значениям, используя Сервис Amazon OpenSearch. Вы можете визуализировать проиндексированные метаданные с помощью панелей мониторинга OpenSearch. Утвержденные документы также настроены для перемещения в Интеллектуальное многоуровневое распределение Amazon S3 для долгосрочного хранения и архивирования с использованием политик жизненного цикла S3.
В следующих разделах описан процесс создания решения.
Предпосылки
Для развертывания этого решения необходимо иметь следующее:
- Аккаунт AWS.
- An Облако AWS9 среда. AWS Cloud9 — это облачная интегрированная среда разработки (IDE), которая позволяет писать, запускать и отлаживать код с помощью всего лишь браузера. Он включает в себя редактор кода, отладчик и терминал.
Чтобы создать среду AWS Cloud9, укажите имя и описание. Оставьте все остальное по умолчанию. Выберите ссылку IDE на консоли AWS Cloud9, чтобы перейти к IDE. Теперь вы готовы использовать среду AWS Cloud9.
Разверните решение
Для настройки решения вы используете Комплект для разработки облачных сервисов AWS (AWS CDK) для развертывания AWS CloudFormation стек.
- В терминале IDE AWS Cloud9 клонируйте Репозиторий GitHub и установите зависимости. Выполните следующие команды, чтобы развернуть
InvoiceProcessor
стек:
Развертывание занимает около 25 минут с настройками конфигурации по умолчанию из репозитория GitHub. Дополнительная информация о результатах также доступна в консоли AWS CloudFormation.
- После завершения развертывания AWS CDK создайте правила проверки расходов в Amazon DynamoDB стол. Вы можете использовать тот же терминал AWS Cloud9 для запуска следующих команд:
- В сегменте S3, который начинается с
invoiceprocessorworkflow-invoiceprocessorbucketf1-*
, создайте папку загрузок.
In Амазон Когнито, у вас уже должен быть существующий пул пользователей под названием OpenSearchResourcesCognitoUserPool*
. Мы используем этот пул пользователей для создания нового пользователя.
- В консоли Amazon Cognito перейдите к пулу пользователей.
OpenSearchResourcesCognitoUserPool*
. - Создайте нового пользователя Amazon Cognito.
- Укажите имя пользователя и пароль по вашему выбору и запишите их для дальнейшего использования.
- Загрузите документы случайный_счет1 и случайный_счет2 на S3
uploads
папку для запуска рабочих процессов.
Теперь давайте углубимся в каждый из этапов обработки документа.
Захват документов
Клиенты обрабатывают счета и квитанции во множестве форматов от разных поставщиков. Эти документы принимаются по таким каналам, как печатные копии, отсканированные копии, загружаемые в хранилище файлов, или общие устройства хранения. На этапе сбора документов вы храните все отсканированные копии квитанций и счетов-фактур в хорошо масштабируемом хранилище, например в корзине S3.
Добыча
Следующим этапом является этап извлечения, на котором вы передаете собранные счета и квитанции в Amazon Textract. AnalyzeExpense
API для извлечения финансовых связей между текстом, таким как имя поставщика, дата получения счета, дата заказа, сумма к оплате/оплаченная сумма и т. д.
АнализироватьРасходы — это API, предназначенный для обработки документов счетов и квитанций. Он доступен как синхронный, так и асинхронный API. Синхронный API позволяет отправлять изображения в байтовом формате, а асинхронный API позволяет отправлять файлы в форматах JPG, PNG, TIFF и PDF. AnalyzeExpense
Ответ API состоит из трех отдельных разделов:
- Поля сводки – Этот раздел включает как нормализованные ключи, так и явно упомянутые ключи вместе с их значениями.
AnalyzeExpense
нормализует ключи для контактной информации, такой как имя поставщика и адрес поставщика, ключи, связанные с идентификатором налогоплательщика, такие как идентификатор налогоплательщика, ключи, связанные с платежами, такие как сумма к оплате и скидка, а также общие ключи, такие как идентификатор счета, дата доставки и номер счета. Ключи, которые не нормализованы, по-прежнему отображаются в полях сводки как пары «ключ-значение». Полный список поддерживаемых полей расходов см. Анализ счетов и квитанций. - Позиции – Этот раздел содержит нормализованные ключи отдельных позиций, такие как описание товара, цена за единицу, количество и код продукта.
- блок оптического распознавания символов – Блок содержит необработанный текстовый фрагмент со страницы счета-фактуры. Извлечение необработанного текста можно использовать для постобработки и идентификации информации, которая не включена в поля сводки и отдельных позиций.
Этот пост использует Конструкции Amazon Text IDP CDK (Компоненты AWS CDK для определения инфраструктуры для рабочих процессов интеллектуальной обработки документов (IDP), что позволяет создавать настраиваемые рабочие процессы IDP для конкретных случаев использования. Конструкции и примеры представляют собой набор компонентов, позволяющих определять процессы IDP на AWS и опубликованных в GitHub. Основными используемыми концепциями являются конструкции AWS CDK, фактические Стеки AWS CDKи Шаговые функции AWS.
На следующем рисунке показан рабочий процесс Step Functions.
Рабочий процесс извлечения включает в себя следующие этапы:
- InvoiceProcessor-решитель - An AWS Lambda функция, которая проверяет, поддерживается ли формат входного документа Amazon Textract. Более подробную информацию о поддерживаемых форматах см. Входные документы.
- Разделитель документов – Лямбда-функция, которая генерирует из документов фрагменты объемом 2,500 (максимум) страниц и может обрабатывать большие многостраничные документы.
- Состояние карты – Лямбда-функция, которая обрабатывает каждый фрагмент параллельно.
- TextAsync – Эта задача вызывает Amazon Textract с использованием асинхронного API, следующего за лучшие практики Amazon Простая служба уведомлений Уведомления и использование (Amazon SNS)
OutputConfig
для сохранения выходных данных Amazon Textract JSON в корзину S3, созданную вами ранее. Он состоит из двух функций Lambda: одна для отправки документа на обработку, а другая активируется при уведомлении SNS. - ТекстрактАсинктоJSON2 - Поскольку
TextractAsync
задача может создавать несколько выходных файлов с разбивкой на страницы,TextractAsyncToJSON2
процесс объединяет их в один файл JSON.
Мы обсудим детали следующих трех шагов в следующих разделах.
Проверка и одобрение
На этапе проверки SetMetaData
Лямбда-функция проверяет, является ли загруженный файл действительными расходами в соответствии с правилами, настроенными ранее в таблице DynamoDB. Для этого поста вы используете следующие примеры правил:
- Проверка успешна, если
INVOICE_RECEIPT_ID
присутствует и соответствует регулярному выражению(?i)[0-9]{3}[a-z]{3}[0-9]{3}$
и ifPO_NUMBER
присутствует и соответствует регулярному выражению(?i)[a-z0-9]+$
- Проверка не увенчалась успехом, если
PO_NUMBER
orINVOICE_RECEIPT_ID
неверно или отсутствует в документе.
После обработки файлов функция проверки расходов перемещает входные файлы либо в approved
or declined
папки в одной корзине S3.
Для целей этого решения мы используем DynamoDB для хранения правил проверки расходов. Однако вы можете изменить это решение для интеграции с вашими собственными или коммерческими решениями для проверки или управления расходами.
Интеллектуальный индекс и поиск
Для OpenSearchPushInvoke
Лямбда-функция, извлеченные метаданные о расходах помещаются в индекс службы OpenSearch и доступны для поиска.
Финал TaskOpenSearchMapping
шаг очищает контекст, который в противном случае мог бы выйти за пределы Квота на функции шага максимального размера ввода или вывода для задачи, состояния или выполнения рабочего процесса.
После создания индекса OpenSearch Service вы можете искать ключевые слова из извлеченного текста с помощью панелей мониторинга OpenSearch.
Архивирование, аудит и аналитика
Чтобы управлять жизненным циклом и архивированием счетов и квитанций, вы можете настроить правила жизненного цикла S3 для перевода объектов S3 из стандартных классов хранения в классы хранения с интеллектуальным многоуровневым хранением. S3 Intelligent-Tiering отслеживает шаблоны доступа и автоматически перемещает объекты на уровень нечастого доступа, если к ним не обращались в течение 30 дней подряд. После 90 дней отсутствия доступа объекты перемещаются на уровень мгновенного доступа к архиву без влияния на производительность или эксплуатационных расходов.
Для аудита и аналитики это решение использует службу OpenSearch для выполнения аналитики по запросам счетов. Служба OpenSearch позволяет легко принимать, защищать, искать, агрегировать, просматривать и анализировать данные для ряда вариантов использования, таких как анализ журналов, поиск приложений, корпоративный поиск и многое другое.
Войдите в OpenSearch Dashboards и перейдите к Управление стеком, Сохраненные объекты, а затем выберите Импортировать. Выберите счета-фактуры.ndjson файл из клонированного репозитория и выберите Импортировать. Это предварительно заполняет индексы и создает визуализацию.
Обновите страницу и перейдите к Главная, Аккаунт, и открыть Счета. Теперь вы можете выбирать и применять фильтры, а также расширять временной интервал, чтобы просмотреть прошлые счета.
Убирать
Завершив оценку Amazon Textract для обработки квитанций и счетов-фактур, мы рекомендуем очистить все ресурсы, которые вы могли создать. Выполните следующие шаги:
- Удалить весь контент из корзины S3.
invoiceprocessorworkflow-invoiceprocessorbucketf1-*
. - В AWS Cloud9 выполните следующие команды, чтобы удалить ресурсы Amazon Cognito и стеки CloudFormation:
- Удалите среду AWS Cloud9, созданную вами из консоли AWS Cloud9.
Заключение
В этом посте мы представили обзор того, как мы можем построить конвейер автоматизации счетов с использованием Amazon Textract для извлечения данных и создать рабочий процесс для проверки, архивирования и поиска. Мы предоставили примеры кода о том, как использовать AnalyzeExpense
API для извлечения критических полей из счета.
Чтобы начать работу, войдите в консоль Amazon Textract, чтобы попробовать эту функцию. Дополнительную информацию о возможностях Amazon Textract см. Руководство разработчика Amazon Textract or Извлечение ресурсов. Чтобы узнать больше о IDP, см. IDP с сервисами AWS AI. Часть 1 и Часть 2 сообщения.
Об авторах
Сушант Прадхан — старший архитектор решений в Amazon Web Services, помогающий корпоративным клиентам. Его интересы и опыт включают контейнеры, бессерверные технологии и DevOps. В свободное время Сушант любит проводить время на природе со своей семьей.
Шибин Михаэльрадж является старшим менеджером по продукту в команде AWS Textract. Он занимается созданием продуктов на основе AI/ML для клиентов AWS.
Супракаш Дутта является старшим архитектором решений в Amazon Web Services. Он занимается стратегией цифровой трансформации, модернизацией и миграцией приложений, аналитикой данных и машинным обучением. Он является частью сообщества AI/ML в AWS и разрабатывает интеллектуальные решения для обработки документов.
Маран Чандрасекаран — старший архитектор решений в Amazon Web Services, работающий с нашими корпоративными клиентами. Вне работы он любит путешествовать и кататься на мотоцикле по Техас-Хилл-Кантри.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- PlatoData.Network Вертикальный генеративный ИИ. Расширьте возможности себя. Доступ здесь.
- ПлатонАйСтрим. Интеллект Web3. Расширение знаний. Доступ здесь.
- ПлатонЭСГ. Углерод, чистые технологии, Энергия, Окружающая среда, Солнечная, Управление отходами. Доступ здесь.
- ПлатонЗдоровье. Биотехнологии и клинические исследования. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/build-a-receipt-and-invoice-processing-pipeline-with-amazon-textract/
- :является
- :нет
- :куда
- $UP
- 1
- 100
- 25
- 30
- 7
- 8
- 9
- a
- О нас
- доступ
- Доступ
- Учетная запись
- Учетные записи
- кредиторская задолженность
- фактического соединения
- дополнительный
- адрес
- После
- совокупный
- AI
- Услуги искусственного интеллекта
- AI / ML
- Все
- позволяет
- вдоль
- уже
- причислены
- Amazon
- Амазон Когнито
- Амазонка Текст
- Amazon Web Services
- количество
- an
- аналитика
- анализировать
- и
- любой
- API
- появиться
- Применение
- Применить
- подхода
- утверждение
- утвердить
- утвержденный
- архитектура
- архив
- МЫ
- ПЛОЩАДЬ
- около
- AS
- At
- аудит
- аудит
- автоматизировать
- автоматически
- автоматизация
- доступен
- AWS
- Облако AWS9
- AWS CloudFormation
- основанный
- BE
- , так как:
- было
- между
- Заблокировать
- Начальная загрузка
- изоферменты печени
- браузер
- строить
- Строительство
- строит
- бизнес
- by
- под названием
- Объявления
- CAN
- возможности
- захватить
- случаев
- каналы
- проверка
- выбор
- Выберите
- классов
- Уборка
- облако
- Cloud9
- код
- собирать
- лыжных шлемов
- комбинаты
- коммерческая
- сообщество
- полный
- комплекс
- компоненты
- понятия
- Конфигурация
- настроить
- последовательный
- состоит
- Консоли
- постоянно
- конструкции
- Контейнеры
- содержит
- содержание
- контекст
- Цена
- экономия на издержках
- может
- страна
- покрытый
- Создайте
- создали
- Создающий
- критической
- Клиенты
- настраиваемый
- приборная панель
- щитки
- данным
- Анализ данных
- Время
- Дней
- преданный
- По умолчанию
- определять
- определение
- поставка
- Зависимости
- развертывание
- развертывание
- описание
- конструкций
- уничтожить
- подробнее
- Определять
- Застройщик
- Развитие
- Устройства
- диаграмма
- различный
- Интернет
- цифровое преобразование
- скидка
- обсуждать
- отчетливый
- погружение
- документ
- Документация
- управлять
- два
- дутта
- каждый
- Ранее
- эхо
- редактор
- затрат
- легко
- или
- еще
- включить
- позволяет
- повышать
- Предприятие
- Окружающая среда
- и т.д
- оценки
- многое
- превышать
- существующий
- Расширьте
- опыт
- эксплицитно
- Больше
- извлечение
- добыча
- семья
- Особенность
- поле
- Поля
- фигура
- Файл
- Файлы
- фильтры
- окончательный
- финансовый
- в финансовом отношении
- внимание
- фокусируется
- после
- Что касается
- формат
- от
- функция
- Функции
- Общие
- генерирует
- получить
- идти
- GitHub
- Go
- обрабатывать
- Жесткий
- Есть
- he
- помощь
- High
- очень
- его
- имеет
- Как
- How To
- Однако
- HTML
- HTTP
- HTTPS
- человек
- i
- ID
- идентифицирующий
- if
- изображений
- Влияние
- Импортировать
- важную
- улучшение
- in
- включают
- включает в себя
- неправильный
- индекс
- индексированный
- Индексы
- информация
- Инфраструктура
- вход
- устанавливать
- мгновение
- интегрировать
- интегрированный
- Умный
- Интеллектуальная обработка документов
- интересы
- в
- счет-фактура
- обработка счетов
- счета-фактуры
- IT
- JPG
- JSON
- всего
- Сохранить
- ключи
- ключевые слова
- Этикетки
- пейзаж
- большой
- новее
- УЧИТЬСЯ
- изучение
- Lets
- уровень
- Жизненный цикл
- такое как
- линия
- LINK
- Список
- журнал
- долгосрочный
- посмотреть
- любит
- машина
- обучение с помощью машины
- Главная
- управлять
- управление
- менеджер
- спички
- Макс
- максимальный
- упомянутый
- Метаданные
- может быть
- миграция
- Минут
- отсутствующий
- изменять
- Мониторы
- БОЛЕЕ
- самых
- мотоцикл
- переехал
- движется
- с разными
- множество
- должен
- имя
- Откройте
- Новые
- следующий
- нет
- в своих размышлениях
- уведомление
- Уведомления
- сейчас
- номер
- объекты
- of
- .
- on
- ONE
- открытый
- оперативный
- Оптимизировать
- or
- заказ
- организации
- в противном случае
- наши
- на открытом воздухе
- выходной
- внешнюю
- накладные расходы
- обзор
- собственный
- страница
- выплачен
- пар
- Параллельные
- часть
- pass
- Пароль
- мимо
- паттеранами
- платить
- оплата
- для
- производительность
- фаза
- штук
- трубопровод
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- PO
- сборах
- бассейн
- После
- Блог
- потенциал
- предопределенный
- представить
- предварительно
- цена
- процесс
- Обработанный
- Процессы
- обработка
- производит
- Продукт
- Менеджер по продукции
- Продукция
- обеспечивать
- при условии
- опубликованный
- целей
- толкнул
- количество
- Сырье
- готовый
- поступления
- получила
- получение
- рекомендовать
- относиться
- ссылка
- регулярное выражение
- Отклоненный..
- Связанный
- Отношения
- соответствующие
- хранилище
- Запросы
- Требования
- Полезные ресурсы
- те
- ответ
- сохранение
- Ездить
- условиями,
- Run
- Бег
- то же
- образец
- экономия
- масштабируемые
- сканирование
- Поиск
- Во-вторых
- Раздел
- разделах
- безопасный
- безопасно
- поиск
- выберите
- Отправить
- старший
- Serverless
- обслуживание
- Услуги
- набор
- настройки
- общие
- должен
- показывать
- Шоу
- подпись
- значительный
- просто
- Размер
- So
- Решение
- Решения
- Расходы
- стек
- Стеки
- Этап
- этапы
- стандарт
- Начало
- и политические лидеры
- начинается
- Область
- Шаг
- Шаги
- По-прежнему
- диск
- магазин
- Стратегия
- отправить
- успешный
- такие
- РЕЗЮМЕ
- Поддержанный
- ТАБЛИЦЫ
- взять
- принимает
- Сложность задачи
- налог
- команда
- Технологии
- Терминал
- terms
- Техас
- текст
- который
- Ассоциация
- The Block
- их
- Их
- тогда
- Эти
- они
- этой
- три
- Через
- ярус
- время
- кропотливый
- в
- Сегодняшних
- традиционный
- трансформация
- Стратегия трансформации
- переход
- путешествовать
- срабатывает
- стараться
- два
- напишите
- Ед. изм
- загружено
- использование
- используемый
- Информация о пользователе
- использования
- через
- действительный
- Проверка
- ценностное
- Наши ценности
- продавец
- поставщики
- проверка
- с помощью
- Вид
- визуализация
- визуализации
- способы
- we
- Web
- веб-сервисы
- когда
- будь то
- который
- окно
- в
- без
- Работа
- рабочий
- Рабочие процессы
- работает
- записывать
- Ты
- ВАШЕ
- зефирнет