Aracılığıyla paylaş


Öğretici: Hata Ayıklama Oturumlarını kullanarak beceri kümesini düzeltme

Azure AI Search'te beceri kümesi aranabilir içeriği analiz eden, dönüştüren veya oluşturan becerilerin eylemlerini koordine eder. Genellikle, bir becerinin çıkışı başka bir becerinin girişi olur. Girişler çıkışlara bağlı olduğunda, beceri kümesi tanımlarındaki ve alan ilişkilendirmelerindeki hatalar eksik işlemlere ve verilere neden olabilir.

Hata Ayıklama Oturumları , Azure AI Search'te yürütülen beceri kümesinin bütünsel görselleştirmesini sağlayan bir Azure portal aracıdır. Bu aracı kullanarak, bir eylemin nereye düşebileceğini kolayca görmek için belirli adımların detayına gidebilirsiniz.

Bu makalede, eksik girişleri ve çıkışları bulmak ve düzeltmek için Hata Ayıklama Oturumlarını kullanın. Öğretici her şey dahil. Örnek veriler, nesneler oluşturan bir REST dosyası ve beceri kümesindeki hata ayıklama sorunlarına yönelik yönergeler sağlar.

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Önkoşullar

Not

Bu öğreticide dil algılama, varlık tanıma ve anahtar ifade ayıklama için Azure AI hizmetleri de kullanılır. İş yükü çok küçük olduğundan, Azure yapay zeka hizmetleri 20 adede kadar işlem için ücretsiz işleme için arka planda işlenir. Bu, faturalanabilir bir Azure AI hizmetleri kaynağı oluşturmak zorunda kalmadan bu alıştırmayı tamamlayabileceğiniz anlamına gelir.

Örnek verileri ayarlama

Bu bölüm, dizin oluşturucunun ve beceri kümesinin çalışabilecek içeriğe sahip olması için Azure Blob Depolama'de örnek veri kümesini oluşturur.

  1. 19 dosyadan oluşan örnek verileri (clinical-trials-pdf-19) indirin.

  2. Bir Azure Depolama hesabı oluşturun veya var olan bir hesabı bulun.

    • Bant genişliği ücretlerinden kaçınmak için Azure AI Search ile aynı bölgeyi seçin.

    • StorageV2 (genel amaçlı V2) hesap türünü seçin.

  3. Azure portalında Azure Depolama hizmetleri sayfalarına gidin ve bir Blob kapsayıcısı oluşturun. En iyi yöntem, erişim düzeyini "özel" belirtmektir. Kapsayıcınıza clinicaltrialdatasetadını verin.

  4. kapsayıcısında Karşıya Yükle'yi seçerek indirdiğiniz örnek dosyaları karşıya yükleyin ve ilk adımda sıkıştırmasını açın.

  5. Azure portalındayken Azure Depolama için bağlantı dizesi kopyalayın. bağlantı dizesi Azure portalındaki Ayarlar>Erişim Anahtarları'ndan alabilirsiniz.

Anahtar ve URL kopyalama

Bu öğreticide kimlik doğrulaması ve yetkilendirme için API anahtarları kullanılır. Arama hizmeti uç noktasına ve Azure portalından alabileceğiniz bir API anahtarına ihtiyacınız vardır.

  1. Azure portalında oturum açın, Genel Bakış sayfasına gidin ve URL'yi kopyalayın. Örnek uç nokta https://mydemo.search.windows.net şeklinde görünebilir.

  2. Ayarlar>Anahtarları'nın altında bir yönetici anahtarı kopyalayın. Yönetici anahtarları nesneleri eklemek, değiştirmek ve silmek için kullanılır. Değiştirilebilir iki yönetici anahtarı vardır. İkisini de kopyalayın.

    Azure portalındaki URL ve API anahtarlarının ekran görüntüsü.

Geçerli bir API anahtarı, isteği gönderen uygulama ile bunu işleyen arama hizmeti arasında istek temelinde güven oluşturur.

Veri kaynağı, beceri kümesi, dizin ve dizin oluşturucu oluşturma

Bu bölümde, bu öğreticide düzeltebileceğiniz bir "buggy" iş akışı oluşturun.

  1. Visual Studio Code'ı başlatın ve dosyayı açın debug-sessions.rest .

  2. Şu değişkenleri sağlayın: arama hizmeti URL'si, arama hizmetleri yönetici API anahtarı, depolama bağlantı dizesi ve PDF'leri depoleyen blob kapsayıcısının adı.

  3. Her isteği sırayla gönderin. Dizin oluşturucunun oluşturulması birkaç dakika sürer.

  4. Dosyayı kapatın.

Azure portalında sonuçları denetleme

Örnek kod, beceri kümesi yürütme sırasında oluşan sorunların bir sonucu olarak kasıtlı olarak bir buggy dizini oluşturur. Sorun, dizinde eksik veriler olmasıdır.

  1. Azure portalında, arama hizmetine Genel Bakış sayfasında Dizinler sekmesini seçin.

  2. Klinik denemeleri seçin.

  3. Arama gezgininin JSON görünümünde bu JSON sorgu dizesini girin. Belirli belgeler için alanlar döndürür (benzersiz metadata_storage_path alan tarafından tanımlanır).

    "search": "*",
    "select": "metadata_storage_path, organizations, locations",
    "count": true
    
  4. Sorguyu çalıştırın. ve locationsiçin organizations boş değerler görmeniz gerekir.

    Bu alanlar, blob içeriğinin herhangi bir yerindeki kuruluşları ve konumları algılamak için kullanılan beceri kümesinin Varlık Tanıma becerisiyle doldurulmuş olmalıdır. Sonraki alıştırmada, neyin yanlış gittiğini belirlemek için beceri kümesinde hata ayıklayacaksınız.

Hataları ve uyarıları araştırmanın bir diğer yolu da Azure portalından geçmektir.

  1. Indexers sekmesini açın ve clinical-trials-idxr öğesini seçin.

    Dizin oluşturucu işi genel olarak başarılı olsa da uyarılar olduğuna dikkat edin.

  2. Uyarıları görüntülemek için Başarılı'yı seçin (çoğunlukla hatalar varsa, ayrıntı bağlantısı Başarısız olur). Dizin oluşturucu tarafından yayılan her uyarının uzun bir listesini görürsünüz.

    Görünüm uyarılarının ekran görüntüsü.

Hata ayıklama oturumunuzu başlatma

  1. Arama hizmeti sol gezinti bölmesindeki Arama yönetimi'nin altında Oturumlarda hata ayıkla'yı seçin.

  2. + Hata Ayıklama Oturumu Ekle'yi seçin.

  3. Oturuma bir ad verin.

  4. Dizin oluşturucu şablonunda dizin oluşturucu adını girin. Dizin oluşturucunun veri kaynağına, beceri kümesine ve dizine başvuruları vardır.

  5. Depolama hesabını seçin.

  6. Oturumu kaydedin .

    Oturum tanımında hata ayıklama sayfasının ekran görüntüsü.

  7. Ayarlar sayfasında bir hata ayıklama oturumu açılır. İlk yapılandırmada değişiklik yapabilir ve tüm varsayılanları geçersiz kılabilirsiniz. Hata ayıklama oturumu yalnızca tek bir belgeyle çalışır. Varsayılan değer, hata ayıklama oturumlarınızın temeli olarak koleksiyondaki ilk belgeyi kabul etmektir. Azure Depolama'da URI'sini sağlayarak hata ayıklamak için belirli bir belgeyi seçebilirsiniz.

  8. Hata ayıklama oturumunun başlatılması tamamlandığında eşlemeleri ve arama dizinini içeren bir beceri iş akışı görmeniz gerekir. Zenginleştirilmiş belge veri yapısı, yan taraftaki ayrıntılar bölmesinde görüntülenir. İş akışının daha fazlasını görebilmeniz için bu ekran görüntüsünü aşağıdaki ekran görüntüsünden dışladık.

    Hata Ayıklama Oturumu görsel düzenleyicisinin ekran görüntüsü.

Beceri kümesiyle ilgili sorunları bulma

Dizin oluşturucu tarafından bildirilen tüm sorunlar Hatalar ve Uyarılar olarak gösterilir.

Hata ve uyarı sayısının, daha önce görüntülenenden çok daha küçük bir liste olduğuna dikkat edin çünkü bu liste yalnızca tek bir belgenin hatalarını ayrıntılı olarak açıklar. Dizin oluşturucu tarafından görüntülenen liste gibi, bir uyarı iletisi seçebilir ve bu uyarının ayrıntılarını görebilirsiniz.

Bildirimleri gözden geçirmek için Uyarılar'ı seçin. Dört tane görmeniz gerekir:

  • "Bir veya daha fazla beceri girişi geçersiz olduğundan beceri yürütülemedi. Gerekli beceri girişi eksik. Ad: 'text', Source: '/document/content'."

  • "Çıkış alanı 'konumlar' arama dizinine eşlanamadı. Dizin oluşturucunuzun 'outputFieldMappings' özelliğini denetleyin. '/document/merged_content/locations' değeri eksik."

  • "Çıkış alanı 'kuruluşlar' arama dizinine eşlanamadı. Dizin oluşturucunuzun 'outputFieldMappings' özelliğini denetleyin. '/document/merged_content/organizations' değeri eksik."

  • "Beceri yürütüldü, ancak bir veya daha fazla beceri girişi geçersiz olduğundan beklenmeyen sonuçlara sahip olabilir. İsteğe bağlı beceri girişi eksik. Ad: 'languageCode', Kaynak: '/document/languageCode'. İfade dili ayrıştırma sorunları: '/document/languageCode' değeri eksik."

Birçok becerinin "languageCode" parametresi vardır. İşlemi inceleyerek, bu dil kodu girişinin 'konumlar' ve 'kuruluşlar' çıkışıyla ilgili sorun yaşayan varlık tanıma becerisiyle aynı olan öğesinde EntityRecognitionSkill.#1eksik olduğunu görebilirsiniz.

Dört bildirim de bu beceriyle ilgili olduğundan, sonraki adımınız bu beceride hata ayıklamaktır. Mümkünse, çıkış sorunlarına geçmeden önce giriş sorunlarını çözerek başlayın.

Eksik beceri giriş değerlerini düzeltme

  1. çalışma yüzeyinde uyarıları bildiren beceriyi seçin. Bu öğreticide varlık tanıma becerisi yer alır.

  2. Yinelemeler ve ilgili giriş ve çıkışları, becerinin JSON tanımı için beceri ayarları ve bu becerinin yaydığı hatalar ve uyarılar için iletiler içeren Beceri ayrıntıları bölmesi sağ tarafta açılır.

    Beceri ayrıntıları bölmesinin ekran görüntüsü.

  3. İfade değerlendiricisindeki değerleri göstermek için her girişin üzerine gelin (veya bir giriş seçin). Bu giriş için görüntülenen sonucun metin girişi gibi görünmediğini unutmayın. Metin yerine bir dizi yeni satır karakteri \n \n\n\n\n gibi görünür. Metin olmaması hiçbir varlığın tanımlanamaması anlamına gelir; bu nedenle bu belge becerinin önkoşullarını karşılayamaz veya bunun yerine kullanılması gereken başka bir giriş vardır.

    Null değerleri gösteren beceri girişinin ekran görüntüsü.

  4. Zenginleştirilmiş veri yapısına geri dönün ve bu belgenin zenginleştirme düğümlerini gözden geçirin. "content" öğesinin \n \n\n\n\n kaynak kaynağı olmadığına, ancak "merged_content" için başka bir değerin OCR çıkışına sahip olduğunu unutmayın. Hiçbir gösterge olmasa da, bu PDF'nin içeriği "merged_content" içindeki ayıklanan ve işlenen metin tarafından kanıtlandığı gibi bir JPEG dosyası gibi görünür.

    Zenginleştirilmiş Veri Yapısı'nın ekran görüntüsü.

  5. Beceriye geri dönün ve Beceri kümesi ayarları'nı seçerek JSON tanımını açın.

  6. ifadesini olarak /document/content/document/merged_contentdeğiştirin ve kaydet'i seçin. Uyarının artık listelenmediğini fark edin.

    Sabit merged_content girişi için İfade Değerlendiricisi'nin ekran görüntüsü.

  7. Oturumun pencere menüsünde Çalıştır'ı seçin. Bu, belgeyi kullanarak beceri kümesinin başka bir yürütmesini başlatıyor.

  8. Hata ayıklama oturumu yürütme işlemi tamamlandıktan sonra uyarı sayısının bir azaldığını görebilirsiniz. Uyarılar, metin girişi hatasının gittiğini, ancak diğer uyarıların kaldığını gösterir. Sonraki adım eksik veya boş değerle /document/languageCodeilgili uyarıyı ele almaktır.

    Güncelleştirilmiş hataların ve uyarıların ekran görüntüsü.

  9. Beceriyi seçin ve üzerine /document/languageCodegelin. Bu girişin değeri null değeridir ve bu geçerli bir giriş değildir.

  10. Önceki sorunda olduğu gibi, düğümlerinin kanıtı için Zenginleştirilmiş veri yapısını gözden geçirerek başlayın. "languageCode" düğümü olmadığına, ancak "language" için bir düğüm olduğuna dikkat edin. Yani, beceri ayarlarında bir yazım hatası var.

  11. ifadesini /document/languagekopyalayın.

  12. Beceri ayrıntıları bölmesinde, 1. beceri için Beceri Ayarları'nı seçin ve yeni değerini /document/languageyapıştırın.

  13. Kaydet'i seçin.

  14. Çalıştır seçin.

  15. Hata ayıklama oturumu yürütmesi tamamlandıktan sonra, Sonuçları Beceri ayrıntıları bölmesinde de kontrol edebilirsiniz. üzerine /document/languagegeldiğinizde, İfade değerlendiricisinde değer olarak görmeniz en gerekir.

Giriş uyarılarının gittiğine dikkat edin. Artık kuruluşlar ve konumlar için çıkış alanlarıyla ilgili iki uyarı kaldı.

Eksik beceri çıkış değerlerini düzeltme

İletilerde dizin oluşturucunuzun 'outputFieldMappings' özelliğinin denetlenmesi gerekir, bu nedenle buradan başlayalım.

  1. çalışma yüzeyinde Çıkış Alanı Eşlemeleri'ni seçin. Çıkış alanı eşlemelerinin eksik olduğuna dikkat edin.

    Çıkış alanı eşlemelerinin ekran görüntüsü.

  2. İlk adım olarak, arama dizininde beklenen alanların bulunduğunu onaylayın. Bu durumda, dizinde "konumlar" ve "kuruluşlar" alanları vardır.

  3. Dizinle ilgili bir sorun yoksa, sonraki adım beceri çıkışlarını denetlemektir. Daha önce olduğu gibi Zenginleştirilmiş veri yapısını seçin ve "konumları" ve "kuruluşları" bulmak için düğümleri kaydırın. Üst öğenin "merged_content" yerine "içerik" olduğuna dikkat edin. Bağlam yanlış.

  4. Varlık tanıma becerisi için Beceriler ayrıntı bölmesine geri dönün.

  5. Beceri Ayarları'nda olarak document/merged_contentdeğiştirincontext. Bu noktada, beceri tanımında tamamen üç değişiklik yapmalısınız.

    Tüm değişikliklerin gösterildiği beceri tanımının ekran görüntüsü.

  6. Kaydet'i seçin.

  7. Çalıştır seçin.

Tüm hatalar çözüldü.

Beceri kümesinde değişiklikleri işleme

Hata ayıklama oturumu başlatıldığında, arama hizmeti beceri kümesinin bir kopyasını oluşturmuştur. Bu, arama hizmetinizdeki özgün beceri kümesini korumak için yapıldı. Beceri kümesinde hata ayıklamayı tamamladığınıza göre, düzeltmeler işlenebilir (özgün beceri kümesinin üzerine yazılabilir).

Alternatif olarak, değişiklikleri işlemeye hazır değilseniz hata ayıklama oturumunu kaydedebilir ve daha sonra yeniden açabilirsiniz.

  1. Ana Hata Ayıklama oturumları menüsünde Değişiklikleri işle'yi seçin.

  2. Beceri kümesinizi güncelleştirmek istediğinizi onaylamak için Tamam'ı seçin.

  3. Hata ayıklama oturumunu kapatın ve sol gezinti bölmesinden Dizin Oluşturucular'ı açın.

  4. 'clinical-trials-idxr' öğesini seçin.

  5. Sıfırla'yı seçin.

  6. Çalıştır seçin.

  7. Sıfırlama ve çalıştırma komutlarının durumunu göstermek için Yenile'yi seçin.

Dizin oluşturucunun çalışması tamamlandığında, Yürütme geçmişi sekmesindeki en son çalıştırmanın zaman damgasının yanında yeşil bir onay işareti ve Başarılı sözcüğü olmalıdır. Değişikliklerin uygulandığından emin olmak için:

  1. Sol gezinti bölmesinde Dizinler'i açın.

  2. 'klinik-denemeler' dizinini seçin ve Arama gezgini sekmesinde şu sorgu dizesini girin: $select=metadata_storage_path, organizations, locations&$count=true belirli belgelerin alanlarını döndürmek için (benzersiz metadata_storage_path alan tarafından tanımlanır).

  3. Ara'yı seçin.

Sonuçlar, kuruluşların ve konumların artık beklenen değerlerle doldurulduğunu göstermelidir.

Kaynakları temizleme

Kendi aboneliğinizde çalışırken, projenin sonunda oluşturduğunuz kaynaklara hala ihtiyacınız olup olmadığını belirlemek iyi bir fikirdir. Çalışır durumda bırakılan kaynaklar maliyetlerin artmasına neden olabilir. Kaynakları teker teker silebilir veya tüm kaynak grubunu silerek kaynak kümesinin tamamını kaldırabilirsiniz.

Sol gezinti bölmesindeki Tüm kaynaklar veya Kaynak grupları bağlantısını kullanarak Kaynakları Azure portalında bulabilir ve yönetebilirsiniz.

Ücretsiz hizmet üç dizin, dizin oluşturucu ve veri kaynağı ile sınırlıdır. Sınırın altında kalmak için Azure portalında tek tek öğeleri silebilirsiniz.

Sonraki adımlar

Bu öğreticide beceri kümesi tanımı ve işlemesinin çeşitli yönleri ele alınmıştı. Kavramlar ve iş akışları hakkında daha fazla bilgi edinmek için aşağıdaki makalelere bakın: