Günümüzün iş ortamında kuruluşlar sürekli olarak finansal süreçlerini optimize etmenin, verimliliği artırmanın ve maliyet tasarrufu sağlamanın yollarını arıyor. Önemli iyileştirme potansiyeli taşıyan alanlardan biri borç hesaplarıdır. Yüksek düzeyde, borç hesapları süreci faturaların alınmasını ve taranmasını, taranan faturalardan ilgili verilerin çıkarılmasını, doğrulamayı, onaylamayı ve arşivlemeyi içerir. İkinci adım (çıkarma) karmaşık olabilir. Her fatura ve makbuz farklı görünüyor. Etiketler kusurlu ve tutarsızdır. Fiyat, satıcı adı, satıcı adresi ve ödeme koşulları gibi en önemli bilgiler genellikle açıkça etiketlenmez ve bağlama göre yorumlanmaları gerekir. Verileri ayıklamak için gerçek kişi olan incelemecileri kullanmanın geleneksel yaklaşımı zaman alıcıdır, hataya açıktır ve ölçeklenebilir değildir.
Bu yazıda, borç hesapları sürecinin nasıl otomatikleştirileceğini gösteriyoruz. Amazon Metin Yazısı veri çıkarma için. Ayrıca ayıklama, doğrulama, arşivleme ve akıllı aramaya olanak tanıyan bir fatura otomasyon hattı oluşturmak için bir referans mimarisi de sağlıyoruz.
Çözüme genel bakış
Aşağıdaki mimari şeması, makbuz ve fatura işleme iş akışının aşamalarını göstermektedir. Taranan faturaları ve makbuzları güvenli bir şekilde toplamak ve saklamak için belge yakalama aşamasıyla başlar. Bir sonraki aşama, toplanan faturaları ve makbuzları Amazon Textract'a ilettiğiniz çıkarma aşamasıdır. AnalyzeExpense
Satıcı adı, fatura alındı tarihi, sipariş tarihi, ödenmesi gereken tutar, ödenen tutar vb. gibi metinler arasındaki mali açıdan ilişkili ilişkileri çıkarmaya yönelik API. Bir sonraki aşamada, girişi otomatik olarak onaylamanız mı yoksa reddetmeniz mi gerektiğini belirlemek için önceden tanımlanmış gider kurallarını kullanırsınız. Onaylanan ve reddedilen belgeler, klasördeki ilgili klasörlere gider. Amazon Basit Depolama Hizmeti (Amazon S3) kovası. Onaylanan belgeler için, ayıklanan tüm alanları ve değerleri kullanarak arama yapabilirsiniz. Amazon Açık Arama Hizmeti. Dizine eklenen meta verileri OpenSearch Kontrol Panellerini kullanarak görselleştirebilirsiniz. Onaylanan belgeler aynı zamanda şuraya taşınacak şekilde ayarlandı: Amazon S3 Akıllı Katmanlama S3 yaşam döngüsü ilkelerini kullanarak uzun süreli saklama ve arşivleme için.
Aşağıdaki bölümler size çözümü oluşturma sürecinde yol gösterecektir.
Önkoşullar
Bu çözümü dağıtmak için aşağıdakilere sahip olmanız gerekir:
- Bir AWS hesabı.
- An AWS Bulut9 çevre. AWS Cloud9, kodunuzu yalnızca bir tarayıcıyla yazmanıza, çalıştırmanıza ve hata ayıklamanıza olanak tanıyan bulut tabanlı bir entegre geliştirme ortamıdır (IDE). Bir kod düzenleyici, hata ayıklayıcı ve terminal içerir.
AWS Cloud9 ortamını oluşturmak için bir ad ve açıklama girin. Geriye kalan her şeyi varsayılan olarak tutun. IDE'ye gitmek için AWS Cloud9 konsolundaki IDE bağlantısını seçin. Artık AWS Cloud9 ortamını kullanmaya hazırsınız.
Çözümü dağıtın
Çözümü ayarlamak için şunu kullanırsınız: AWS Bulut Geliştirme Kiti (AWS CDK) dağıtmak için AWS CloudFormation yığını.
- AWS Cloud9 IDE terminalinizde, GitHub deposu ve bağımlılıkları yükleyin. Dağıtmak için aşağıdaki komutları çalıştırın
InvoiceProcessor
yığın:
Dağıtım, GitHub deposundaki varsayılan yapılandırma ayarlarıyla yaklaşık 25 dakika sürer. AWS CloudFormation konsolunda ek çıktı bilgileri de mevcuttur.
- AWS CDK dağıtımı tamamlandıktan sonra gider doğrulama kurallarını bir Amazon DinamoDB masa. Aşağıdaki komutları çalıştırmak için aynı AWS Cloud9 terminalini kullanabilirsiniz:
- Şununla başlayan S3 paketinde:
invoiceprocessorworkflow-invoiceprocessorbucketf1-*
, bir yükleme klasörü oluşturun.
In Amazon Cognito'suadında mevcut bir kullanıcı havuzunuz olması gerekir OpenSearchResourcesCognitoUserPool*
. Bu kullanıcı havuzunu yeni bir kullanıcı oluşturmak için kullanıyoruz.
- Amazon Cognito konsolunda kullanıcı havuzuna gidin
OpenSearchResourcesCognitoUserPool*
. - Yeni bir Amazon Cognito kullanıcısı oluşturun.
- Seçtiğiniz bir kullanıcı adı ve şifreyi girin ve bunları daha sonra kullanmak üzere not edin.
- Belgeleri yükleyin rastgele_invoice1 ve rastgele_invoice2 S3'e
uploads
iş akışlarını başlatmak için klasör.
Şimdi belge işleme adımlarının her birine dalalım.
Belge Yakalama
Müşteriler, farklı satıcılardan gelen çok sayıda formattaki faturaları ve makbuzları yönetir. Bu belgeler, basılı kopyalar, dosya deposuna yüklenen taranmış kopyalar veya paylaşılan depolama aygıtları gibi kanallar aracılığıyla alınır. Belge yakalama aşamasında, makbuzların ve faturaların tüm taranmış kopyalarını S3 klasörü gibi yüksek düzeyde ölçeklenebilir bir depolama alanında saklarsınız.
Çıkarma
Bir sonraki aşama, toplanan faturaları ve makbuzları Amazon Textract'a ilettiğiniz çıkarma aşamasıdır. AnalyzeExpense
Satıcı Adı, Fatura Alındı Tarihi, Sipariş Tarihi, Ödenen/Ödenen Tutar vb. gibi metinler arasındaki mali açıdan ilişkili ilişkileri çıkarmaya yönelik API.
Analiz Gider fatura ve makbuz belgelerinin işlenmesine adanmış bir API'dir. Hem senkronize hem de asenkron API olarak mevcuttur. Senkronize API, resimleri bayt formatında göndermenize olanak tanır ve asenkron API, dosyaları JPG, PNG, TIFF ve PDF formatlarında göndermenize olanak tanır. AnalyzeExpense
API yanıtı üç farklı bölümden oluşur:
- Özet alanları – Bu bölüm hem normalleştirilmiş anahtarları hem de açıkça belirtilen anahtarları değerleriyle birlikte içerir.
AnalyzeExpense
Satıcı adı ve satıcı adresi gibi iletişimle ilgili bilgiler, vergi mükellefi kimliği gibi vergi kimliğiyle ilgili anahtarlar, vadesi gelen tutar ve indirim gibi ödemeyle ilgili anahtarlar ve fatura kimliği, teslimat tarihi ve teslimat tarihi gibi genel anahtarlar için anahtarları normalleştirir. hesap numarası. Normalleştirilmemiş anahtarlar, özet alanlarında anahtar/değer çiftleri olarak görünmeye devam eder. Desteklenen gider alanlarının tam listesi için bkz. Fatura ve Makbuzları Analiz Etme. - Satır öğeleri – Bu bölüm, öğe açıklaması, birim fiyatı, miktarı ve ürün kodu gibi normalleştirilmiş satır öğesi anahtarlarını içerir.
- OCR bloğu – Blok, fatura sayfasından alınan ham metin özetini içerir. Ham metin özü, özet ve satır öğesi alanlarının bir parçası olarak kapsanmayan bilgilerin sonradan işlenmesi ve tanımlanması için kullanılabilir.
Bu yayın, Amazon Textract IDP CDK yapıları (Akıllı belge işleme (IDP) iş akışlarına yönelik altyapıyı tanımlayan AWS CDK bileşenleri), duruma özel, özelleştirilebilir IDP iş akışları oluşturmanıza olanak tanır. Yapılar ve örnekler, AWS'de IDP işlemlerinin tanımlanmasını sağlayan ve şu adreste yayınlanan bileşenlerden oluşan bir koleksiyondur: GitHub. Kullanılan ana kavramlar AWS CDK yapılarıdır, gerçek AWS CDK yığınları, ve AWS Basamak İşlevleri.
Aşağıdaki şekil Step Functions iş akışını göstermektedir.
Çıkarma iş akışı aşağıdaki adımları içerir:
- Fatura İşlemcisi-Karar Verici - Bir AWS Lambda Giriş belgesi biçiminin Amazon Textract tarafından desteklenip desteklenmediğini doğrulayan işlev. Desteklenen formatlar hakkında daha fazla ayrıntı için bkz. Giriş Belgeleri.
- Belge Bölücü – Belgelerden 2,500 sayfalık (maks) parçalar oluşturan ve çok sayfalı büyük belgeleri işleyebilen bir Lambda işlevi.
- Harita Durumu – Her parçayı paralel olarak işleyen bir Lambda işlevi.
- TexttractAsync – Bu görev, aşağıdaki eşzamansız API'yi kullanarak Amazon Texttract'ı çağırır: en iyi uygulamalar ile Amazon Basit Bildirim Servisi (Amazon SNS) bildirimleri ve kullanımları
OutputConfig
Amazon Textract JSON çıktısını daha önce oluşturduğunuz S3 klasörüne depolamak için. İki Lambda işlevinden oluşur: biri belgeyi işlenmek üzere göndermek için, diğeri ise SNS bildiriminde tetiklenen. - TexttractAsyncToJSON2 - Çünkü
TextractAsync
görev birden fazla sayfalandırılmış çıktı dosyası üretebilir,TextractAsyncToJSON2
süreç bunları tek bir JSON dosyasında birleştirir.
Sonraki üç adımın ayrıntılarını aşağıdaki bölümlerde tartışacağız.
Doğrulama ve onay
Doğrulama aşaması için SetMetaData
Lambda işlevi, yüklenen dosyanın daha önce DynamoDB tablosunda yapılandırılan kurallara göre geçerli bir gider olup olmadığını doğrular. Bu gönderi için aşağıdaki örnek kuralları kullanacaksınız:
- Doğrulama başarılı olursa
INVOICE_RECEIPT_ID
mevcut ve normal ifadeyle eşleşiyor(?i)[0-9]{3}[a-z]{3}[0-9]{3}$
ve ifPO_NUMBER
mevcut ve normal ifadeyle eşleşiyor(?i)[a-z0-9]+$
- Aşağıdaki durumlardan herhangi biri durumunda doğrulama başarısız olur:
PO_NUMBER
orINVOICE_RECEIPT_ID
belgede yanlış veya eksik.
Dosyalar işlendikten sonra gider doğrulama işlevi giriş dosyalarını ikisinden birine taşır: approved
or declined
aynı S3 klasöründeki klasörler.
Bu çözümün amaçları doğrultusunda gider doğrulama kurallarını depolamak için DynamoDB'yi kullanıyoruz. Ancak bu çözümü kendi veya ticari gider doğrulama veya yönetim çözümlerinizle entegre olacak şekilde değiştirebilirsiniz.
Akıllı indeksleme ve arama
İle OpenSearchPushInvoke
Lambda işleviyle, çıkarılan gider meta verileri bir OpenSearch Hizmeti dizinine aktarılır ve aramaya hazır hale gelir.
Nihai TaskOpenSearchMapping
adım, aksi halde kapsamı aşabilecek bağlamı temizler. Adım İşlevleri kotası bir görev, durum veya iş akışı çalıştırması için maksimum giriş veya çıkış boyutu.
OpenSearch Hizmeti dizini oluşturulduktan sonra, OpenSearch Kontrol Panelleri aracılığıyla çıkarılan metinden anahtar kelimeleri arayabilirsiniz.
Arşivleme, denetim ve analiz
Faturaların ve makbuzların yaşam döngüsünü ve arşivlenmesini yönetmek için, S3 nesnelerinin Standart'tan Akıllı Katmanlı depolama sınıflarına geçişini sağlayacak şekilde S3 yaşam döngüsü kurallarını yapılandırabilirsiniz. S3 Akıllı Katmanlama, erişim düzenlerini izler ve art arda 30 gün boyunca erişilmeyen nesneleri otomatik olarak Seyrek Erişim katmanına taşır. 90 gün boyunca erişim sağlanmadığında nesneler, performans etkisi veya operasyonel ek yük olmaksızın Arşiv Anında Erişim katmanına taşınır.
Denetim ve analiz için bu çözüm, fatura isteklerinde analiz çalıştırmak amacıyla OpenSearch Hizmetini kullanır. OpenSearch Hizmeti, günlük analizi, uygulama araması, kurumsal arama ve daha fazlası gibi çeşitli kullanım durumları için verileri zahmetsizce almanıza, güvenliğini sağlamanıza, aramanıza, toplamanıza, görüntülemenize ve analiz etmenize olanak tanır.
OpenSearch Kontrol Panellerinde oturum açın ve şuraya gidin: Yığın Yönetimi, Kaydedilen nesneler, Daha sonra seçmek ithalat. Seç faturalar.ndjson klonlanmış depodaki dosyayı seçin ve ithalat. Bu, dizinleri önceden doldurur ve görselleştirmeyi oluşturur.
Sayfayı yenileyin ve şuraya gidin: Ana Sayfa, Kullanıcı Panelive aç Faturalar. Artık filtreleri seçip uygulayabilir ve geçmiş faturaları keşfetmek için zaman penceresini genişletebilirsiniz.
Temizlemek
Makbuzları ve faturaları işlemek için Amazon Textract'ı değerlendirmeyi bitirdiğinizde, oluşturmuş olabileceğiniz kaynakları temizlemenizi öneririz. Aşağıdaki adımları tamamlayın:
- S3 paketindeki tüm içeriği silin
invoiceprocessorworkflow-invoiceprocessorbucketf1-*
. - AWS Cloud9'da Amazon Cognito kaynaklarını ve CloudFormation yığınlarını silmek için aşağıdaki komutları çalıştırın:
- AWS Cloud9 konsolundan oluşturduğunuz AWS Cloud9 ortamını silin.
Sonuç
Bu yazıda, veri ayıklamak için Amazon Textract'ı kullanarak nasıl bir fatura otomasyon hattı oluşturabileceğimize ve doğrulama, arşivleme ve arama için bir iş akışını nasıl oluşturabileceğimize dair bir genel bakış sunduk. Nasıl kullanılacağına ilişkin kod örnekleri sağladık. AnalyzeExpense
Bir faturadan kritik alanların çıkarılmasına yönelik API.
Başlamak için bu özelliği denemek üzere Amazon Textract konsolunda oturum açın. Amazon Textract özellikleri hakkında daha fazla bilgi edinmek için bkz. Amazon Textract Geliştirici Kılavuzu or Textract Kaynakları. IDP hakkında daha fazla bilgi edinmek için AWS AI hizmetlerine sahip IDP'ye bakın Bölüm 1 ve Bölüm 2 mesaj var.
Yazarlar Hakkında
Sushant Pradhan Amazon Web Services'te kurumsal müşterilere yardımcı olan Kıdemli Çözüm Mimarıdır. İlgi alanları ve deneyimleri arasında konteynerler, sunucusuz teknoloji ve DevOps yer almaktadır. Sushant, boş zamanlarında ailesiyle birlikte dışarıda vakit geçirmekten hoşlanıyor.
Şibin Michaelraj AWS Textract ekibinde Kıdemli Ürün Yöneticisidir. AWS müşterileri için AI/ML tabanlı ürünler oluşturmaya odaklanmıştır.
suprakash dutta Amazon Web Services'ta Kıdemli Çözüm Mimarıdır. Dijital dönüşüm stratejisi, uygulama modernizasyonu ve geçişi, veri analitiği ve makine öğrenimi konularına odaklanmaktadır. AWS'deki AI/ML topluluğunun bir parçasıdır ve akıllı belge işleme çözümleri tasarlar.
Maran Chandrasekaran Amazon Web Services'ta kurumsal müşterilerimizle birlikte çalışan bir Kıdemli Çözüm Mimarıdır. İş dışında, Texas Hill Country'de seyahat etmeyi ve motosikletini sürmeyi seviyor.
- SEO Destekli İçerik ve Halkla İlişkiler Dağıtımı. Bugün Gücünüzü Artırın.
- PlatoData.Network Dikey Üretken Yapay Zeka. Kendine güç ver. Buradan Erişin.
- PlatoAiStream. Web3 Zekası. Bilgi Genişletildi. Buradan Erişin.
- PlatoESG. karbon, temiz teknoloji, Enerji, Çevre, Güneş, Atık Yönetimi. Buradan Erişin.
- PlatoSağlık. Biyoteknoloji ve Klinik Araştırmalar Zekası. Buradan Erişin.
- Kaynak: https://aws.amazon.com/blogs/machine-learning/build-a-receipt-and-invoice-processing-pipeline-with-amazon-textract/