Tutorial: Menggunakan REST dan AI untuk menghasilkan konten yang dapat dicari dari blob Azure

Jika Anda memiliki teks atau gambar yang tidak terstruktur di Azure Blob Storage, Alur pengayaan AI dapat mengekstrak informasi dan membuat konten baru untuk pencarian teks lengkap atau skenario penambangan pengetahuan.

Dalam tutorial REST ini, Anda akan mempelajari cara:

  • Menyiapkan lingkungan pengembangan.
  • Tentukan alur yang menggunakan OCR, deteksi bahasa, pengenalan entitas, dan ekstraksi frasa kunci.
  • Jalankan alur untuk memanggil transformasi, dan untuk membuat dan memuat indeks pencarian.
  • Menjelajahi hasil menggunakan pencarian teks lengkap dan beragam sintaksis kueri.

Jika Anda tidak memiliki langganan Azure, buka akun gratis sebelum memulai.

Gambaran Umum

Tutorial ini menggunakan Postman dan REST API Azure Cognitive Search untuk membuat sumber data, indeks, pengindeks, dan set keterampilan.

Pengindeks tersambung ke Azure Blob Storage dan mengambil konten, yang harus Anda muat terlebih dahulu. Pengindeks kemudian memanggil set keterampilan untuk pemrosesan khusus, dan menyerap konten yang diperkaya ke dalam indeks pencarian.

Set keterampilan melekat pada pengindeks. Hal ini menggunakan keterampilan bawaan dari Microsoft untuk menemukan dan mengekstrak informasi. Langkah-langkah dalam alur termasuk Pengenalan Karakter Optik (OCR) pada gambar, deteksi bahasa, ekstraksi frasa kunci, dan pengenalan entitas (organisasi, lokasi, orang). Informasi baru yang dibuat oleh alur disimpan di bidang baru dalam indeks. Setelah indeks diisi, Anda dapat menggunakan bidang tersebut dalam kueri, faset, dan filter.

Prasyarat

Catatan

Anda dapat menggunakan layanan gratis untuk tutorial ini. Layanan pencarian gratis membatasi Anda untuk tiga indeks, tiga pengindeks, dan tiga sumber data. Tutorial ini membuat satu layanan dari masing-masing layanan. Sebelum memulai, pastikan Anda memiliki ruang pada layanan Anda untuk menerima sumber daya baru.

Unduh file

Data sampel terdiri dari 14 file jenis konten campuran yang akan Anda unggah ke Azure Blob Storage di langkah selanjutnya.

  1. Dapatkan file dari azure-search-sample-data/ai-enrichment-mixed-media/ dan salin ke komputer lokal Anda.

  2. Selanjutnya, dapatkan kode sumber, file koleksi Postman, untuk tutorial ini. Kode sumber dapat ditemukan di azure-search-postman-samples/tree/master/Tutorial.

1 - Buat layanan

Tutorial ini menggunakan Azure Cognitive Search untuk pengindeksan dan kueri, Cognitive Search di ujung belakang untuk pengayaan AI, dan Azure Blob Storage untuk menyediakan data. Tutorial ini tetap berada di bawah alokasi gratis 20 transaksi per pengindeks per hari pada Cognitive Services, jadi satu-satunya layanan yang perlu Anda buat adalah pencarian dan penyimpanan.

Jika memungkinkan, buat grup wilayah dan sumber daya yang sama untuk kedekatan dan pengelolaan. Dalam praktiknya, akun Azure Storage Anda bisa berada di wilayah mana pun.

Mulai dengan Azure Storage

  1. Masuk ke portal Azure dan klik + Buat Sumber Daya.

  2. Cari akun penyimpanan dan pilih penawaran Akun Penyimpanan Microsoft.

    Create Storage account

  3. Di tab Dasar, item berikut ini diperlukan. Terima secara default untuk yang lainnya.

    • Grup sumber daya. Pilih yang sudah ada atau buat yang baru, tetapi gunakan grup yang sama untuk semua layanan sehingga Anda bisa mengelolanya secara kolektif.

    • Nama akun penyimpanan. Jika Anda merasa memiliki beberapa sumber daya dengan jenis yang sama, gunakan nama untuk menyamar berdasarkan jenis dan wilayah, misalnya blobstoragewestus.

    • Lokasi. Jika memungkinkan, pilih lokasi yang sama dengan yang digunakan untuk Azure Cognitive Search dan Cognitive Services. Satu lokasi membatalkan biaya bandwidth.

    • Jenis Akun. Pilih default, StorageV2 (tujuan umum v2) .

  4. Pilih Tinjau + Buat untuk membuat layanan.

  5. Setelah dibuat, pilih Buka sumber daya untuk membuka halaman Gambaran Umum.

  6. Pilih Layanan blob .

  7. Pilih + Kontainer untuk membuat kontainer dan beri nama cog-search-demo.

  8. Pilih cog-search-demo lalu pilih Unggah untuk membuka folder tempat Anda menyimpan file unduhan. Pilih semua file. Pilih Unggah.

    Screenshot of the files in File Explorer.

  9. Sebelum Anda keluar dari Azure Storage, dapatkan string koneksi sehingga Anda bisa merumuskan koneksi di Azure Cognitive Search.

    1. Telusuri kembali ke halaman Ikhtisar akun penyimpanan Anda (kami menggunakan blobstragewestus sebagai contoh).

    2. Di panel navigasi kiri, pilih Kunci akses dan salin salah satu string koneksi.

    String koneksi adalah URL yang mirip dengan contoh berikut:

    DefaultEndpointsProtocol=https;AccountName=cogsrchdemostorage;AccountKey=<your account key>;EndpointSuffix=core.windows.net
    
  10. Simpan string koneksi ke Notepad. Anda akan memerlukannya nanti saat menyiapkan koneksi sumber data.

Cognitive Services

Pengayaan AI didukung oleh Cognitive Services, termasuk layanan Bahasa dan Computer Vision untuk pemrosesan bahasa dan gambar alami. Jika tujuan Anda adalah untuk menyelesaikan prototipe atau proyek aktual, Anda pada titik ini akan menyediakan Cognitive Services (di wilayah yang sama dengan Azure Cognitive Search) sehingga Anda dapat melampirkannya ke set keterampilan.

Namun, untuk latihan ini, Anda dapat melewati provisi sumber daya karena Azure Cognitive Search dapat terhubung ke Cognitive Services menjalankan 20 transaksi per pengindeks yang dijalankan, gratis. Karena tutorial ini menggunakan 14 transaksi, alokasi gratis sudah cukup. Untuk proyek yang lebih besar, rencanakan provisi Cognitive Services di tingkat S0 prabayar.

Komponen ketiga adalah Azure Cognitive Search, yang dapat Anda buat di portal atau menemukan layanan pencarian yang sudah ada di langganan Anda.

Anda dapat menggunakan tingkat Gratis untuk menyelesaikan panduan ini.

Untuk berinteraksi dengan layanan Pencarian Azure Cognitive Search, Anda memerlukan URL layanan dan kunci akses.

  1. Masuk ke portal Azure, dan di halaman Gambaran umum layanan pencarian Anda, dapatkan nama layanan pencarian Anda. Anda dapat mengonfirmasi nama layanan Anda dengan meninjau URL titik akhir. Jika URL titik akhir Anda adalah https://mydemo.search.windows.net, nama layanan Anda akan menjadi mydemo.

  2. Di Pengaturan>Kunci, dapatkan kunci admin untuk mendapatkan hak penuh pada layanan. Anda dapat menyalin kunci primer atau sekunder.

    Get the service name and admin key

Semua permintaan HTTP ke layanan pencarian memerlukan kunci API. Kunci yang valid menetapkan kepercayaan, berdasarkan permintaan, antara aplikasi yang mengirim permintaan dan layanan yang menanganinya.

2 - Menyiapkan Postman

  1. Mulai Postman, impor koleksi, dan siapkan variabel lingkungan. Jika Anda tidak terbiasa dengan Postman, lihat Menjelajahi REST API Azure Cognitive Search.

  2. Anda harus memberikan nama layanan pencarian, kunci API admin, nama indeks, string koneksi ke akun Azure Storage Anda, dan nama kontainer.

    Screenshot of the Variables page in Postman.

Metode permintaan yang digunakan dalam koleksi ini adalah PUT dan GET. Anda akan menggunakan metode untuk membuat sumber data, set keterampilan, indeks, dan pengindeks.

3 - Membuat alur

Di Azure Cognitive Search, pengayaan terjadi selama pengindeksan (atau penyerapan data). Bagian dari panduan ini akan membuat empat objek: sumber data, definisi indeks, skillset, pengindeks.

Langkah 1: Membuat sumber data

Panggil Buat Sumber Data untuk mengatur string koneksi ke kontainer Blob yang berisi file data sampel.

  1. Pilih permintaan "Buat sumber data".

  2. Isi permintaan adalah JSON dan menyertakan properti objek sumber data pengindeks. String koneksi menyertakan kredensial untuk mengakses layanan.

    {   
        "description" : "Demo files to demonstrate cognitive search capabilities.",  
        "type" : "azureblob",
        "credentials" : { 
           "connectionString": "{{azure-storage-connection-string}}"
        },  
      "container" : { 
        "name" : "{{blob-container}}"
      }
    }
    
  3. Kirim permintaan. Anda akan melihat kode status 201 mengonfirmasi keberhasilan.

Jika Anda mendapatkan kesalahan 403 atau 404, periksa kunci API admin pencarian dan string koneksi Azure Storage.

Langkah 2: Buat keterampilan

Panggil Create Skillset untuk menentukan langkah pengayaan mana yang diterapkan ke konten Anda.

  1. Pilih permintaan "Buat set keterampilan".

  2. Isi permintaan menentukan keterampilan bawaan berikut:

    Ketrampilan Deskripsi
    Pengenalan Karakter Optik Mengenali teks dan angka dalam file gambar.
    Gabungan Teks Membuat "konten gabungan" yang menggabungkan ulang konten yang dipisahkan sebelumnya, berguna untuk dokumen dengan gambar yang disematkan (PDF, DOCX, dan sebagainya). Gambar dan teks dipisahkan selama fase pemecahan dokumen. Keterampilan penggabungan menggabungkannya dengan menyisipkan teks, keterangan gambar, atau tag yang dikenali yang dibuat selama pengayaan ke lokasi yang sama tempat gambar diekstraksi dalam dokumen.

    Saat bekerja dengan konten gabungan dalam set keterampilan, simpul ini akan mencakup semua teks dalam dokumen, termasuk dokumen teks saja yang tidak pernah menjalani OCR atau analisis gambar.
    Deteksi Bahasa Mendeteksi bahasa dan output baik nama bahasa atau kode. Dalam himpunan data multibahasa, bidang bahasa dapat berguna untuk filter.
    Pengenalan Entitas Mengekstrak nama orang, organisasi, dan lokasi dari konten yang digabungkan.
    Pemisahan Teks Memecah konten gabungan besar menjadi gugus yang lebih kecil sebelum memanggil keterampilan ekstraksi frasa kunci. Ekstraksi frasa kunci menerima input 50.000 karakter atau kurang. Beberapa file sampel perlu dipisahkan agar sesuai dalam batas ini.
    Ekstraksi Frasa Kunci Mengeluarkan frasa kunci paling atas.

    Setiap keterampilan dijalankan pada konten dokumen. Selama pemrosesan, Azure Cognitive Search memecahkan setiap dokumen untuk membaca konten dari format file yang berbeda. Teks yang ditemukan berasal dari file sumber ditempatkan di dalam bidang content yang dihasilkan, satu file untuk setiap dokumen. Dengan demikian, masukan menjadi "/document/content".

    Untuk ekstraksi frasa kunci, karena kita menggunakan keterampilan pemisah teks untuk memecah file yang lebih besar ke dalam halaman, konteks untuk keterampilan ekstraksi frasa kunci adalah "document/pages/*" (untuk setiap halaman dalam dokumen) bukan "/document/content".

    {
      "description": "Apply OCR, detect language, extract entities, and extract key-phrases.",
      "cognitiveServices": null,
      "skills":
      [
        {
          "@odata.type": "#Microsoft.Skills.Vision.OcrSkill",
          "context": "/document/normalized_images/*",
          "defaultLanguageCode": "en",
          "detectOrientation": true,
          "inputs": [
            {
              "name": "image",
              "source": "/document/normalized_images/*"
            }
          ],
          "outputs": [
            {
              "name": "text"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.MergeSkill",
          "description": "Create merged_text, which includes all the textual representation of each image inserted at the right location in the content field. This is useful for PDF and other file formats that supported embedded images.",
          "context": "/document",
          "insertPreTag": " ",
          "insertPostTag": " ",
          "inputs": [
            {
              "name":"text", 
              "source": "/document/content"
            },
            {
              "name": "itemsToInsert", 
              "source": "/document/normalized_images/*/text"
            },
            {
              "name":"offsets", 
              "source": "/document/normalized_images/*/contentOffset" 
            }
          ],
          "outputs": [
            {
              "name": "mergedText", 
              "targetName" : "merged_text"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.SplitSkill",
          "textSplitMode": "pages",
          "maximumPageLength": 4000,
          "defaultLanguageCode": "en",
          "context": "/document",
          "inputs": [
            {
              "name": "text",
              "source": "/document/merged_text"
            }
          ],
          "outputs": [
            {
              "name": "textItems",
              "targetName": "pages"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill",
          "description": "If you have multilingual content, adding a language code is useful for filtering",
          "context": "/document",
          "inputs": [
            {
              "name": "text",
              "source": "/document/merged_text"
            }
          ],
          "outputs": [
            {
              "name": "languageName",
              "targetName": "language"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill",
          "context": "/document/pages/*",
          "inputs": [
            {
              "name": "text",
              "source": "/document/pages/*"
            }
          ],
          "outputs": [
            {
              "name": "keyPhrases",
              "targetName": "keyPhrases"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill",
          "categories": ["Organization"],
          "context": "/document",
          "inputs": [
            {
              "name": "text",
              "source": "/document/merged_text"
            }
          ],
          "outputs": [
            {
              "name": "organizations",
              "targetName": "organizations"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill",
          "categories": ["Location"],
          "context": "/document",
          "inputs": [
            {
              "name": "text",
              "source": "/document/merged_text"
            }
          ],
          "outputs": [
            {
              "name": "locations",
              "targetName": "locations"
            }
          ]
        },
        {
          "@odata.type": "#Microsoft.Skills.Text.V3.EntityRecognitionSkill",
          "categories": ["Person"],
          "context": "/document",
          "inputs": [
            {
              "name": "text",
              "source": "/document/merged_text"
            }
          ],
          "outputs": [
            {
              "name": "persons",
              "targetName": "persons"
            }
          ]
        }
      ]
    }
    

    Representasi grafis dari sebagian set keterampilan ditunjukkan di bawah ini.

    Understand a skillset

  3. Kirim permintaan. Postman akan mengembalikan kode status 201 yang mengonfirmasi keberhasilan.

Catatan

Output dapat dipetakan ke indeks, digunakan sebagai input ke keterampilan downstream, atau keduanya seperti halnya dengan kode bahasa. Dalam indeks, kode bahasa berguna untuk pemfilteran. Untuk mengetahui informasi selengkapnya tentang dasar-dasar skillset, lihat Cara menentukan skillset.

Langkah 3: Membuat indeks

Panggil Buat Indeks untuk menyediakan skema yang digunakan untuk membuat indeks terbalik dan konstruksi lain di Azure Cognitive Search. Komponen terbesar dari indeks adalah kumpulan bidang, di mana jenis data dan atribut menentukan konten dan perilaku di Azure Cognitive Search.

  1. Pilih permintaan "Buat indeks".

  2. Isi permintaan menentukan skema indeks pencarian. Koleksi bidang memerlukan satu bidang untuk ditetapkan sebagai kunci. Untuk konten blob, bidang ini sering kali merupakan "metadata_storage_path" yang secara unik mengidentifikasi setiap blob dalam kontainer.

    Dalam skema ini, bidang "teks" menerima output OCR, "konten" menerima output gabungan, "bahasa" menerima output deteksi bahasa. Frasa kunci, entitas, dan beberapa bidang yang diangkat dari penyimpanan blob terdiri dari entri yang tersisa.

    {
      "fields": [
        {
          "name": "text",
          "type": "Collection(Edm.String)",
          "searchable": true,
          "sortable": false,
          "filterable": true,
          "facetable": false
        },
        {
          "name": "content",
          "type": "Edm.String",
          "searchable": true,
          "sortable": false,
          "filterable": false,
          "facetable": false
        },
        {
          "name": "language",
          "type": "Edm.String",
          "searchable": false,
          "sortable": true,
          "filterable": true,
          "facetable": false
        },
        {
          "name": "keyPhrases",
          "type": "Collection(Edm.String)",
          "searchable": true,
          "sortable": false,
          "filterable": true,
          "facetable": true
        },
        {
          "name": "organizations",
          "type": "Collection(Edm.String)",
          "searchable": true,
          "sortable": false,
          "filterable": true,
          "facetable": true
        },
        {
          "name": "persons",
          "type": "Collection(Edm.String)",
          "searchable": true,
          "sortable": false,
          "filterable": true,
          "facetable": true
        },
        {
          "name": "locations",
          "type": "Collection(Edm.String)",
          "searchable": true,
          "sortable": false,
          "filterable": true,
          "facetable": true
        },
        {
          "name": "metadata_storage_path",
          "type": "Edm.String",
          "key": true,
          "searchable": true,
          "sortable": false,
          "filterable": false,
          "facetable": false
        },
        {
          "name": "metadata_storage_name",
          "type": "Edm.String",
          "searchable": true,
          "sortable": false,
          "filterable": false,
          "facetable": false
        }
      ]
    }
    
  3. Kirim permintaan. Postman akan mengembalikan kode status 201 yang mengonfirmasi keberhasilan.

Langkah 4 - Membuat dan menjalankan pengindeks

Panggil Buat Pengindeks untuk mendorong alur. Tiga komponen yang sudah Anda buat sejauh ini (sumber data, skillset, indeks) adalah input ke pengindeks. Membuat pengindeks pada Azure Cognitive Search adalah acara yang menggerakkan seluruh alur.

  1. Pilih permintaan "Buat pengindeks".

  2. Isi permintaan mencakup referensi ke objek sebelumnya, properti konfigurasi yang diperlukan untuk pemrosesan gambar, dan dua jenis pemetaan bidang.

    "fieldMappings" diproses sebelum set keterampilan, mengirim konten dari sumber data ke bidang target dalam indeks. Anda akan menggunakan pemetaan bidang untuk mengirim konten yang sudah ada dan tidak dimodifikasi ke indeks. Jika nama dan jenis bidang sama di kedua ujungnya, tidak diperlukan pemetaan.

    "outputFieldMappings" adalah untuk bidang yang dibuat oleh keterampilan, setelah eksekusi set keterampilan. Referensi ke sourceFieldName dalam outputFieldMappings tidak ada sampai pemecahan atau pengayaan dokumen membuatnya. targetFieldName adalah bidang dalam indeks, didefinisikan dalam skema indeks.

    {
      "dataSourceName" : "{{index_name}}-datasource",
      "targetIndexName" : "{{index_name}}",
      "skillsetName" : "{{index_name}}-skillset",
      "fieldMappings" : [
            {
              "sourceFieldName" : "metadata_storage_path",
              "targetFieldName" : "metadata_storage_path",
              "mappingFunction" : { "name" : "base64Encode" }
            },
            {
            	"sourceFieldName": "metadata_storage_name",
            	"targetFieldName": "metadata_storage_name"
            }
       ],
      "outputFieldMappings" : 
    	[
    		{
            	"sourceFieldName": "/document/merged_text",
            	"targetFieldName": "content"
            },
            {
                "sourceFieldName" : "/document/normalized_images/*/text",
                "targetFieldName" : "text"
            },
      		{
              "sourceFieldName" : "/document/organizations", 
              "targetFieldName" : "organizations"
            },
            {
            	"sourceFieldName": "/document/language",
            	"targetFieldName": "language"
            },
      		{
              "sourceFieldName" : "/document/persons", 
              "targetFieldName" : "persons"
            },
      		{
              "sourceFieldName" : "/document/locations", 
              "targetFieldName" : "locations"
            },
            {
              "sourceFieldName" : "/document/pages/*/keyPhrases/*", 
              "targetFieldName" : "keyPhrases"
            }
        ],
      "parameters":
      {
    	"batchSize": 1,
      	"maxFailedItems":-1,
      	"maxFailedItemsPerBatch":-1,
      	"configuration": 
    	{
        	"dataToExtract": "contentAndMetadata",
        	"imageAction": "generateNormalizedImages"
    	}
      }
    }
    
  3. Kirim permintaan. Postman akan mengembalikan kode status 201 yang mengonfirmasi keberhasilan.

    Diperlukan waktu beberapa menit untuk menyelesaikan langkah ini. Meskipun himpunan data kecil, keterampilan analitis berkomputasi intensif.

Catatan

Membuat pengindeks menggunakan alur. Jika ada masalah dalam mencapai data, pemetaan input dan output, atau urutan operasi, mereka muncul pada tahap ini. Untuk menjalankan kembali alur dengan perubahan kode atau skrip, Anda mungkin perlu menghapus objek terlebih dahulu. Untuk mengetahui informasi selengkapnya, lihat Mengatur ulang dan menjalankan ulang.

Tentang parameter pengindeks

Skrip diatur "maxFailedItems" ke -1, yang menginstruksikan mesin pengindeksan untuk mengabaikan kesalahan selama impor data. Ini dapat diterima karena ada sedikit dokumen dalam sumber data demo. Untuk sumber data yang lebih besar, Anda akan menetapkan nilainya menjadi lebih besar dari 0.

Pernyataan "dataToExtract":"contentAndMetadata" ini memberi tahu pengindeks untuk secara otomatis mengekstrak konten dari format file yang berbeda serta metadata yang terkait dengan setiap file.

Saat konten diekstrak, Anda dapat mengatur imageAction untuk mengekstrak teks dari gambar yang ditemukan di sumber data. Konfigurasi "imageAction":"generateNormalizedImages", dikombinasikan dengan Keterampilan OCR dan Keterampilan Penggabungan Teks, memberi tahu pengindeks untuk mengekstrak teks dari gambar (misalnya, kata "berhenti" dari tanda Berhenti lalu lintas), dan menyematkannya sebagai bagian dari bidang konten. Perilaku ini berlaku untuk kedua gambar yang disematkan dalam dokumen (misalnya gambar di dalam PDF), serta gambar yang ditemukan di sumber data, misalnya file JPG.

4 - Memantau pengindeksan

Pengindeksan dan pengayaan dimulai segera setelah Anda mengirimkan permintaan Create Indexer. Tergantung pada keterampilan kognitif mana yang Anda tentukan, pengindeksan dapat memakan waktu lebih lama.

Untuk mengetahui apakah pengindeks masih berjalan, panggil Dapatkan Status Pengindeks untuk memeriksa status pengindeks.

  1. Pilih lalu kirim permintaan "Periksa status pengindeks".

  2. Tinjau respons untuk mempelajari apakah pengindeks sedang berjalan, atau untuk melihat informasi kesalahan dan peringatan.

Peringatan umum dalam beberapa skenario dan tidak selalu menunjukkan masalah. Misalnya, jika kontainer blob menyertakan file gambar, dan alur tidak menangani gambar, Anda akan mendapatkan peringatan yang menyatakan bahwa gambar tidak diproses.

Dalam sampel ini, ada file PNG yang tidak berisi teks. Kelima keterampilan berbasis teks (deteksi bahasa, pengenalan entitas lokasi, organisasi, orang, dan ekstraksi frasa kunci) gagal dijalankan pada file ini. Pemberitahuan yang dihasilkan muncul dalam riwayat eksekusi.

Sekarang setelah Anda membuat indeks yang berisi konten yang dihasilkan AI, panggil Dokumen Pencarian untuk menjalankan beberapa kueri untuk melihat hasilnya.

Ingat bahwa kita mulai dengan konten blob, ketika seluruh dokumen dikemas ke dalam satu content bidang. Anda bisa mencari bidang ini dan menemukan kecocokan dengan kueri Anda.

  1. Buka permintaan "Cari" dan jalankan untuk melihat konten indeks pertama Anda. Permintaan ini adalah pencarian kosong ("search=*") sehingga akan mengembalikan konten untuk masing-masing dari 14 dokumen. Parameter $select membatasi hasil ke nama file, nama bahasa, dan salah satu entitas yang dikenali.

     GET /indexes//{{index_name}}/docs?search=*&$select=metadata_storage_name,language,organizations&$count=true&api-version=2020-06-30
    
  2. Revisi kueri sebelumnya untuk mencari "membuat peluang tanpa batas". Frasa ini diperoleh melalui OCR dari file gambar yang disematkan dalam dokumen PDF. Sertakan "sorotan" untuk menerapkan pemformatan pada istilah yang cocok dalam bidang yang padat diisi.

     GET /indexes//{{index_name}}/docs?search=creating boundaryless opportunities&$select=content&highlight=content&$count=true&api-version=2020-06-30
    
  3. Untuk kueri berikutnya, terapkan filter. Ingat bahwa bidang bahasa dan semua bidang entitas dapat difilter.

     GET /indexes/{{index_name}}/docs?search=*&$filter=organizations/any(organizations: organizations eq 'NASDAQ')&$select=metadata_storage_name,organizations&$count=true&api-version=2020-06-30
    

Kueri ini menggambarkan beberapa cara yang dapat Anda kerjakan dengan sintaks dan filter kueri pada bidang baru yang dibuat oleh pencarian kognitif. Untuk contoh kueri lainnya, lihat Contoh di REST API Search Documents, Contoh kueri sintaks sederhana, dan contoh kueri Lucene Penuh.

Atur ulang dan jalankan kembali

Selama tahap awal pengembangan, iterasi atas desain adalah umum. Kemungkinan besar Anda akan sering menghapus dan membangun kembali objek yang sama.

Jika Anda menggunakan portal untuk penghapusan, dan menghapus pengindeks terlebih dahulu, portal akan meminta Anda untuk menghapus objek terkait.

Delete search objects

Atau, Anda dapat menggunakan DELETE dan menyediakan URL untuk setiap objek. Perintah berikut ini akan menghapus pengindeks.

DELETE https://[YOUR-SERVICE-NAME].search.windows.net/indexers/cog-search-demo-idxr?api-version=2020-06-30

Kode status 204 dikembalikan pada penghapusan yang berhasil.

Kesimpulan

Tutorial ini menunjukkan langkah-langkah dasar untuk membangun alur pengindeksan yang diperkaya melalui pembuatan bagian komponen: sumber data, skillset, indeks, dan pengindeks.

Keterampilan bawaan sudah diperkenalkan, bersama dengan definisi keterampilan dan mekanisme keterampilan penautan bersama-sama melalui input dan output. Anda juga belajar bahwa outputFieldMappings dalam definisi pengindeks diperlukan untuk perutean nilai yang diperkaya dari alur ke dalam indeks yang dapat dicari pada layanan Azure Cognitive Search.

Akhirnya, Anda sudah belajar cara menguji hasil dan mengatur ulang sistem untuk iterasi lebih lanjut. Anda sudah belajar bahwa mengeluarkan kueri terhadap indeks mengembalikan output yang dibuat oleh alur pengindeksan yang diperkaya.

Membersihkan sumber daya

Saat Anda bekerja di langganan Anda sendiri, di akhir proyek, sebaiknya hapus sumber daya yang tidak lagi Anda butuhkan. Sumber daya Anda biarkan berjalan dapat dikenakan biaya. Anda dapat menghapus sumber daya satu per satu atau menghapus grup sumber daya untuk menghapus seluruh set sumber daya.

Anda dapat menemukan dan mengelola sumber daya di portal, menggunakan tautan Semua sumber daya atau Grup sumber daya di panel navigasi sebelah kiri.

Langkah berikutnya

Setelah Anda memahami semua objek dalam alur pengayaan AI, mari lihat lebih mendalam definisi kumpulan keterampilan dan keterampilan individu.