Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract

Teks Amazon adalah layanan pembelajaran mesin (ML) yang secara otomatis mengekstrak teks, tulisan tangan, dan data dari dokumen atau gambar apa pun. Amazon Textract sekarang menawarkan fleksibilitas untuk menentukan data yang Anda perlukan untuk mengekstrak dari dokumen menggunakan fitur Query baru dalam Analyze Document API. Anda tidak perlu mengetahui struktur data dalam dokumen (tabel, formulir, bidang tersirat, data bersarang) atau khawatir tentang variasi di seluruh versi dan format dokumen.

Dalam posting ini, kita membahas topik-topik berikut:

  • Kisah sukses dari pelanggan AWS dan manfaat fitur Kueri baru
  • Bagaimana Analyze Document Query API membantu mengekstrak informasi dari dokumen
  • Panduan konsol Amazon Textract
  • Contoh kode untuk memanfaatkan API Analisis Dokumen Kueri
  • Cara memproses respons dengan perpustakaan parser Amazon Textract

Manfaat fitur Kueri baru

Solusi OCR tradisional berjuang untuk mengekstrak data secara akurat dari sebagian besar dokumen semi-terstruktur dan tidak terstruktur karena variasi yang signifikan dalam cara data diletakkan di berbagai versi dan format dokumen ini. Anda perlu menerapkan kode pascapemrosesan khusus atau meninjau informasi yang diekstrak dari dokumen ini secara manual. Dengan fitur Kueri, Anda dapat menentukan informasi yang Anda butuhkan dalam bentuk pertanyaan bahasa alami (misalnya, "Apa nama pelanggan") dan menerima informasi yang tepat ("John Doe") sebagai bagian dari respons API. Fitur ini menggunakan kombinasi model visual, spasial, dan bahasa untuk mengekstrak informasi yang Anda cari dengan akurasi tinggi. Fitur Query telah dilatih sebelumnya pada berbagai macam dokumen semi-terstruktur dan tidak terstruktur. Beberapa contoh termasuk slip pembayaran, laporan bank, W-2, formulir aplikasi pinjaman, catatan hipotek, dan kartu vaksin dan asuransi.

"Amazon Textract memungkinkan kami untuk mengotomatiskan kebutuhan pemrosesan dokumen pelanggan kami. Dengan fitur Query, kami akan dapat mengekstrak data dari berbagai dokumen dengan lebih fleksibel dan akurat," kata Robert Jansen, Chief Executive Officer di TekStream Solutions. 'Kami melihat ini sebagai kemenangan produktivitas yang besar bagi pelanggan bisnis kami, yang akan dapat menggunakan kemampuan Query sebagai bagian dari solusi IDP kami untuk mendapatkan informasi penting dari dokumen mereka dengan cepat."

"Amazon Textract memungkinkan kami mengekstrak teks serta elemen terstruktur seperti Formulir dan Tabel dari gambar dengan akurasi tinggi. Amazon Textract Query telah membantu kami secara drastis meningkatkan kualitas ekstraksi informasi dari beberapa dokumen penting bisnis seperti lembar data keselamatan atau spesifikasi material" kata Thorsten Warnecke, Kepala Sekolah | Kepala Analisis PC, Konsultan Manajemen Camelot. 'Sistem kueri bahasa alami menawarkan fleksibilitas dan akurasi luar biasa yang telah mengurangi beban pasca-pemrosesan kami dan memungkinkan kami untuk menambahkan dokumen baru ke alat ekstraksi data kami lebih cepat."

Bagaimana Analyze Document Query API membantu mengekstrak informasi dari dokumen

Perusahaan telah meningkatkan adopsi platform digital mereka, terutama mengingat pandemi COVID-19. Sebagian besar organisasi sekarang menawarkan cara digital untuk memperoleh layanan dan produk mereka menggunakan ponsel cerdas dan perangkat seluler lainnya, yang menawarkan fleksibilitas kepada pengguna tetapi juga menambah skala di mana dokumen digital perlu ditinjau, diproses, dan dianalisis. Dalam beberapa beban kerja di mana, misalnya, dokumen hipotek, kartu vaksinasi, slip gaji, kartu asuransi, dan dokumen lainnya harus dianalisis secara digital, kompleksitas ekstraksi data dapat diperburuk secara eksponensial karena dokumen-dokumen ini tidak memiliki format standar atau memiliki variasi yang signifikan dalam format data. di berbagai versi dokumen.

Bahkan solusi OCR yang hebat pun kesulitan untuk mengekstrak data secara akurat dari dokumen-dokumen ini, dan Anda mungkin harus menerapkan pascapemrosesan khusus untuk dokumen-dokumen ini. Ini termasuk pemetaan kemungkinan variasi kunci formulir ke nama bidang asli pelanggan atau termasuk pembelajaran mesin kustom untuk mengidentifikasi informasi spesifik dalam dokumen tidak terstruktur.

API Analisis Dokumen Kueri yang baru di Amazon Textract dapat menjawab pertanyaan tertulis bahasa alami seperti โ€œBerapa suku bunganya?โ€ dan lakukan analisis AI dan ML yang andal pada dokumen untuk mengetahui informasi yang diinginkan dan mengekstraknya dari dokumen tanpa pascapemrosesan. Fitur Kueri tidak memerlukan pelatihan model khusus atau penyiapan template atau konfigurasi. Anda dapat memulai dengan cepat dengan mengunggah dokumen Anda dan menentukan pertanyaan pada dokumen tersebut melalui konsol Amazon Textract, Antarmuka Baris Perintah AWS (AWS CLI), atau AWS SDK.

Di bagian selanjutnya dari posting ini, kami membahas contoh terperinci tentang cara menggunakan fungsionalitas baru ini pada kasus penggunaan beban kerja umum dan cara menggunakan Analisis Document Query API untuk menambahkan kelincahan pada proses digitalisasi beban kerja Anda.

Gunakan fitur Kueri di konsol Amazon Textract

Sebelum kita mulai dengan API dan contoh kode, mari kita tinjau konsol Amazon Textract. Gambar berikut menunjukkan contoh kartu vaksinasi di Pertanyaan tab Analisis Dokumen API di konsol Amazon Textract. Setelah Anda mengunggah dokumen ke konsol Amazon Textract, pilih Pertanyaan dalam Konfigurasikan Dokumen bagian. Anda kemudian dapat menambahkan kueri dalam bentuk pertanyaan bahasa alami. Setelah Anda menambahkan semua pertanyaan Anda, pilih Terapkan Konfigurasi. Jawaban atas pertanyaan ada di Pertanyaan Tab.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Contoh kode

Di bagian ini, kami menjelaskan cara memanggil Analyze Document API dengan parameter Query untuk mendapatkan jawaban atas pertanyaan bahasa alami tentang dokumen. Dokumen input dalam format array byte atau terletak di Layanan Penyimpanan Sederhana Amazon (Amazon S3) ember. Anda meneruskan byte gambar ke operasi Amazon Textract API dengan menggunakan properti Bytes. Misalnya, Anda dapat menggunakan Bytes properti untuk melewatkan dokumen yang dimuat dari sistem file lokal. Byte gambar dilewatkan dengan menggunakan Bytes properti harus dikodekan base64. Kode Anda mungkin tidak perlu menyandikan byte file dokumen jika Anda menggunakan AWS SDK untuk memanggil operasi Amazon Textract API. Atau, Anda dapat meneruskan gambar yang disimpan dalam ember S3 ke operasi API Amazon Textract dengan menggunakan S3Object Properti. Dokumen yang disimpan dalam bucket S3 tidak perlu dienkode base64.

Anda dapat menggunakan fitur Query untuk mendapatkan jawaban dari berbagai jenis dokumen seperti paystubs, kartu vaksinasi, dokumen hipotek, laporan bank, formulir W-2, 1099 formulir, dan lainnya. Di bagian berikut, kami membahas beberapa dokumen ini dan menunjukkan cara kerja fitur Kueri.

Gaji

Dalam contoh ini, kami menelusuri langkah-langkah untuk menganalisis paystub menggunakan fitur Query, seperti yang ditunjukkan pada contoh gambar berikut.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Kami menggunakan contoh kode Python berikut:

import boto3
import json #create a Textract Client
textract = boto3.client('textract') image_filename = "paystub.jpg" response = None
with open(image_filename, 'rb') as document: imageBytes = bytearray(document.read()) # Call Textract AnalyzeDocument by passing a document from local disk
response = textract.analyze_document( Document={'Bytes': imageBytes}, FeatureTypes=["QUERIES"], QueriesConfig={ "Queries": [{ "Text": "What is the year to date gross pay", "Alias": "PAYSTUB_YTD_GROSS" }, { "Text": "What is the current gross pay?", "Alias": "PAYSTUB_CURRENT_GROSS" }] })

Kode berikut adalah contoh perintah AWS CLI:

aws textract analyze-document โ€”document '{"S3Object":{"Bucket":"your-s3-bucket","Name":"paystub.jpg"}}' โ€”feature-types '["QUERIES"]' โ€”queries-config '{"Queries":[{"Text":"What is the year to date gross pay", "Alias": "PAYSTUB_YTD_GROSS"}]}' 

Mari kita menganalisis respons yang kita dapatkan untuk dua kueri yang kita teruskan ke API Analisis Dokumen pada contoh sebelumnya. Tanggapan berikut telah dipangkas untuk hanya menampilkan bagian yang relevan:

{ "BlockType":"QUERY", "Id":"cbbba2fa-45be-452b-895b-adda98053153", #id of first QUERY "Relationships":[ { "Type":"ANSWER", "Ids":[ "f2db310c-eaa6-481d-8d18-db0785c33d38" #id of first QUERY_RESULT ] } ], "Query":{ "Text":"What is the year to date gross pay", #First Query "Alias":"PAYSTUB_YTD_GROSS" } }, { "BlockType":"QUERY_RESULT", "Confidence":87.0, "Text":"23,526.80", #Answer to the first Query "Geometry":{...}, "Id":"f2db310c-eaa6-481d-8d18-db0785c33d38" #id of first QUERY_RESULT }, { "BlockType":"QUERY", "Id":"4e2a17f0-154f-4847-954c-7c2bf2670c52", #id of second QUERY "Relationships":[ { "Type":"ANSWER", "Ids":[ "350ab92c-4128-4aab-a78a-f1c6f6718959"#id of second QUERY_RESULT ] } ], "Query":{ "Text":"What is the current gross pay?", #Second Query "Alias":"PAYSTUB_CURRENT_GROSS" } }, { "BlockType":"QUERY_RESULT", "Confidence":95.0, "Text":"$ 452.43", #Answer to the Second Query "Geometry":{...}, "Id":"350ab92c-4128-4aab-a78a-f1c6f6718959" #id of second QUERY_RESULT }

Respon memiliki BlockType of QUERY yang menunjukkan pertanyaan yang diajukan dan a Relationships bagian yang memiliki ID untuk blok yang memiliki jawabannya. Jawabannya ada di BlockType of QUERY_RESULT. Alias โ€‹โ€‹โ€‹โ€‹yang diteruskan sebagai input ke API Analisis Dokumen dikembalikan sebagai bagian dari respons dan dapat digunakan untuk memberi label pada jawabannya.

Kami menggunakan Pengurai Respons Amazon Textract untuk mengekstrak hanya pertanyaan, alias, dan jawaban yang sesuai untuk pertanyaan tersebut:

import trp.trp2 as t2 d = t2.TDocumentSchema().load(response)
page = d.pages[0] # get_query_answers returns a list of [query, alias, answer]
query_answers = d.get_query_answers(page=page)
for x in query_answers: print(f"{image_filename},{x[1]},{x[2]}") from tabulate import tabulate
print(tabulate(query_answers, tablefmt="github"))

Kode sebelumnya mengembalikan hasil berikut:

|------------------------------------|-----------------------|-----------|
| What is the current gross pay? | PAYSTUB_CURRENT_GROSS | $ 452.43 |
| What is the year to date gross pay | PAYSTUB_YTD_GROSS | 23,526.80 |

Lebih banyak pertanyaan dan kode lengkap dapat ditemukan di buku catatan di GitHub repo.

Catatan hipotek

API Analisis Dokumen Kueri juga berfungsi dengan baik dengan catatan hipotek seperti berikut ini.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Proses pemanggilan API dan hasil proses sama dengan contoh sebelumnya. Anda dapat menemukan contoh kode lengkap di GitHub repo.

Kode berikut menunjukkan contoh respons yang diperoleh menggunakan API:

|------------------------------------------------------------|----------------------------------|---------------|
| When is this document dated? | MORTGAGE_NOTE_DOCUMENT_DATE | March 4, 2022 |
| What is the note date? | MORTGAGE_NOTE_DATE | March 4, 2022 |
| When is the Maturity date the borrower has to pay in full? | MORTGAGE_NOTE_MATURITY_DATE | April, 2032 |
| What is the note city and state? | MORTGAGE_NOTE_CITY_STATE | Anytown, ZZ |
| what is the yearly interest rate? | MORTGAGE_NOTE_YEARLY_INTEREST | 4.150% |
| Who is the lender? | MORTGAGE_NOTE_LENDER | AnyCompany |
| When does payments begin? | MORTGAGE_NOTE_BEGIN_PAYMENTS | April, 2022 |
| What is the beginning date of payment? | MORTGAGE_NOTE_BEGIN_DATE_PAYMENT | April, 2022 |
| What is the initial monthly payments? | MORTGAGE_NOTE_MONTHLY_PAYMENTS | $ 2500 |
| What is the interest rate? | MORTGAGE_NOTE_INTEREST_RATE | 4.150% |
| What is the principal amount borrower has to pay? | MORTGAGE_NOTE_PRINCIPAL_PAYMENT | $ 500,000 |

Kartu vaksinasi

Fitur Amazon Textract Query juga berfungsi sangat baik untuk mengekstrak informasi dari kartu vaksinasi atau kartu yang menyerupainya, seperti pada contoh berikut.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Proses untuk memanggil API dan mengurai hasilnya sama seperti yang digunakan untuk paystub. Setelah kami memproses respons, kami mendapatkan informasi berikut:

|------------------------------------------------------------|--------------------------------------|--------------|
| What is the patients first name | PATIENT_FIRST_NAME | Major |
| What is the patients last name | PATIENT_LAST_NAME | Mary |
| Which clinic site was the 1st dose COVID-19 administrated? | VACCINATION_FIRST_DOSE_CLINIC_SITE | XYZ |
| Who is the manufacturer for 1st dose of COVID-19? | VACCINATION_FIRST_DOSE_MANUFACTURER | Pfizer |
| What is the date for the 2nd dose covid-19? | VACCINATION_SECOND_DOSE_DATE | 2/8/2021 |
| What is the patient number | PATIENT_NUMBER | 012345abcd67 |
| Who is the manufacturer for 2nd dose of COVID-19? | VACCINATION_SECOND_DOSE_MANUFACTURER | Pfizer |
| Which clinic site was the 2nd dose covid-19 administrated? | VACCINATION_SECOND_DOSE_CLINIC_SITE | CVS |
| What is the lot number for 2nd dose covid-19? | VACCINATION_SECOND_DOSE_LOT_NUMBER | BB5678 |
| What is the date for the 1st dose covid-19? | VACCINATION_FIRST_DOSE_DATE | 1/18/21 |
| What is the lot number for 1st dose covid-19? | VACCINATION_FIRST_DOSE_LOT_NUMBER | AA1234 |
| What is the MI? | MIDDLE_INITIAL | M |

Kode lengkap dapat ditemukan di buku catatan di GitHub repo.

Kartu asuransi

Fitur Query juga bekerja dengan baik dengan kartu asuransi seperti berikut ini.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Proses untuk memanggil API dan hasil proses sama seperti yang ditunjukkan sebelumnya. Contoh kode lengkap tersedia di buku catatan di GitHub repo.

Berikut adalah contoh respons yang diperoleh menggunakan API:

|-------------------------------------|-----------------------------------|---------------|
| What is the insured name? | INSURANCE_CARD_NAME | Jacob Michael |
| What is the level of benefits? | INSURANCE_CARD_LEVEL_BENEFITS | SILVER |
| What is medical insurance provider? | INSURANCE_CARD_PROVIDER | Anthem |
| What is the OOP max? | INSURANCE_CARD_OOP_MAX | $6000/$12000 |
| What is the effective date? | INSURANCE_CARD_EFFECTIVE_DATE | 11/02/2021 |
| What is the office visit copay? | INSURANCE_CARD_OFFICE_VISIT_COPAY | $55/0% |
| What is the specialist visit copay? | INSURANCE_CARD_SPEC_VISIT_COPAY | $65/0% |
| What is the member id? | INSURANCE_CARD_MEMBER_ID | XZ 9147589652 |
| What is the plan type? | INSURANCE_CARD_PLAN_TYPE | Pathway X-EPO |
| What is the coinsurance amount? | INSURANCE_CARD_COINSURANCE | 30% |

Praktik terbaik untuk membuat kueri

Saat menyusun kueri Anda, pertimbangkan praktik terbaik berikut:

  • Secara umum, ajukan pertanyaan bahasa alami yang dimulai dengan โ€œWhat isโ€, โ€œWhere isโ€, atau โ€œWho isโ€. Pengecualiannya adalah saat Anda mencoba mengekstrak pasangan nilai kunci standar, dalam hal ini Anda dapat meneruskan nama kunci sebagai kueri.
  • Hindari pertanyaan yang salah bentuk atau salah tata bahasa, karena ini dapat menghasilkan jawaban yang tidak terduga. Misalnya, kueri yang salah bentuk adalah "Kapan?" sedangkan pertanyaan yang terbentuk dengan baik adalah "Kapan dosis vaksin pertama diberikan?"
  • Jika memungkinkan, gunakan kata-kata dari dokumen untuk menyusun kueri. Meskipun fitur Kueri mencoba melakukan pencocokan akronim dan sinonim untuk beberapa istilah industri umum seperti "SSN", "Nomor Pajak", dan "Nomor Jaminan Sosial", menggunakan bahasa langsung dari dokumen meningkatkan hasil. Misalnya, jika dokumen mengatakan "kemajuan pekerjaan", cobalah untuk menghindari penggunaan variasi seperti "kemajuan proyek", "kemajuan program", atau "status pekerjaan".
  • Buat kueri yang berisi kata-kata dari header baris dan header kolom. Misalnya, dalam contoh kartu vaksinasi sebelumnya, untuk mengetahui tanggal vaksinasi kedua, Anda dapat membingkai kueri sebagai โ€œTanggal berapa dosis kedua diberikan?โ€
  • Jawaban yang panjang meningkatkan latensi respons dan dapat menyebabkan waktu tunggu. Cobalah untuk mengajukan pertanyaan yang menjawab dengan jawaban kurang dari 100 kata.
  • Hanya meneruskan nama kunci saat pertanyaan berfungsi saat mencoba mengekstrak pasangan nilai kunci standar dari formulir. Kami merekomendasikan membingkai pertanyaan lengkap untuk semua kasus penggunaan ekstraksi lainnya.
  • Jadilah sespesifik mungkin. Sebagai contoh:
    • Ketika dokumen berisi beberapa bagian (seperti โ€œPeminjamโ€ dan โ€œPeminjam Bersamaโ€) dan kedua bagian memiliki bidang yang disebut โ€œSSNโ€, tanyakan โ€œApa SSN untuk Peminjam?โ€ dan โ€œApa SSN untuk Peminjam Bersama?โ€
    • Saat dokumen memiliki beberapa bidang terkait tanggal, sebutkan secara spesifik dalam bahasa kueri dan tanyakan โ€œBerapa tanggal dokumen ditandatangani?โ€ atau โ€œBerapa tanggal lahir aplikasi?โ€ Hindari mengajukan pertanyaan ambigu seperti โ€œTanggal berapa?โ€
  • Jika Anda mengetahui tata letak dokumen sebelumnya, berikan petunjuk lokasi untuk meningkatkan akurasi hasil. Misalnya, tanyakan โ€œTanggal berapa di atas?โ€ atau โ€œTanggal berapa di sebelah kiri?โ€ atau โ€œTanggal berapa di bawah?โ€

Untuk informasi lebih lanjut tentang fitur Query, lihat Textract dokumentasi.

Kesimpulan

Dalam posting ini, kami memberikan gambaran umum tentang fitur Kueri baru Amazon Textract untuk mengambil informasi dengan cepat dan mudah dari dokumen seperti slip gaji, catatan hipotek, kartu asuransi, dan kartu vaksinasi berdasarkan pertanyaan bahasa alami. Kami juga menjelaskan bagaimana Anda dapat mengurai respons JSON.

Untuk informasi lebih lanjut, lihat Menganalisis Dokumen , atau periksa konsol Amazon Textract dan coba fitur ini.


Tentang Penulis

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Uday Narayana adalah Sr. Solutions Architect di AWS. Dia senang membantu pelanggan menemukan solusi inovatif untuk tantangan bisnis yang kompleks. Area fokus utamanya adalah analisis data, sistem data besar, dan pembelajaran mesin. Di waktu senggangnya, ia senang berolahraga, menonton acara TV, dan bepergian.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Rafael Caixeta adalah Sr. Solutions Architect di AWS yang berbasis di California. Dia memiliki lebih dari 10 tahun pengalaman mengembangkan arsitektur untuk cloud. Area intinya adalah tanpa server, container, dan machine learning. Di waktu luangnya, ia senang membaca buku fiksi dan berkeliling dunia.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai. Navneeth Nair adalah Manajer Produk Senior, Teknis dengan tim Amazon Textract. Dia fokus membangun layanan berbasis pembelajaran mesin untuk pelanggan AWS.

Tentukan dan ekstrak informasi dari dokumen menggunakan fitur Kueri baru di Amazon Textract PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Martin Schade adalah SA Produk ML Senior dengan tim Amazon Textract. Dia memiliki lebih dari 20 tahun pengalaman dengan teknologi terkait internet, teknik, dan solusi arsitek. Dia bergabung dengan AWS pada tahun 2014, pertama kali membimbing beberapa pelanggan AWS terbesar tentang penggunaan layanan AWS yang paling efisien dan skalabel, dan kemudian berfokus pada AI/ML dengan fokus pada visi komputer. Saat ini, dia terobsesi dengan mengekstrak informasi dari dokumen.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS