Bagikan melalui


Mengotomatiskan klasifikasi dokumen di Azure

Azure Functions
Azure AI Foundry
Azure AI Foundry SDK
Layanan Azure AI
Pencarian Azure AI
Azure AI Document Intelligence

Artikel ini menjelaskan arsitektur yang memproses berbagai dokumen. Arsitektur menggunakan fitur fungsi tahan lama dari Azure Functions untuk mengimplementasikan alur. Alur memproses dokumen melalui Azure AI Document Intelligence untuk pemisahan dokumen, pengenalan entitas bernama (NER), dan klasifikasi. Pemrosesan bahasa alami berbasis retrieval-augmented generation (RAG) menggunakan konten dokumen dan metadata untuk menemukan dan menghasilkan informasi yang relevan.

Sistem

Diagram yang memperlihatkan arsitektur untuk mengidentifikasi, mengklasifikasikan, dan mencari dokumen.

Unduh file Visio arsitektur ini.

Alur kerja

Alur kerja berikut ini sesuai dengan diagram sebelumnya:

  1. Pengguna mengunggah file dokumen ke aplikasi web. File berisi beberapa dokumen yang disematkan dari berbagai jenis, seperti file PDF atau File Gambar Tag beberapa halaman (TIFF). Azure Blob Storage menyimpan file dokumen (1a). Untuk memulai pemrosesan alur, aplikasi web menambahkan pesan perintah ke antrean Azure Service Bus (1b).

  2. Pesan perintah memicu orkestrasi fungsi tahan lama. Pesan berisi metadata yang mengidentifikasi lokasi Blob Storage dari file dokumen yang akan diproses. Setiap instans fungsi tahan lama hanya memproses satu file dokumen.

  3. Fungsi aktivitas analisis memanggil Document Intelligence Analyze Document API, yang memberikan lokasi penyimpanan file dokumen untuk diproses. Fungsi analisis membaca dan mengidentifikasi setiap dokumen dalam file dokumen. Fungsi ini mengembalikan nama, jenis, rentang halaman, dan konten setiap dokumen yang disematkan ke orkestrasi.

  4. Fungsi aktivitas penyimpanan metadata menyimpan jenis dokumen, lokasi, dan informasi rentang halaman untuk setiap dokumen di penyimpanan Azure Cosmos DB.

  5. Fungsi aktivitas penyematan menggunakan Semantic Kernel untuk memotong setiap dokumen dan membuat penyematan untuk setiap gugus. Fungsi ini mengirimkan penyematan dan konten terkait ke Azure AI Search dan menyimpannya dalam indeks yang diaktifkan vektor. Fungsi ini juga menambahkan ID korelasi ke dokumen pencarian sehingga hasil pencarian cocok dengan metadata dokumen yang sesuai dari Azure Cosmos DB.

  6. Kernel Semantik mengambil penyematan dari penyimpanan vektor Pencarian AI untuk NLP.

  7. Pengguna dapat mengobrol dengan data mereka dengan menggunakan NLP. Data yang berbasis dari penyimpanan vektor digunakan untuk mendukung percakapan ini. Untuk mencari rekaman dokumen di Azure Cosmos DB, pengguna menggunakan ID korelasi yang disertakan dalam kumpulan hasil pencarian. Rekaman menyertakan tautan ke file dokumen asli di Blob Storage.

Komponen

  • Fungsi tahan lama adalah fitur Azure Functions yang dapat Anda gunakan untuk menulis fungsi stateful di lingkungan komputasi tanpa server. Dalam arsitektur ini, pesan dalam antrean Azure Service Bus memicu instans fungsi tahan lama. Instans ini kemudian memulai dan mengatur alur pemrosesan dokumen.

  • Azure Cosmos DB adalah database multi-model yang didistribusikan secara global yang dapat menskalakan kapasitas throughput dan penyimpanan di sejumlah wilayah geografis. Perjanjian tingkat layanan komprehensif (SLA) menjamin throughput, latensi, ketersediaan, dan konsistensi. Dalam arsitektur ini, Azure Cosmos DB berfungsi sebagai penyimpanan metadata untuk informasi klasifikasi dokumen.

  • Azure Storage adalah sekumpulan layanan cloud yang dapat diskalakan dan aman untuk data, aplikasi, dan beban kerja. Ini termasuk Blob Storage, Azure Files, Azure Table Storage, dan Azure Queue Storage. Dalam arsitektur ini, Blob Storage menyimpan file dokumen yang diunggah pengguna, yang kemudian diproses oleh pipeline fungsi tahan lama.

  • Service Bus adalah broker pesan perusahaan terkelola yang memiliki antrean pesan dan topik terbitkan-berlangganan. Dalam arsitektur ini, Service Bus memicu instans fungsi yang tahan lama.

  • Azure App Service menyediakan kerangka kerja untuk membangun, menyebarkan, dan menskalakan aplikasi web. Fitur Web Apps dari App Service adalah alat berbasis HTTP yang digunakan untuk menghosting aplikasi web, REST API, dan back end seluler. Anda dapat menggunakan Web Apps untuk mengembangkan di .NET, .NET Core, Java, Ruby, Node.js, PHP, atau Python. Aplikasi dapat berjalan dan menskalakan di lingkungan berbasis Windows dan berbasis Linux. Dalam arsitektur ini, pengguna berinteraksi dengan sistem pemrosesan dokumen melalui aplikasi web yang dihosting App Service.

  • Kecerdasan Dokumen adalah layanan yang mengekstrak wawasan dari dokumen, formulir, dan gambar Anda. Arsitektur ini menggunakan Kecerdasan Dokumen untuk menganalisis file dokumen dan mengekstrak dokumen yang disematkan bersama dengan informasi konten dan metadata.

  • Pencarian AI menyediakan pengalaman pencarian untuk konten privat dan beragam di aplikasi web, seluler, dan perusahaan. Dalam arsitektur ini, penyimpanan vektor Pencarian AI mengindeks penyematan konten dokumen dan informasi metadata yang diekstrak sehingga pengguna dapat mencari dan mengambil dokumen dengan menggunakan NLP.

  • Semantic Kernel adalah kerangka kerja yang mengintegrasikan model bahasa besar (LLM) ke dalam aplikasi. Dalam arsitektur ini, Semantic Kernel membuat penyematan untuk konten dokumen dan informasi metadata, yang disimpan dalam Pencarian Kecerdasan Buatan.

  • Microsoft Foundry adalah platform yang Anda gunakan untuk membangun, menguji, dan menyebarkan solusi dan model AI sebagai layanan (MaaS). Dalam arsitektur ini, Foundry menyebarkan model Azure OpenAI.

    • Proyek Foundry adalah ruang kerja khusus yang dapat Anda gunakan untuk membuat koneksi ke sumber data, menentukan agen, dan memanggil model yang disebarkan, termasuk model Azure OpenAI. Arsitektur ini memiliki satu proyek Foundry dalam akun Foundry.

    • Foundry Models adalah platform yang menyebarkan model unggulan, termasuk model OpenAI, dari katalog Azure AI di lingkungan yang dihosting Microsoft. Pendekatan ini menggunakan penyebaran MaaS. Arsitektur ini menyebarkan model dengan menggunakan konfigurasi Standar Global dengan kuota tetap.

Alternatif

  • Untuk memfasilitasi distribusi global, solusi ini menyimpan metadata di Azure Cosmos DB. Azure SQL Database adalah opsi penyimpanan persisten lain untuk metadata dan informasi dokumen.

  • Untuk memicu instans fungsi tahan lama, Anda dapat menggunakan platform olahpesan lain, termasuk Azure Event Grid.

  • Alih-alih Semantic Kernel, Anda dapat menggunakan layanan Azure Machine Learning atau Azure AI untuk membuat penyematan.

  • Anda dapat menggunakan Microsoft Agent Framework alih-alih Semantic Kernel untuk mengatur alur kerja.

  • Untuk menyediakan antarmuka bahasa alami bagi pengguna, Anda dapat menggunakan model bahasa lain dalam Foundry. Platform ini mendukung berbagai model dari berbagai penyedia, termasuk Mistral, Meta, Cohere, dan Hugging Face.

Detail skenario

Dalam arsitektur ini, alur mengidentifikasi dokumen dalam file dokumen, mengklasifikasikannya berdasarkan jenis, dan menyimpan informasi untuk digunakan dalam pemrosesan berikutnya.

Banyak perusahaan perlu mengelola dan memproses dokumen yang mereka pindai secara massal dan berisi beberapa jenis dokumen yang berbeda, seperti PDF atau gambar TIFF beberapa halaman. Dokumen-dokumen ini mungkin berasal dari luar organisasi, dan perusahaan penerima tidak mengontrol format.

Karena kendala ini, organisasi harus membangun solusi penguraian dokumen mereka sendiri yang dapat mencakup teknologi kustom dan proses manual. Misalnya, seseorang mungkin memisahkan jenis dokumen individual secara manual dan menambahkan kualifikasi klasifikasi untuk setiap jenis dokumen.

Banyak dari solusi kustom ini didasarkan pada pola alur kerja komputer status. Solusi menggunakan sistem database untuk mempertahankan status alur kerja dan menggunakan layanan polling yang memeriksa status yang perlu mereka proses. Mempertahankan dan meningkatkan solusi ini dapat meningkatkan kompleksitas dan upaya.

Organisasi memerlukan solusi yang andal, dapat diskalakan, dan tangguh untuk memproses dan mengelola identifikasi dan klasifikasi dokumen untuk jenis dokumen organisasi mereka. Solusi ini dapat memproses jutaan dokumen setiap hari dengan pengamatan penuh ke dalam keberhasilan atau kegagalan alur pemrosesan.

NLP memungkinkan pengguna berinteraksi dengan sistem secara percakapan. Pengguna dapat mengajukan pertanyaan tentang dokumen dan menerima jawaban berdasarkan konten dokumen.

Kemungkinan kasus penggunaan

  • Buat judul laporan. Banyak lembaga dan kotamadya pemerintah mengelola catatan kertas yang tidak memiliki bentuk digital. Solusi otomatis yang efektif dapat menghasilkan file yang berisi semua dokumen yang Anda butuhkan untuk memenuhi permintaan dokumen.

  • Mengelola catatan pemeliharaan. Pindai dan kirim catatan kertas, seperti catatan pemeliharaan pesawat terbang, lokomotif, dan mesin, ke organisasi luar.

  • Izin proses. Departemen yang mengizinkan kota dan kabupaten mempertahankan dokumen kertas yang mereka hasilkan untuk pelaporan inspeksi izin. Anda dapat mengambil gambar beberapa dokumen inspeksi dan secara otomatis mengidentifikasi, mengklasifikasikan, dan mencari di seluruh rekaman ini.

  • Menganalisis planogram. Perusahaan retail dan consumer goods mengelola inventaris dan kepatuhan melalui analisis planogram rak toko. Anda dapat mengambil gambar rak toko dan mengekstrak informasi label dari berbagai produk untuk secara otomatis mengidentifikasi, mengklasifikasikan, dan mengukur informasi produk.

Pertimbangan

Pertimbangan ini mengimplementasikan pilar Azure Well-Architected Framework, yang merupakan serangkaian tenet panduan yang dapat Anda gunakan untuk meningkatkan kualitas beban kerja. Untuk informasi selengkapnya, lihat Well-Architected Framework.

Keandalan

Keandalan membantu memastikan bahwa aplikasi Anda dapat memenuhi komitmen yang Anda buat kepada pelanggan Anda. Untuk informasi selengkapnya, lihat Daftar periksa tinjauan desain untuk Keandalan.

Untuk memastikan keandalan dan ketersediaan tinggi saat Anda memanggil model dari proyek Foundry yang menggunakan model OpenAI yang dihosting di Azure, pertimbangkan untuk menggunakan gateway API generatif seperti Azure API Management. Pendekatan ini mengelola permintaan di beberapa implementasi model atau endpoint Foundry. Gateway back-end Azure mendukung perutean round-robin, tertimbang, dan berbasis prioritas di seluruh penyebaran dan memberikan kontrol penuh atas distribusi lalu lintas. Pendekatan ini memungkinkan proyek Foundry Anda menerapkan strategi failover yang tangguh dan distribusi beban cerdas yang disesuaikan dengan performa, ketersediaan regional, atau persyaratan biaya Anda.

Untuk pembelajaran dan pekerjaan awal untuk pembuktian konsep, gunakan penyebaran Standar Global. Standar Global adalah bayar sesuai penggunaan, menyediakan kuota default tertinggi, dan menggunakan infrastruktur global Azure untuk merutekan setiap permintaan ke wilayah yang paling tersedia. Pendekatan ini mengurangi kemungkinan mengalami batasan kuota atau kapasitas regional saat Anda bereksperimen dan selaras dengan panduan Microsoft untuk menggunakan Standar Global sebagai titik awal default.

Untuk beban kerja produksi, pilih jenis penyebaran berdasarkan kriteria berikut:

  • Lokasi pemrosesan data:

    • Gunakan Global Standard atau Global Provisioned saat Anda menginginkan ketersediaan tertinggi dan inferensi dapat terjadi di wilayah Microsoft Foundry mana pun, sementara data tidak aktif tetap berada di geografi yang Anda pilih.

    • Gunakan Standar Zona Data atau Zona Data yang Disediakan saat Anda harus terus menyimpulkan dalam zona data yang ditentukan Microsoft, misalnya khusus AS atau UE, untuk memenuhi persyaratan residensi data.

  • Model throughput dan biaya:

    • Gunakan jenis penyebaran Standar, seperti Standar Global, Standar Zona Data, dan Standar Regional untuk beban kerja rendah hingga menengah, yang bersifat tiba-tiba meningkat aktivitasnya, atau untuk eksplorasi. Jenis-jenis ini menggunakan model bayar sesuai pemakaian tanpa kapasitas cadangan. Pilih jenis ini pada tahap awal sebelum Anda memahami pola lalu lintas Anda.

    • Gunakan Jenis penyebaran yang disediakan, seperti Global Provisioned, Data Zone Provisioned, dan Regional Provisioned untuk beban kerja volume yang dapat diprediksi dan lebih tinggi yang memerlukan throughput yang dipesan, latensi konsisten, dan opsi untuk menggunakan reservasi untuk pengoptimalan biaya.

Sebagian besar tim dimulai dengan Standar Global untuk pengembangan, atau menggunakan Standar Zona Data saat residensi data penting. Setelah mereka menentukan persyaratan throughput dan latensi dalam keadaan stabil, mereka memindahkan jalur kritis ke SKU yang Disediakan.

Untuk informasi selengkapnya tentang keandalan dalam komponen solusi, lihat informasi SLA untuk layanan online Azure.

Pengoptimalan Biaya

Pengoptimalan Biaya berfokus pada cara untuk mengurangi pengeluaran yang tidak perlu dan meningkatkan efisiensi operasional. Untuk informasi selengkapnya, lihat Daftar periksa tinjauan desain untuk Pengoptimalan Biaya.

Biaya paling signifikan untuk arsitektur ini meliputi komponen-komponen berikut:

  • Penggunaan inferensi model melalui Microsoft Foundry, yang mencakup OpenAI atau model lainnya
  • Penyerapan dan pemrosesan dokumen melalui Kecerdasan Dokumen
  • Pengindeksan dan konsumsi pencarian melalui Pencarian AI

Untuk mengoptimalkan biaya, pertimbangkan rekomendasi berikut:

Efisiensi Performa

Efisiensi Performa mengacu pada kemampuan beban kerja Anda untuk menskalakan untuk memenuhi tuntutan pengguna secara efisien. Untuk informasi selengkapnya, lihat Daftar periksa tinjauan desain untuk Efisiensi Performa.

Solusi ini dapat mengekspos hambatan performa saat Anda memproses data dalam volume tinggi. Untuk memastikan efisiensi performa yang tepat untuk solusi Anda, pahami dan rencanakan untuk opsi penskalaan Azure Functions, penskalaan otomatis layanan AI, dan partisi Azure Cosmos DB.

  • Terapkan komputasi dan orkestrasi yang dapat diskalakan dengan menggunakan fungsi tahan lama, yang merupakan bagian dari Azure Functions, untuk alur pemrosesan dokumen dan sesuaikan perilaku penskalaannya. Untuk informasi selengkapnya, lihat Performa dan skala dalam fungsi tahan lama.

  • Pilih model penyebaran yang sesuai di Microsoft Foundry untuk beban kerja inferensi. Gunakan API tanpa server untuk beban kerja variabel dan model throughput yang disediakan saat Anda mengharapkan lalu lintas yang berat dan konsisten. Untuk informasi selengkapnya, lihat Throughput yang disediakan untuk Model Foundry dan Pengoptimalan performa dan latensi untuk Azure OpenAI dan Model Foundry.

  • Optimalkan performa pengindeksan dan pengambilan dengan mengonfigurasi partisi, replika, dan skema yang sesuai untuk Pencarian AI. Untuk informasi selengkapnya, lihat Tips performa Pencarian AI.

  • Menetapkan garis besar performa dan perulangan umpan balik. Tentukan latensi realistis dan target throughput lebih awal, pantau performa sistem aktual terus menerus, dan perbaiki arsitektur dan konfigurasi operasional seiring berkembangnya pola penggunaan. Untuk informasi selengkapnya, lihat Prinsip desain Efisiensi Performa.

Terapkan praktik ini untuk membantu memastikan bahwa solusi klasifikasi dokumen Anda tetap responsif dan hemat biaya saat solusi diskalakan.

Kontributor

Microsoft mempertahankan artikel ini. Kontributor berikut menulis artikel ini.

Penulis utama:

Kontributor lainnya:

Untuk melihat profil LinkedIn nonpublik, masuk ke LinkedIn.

Langkah berikutnya

Artikel berikut memberikan pengantar teknologi yang relevan:

Untuk dokumentasi produk, lihat sumber daya berikut: