Penyimpanan pengetahuan di Azure AI Search

Penyimpanan pengetahuan adalah penyimpanan sekunder untuk konten yang diperkaya AI yang dibuat oleh set keterampilan di Azure AI Search. Di Azure AI Search, pekerjaan pengindeksan selalu mengirim output ke indeks pencarian, tetapi jika Anda melampirkan set keterampilan ke pengindeks, Anda juga dapat mengirim output yang diperkaya AI ke kontainer atau tabel di Azure Storage. Penyimpanan pengetahuan dapat digunakan untuk analisis independen atau pemrosesan hilir dalam skenario non-pencarian seperti penambangan pengetahuan.

Dua output pengindeksan, indeks pencarian dan penyimpanan pengetahuan, adalah produk yang saling eksklusif dari alur yang sama. Mereka berasal dari input yang sama dan berisi data yang sama, tetapi kontennya terstruktur, disimpan, dan digunakan dalam aplikasi yang berbeda.

Pipeline with skillset

Secara fisik, penyimpanan pengetahuan adalah Azure Storage, Azure Table Storage, Azure Blob Storage, atau keduanya. Alat atau proses apa pun yang dapat tersambung ke Azure Storage dapat mengonsumsi konten penyimpanan pengetahuan. Tidak ada dukungan kueri di Azure AI Search untuk mengambil konten dari penyimpanan pengetahuan.

Saat dilihat melalui portal Azure, penyimpanan pengetahuan terlihat seperti kumpulan tabel, objek, atau file lainnya. Cuplikan layar berikut menunjukkan penyimpanan pengetahuan yang terdiri dari tiga tabel. Anda dapat mengadopsi konvensi penamaan, seperti kstore awalan, untuk menyatukan konten Anda.

Skills read and write from enrichment tree

Manfaat penyimpanan pengetahuan

Manfaat utama dari penyimpanan pengetahuan adalah dua kali lipat: akses fleksibel ke konten, dan kemampuan untuk membentuk data.

Tidak seperti indeks pencarian yang hanya dapat diakses melalui kueri di Azure AI Search, penyimpanan pengetahuan dapat diakses oleh alat, aplikasi, atau proses apa pun yang mendukung koneksi ke Azure Storage. Fleksibilitas ini membuka skenario baru untuk menggunakan konten yang dianalisis dan diperkaya yang dihasilkan oleh alur pengayaan.

Rangkaian keterampilan yang sama yang memperkaya data juga dapat digunakan untuk membentuk data. Beberapa alat seperti Power BI bekerja lebih baik dengan tabel, sedangkan beban kerja ilmu data mungkin memerlukan struktur data yang kompleks dalam format blob. Menambahkan keterampilan Pembentuk rangkaian kemampuan memberi Anda kendali atas bentuk data Anda. Anda kemudian dapat meneruskan bentuk-bentuk ini ke proyeksi, baik tabel atau blob, untuk membuat struktur data fisik yang selaras dengan penggunaan yang dimaksudkan data.

Video berikut menjelaskan manfaat ini dan banyak lagi.

Definisi penyimpanan pengetahuan

Penyimpanan pengetahuan didefinisikan dalam definisi rangkaian kemampuan dan memiliki dua komponen:

  • String koneksi ke Azure Storage

  • Proyeksi yang menentukan apakah penyimpanan pengetahuan terdiri dari tabel, objek, atau file. Properti proyeksi adalah larik. Anda dapat membuat beberapa rangkaian kombinasi tabel-objek-file dalam satu penyimpanan pengetahuan.

    "knowledgeStore": {
        "storageConnectionString":"<YOUR-AZURE-STORAGE-ACCOUNT-CONNECTION-STRING>",
        "projections":[
           {
              "tables":[ ],
              "objects":[ ],
              "files":[ ]
           }
        ]
    }
    

Jenis proyeksi yang Anda tentukan dalam struktur ini menentukan jenis penyimpanan yang digunakan oleh penyimpanan pengetahuan, tetapi bukan strukturnya. Bidang dalam tabel, objek, dan file ditentukan oleh output keterampilan Shaper jika Anda membuat penyimpanan pengetahuan secara terprogram, atau oleh wizard Impor data jika Anda menggunakan portal.

  • tables memproyeksikan konten yang diperkaya ke dalam Table Storage. Tentukan proyeksi tabel saat Anda memerlukan struktur pelaporan tabular untuk input ke alat analitik, atau ekspor sebagai bingkai data ke penyimpanan data lainnya. Anda dapat menentukan beberapa tables dalam grup proyeksi yang sama untuk mendapatkan subset atau seluruh bagian dokumen yang diperkaya. Dalam grup proyeksi yang sama, hubungan tabel dipertahankan sehingga Anda dapat bekerja dengan semuanya.

    Konten yang diproyeksikan tidak dikumpulkan atau dinormalisasi. Cuplikan layar berikut memperlihatkan tabel, diurutkan menurut frasa kunci, dengan dokumen induk ditunjukkan di kolom yang berdekatan. Berbeda dengan penyerapan data selama pengindeksan, tidak ada analisis linguistik atau agregasi konten. Bentuk jamak dan perbedaan dalam kapitalisasi dianggap sebagai instans unik.

    Screenshot of key phrases and documents in a table

  • objects memproyeksikan dokumen JSON ke penyimpanan Blob. Representasi fisik object adalah struktur JSON hierarkis mewakili dokumen yang diperkaya.

  • files memproyeksikan file gambar proyek ke penyimpanan Blob. file adalah citra yang diekstrak dari dokumen, ditransfer utuh ke penyimpanan Blob. Meskipun diberi nama "file", file tersebut muncul di Blob Storage, bukan penyimpanan file.

Buat penyimpanan pengetahuan

Untuk membuat penyimpanan pengetahuan, gunakan portal atau API.

Anda akan memerlukan Azure Storage, set keterampilan, dan pengindeks. Karena pengindeks memerlukan indeks pencarian, Anda juga harus memberikan definisi indeks.

Ikut pendekatan portal untuk rute tercepat ke penyimpanan pengetahuan selesai. Atau, pilih REST API untuk pemahaman yang lebih dalam tentang bagaimana objek didefinisikan dan terkait.

Buat penyimpanan pengetahuan pertama Anda dalam empat langkah menggunakan wizard Impor data.

  1. Tentukan sumber data yang berisi data yang ingin Anda perkaya.

  2. Tentukan set keterampilan. Skillset menentukan langkah-langkah pengayaan dan penyimpanan pengetahuan.

  3. Tentukan skema indeks. Anda mungkin tidak memerlukannya, tetapi pengindeks memerlukannya. Wizard dapat menyimpulkan indeks.

  4. Selesaikan wizard. Ekstraksi data, pengayaan, dan pembuatan penyimpanan pengetahuan terjadi pada langkah terakhir ini.

Wizard mengotomatiskan beberapa tugas. Secara khusus, pembentukan maupun proyeksi (definisi struktur data fisik di Azure Storage) dibuat untuk Anda.

Terhubung dengan aplikasi

Setelah konten yang diperkaya ada di penyimpanan, alat atau teknologi apa pun yang terhubung ke Azure Storage dapat digunakan untuk menjelajahi, menganalisis, atau menggunakan konten. Daftar berikut ini adalah awalnya:

  • Penjelajah Penyimpanan atau browser Penyimpanan (pratinjau) di portal Azure untuk melihat struktur dan konten dokumen yang diperkaya. Anggap ini sebagai alat dasar Anda untuk melihat konten penyimpanan pengetahuan.

  • Power BI untuk pelaporan dan analisis.

  • Azure Data Factory untuk manipulasi lebih lanjut.

Siklus hidup konten

Setiap kali Anda menjalankan pengindeks dan set keterampilan, penyimpanan pengetahuan diperbarui jika set keterampilan atau data sumber yang mendasarinya telah berubah. Setiap perubahan yang diambil oleh pengindeks disebarkan melalui proses pengayaan ke proyeksi di penyimpanan pengetahuan, memastikan bahwa data yang diproyeksikan adalah representasi konten saat ini di sumber data awal.

Catatan

Meskipun Anda dapat mengedit data dalam proyeksi, hasil editan apa pun akan ditimpa pada penggunaan alur berikutnya, dengan asumsi bahwa dokumen dalam data sumber diperbarui.

Perubahan di sumber data

Untuk sumber data yang mendukung pelacakan perubahan, pengindeks akan memproses dokumen baru dan yang diubah, dan memotong dokumen lama telah diproses. Informasi tanda waktu bervariasi menurut sumber data, tetapi dalam kontainer blob, pengindeks melihat tanggal lastmodified untuk menentukan blob yang perlu diserap.

Perubahan pada set keterampilan

Jika Anda membuat perubahan pada set keterampilan, Anda harus mengaktifkan penembolokan dokumen yang diperkaya untuk menggunakan kembali pengayaan yang ada jika memungkinkan.

Tanpa penembolokan tambahan, pengindeks akan selalu memproses dokumen sesuai dengan tanda air yang tinggi, tanpa mundur. Untuk blob, pengindeks akan memproses gumpalan yang diurutkan berdasarkan lastModified, terlepas dari perubahan apa pun pada pengaturan pengindeks atau set keterampilan. Jika Anda mengubah set keterampilan, dokumen yang diproses sebelumnya tidak diperbarui untuk mencerminkan set keterampilan baru. Dokumen yang diproses setelah perubahan set keterampilan akan menggunakan set keterampilan baru, sehingga dokumen indeks menjadi campuran set keterampilan lama dan baru.

Dengan penembolokan bertambah bertahap, dan setelah pembaruan set keterampilan, pengindeks akan menggunakan kembali pengayaan apa pun yang tidak terpengaruh oleh perubahan set keterampilan. Pengayaan hulu ditarik dari cache, seperti halnya pengayaan apa pun yang independen dan terpisah dari keterampilan yang diubah.

Penghapusan

Meskipun pengindeks membuat dan memperbarui struktur dan konten di Azure Storage, pengindeks tidak menghapusnya. Proyeksi terus ada bahkan meski pengindeks atau set keterampilan dihapus. Sebagai pemilik akun penyimpanan, Anda harus menghapus proyeksi jika tidak lagi diperlukan.

Langkah berikutnya

Penyimpanan pengetahuan menawarkan persistensi dokumen yang diperkaya, berguna saat merancang set keterampilan, atau pembuatan struktur dan konten baru untuk dikonsumsi oleh aplikasi klien mana pun yang mampu mengakses akun Azure Storage.

Pendekatan paling sederhana untuk membuat dokumen yang diperkaya adalah melalui portal, tetapi klien REST dan REST API dapat memberikan lebih banyak wawasan tentang bagaimana objek dibuat dan direferensikan secara terprogram.