Szemantikai válasz visszaadva a Azure Cognitive Search

Fontos

A szemantikai keresés nyilvános előzetes verzióban érhető el kiegészítő használati feltételek mellett. Elérhető a Azure Portal, az REST API és a bétaverziós SZOFTVERDK-okkal. Ezek a funkciók számlázhatók. További információ: Rendelkezésre állás és díjszabás.

A szemantikai rangsorolás és a feliratok inigoritása eseténa lekérdezést közvetlenül "megválaszoló" dokumentumokból is kinyerhet tartalmat. A válasz egy vagy több választ is tartalmazhat, amelyeket aztán megjeleníthet egy keresési oldalon az alkalmazás felhasználói élményének javítása érdekében.

Ebből a cikkből megtudhatja, hogyan kérhet szemantikai választ, csomagolja ki a választ, és hogy milyen tartalomjellemzők a leginkább elősegítik a jó minőségű válaszok előállítását.

Előfeltételek

A szemantikai lekérdezésekre vonatkozó összes előfeltétel a válaszokra is vonatkozik, beleértve a szolgáltatási szintet és a régiót is.

  • A lekérdezési logikának tartalmaznia kell a "queryType=szemantic" szemantikai lekérdezési paramétereket, valamint az "answers" paramétert. A kötelező paramétereket ebben a cikkben tárgyaljuk.

  • A felhasználó által megadott lekérdezési sztringeket fel kell ismerni kérdésként (mit, hol, mikor, hogyan).

  • Az indexben található keresési dokumentumoknak tartalmazni kell egy válasz jellemzőivel rendelkező szöveget, és ennek a szövegnek léteznie kell a "searchFields" (keresésmezők) alatt felsorolt mezők egyikében. Ha például a "what is a hash table" lekérdezés esetén a searchFields (keresési mező) egyik sem tartalmaz olyan szakaszokat, amelyek tartalmazzák az "A hash table is ..." (A kivonattábla ... ) szakaszt, akkor nem valószínű, hogy választ ad vissza.

Mi az a szemantikai válasz?

A szemantikai válasz egy szemantikai lekérdezési válasz alstruktúrája. Egy keresési dokumentum egy vagy több verbatim szakaszát tartalmazza, amelyek egy kérdésnek tűnik lekérdezésre adott válaszként vannak megfogalmazva. Ahhoz, hogy egy válasz visszaadható legyen, a kifejezéseknek vagy mondatoknak léteznie kell egy keresési dokumentumban, amely a válasz nyelvi jellemzőivel rendelkezik, és a lekérdezést kérdésként kell visszaadni.

Cognitive Search gépi olvasási szövegértési modellt használ a legjobb válaszhoz. A modell lehetséges válaszokat állít elő a rendelkezésre álló tartalomból, és ha eléri a megfelelő megbízhatósági szintet, válaszként javasol egyet.

A válaszok független, legfelső szintű objektumként jelennek meg a lekérdezési válasz hasznos adatában, amely a keresési oldalakon és a keresési eredmények mellett megjeleníthető. Szerkezetileg egy tömbelem a válaszon belül, amely szövegből, dokumentumkulcsból és megbízhatósági pontszámból áll.

Válaszok megadása lekérdezési kérésben

Szemantikai válasz visszaadása érdekében a lekérdezésnek szemantikai "queryType", "queryLanguage", "searchFields" és "answers" paraméterrel kell lennie. Az "answers" paraméter megadása nem garantálja, hogy választ kap, de a kérésnek tartalmaznia kell ezt a paramétert, ha a válaszfeldolgozást egyáltalán meg kell hívni.

A "searchFields" paraméter kritikus fontosságú a jó minőségű válasz visszaadása érdekében, a tartalom és a sorrend szempontjából is (lásd alább).

{
    "search": "how do clouds form",
    "queryType": "semantic",
    "queryLanguage": "en-us",
    "searchFields": "title,locations,content",
    "answers": "extractive|count-3",
    "count": "true"
}
  • A lekérdezési sztring nem lehet null értékű, és kérdésként kell megfogalmazni.

  • A "queryType" tulajdonságot "szemantikaira" kell állítani.

  • A "queryLanguage" a támogatott nyelvek listájában (REST API) valamelyik értéknek kell lennie.

  • A "searchFields" meghatározza, hogy mely sztringmezők biztosítanak jogkivonatokat a kinyerési modellnek. Ugyanazok a mezők, amelyek feliratokat hoznak létre, szintén választ ad. A mező feliratokkal és válaszokkal való megfelelő beállítására vonatkozó pontos útmutatásért lásd: Set searchFields (Keresésmezők beállítása).

  • A "answers" (válaszok) esetén a paraméterkonstrukció , ahol a visszaadott válaszok alapértelmezett száma "answers": "extractive" egy. A válaszok számát úgy növelheti, hogy hozzáad egy et a fenti példában látható módon, legfeljebb count tízig. Attól függ, hogy egynél több válaszra van-e szüksége, az alkalmazás felhasználói élményétől és az eredmények renderelésének mikéntjétől függ.

Válasz dekonstruálása a válaszból

A válaszok a @search.answers tömbben jelennek meg, amely a válaszban elsőként jelenik meg. Ha egy válasz nem meghatározott, a válasz a következőként fog mutatni: "@search.answers": [] . A válaszokat tartalmazó keresési eredmények oldalának tervezésekor mindenképpen kezelje azokat az eseteket, amelyekben a válaszok nem találhatók.

A @search.answers -en belül a "kulcs" az egyezés dokumentumkulcsa vagy azonosítója. A dokumentumkulcs alapján a keresési dokumentum API-jával lekérheti a keresési dokumentum bármely részét vagy egészét, hogy az szerepeljen a keresési oldalon vagy a részletek oldalán.

A "text" (szöveg) és a "highlights" (kiemelések) is azonos tartalmat biztosítanak egyszerű szövegként és kiemelésekkel. Alapértelmezés szerint a kiemelések stílusa , amelyet felül lehet bírálni a meglévő <em> highlightPreTag és highlightPostTag paraméterekkel. Ahogy máshol már említettük, a válasz elajátsodása egy keresési dokumentumból származó verbatim tartalom. A kinyerési modell megkeresi egy válasz jellemzőit a megfelelő tartalom megkeresése érdekében, de nem hoz létre új nyelvet a válaszban.

A "pontszám" egy megbízhatósági pontszám, amely tükrözi a válasz erősségét. Ha a válaszban több válasz is van, ez a pontszám határozza meg a sorrendet. A legjobb válaszok és a felső feliratok származtathatóak különböző keresési dokumentumokból, ahol a felső válasz az egyik dokumentumból származik, és a felső felirat egy másikból, de általánosságban ugyanazok a dokumentumok fognak látszatra a tömbök felső pozícióiban.

A válaszokat az "érték" tömb követi, amely mindig tartalmazza a pontszámokat, a feliratokat és az alapértelmezés szerint lekért mezőket. Ha a select paramétert adja meg, a "value" tömb a megadott mezőkre korlátozódik. A válaszban található elemekkel kapcsolatos további információkért lásd: Szemantikai lekérdezés létrehozása.

A "how do clouds form" (hogyan formában formában a felhők) lekérdezésre a következő választ ad vissza a válasz:

{
    "@search.answers": [
        {
            "key": "4123",
            "text": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the   atmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case),   but not where it is descending (over the river).",
            "highlights": "Sunlight heats the land all day, warming that moist air and causing it to rise high into the   atmosphere until it cools and condenses into water droplets. Clouds generally form<em> where air is ascending</em> (over land in this case),   but not where it is<em> descending</em> (over the river).",
            "score": 0.94639826
        }
    ],
    "value": [
        {
            "@search.score": 0.5479723,
            "@search.rerankerScore": 1.0321671911515296,
            "@search.captions": [
                {
                    "text": "Like all clouds, it forms when the air reaches its dew point—the temperature at which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley fog, which is common in the Pacific Northwest of North America.",
                    "highlights": "Like all<em> clouds</em>, it<em> forms</em> when the air reaches its dew point—the temperature at    which an air mass is cool enough for its water vapor to condense into liquid droplets. This false-color image shows valley<em> fog</em>, which is common in the Pacific Northwest of North America."
                }
            ],
            "title": "Earth Atmosphere",
            "content": "Fog is essentially a cloud lying on the ground. Like all clouds, it forms when the air reaches its dew point—the temperature at  \n\nwhich an air mass is cool enough for its water vapor to condense into liquid droplets.\n\nThis false-color image shows valley fog, which is common in the Pacific Northwest of North America. On clear winter nights, the \n\nground and overlying air cool off rapidly, especially at high elevations. Cold air is denser than warm air, and it sinks down into the \n\nvalleys. The moist air in the valleys gets chilled to its dew point, and fog forms. If undisturbed by winds, such fog may persist for \n\ndays. The Terra satellite captured this image of foggy valleys northeast of Vancouver in February 2010.\n\n\n",
            "locations": [
                "Pacific Northwest",
                "North America",
                "Vancouver"
            ]
    ]
        }
}

Tippek a jó minőségű válaszok előállításához

A legjobb eredmény érdekében szemantikai válaszokat ad vissza a következő jellemzőkkel rendelkező dokumentum-corpus dokumentumokra:

  • A "searchFields" kifejezésnek meg kell adnia olyan mezőket, amelyek elegendő szöveget tartalmaznak, amelyekben a válasz valószínűleg megtalálható. Csak egy dokumentumból származó verbatim szöveg jelenik meg válaszként.

  • A lekérdezési sztringek nem lehet null értékűek (search= ), és a sztringnek a kulcsszókereséssel (tetszőleges kifejezések vagy kifejezések szekvenciális listájával) szemben egy kérdés jellemzőivel kell * rendelkezik. Ha úgy tűnik, hogy a lekérdezési sztring nem válaszol, a rendszer kihagyja a válaszfeldolgozást, még akkor is, ha a kérés lekérdezési paraméterként "answers" (válaszok) ad meg.

  • A szemantikai kinyerés és összegzés korlátozza, hogy a dokumentumonként hány tokent lehet időben elemezni. Gyakorlati szempontból, ha több száz oldalon futó nagyméretű dokumentumai vannak, először próbálja meg kisebb dokumentumokra bontani a tartalmat.

Következő lépések