Oktatóanyag: Képességkészlet javítása hibakeresési munkamenetek használatával
Az Azure AI Searchben egy képességkészlet koordinálja a kereshető tartalmakat elemző, átalakító vagy létrehozó készségek műveleteit. Az egyik képesség kimenete gyakran egy másik bemenete lesz. Ha a bemenetek kimenettől függenek, a képességkészlet-definíciókban és a mezőtársításokban előforduló hibák hibás műveleteket és adatokat eredményezhetnek.
A hibakeresési munkamenetek egy Azure Portal-eszköz, amely holisztikus vizualizációt biztosít egy, az Azure AI Searchben futó képességkészletről. Ezzel az eszközzel lehatolódhat bizonyos lépésekre, hogy könnyen megállapíthassa, hol eshet le egy művelet.
Ebben a cikkben a Hibakeresési munkamenetek használatával keresse meg és javítsa ki a hiányzó bemeneteket és kimeneteket. Az oktatóanyag teljes körű. Mintaadatokat, objektumokat létrehozó REST-fájlt, valamint útmutatást nyújt a képességkészlet hibáinak elhárításához.
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Előfeltételek
Azure AI Search. Hozzon létre egy szolgáltatást , vagy keressen egy meglévő szolgáltatást az aktuális előfizetése alatt. Ehhez az oktatóanyaghoz ingyenes szolgáltatást használhat. Az ingyenes szint nem nyújt felügyelt identitástámogatást az Azure AI-Search szolgáltatás. Az Azure Storage-hoz való kapcsolatokhoz kulcsokat kell használnia.
Azure Storage-fiók blobtárolóval, mintaadatok tárolására és a hibakeresési munkamenet során létrehozott gyorsítótárazott adatok megőrzésére szolgál. Ha ingyenes keresési szolgáltatást használ, a tárfióknak engedélyeznie kell a közös hozzáférési kulcsokat, és engedélyeznie kell a nyilvános hálózati hozzáférést.
Visual Studio Code REST-ügyféllel.
Minta debug-sessions.rest fájl a bővítési folyamat létrehozásához.
Feljegyzés
Ez az oktatóanyag az Azure AI-szolgáltatásokat is használja a nyelvfelismeréshez, az entitásfelismeréshez és a kulcskifejezés-kinyeréshez. Mivel a számítási feladat olyan kicsi, az Azure AI-szolgáltatások a színfalak mögött leképezve akár 20 tranzakció ingyenes feldolgozására is használhatóak. Ez azt jelenti, hogy ezt a gyakorlatot anélkül végezheti el, hogy számlázható Azure AI-szolgáltatási erőforrást kellene létrehoznia.
A mintaadatok beállítása
Ez a szakasz létrehozza a mintaadatkészletet az Azure Blob Storage-ban, hogy az indexelő és a képességkészlet működjön együtt tartalommal.
Töltse le a mintaadatokat (clinical-trials-pdf-19), amely 19 fájlból áll.
Hozzon létre egy Azure Storage-fiókot , vagy keressen egy meglévő fiókot.
A sávszélesség-díjak elkerülése érdekében válassza ki ugyanazt a régiót, mint az Azure AI Search.
Válassza ki a StorageV2 (általános célú V2) fióktípust.
Lépjen az Azure Storage-szolgáltatások lapjaira az Azure Portalon, és hozzon létre egy Blob-tárolót. Az ajánlott eljárás a "privát" hozzáférési szint megadása. Nevezze el a tárolót
clinicaltrialdataset
.A tárolóban válassza a Feltöltés lehetőséget a letöltött és az első lépésben kibontott mintafájlok feltöltéséhez.
Az Azure Portalon másolja ki az Azure Storage kapcsolati sztring. A kapcsolati sztring az Azure Portal Beállítások>hozzáférési kulcsaiból szerezheti be.
Kulcs és URL másolása
Ez az oktatóanyag API-kulcsokat használ a hitelesítéshez és az engedélyezéshez. Szüksége van a keresési szolgáltatás végpontjára és egy API-kulcsra, amelyet az Azure Portalról szerezhet be.
Jelentkezzen be az Azure Portalra, lépjen az Áttekintés lapra, és másolja ki az URL-címet. A végpontok például a következőképpen nézhetnek ki:
https://mydemo.search.windows.net
.A Beállítások>kulcsok területen másolja ki a rendszergazdai kulcsot. A rendszergazdai kulcsok objektumok hozzáadására, módosítására és törlésére szolgálnak. Két felcserélhető rendszergazdai kulcs van. Másolja valamelyiket.
Az érvényes API-kulcs kérésenként megbízhatóságot hoz létre a kérelmet küldő alkalmazás és az azt kezelő keresési szolgáltatás között.
Adatforrás, képességkészlet, index és indexelő létrehozása
Ebben a szakaszban hozzon létre egy "hibás" munkafolyamatot, amelyet ebben az oktatóanyagban kijavíthat.
Indítsa el a Visual Studio Code-ot, és nyissa meg a
debug-sessions.rest
fájlt.Adja meg a következő változókat: keresési szolgáltatás URL-címe, keresési szolgáltatások rendszergazdai API-kulcsa, tárolási kapcsolati sztring, valamint a PDF-fájlokat tároló blobtároló neve.
Küldje el egymás után az egyes kéréseket. Az indexelő létrehozása több percet vesz igénybe.
Zárja be a fájlt.
Eredmények ellenőrzése az Azure Portalon
A mintakód szándékosan létrehoz egy hibás indexet a képességkészlet végrehajtása során felmerülő problémák következtében. A probléma az, hogy az indexből hiányoznak adatok.
Az Azure Portal keresési szolgáltatás áttekintési lapján válassza az Indexek lapot.
Válassza ki a klinikai kísérleteket.
Adja meg ezt a JSON-lekérdezési sztringet a Kereséskezelő JSON-nézetében. Adott dokumentumok mezőit adja vissza (az egyedi
metadata_storage_path
mező azonosítja)."search": "*", "select": "metadata_storage_path, organizations, locations", "count": true
Futtassa a lekérdezést. Üres értékeknek kell megjelennie a következőhöz
organizations
: éslocations
.Ezeket a mezőket a képességkészlet Entitásfelismerési képességével kellett kitölteni, amellyel a blob tartalmán belül bárhol észlelhet szervezeteket és helyeket. A következő gyakorlatban hibakeresést fog végezni a képességkészletben, hogy megállapítsa, mi történt.
A hibák és figyelmeztetések vizsgálatának másik módja az Azure Portal.
Nyissa meg az Indexelők lapot, és válassza a clinical-trials-idxr elemet.
Figyelje meg, hogy bár az indexelő feladat összességében sikeres volt, figyelmeztetések voltak.
Válassza a Siker lehetőséget a figyelmeztetések megtekintéséhez (ha többnyire hibák jelentkeztek, a részletes hivatkozás sikertelen lesz). Az indexelő által kibocsátott figyelmeztetések hosszú listája jelenik meg.
Hibakeresési munkamenet indítása
A keresési szolgáltatás bal oldali navigációs paneljén, a Kereséskezelés csoportban válassza a Hibakeresési munkamenetek lehetőséget.
Válassza a + Hibakeresési munkamenet hozzáadása lehetőséget.
Adjon nevet a munkamenetnek.
Az Indexer-sablonban adja meg az indexelő nevét. Az indexelő hivatkozik az adatforrásra, a képességkészletre és az indexre.
Válassza ki a tárfiókot.
Mentse a munkamenetet.
Megnyílik egy hibakeresési munkamenet a beállítások lapjára. Módosíthatja a kezdeti konfigurációt, és felülbírálhatja az alapértelmezett beállításokat. A hibakeresési munkamenetek csak egyetlen dokumentummal működnek. Az alapértelmezett beállítás a gyűjtemény első dokumentumának elfogadása a hibakeresési munkamenetek alapjaként. Kiválaszthat egy adott dokumentumot a hibakereséshez , ha megadja az URI-t az Azure Storage-ban.
Amikor a hibakeresési munkamenet befejeződött az inicializálással, látnia kell egy leképezéseket és keresési indexet tartalmazó készség-munkafolyamatot. A bővített dokumentumadat-struktúra megjelenik egy részletpanelen az oldalon. Az alábbi képernyőképen kizártuk, hogy többet láthass a munkafolyamatból.
A készségkészlettel kapcsolatos problémák keresése
Az indexelő által jelentett problémák hibaüzenetként és figyelmeztetésként jelennek meg.
Figyelje meg, hogy a hibák és figyelmeztetések száma sokkal kisebb, mint a korábban megjelenített lista, mivel ez a lista csak egyetlen dokumentum hibáit részletezi. Az indexelő által megjelenített listához hasonlóan kiválaszthat egy figyelmeztető üzenetet, és megtekintheti a figyelmeztetés részleteit.
Az értesítések áttekintéséhez válassza a Figyelmeztetések lehetőséget. Négynek kell megjelennie:
"Nem sikerült végrehajtani a képességet, mert egy vagy több készségbemenet érvénytelen volt. Hiányzik a szükséges készségbevitel. Név: "szöveg", Forrás: '/document/content'."
"A kimeneti mező "helyek" nem képezhető le keresési indexre. Ellenőrizze az indexelő "outputFieldMappings" tulajdonságát. Hiányzik a "/document/merged_content/locations" érték."
"A "szervezetek" kimeneti mező nem képezhető le keresési indexre. Ellenőrizze az indexelő "outputFieldMappings" tulajdonságát. Hiányzik a "/document/merged_content/organizations" érték."
"A képesség végrehajtásra került, de lehet, hogy nem várt eredményt ad, mert egy vagy több készségbemenet érvénytelen volt. Hiányzik az opcionális készségbemenet. Név: 'languageCode', Forrás: '/document/languageCode'. Kifejezésnyelv-elemzési problémák: Hiányzik a "/document/languageCode" érték."
Sok készség rendelkezik "languageCode" paraméterrel. A művelet vizsgálatával láthatja, hogy ez a nyelvi kódbevitel hiányzik az EntityRecognitionSkill.#1
entitásfelismerési képességből, amely problémákat okoz a "helyek" és a "szervezetek" kimenetével.
Mivel mind a négy értesítés erről a képességről szól, a következő lépés a képesség hibakeresése. Ha lehetséges, először a bemeneti problémák megoldásával kezdje, mielőtt továbblépne a kimeneti problémákra.
Hiányzó készségbeviteli értékek javítása
A munkafelületen válassza ki azt a képességet, amely a figyelmeztetéseket jelenti. Ebben az oktatóanyagban ez az entitásfelismerési képesség.
A Szakértelem részletei panel jobbra nyílik meg az iterációkhoz és azok bemeneteihez és kimeneteihez tartozó szakaszokkal, a képesség JSON-definíciójához tartozó képességbeállításokkal, valamint az e képesség által kibocsátott hibákra és figyelmeztetésekre vonatkozó üzenetekkel.
Mutasson az egyes bemenetek fölé (vagy válasszon ki egy bemenetet) az értékek megjelenítéséhez a Kifejezés kiértékelőjében. Figyelje meg, hogy a bemenet megjelenített eredménye nem úgy néz ki, mint egy szövegbevitel. Szöveg helyett új vonalkarakterek
\n \n\n\n\n
sorozatának tűnik. A szöveg hiánya azt jelenti, hogy nem azonosíthatók entitások, ezért vagy ez a dokumentum nem felel meg a képesség előfeltételeinek, vagy egy másik bemenetet kell használni.Váltson vissza a bővített adatstruktúrára, és tekintse át a dokumentum bővítési csomópontjait. Figyelje meg, hogy a
\n \n\n\n\n
"tartalom" nem tartalmaz forrást, de a "merged_content" másik értéke OCR-kimenettel rendelkezik. Bár nincs jelzés, ennek a PDF-fájlnak a tartalma JPEG-fájlnak tűnik, amit a kinyert és feldolgozott szöveg is bizonyít a "merged_content" fájlban.Váltson vissza a képességre, és válassza a Skillset-beállításokat a JSON-definíció megnyitásához.
Módosítsa a kifejezést a másikra
/document/content
/document/merged_content
, majd válassza a Mentés lehetőséget. Figyelje meg, hogy a figyelmeztetés már nem szerepel a listában.Válassza a Futtatás lehetőséget a munkamenet ablakmenüjében. Ez elindítja a készségkészlet újabb végrehajtását a dokumentum használatával.
Miután a hibakeresési munkamenet végrehajtása befejeződött, figyelje meg, hogy a figyelmeztetések száma eggyel csökkent. A figyelmeztetések azt mutatják, hogy a szövegbeviteli hiba eltűnt, de a többi figyelmeztetés továbbra is megmarad. A következő lépés a hiányzó vagy üres értékre
/document/languageCode
vonatkozó figyelmeztetés kezelése.Válassza ki a képességet, és mutasson az egérmutatóra
/document/languageCode
. Ennek a bemenetnek az értéke null, ami nem érvényes bemenet.Az előző problémához hasonlóan először is tekintse át a bővített adatstruktúrát a csomópontok bizonyítékaiért. Figyelje meg, hogy nincs "languageCode" csomópont, de van egy a "language" kifejezéshez. Szóval, van egy elírás a képességbeállításokban.
Másolja ki a kifejezést
/document/language
.A Szakértelem részletei panelen válassza az 1. képesség képességbeállításai lehetőséget, és illessze be az új értéket.
/document/language
Válassza a Mentés lehetőséget.
Válassza a Futtatás lehetőséget.
A hibakeresési munkamenet végrehajtása után az eredményeket a Szakértelem részletei panelen ellenőrizheti. A rámutatáskor
/document/language
a Kifejezésértékelőben az értéknek kell megjelennieen
.
Figyelje meg, hogy a bemeneti figyelmeztetések eltűntek. Most már csak a két figyelmeztetés marad a szervezetek és helyek kimeneti mezőivel kapcsolatban.
Hiányzó képességkimeneti értékek javítása
Az üzenetek azt mondják, hogy ellenőrizze az indexelő "outputFieldMappings" tulajdonságát, ezért kezdjük ott.
Válassza ki a kimeneti mezőleképezéseket a munkafelületen. Figyelje meg, hogy a kimeneti mezőleképezések hiányoznak.
Első lépésként győződjön meg arról, hogy a keresési index a várt mezőkkel rendelkezik. Ebben az esetben az index a "helyek" és a "szervezetek" mezőket tartalmaz.
Ha nincs probléma az indexpel, a következő lépés a képességkimenetek ellenőrzése. A korábbiakhoz hasonlóan válassza a Bővített adatstruktúrát, és görgessen a csomópontok között a "helyek" és a "szervezetek" megkereséséhez. Figyelje meg, hogy a szülő "tartalom" a "merged_content" helyett. A környezet helytelen.
Váltson vissza a Képesség részletei panelre az entitásfelismerési képességhez.
A Képességbeállítások területen váltson a
context
következőredocument/merged_content
: . Ezen a ponton három módosítással kell rendelkeznie a képességdefinícióban.Válassza a Mentés lehetőséget.
Válassza a Futtatás lehetőséget.
Az összes hiba megoldódott.
A képességkészlet módosításainak véglegesítése
A hibakeresési munkamenet indításakor a keresési szolgáltatás létrehozta a készségkészlet másolatát. Ez azért történt, hogy megvédje az eredeti készségeket a keresési szolgáltatásban. Most, hogy befejezte a képességkészlet hibakeresését, a javítások véglegesíthetők (felülírhatják az eredeti készségkészletet).
Ha nem áll készen a módosítások véglegesítésére, mentheti a hibakeresési munkamenetet, és később újra megnyithatja.
Válassza a Módosítások véglegesítése lehetőséget a hibakeresési munkamenetek fő menüjében.
Az OK gombra kattintva ellenőrizheti, hogy frissíteni szeretné-e a készségkészletet.
Zárja be a hibakeresési munkamenetet, és nyissa meg az Indexelőket a bal oldali navigációs panelen.
Válassza a "clinical-trials-idxr" lehetőséget.
Válassza az Alaphelyzetbe állítás lehetőséget.
Válassza a Futtatás lehetőséget.
Válassza a Frissítés lehetőséget az alaphelyzetbe állítási és futtatási parancsok állapotának megjelenítéséhez.
Ha az indexelő futása befejeződött, a Végrehajtás előzményei lapon a legutóbbi futtatás időbélyege mellett egy zöld pipának és a Sikeres szónak kell lennie. A módosítások alkalmazásának biztosítása:
A bal oldali navigációs panelen nyissa meg az Indexeket.
Válassza a "klinikai vizsgálatok" indexet, és a Kereséskezelő lapon adja meg ezt a lekérdezési sztringet:
$select=metadata_storage_path, organizations, locations&$count=true
adott dokumentumok mezőinek visszaadásához (amelyeket az egyedimetadata_storage_path
mező azonosít).Válassza a Keresés lehetőséget.
Az eredményeknek azt kell mutatniuk, hogy a szervezetek és a helyek mostantól a várt értékekkel vannak feltöltve.
Az erőforrások eltávolítása
Ha a saját előfizetésében dolgozik, érdemes az egyes projektek végén eldöntenie, hogy szüksége lesz-e még a létrehozott erőforrásokra. A továbbra is futó erőforrások költségekkel járhatnak. Az erőforrásokat törölheti egyesével, vagy az erőforráscsoport törlésével eltávolíthatja a benne lévő összes erőforrást is.
Az erőforrásokat az Azure Portalon, a bal oldali navigációs panel Minden erőforrás vagy erőforráscsoport hivatkozásával keresheti meg és kezelheti.
Az ingyenes szolgáltatás három indexre, indexelőre és adatforrásra korlátozódik. Az Azure Portalon törölheti az egyes elemeket, hogy a korlát alatt maradjon.
Következő lépések
Ez az oktatóanyag a készségkészlet meghatározásának és feldolgozásának különböző aspektusait érintette. A fogalmakkal és munkafolyamatokkal kapcsolatos további információkért tekintse meg az alábbi cikkeket: