У сучасному бізнес-ландшафті організації постійно шукають шляхи оптимізації своїх фінансових процесів, підвищення ефективності та економії коштів. Однією з сфер, яка має значний потенціал для покращення, є кредиторська заборгованість. На високому рівні процес розрахунків із заборгованістю включає отримання та сканування рахунків-фактур, вилучення відповідних даних зі сканованих рахунків-фактур, перевірку, затвердження та архівування. Другий крок (екстракція) може бути складним. Кожен рахунок-фактура та квитанція виглядають по-різному. Етикетки недосконалі та суперечливі. Найважливіші частини інформації, такі як ціна, ім’я постачальника, адреса постачальника та умови оплати, часто не позначаються чітко, і їх потрібно інтерпретувати відповідно до контексту. Традиційний підхід із використанням рецензентів для отримання даних займає багато часу, загрожує помилками та не масштабується.
У цій публікації ми покажемо, як автоматизувати процес розрахунків з кредиторами за допомогою Текст Amazon для вилучення даних. Ми також надаємо еталонну архітектуру для побудови конвеєра автоматизації рахунків-фактур, який забезпечує вилучення, перевірку, архівування та інтелектуальний пошук.
Огляд рішення
На наступній схемі архітектури показано етапи робочого циклу обробки квитанції та рахунка-фактури. Він починається з етапу захоплення документів для безпечного збору та зберігання відсканованих рахунків-фактур і квитанцій. Наступним етапом є етап вилучення, коли ви передаєте зібрані рахунки-фактури та квитанції до Amazon Texttract AnalyzeExpense
API для отримання фінансово пов’язаних зв’язків між текстом, таким як назва постачальника, дата отримання рахунку, дата замовлення, сума до сплати, сплачена сума тощо. На наступному етапі ви використовуєте попередньо визначені правила витрат, щоб визначити, чи слід автоматично затверджувати чи відхиляти квитанцію. Схвалені та відхилені документи потрапляють у відповідні папки в Служба простого зберігання Amazon (Amazon S3) відро. Для затверджених документів ви можете шукати всі витягнуті поля та значення за допомогою Служба Amazon OpenSearch. Ви можете візуалізувати проіндексовані метадані за допомогою інформаційних панелей OpenSearch. Затверджені документи також налаштовані для переміщення Amazon S3 Інтелектуальний для довгострокового зберігання та архівування за допомогою політик життєвого циклу S3.
У наступних розділах описано процес створення рішення.
Передумови
Щоб розгорнути це рішення, ви повинні мати:
- Обліковий запис AWS.
- An AWS Cloud9 навколишнє середовище. 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 Texttract AnalyzeExpense
API для отримання фінансово пов’язаних зв’язків між текстом, таким як ім’я постачальника, дата отримання рахунка-фактури, дата замовлення, сума до сплати/сплата тощо.
Аналіз витрат це API, призначений для обробки документів рахунків-фактур і квитанцій. Він доступний як синхронний, так і асинхронний API. Синхронний API дозволяє надсилати зображення у форматі байтів, а асинхронний API дозволяє надсилати файли у форматах JPG, PNG, TIFF і PDF. The AnalyzeExpense
Відповідь API складається з трьох окремих розділів:
- Підсумкові поля – Цей розділ включає як нормалізовані ключі, так і явно згадані ключі разом із їхніми значеннями.
AnalyzeExpense
нормалізує ключі для контактної інформації, такої як ім’я постачальника та адреса постачальника, ключі, пов’язані з ідентифікаційним номером платника податків, такі як ідентифікаційний номер платника податків, ключі, пов’язані з оплатою, такі як сума до сплати та знижка, і загальні ключі, такі як ідентифікатор рахунку-фактури, дата доставки та номер рахунку. Ключі, які не нормалізовані, все ще відображаються в полях підсумку як пари ключ-значення. Повний список підтримуваних полів витрат див Аналіз рахунків-фактур і квитанцій. - Line items – Цей розділ містить нормалізовані ключі позицій, як-от опис позиції, ціна за одиницю, кількість і код продукту.
- OCR блок – Блок містить витяг необробленого тексту зі сторінки рахунку-фактури. Екстракт необробленого тексту можна використовувати для постобробки та ідентифікації інформації, яка не охоплена як частина полів підсумку та позиції.
Ця публікація використовує Amazon Texttract IDP CDK конструкції (Компоненти AWS CDK для визначення інфраструктури для робочих процесів інтелектуальної обробки документів (IDP), що дає змогу створювати індивідуальні робочі процеси IDP, які можна налаштовувати. Конструкції та зразки являють собою набір компонентів для визначення процесів IDP на AWS і опубліковані в GitHub. Основними поняттями, які використовуються, є конструкції AWS CDK, фактичні Стеки AWS CDK та Функції кроку AWS.
На наступному малюнку показано робочий процес крокових функцій.
Робочий процес вилучення включає такі кроки:
- InvoiceProcessor-Decider - Ан AWS Lambda функція, яка перевіряє, чи формат вхідного документа підтримується Amazon Texttract. Додаткову інформацію про підтримувані формати див Вхідні документи.
- DocumentSplitter – Функція Lambda, яка генерує фрагменти на 2,500 сторінок (макс.) з документів і може обробляти великі багатосторінкові документи.
- Стан карти – Лямбда-функція, яка обробляє кожен фрагмент паралельно.
- TextAsync – Це завдання викликає Amazon Texttract за допомогою наступного асинхронного API передового досвіду з Служба простих сповіщень Amazon (Amazon SNS) сповіщення та використання
OutputConfig
щоб зберегти вихідні дані JSON Amazon Texttract у сегменті S3, який ви створили раніше. Він складається з двох лямбда-функцій: одна для надсилання документа на обробку та друга, яка запускається під час сповіщення SNS. - TextAsyncToJSON2 - Тому що
TextractAsync
Завдання може створювати декілька вихідних файлів із розбивкою на сторінкиTextractAsyncToJSON2
процес поєднує їх в один файл JSON.
Ми обговорюємо подробиці наступних трьох кроків у наступних розділах.
Перевірка та затвердження
Для етапу перевірки SetMetaData
Функція Lambda перевіряє, чи є завантажений файл дійсним видатком відповідно до правил, налаштованих раніше в таблиці 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 Service і доступні для пошуку.
Останній TaskOpenSearchMapping
крок очищає контекст, який інакше міг би перевищувати Квота функцій кроку максимального вхідного або вихідного розміру для виконання завдання, стану або робочого циклу.
Після створення індексу OpenSearch Service ви можете шукати ключові слова з вилученого тексту за допомогою інформаційних панелей OpenSearch.
Архів, аудит, аналітика
Щоб керувати життєвим циклом і архівуванням рахунків-фактур і квитанцій, ви можете налаштувати правила життєвого циклу S3 для переходу об’єктів S3 зі стандартного класу зберігання на інтелектуальний рівень. S3 Intelligent-Tiering відстежує моделі доступу та автоматично переміщує об’єкти на рівень нечастого доступу, якщо до них не зверталися протягом 30 днів поспіль. Після 90 днів відсутності доступу об’єкти переміщуються на рівень архівного миттєвого доступу без впливу на продуктивність або операційних витрат.
Для аудиту та аналітики це рішення використовує службу OpenSearch Service для запуску аналітики запитів рахунків-фактур. Служба OpenSearch дозволяє без зусиль завантажувати, захищати, шукати, агрегувати, переглядати й аналізувати дані для низки випадків використання, таких як аналітика журналів, пошук програм, корпоративний пошук тощо.
Увійдіть до інформаційних панелей OpenSearch і перейдіть до Управління стеком, Збережені об'єкти, Потім виберіть Імпортувати. Виберіть invoices.ndjson файл із клонованого сховища та виберіть Імпортувати. Це попередньо заповнює індекси та створює візуалізацію.
Оновіть сторінку та перейдіть до Головна, Інформаційна панель, і відкрити Рахунки. Тепер ви можете вибирати та застосовувати фільтри та розширювати часове вікно для перегляду минулих рахунків-фактур.
Прибирати
Коли ви закінчите оцінювати Amazon Texttract для обробки квитанцій і рахунків-фактур, ми рекомендуємо очистити всі ресурси, які ви могли створити. Виконайте наступні дії:
- Видаліть увесь вміст із відра S3
invoiceprocessorworkflow-invoiceprocessorbucketf1-*
. - В AWS Cloud9 виконайте такі команди, щоб видалити ресурси Amazon Cognito та стеки CloudFormation:
- Видаліть середовище AWS Cloud9, яке ви створили з консолі AWS Cloud9.
Висновок
У цій публікації ми надали огляд того, як ми можемо створити конвеєр автоматизації рахунків-фактур за допомогою Amazon Texttract для вилучення даних і створити робочий процес для перевірки, архівування та пошуку. Ми надали зразки коду, як використовувати AnalyzeExpense
API для вилучення критичних полів з рахунку-фактури.
Щоб почати, увійдіть у консоль Amazon Texttract, щоб спробувати цю функцію. Щоб дізнатися більше про можливості Amazon Texttract, зверніться до Посібник розробника Amazon Textract or Текстові ресурси. Щоб дізнатися більше про IDP, зверніться до IDP із послугами штучного інтелекту AWS Частина 1 та Частина 2 пости
Про авторів
Сушант Прадхан є старшим архітектором рішень у Amazon Web Services, допомагаючи корпоративним клієнтам. Його інтереси та досвід включають контейнери, безсерверні технології та DevOps. У вільний час Сушант любить проводити час на природі зі своєю родиною.
Шибін Майклрадж є старшим менеджером із продуктів команди AWS Texttract. Він зосереджений на створенні продуктів на основі AI/ML для клієнтів AWS.
Супракаш Дутта є старшим архітектором рішень у Amazon Web Services. Він зосереджується на стратегії цифрової трансформації, модернізації та міграції програм, аналітиці даних і машинному навчанні. Він є частиною спільноти AI/ML в AWS і розробляє інтелектуальні рішення для обробки документів.
Маран Чандрасекаран є старшим архітектором рішень у Amazon Web Services, який працює з нашими корпоративними клієнтами. Поза роботою він любить подорожувати та їздити на мотоциклі в Texas Hill Country.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- PlatoHealth. Розвідка про біотехнології та клінічні випробування. Доступ тут.
- джерело: 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
- Amazon Web Services
- кількість
- an
- аналітика
- аналізувати
- та
- будь-який
- API
- з'являтися
- додаток
- Застосовувати
- підхід
- твердження
- схвалювати
- затверджений
- архітектура
- архів
- ЕСТЬ
- ПЛОЩА
- навколо
- AS
- At
- аудит
- аудит
- автоматизувати
- автоматично
- Автоматизація
- доступний
- AWS
- AWS Cloud9
- AWS CloudFormation
- заснований
- BE
- оскільки
- було
- між
- Блокувати
- Bootstrap
- обидва
- браузер
- будувати
- Створюємо
- Будує
- бізнес
- by
- званий
- Виклики
- CAN
- можливості
- захоплення
- випадків
- канали
- перевірка
- вибір
- Вибирати
- класів
- Очищення
- хмара
- Cloud9
- код
- збирати
- збір
- комбінати
- комерційний
- співтовариство
- повний
- комплекс
- Компоненти
- поняття
- конфігурація
- налаштувати
- поспіль
- складається
- Консоль
- постійно
- конструкти
- Контейнери
- містить
- зміст
- контекст
- Коштувати
- економія на витратах
- може
- країна
- покритий
- створювати
- створений
- створення
- критичний
- Клієнти
- настроюється
- приладова панель
- інформаційні панелі
- дані
- Analytics даних
- Дата
- Днів
- присвячених
- дефолт
- визначати
- визначення
- доставка
- залежно
- розгортання
- розгортання
- description
- конструкцій
- знищити
- деталі
- Визначати
- Розробник
- розробка
- прилади
- схема
- різний
- цифровий
- цифрове перетворення
- Знижка
- обговорювати
- чіткий
- занурення
- документ
- документація
- управляти
- два
- Дутта
- кожен
- Раніше
- нудьгувати
- редактор
- ефективність
- легко
- або
- ще
- включіть
- дозволяє
- підвищувати
- підприємство
- Навколишнє середовище
- і т.д.
- оцінки
- все
- перевищувати
- існуючий
- Розширювати
- досвід
- явно
- дослідити
- витяг
- видобуток
- сім'я
- особливість
- поле
- Поля
- Рисунок
- філе
- Файли
- Фільтри
- остаточний
- фінансовий
- фінансово
- увагу
- фокусується
- після
- для
- формат
- від
- функція
- Функції
- Загальне
- генерує
- отримати
- Git
- GitHub
- Go
- обробляти
- Жорсткий
- Мати
- he
- допомогу
- Високий
- дуже
- його
- тримає
- Як
- How To
- Однак
- HTML
- HTTP
- HTTPS
- людина
- i
- ID
- ідентифікує
- if
- зображень
- Impact
- імпорт
- важливо
- поліпшення
- in
- включати
- includes
- неправильний
- індекс
- індексований
- покажчики
- інформація
- Інфраструктура
- вхід
- встановлювати
- мить
- інтегрувати
- інтегрований
- Розумний
- Інтелектуальна обробка документів
- інтереси
- в
- рахунок-фактура
- обробка рахунків-фактур
- рахунки
- IT
- JPG
- json
- просто
- тримати
- ключі
- ключові слова
- етикетки
- ландшафт
- великий
- пізніше
- УЧИТЬСЯ
- вивчення
- дозволяє
- рівень
- Життєвий цикл
- як
- Лінія
- LINK
- список
- журнал
- довгостроковий
- подивитися
- любить
- машина
- навчання за допомогою машини
- головний
- управляти
- управління
- менеджер
- сірники
- Макс
- максимальний
- згаданий
- метадані
- може бути
- міграція
- хвилин
- відсутній
- змінювати
- монітори
- більше
- найбільш
- мотоцикл
- переїхав
- рухається
- множинний
- безліч
- повинен
- ім'я
- Переміщення
- Нові
- наступний
- немає
- увагу
- сповіщення
- Повідомлення
- зараз
- номер
- об'єкти
- of
- часто
- on
- ONE
- відкрити
- оперативний
- Оптимізувати
- or
- порядок
- організації
- інакше
- наші
- на відкритому повітрі
- вихід
- поза
- накладні витрати
- огляд
- власний
- сторінка
- оплачувану
- пар
- Паралельні
- частина
- проходити
- Пароль
- Минуле
- моделі
- платити
- оплата
- для
- продуктивність
- фаза
- частин
- трубопровід
- plato
- Інформація про дані Платона
- PlatoData
- PO
- Політика
- басейн
- пошта
- Пости
- потенціал
- заздалегідь визначений
- представити
- раніше
- price
- процес
- Оброблено
- процеси
- обробка
- виробляти
- Product
- менеджер по продукції
- Продукти
- забезпечувати
- за умови
- опублікований
- цілей
- штовхнув
- кількість
- Сировина
- готовий
- надходження
- отримано
- отримання
- рекомендувати
- послатися
- посилання
- regex
- Відхилено..
- пов'язаний
- Відносини
- доречний
- Сховище
- запитів
- Вимога
- ресурси
- ті
- відповідь
- утримання
- Ride
- Правила
- прогін
- біг
- то ж
- зразок
- Економія
- масштабовані
- сканування
- Пошук
- другий
- розділ
- розділам
- безпечний
- безпечно
- пошук
- вибрати
- послати
- старший
- Без сервера
- обслуговування
- Послуги
- комплект
- налаштування
- загальні
- Повинен
- Показувати
- Шоу
- підпис
- значний
- простий
- Розмір
- So
- рішення
- Рішення
- Витрати
- стек
- Стеки
- Стажування
- етапи
- standard
- старт
- почалася
- починається
- стан
- Крок
- заходи
- Як і раніше
- зберігання
- зберігати
- Стратегія
- представляти
- успішний
- такі
- РЕЗЮМЕ
- Підтриманий
- таблиця
- Приймати
- приймає
- Завдання
- податок
- команда
- Технологія
- термінал
- terms
- Техас
- текст
- Що
- Команда
- Блок
- їх
- Їх
- потім
- Ці
- вони
- це
- три
- через
- ярус
- час
- трудомісткий
- до
- сьогоднішній
- традиційний
- Перетворення
- Стратегія трансформації
- перехід
- подорожувати
- спрацьовує
- намагатися
- два
- тип
- блок
- завантажено
- використання
- використовуваний
- користувач
- використовує
- використання
- дійсний
- перевірка достовірності
- значення
- Цінності
- продавець
- постачальники
- перевірка
- через
- вид
- візуалізації
- візуалізувати
- способи
- we
- Web
- веб-сервіси
- коли
- Чи
- який
- вікно
- з
- в
- без
- Work
- робочий
- Робочі процеси
- робочий
- запис
- Ти
- вашу
- зефірнет