Pengayaan AI di Azure AI Search

Dalam Azure AI Search, pengayaan AI mengacu pada integrasi dengan layanan Azure AI untuk memproses konten yang tidak dapat dicari dalam bentuk mentahnya. Melalui pengayaan, analisis dan inferensi digunakan untuk membuat konten dan struktur yang dapat dicari di mana tidak ada sebelumnya.

Karena Azure AI Search adalah solusi pencarian teks dan vektor, tujuan pengayaan AI adalah untuk meningkatkan utilitas konten Anda dalam skenario terkait pencarian. Konten sumber harus tekstual (Anda tidak dapat memperkaya vektor), tetapi konten yang dibuat oleh alur pengayaan dapat di-vektorisasi dan diindeks dalam indeks vektor menggunakan keterampilan seperti keterampilan Pemisahan Teks untuk memotong dan keterampilan AzureOpenAIEmbedding untuk pengodean.

Pengayaan AI didasarkan pada keterampilan.

Keterampilan bawaan ketuk layanan Azure AI. Mereka menerapkan transformasi dan pemrosesan berikut ke konten mentah:

  • Terjemahan dan deteksi bahasa untuk pencarian multibahasa
  • Pengenalan entitas untuk mengekstrak nama orang, tempat, dan entitas lain dari potongan teks besar
  • Ekstraksi frasa kunci untuk mengidentifikasi dan menghasilkan istilah penting
  • Pengenalan Karakter Optik (OCR) untuk mengenali teks cetak dan tulisan tangan dalam file biner
  • Analisis gambar untuk menjelaskan konten gambar, dan menghasilkan deskripsi sebagai bidang teks yang dapat dicari

Keterampilan kustom menjalankan kode eksternal Anda. Keterampilan kustom dapat digunakan untuk pemrosesan kustom apa pun yang ingin Anda sertakan dalam alur.

Pengayaan AI adalah ekstensi dari alur pengindeks yang tersambung ke sumber data Azure. Alur pengayaan memiliki semua komponen alur pengindeks (pengindeks, sumber data, indeks), ditambah set keterampilan yang menentukan langkah-langkah pengayaan atomik.

Diagram berikut menunjukkan perkembangan pengayaan AI:

Diagram alur pengayaan.

Impor adalah langkah pertama. Di sini, pengindeks terhubung ke sumber data dan menarik konten (dokumen) ke layanan pencarian. Azure Blob Storage adalah sumber daya paling umum yang digunakan dalam skenario pengayaan AI, tetapi sumber data yang didukung dapat menyediakan konten.

Pengayaan & Indeks mencakup sebagian besar alur pengayaan AI:

  • Pengayaan dimulai ketika pengindeks "memecahkan dokumen" dan mengekstrak gambar dan teks. Jenis pemrosesan yang terjadi selanjutnya tergantung pada data Anda dan keterampilan mana yang telah Anda tambahkan ke set keterampilan. Jika Anda memiliki gambar, gambar tersebut dapat diteruskan ke keterampilan yang melakukan pemrosesan gambar. Konten teks diantrekan untuk pemrosesan teks dan bahasa alami. Secara internal, keterampilan membuat "dokumen yang diperkaya" yang mengumpulkan transformasi saat terjadi.

  • Konten yang diperkaya dihasilkan selama eksekusi set keterampilan, dan bersifat sementara kecuali Anda menyimpannya. Anda dapat mengaktifkan cache pengayaan untuk mempertahankan dokumen yang retak dan output keterampilan untuk penggunaan kembali berikutnya selama eksekusi skillset di masa mendatang.

  • Untuk memasukkan konten ke dalam indeks pencarian, pengindeks harus memiliki informasi pemetaan untuk mengirim konten yang diperkaya ke bidang target. Pemetaan bidang (eksplisit atau implisit ) mengatur jalur data dari data sumber ke indeks pencarian. Pemetaan bidang output mengatur jalur data dari dokumen yang diperkaya ke indeks.

  • Pengindeksan adalah proses di mana konten mentah dan diperkaya diserap ke dalam struktur data fisik indeks pencarian (file dan foldernya). Analisis leksikal dan tokenisasi terjadi pada langkah ini.

Eksplorasi adalah langkah terakhir. Output selalu merupakan indeks pencarian yang dapat Anda kueri dari aplikasi klien. Output secara opsional dapat menjadi penyimpanan pengetahuan yang terdiri dari blob dan tabel di Azure Storage yang diakses melalui alat eksplorasi data atau proses hilir. Jika Anda membuat penyimpanan pengetahuan, proyeksi menentukan jalur data untuk konten yang diperkaya. Konten yang diperkaya yang sama dapat muncul di indeks dan penyimpanan pengetahuan.

Kapan menggunakan pengayaan AI

Pengayaan berguna jika konten mentah adalah teks, konten gambar, atau konten yang tidak terstruktur yang memerlukan deteksi dan terjemahan bahasa. Menerapkan AI melalui keterampilan bawaan dapat membuka kunci konten ini untuk pencarian teks lengkap dan aplikasi ilmu data.

Anda juga dapat membuat keterampilan kustom untuk menyediakan pemrosesan eksternal. Kode sumber terbuka, pihak ketiga, atau pihak pertama dapat diintegrasikan ke dalam alur sebagai keterampilan kustom. Model klasifikasi yang mengidentifikasi karakteristik salient dari berbagai jenis dokumen termasuk dalam kategori ini, tetapi paket eksternal apa pun yang menambahkan nilai ke konten Anda dapat digunakan.

Kasus penggunaan untuk keterampilan bawaan

Keterampilan bawaan didasarkan pada API layanan Azure AI: Azure AI Computer Vision dan Language Service. Kecuali input konten Anda kecil, harap lampirkan sumber daya layanan Azure AI yang dapat ditagih untuk menjalankan beban kerja yang lebih besar.

Set keterampilan yang dirakit menggunakan keterampilan bawaan sangat cocok untuk skenario aplikasi berikut:

  • Keterampilan pemrosesan gambar termasuk Optical Character Recognition (OCR) dan identifikasi fitur visual, seperti deteksi wajah, interpretasi gambar, pengenalan gambar (orang dan landmark terkenal), atau atribut seperti orientasi gambar. Keterampilan ini membuat representasi teks konten gambar untuk pencarian teks lengkap di Azure AI Search.

  • Terjemahan mesin disediakan oleh keterampilan Terjemahan Teks, sering dipasangkan dengan deteksi bahasa untuk solusi multi-bahasa.

  • Pemrosesan bahasa alami menganalisis potongan teks. Keterampilan dalam kategori ini termasuk Pengenalan Entitas, Deteksi Sentimen (termasuk penambangan opini), dan Deteksi Informasi Pengidentifikasi Pribadi. Dengan keterampilan ini, teks yang tidak terstruktur dipetakan sebagai bidang yang dapat dicari dan dapat difilter dalam indeks.

Kasus penggunaan untuk keterampilan kustom

Keterampilan kustom menjalankan kode eksternal yang Anda berikan dan bungkus dalam antarmuka web keterampilan kustom. Beberapa contoh keterampilan kustom dapat ditemukan di repositori GitHub azure-search-power-skills .

Keterampilan kustom tidak selalu kompleks. Misalnya, jika Anda memiliki paket yang ada yang menyediakan pencocokan pola atau model klasifikasi dokumen, Anda dapat membungkusnya dalam keterampilan kustom.

Menyimpan output

Di Azure AI Search, pengindeks menyimpan output yang dibuatnya. Pengindeks tunggal dapat membuat hingga tiga struktur data yang berisi output yang diperkaya dan diindeks.

Penyimpanan data Wajib Location Deskripsi
indeks yang dapat dicari Wajib Layanan Pencarian Digunakan untuk pencarian teks lengkap dan formulir kueri lainnya. Menentukan indeks adalah persyaratan pengindeks. Konten indeks diisi dari output keterampilan, ditambah bidang sumber apa pun yang dipetakan langsung ke bidang dalam indeks.
penyimpanan pengetahuan Opsional Azure Storage Digunakan untuk aplikasi hilir seperti penambangan pengetahuan atau ilmu data. Sebuah penyimpanan pengetahuan didefinisikan dalam set keterampilan. Definisinya menentukan apakah dokumen Anda yang diperkaya diproyeksikan sebagai tabel atau objek (file atau blob) di Azure Storage.
cache pengayaan Opsional Azure Storage Digunakan untuk pengayaan penembolokan untuk digunakan kembali dalam eksekusi skillset berikutnya. Cache menyimpan konten yang diimpor dan tidak diproses (dokumen retak). Ini juga menyimpan dokumen yang diperkaya yang dibuat selama eksekusi skillset. Penembolokan sangat membantu jika Anda menggunakan analisis gambar atau OCR, dan Anda ingin menghindari waktu dan biaya pemrosesan ulang file gambar.

Indeks dan penyimpanan pengetahuan sepenuhnya independen dari satu sama lain. Meskipun Anda harus melampirkan indeks untuk memenuhi persyaratan pengindeks, jika satu-satunya tujuan Anda adalah penyimpanan pengetahuan, Anda dapat mengabaikan indeks setelah diisi.

Menjelajahi konten

Setelah menentukan dan memuat indeks pencarian atau penyimpanan pengetahuan, Anda dapat menjelajahi datanya.

Mengkueri indeks pencarian

Jalankan kueri untuk mengakses konten yang diperkaya yang dihasilkan oleh alur. Indeks ini seperti yang mungkin Anda buat untuk Azure AI Search: Anda dapat melengkapi analisis teks dengan penganalisis kustom, memanggil kueri pencarian fuzzy, menambahkan filter, atau bereksperimen dengan profil penilaian untuk menyetel relevansi pencarian.

Menggunakan alat eksplorasi data di penyimpanan pengetahuan

Di Azure Storage, penyimpanan pengetahuan dapat mengasumsikan formulir berikut: kontainer blob dokumen JSON, kontainer blob objek gambar, atau tabel di Table Storage. Anda bisa menggunakan Storage Explorer, Power BI, atau aplikasi apa pun yang tersambung ke Azure Storage untuk mengakses konten Anda.

  • Kontainer blob menangkap dokumen yang diperkaya secara keseluruhan, yang berguna jika Anda membuat umpan ke proses lain.

  • Tabel berguna jika Anda memerlukan irisan dokumen yang diperkaya, atau jika Anda ingin menyertakan atau mengecualikan bagian tertentu dari output. Untuk analisis di Power BI, tabel adalah sumber data yang direkomendasikan untuk eksplorasi dan visualisasi data di Power BI.

Availabilitas dan harga

Pengayaan tersedia di wilayah yang memiliki layanan Azure AI. Anda dapat memeriksa ketersediaan pengayaan di halaman produk Azure yang tersedia menurut wilayah .

Penagihan mengikuti model harga bayar sesuai penggunaan. Biaya penggunaan keterampilan bawaan diteruskan ketika kunci layanan Azure AI multi-wilayah ditentukan dalam set keterampilan. Ada juga biaya yang terkait dengan ekstraksi gambar, seperti yang diukur oleh Azure AI Search. Namun, ekstraksi teks dan keterampilan utilitas tidak dapat ditagih. Untuk informasi selengkapnya, lihat Cara Anda ditagih untuk Azure AI Search.

Daftar periksa: Alur kerja umum

Alur pengayaan terdiri dari pengindeks yang memiliki set keterampilan. Pasca-pengindeksan, Anda bisa mengkueri indeks untuk memvalidasi hasil Anda.

Mulailah dengan subkumpulan data di sumber data yang didukung. Pengindeks dan desain skillset adalah proses berulang. Pekerjaan berjalan lebih cepat dengan himpunan data perwakilan kecil.

  1. Buat sumber data yang menentukan koneksi ke data Anda.

  2. Buat set keterampilan. Kecuali proyek Anda kecil, Anda harus melampirkan sumber daya multi-layanan Azure AI. Jika Anda membuat penyimpanan pengetahuan, tentukan dalam set keterampilan.

  3. Buat skema indeks yang menentukan indeks pencarian.

  4. Buat dan jalankan pengindeks untuk menggabungkan semua komponen di atas. Langkah ini mengambil data, menjalankan set keterampilan, dan memuat indeks.

    Pengindeks juga merupakan tempat Anda menentukan pemetaan bidang dan pemetaan bidang output yang menyiapkan jalur data ke indeks pencarian.

    Secara opsional, aktifkan penembolokan pengayaan dalam konfigurasi pengindeks. Langkah ini memungkinkan Anda untuk menggunakan kembali pengayaan yang ada nanti.

  5. Jalankan kueri untuk mengevaluasi hasil atau memulai sesi debug untuk mengatasi masalah set keterampilan apa pun.

Untuk mengulangi salah satu langkah di atas, reset pengindeks sebelum Anda menjalankannya. Atau, hapus dan buat ulang objek pada setiap eksekusi (disarankan jika Anda menggunakan tingkat gratis). Jika Anda mengaktifkan penembolokan, pengindeks menarik dari cache jika data tidak berubah di sumbernya, dan jika pengeditan Anda ke alur tidak membatalkan cache.

Langkah berikutnya