Szemantikai lekérdezés létrehozása az Azure AI Searchben

Ebben a cikkben megtudhatja, hogyan hívhat meg szemantikai rangsort egy eredményhalmazon, és hogyan népszerűsítheti a szemantikailag releváns eredményeket a verem tetejére. Szemantikai képaláírás is kaphat, kiemelve a legrelevánsabb kifejezéseket és kifejezéseket, valamint szemantikai válaszokat.

Előfeltételek

  • Alapszintű vagy magasabb szintű keresési szolgáltatás szemantikai rangsorolással.

  • Meglévő keresési index szemantikai konfigurációval és rich text tartalommal.

  • Tekintse át a szemantikai rangsorolást , ha be kell ismerkednie a funkcióval.

Feljegyzés

A feliratok és válaszok szó szerint kinyerhetők a keresődokumentum szövegéből. A szemantikai alrendszer gépi olvasási megértéssel ismeri fel a képaláírás vagy válasz jellemzőivel rendelkező tartalmakat, de nem ír új mondatokat vagy kifejezéseket. Ezért a magyarázatokat vagy definíciókat tartalmazó tartalom a szemantikai rangsorolás szempontjából a legjobban működik. Ha csevegőstílusú interakciót szeretne a generált válaszokkal, olvassa el a Bővített generáció lekérése (RAG) című témakört.

Ügyfél kiválasztása

Válasszon egy keresési ügyfelet, amely támogatja a szemantikai rangsorolást. Íme néhány lehetőség:

Kerülje a relevanciapontozást megkerülő funkciókat

Az Azure AI Search számos lekérdezési képessége megkerüli a relevanciapontozást, vagy más módon nem kompatibilis a szemantikai rangsorolással. Ha a lekérdezési logika a következő funkciókat tartalmazza, nem rangsorolhatja az eredményeket szemantikailag:

  • Az üres keresési sztringet search=* tartalmazó vagy üres lekérdezések, például a csak szűrt lekérdezések nem működnek, mert nincs semmi, amellyel mérni lehet a szemantikai relevanciát. A lekérdezésnek olyan kifejezéseket vagy kifejezéseket kell megadnia, amelyek kiértékelhetők a feldolgozás során.

  • A teljes Lucene-szintaxisban (queryType=full) álló lekérdezés nem kompatibilis a szemantikai rangsorolással (queryType=semantic). A szemantikai modell nem támogatja a teljes Lucene szintaxist.

  • Az adott mezők rendezése (orderBy záradékok) felülbírálják a keresési pontszámokat és a szemantikai pontszámokat. Tekintettel arra, hogy a szemantikai pontszámnak meg kell adnia a rangsort, az orderby záradék hozzáadása HTTP 400-es hibát eredményez, ha szemantikai rangsorolást alkalmaz a rendezett eredményekre.

A lekérdezés beállítása

Ebben a lépésben adjon hozzá paramétereket a lekérdezési kérelemhez. A sikeresség érdekében a lekérdezésnek teljes szöveges keresésnek kell lennie (a search paraméterrel sztringet kell megadnia), és az indexnek gazdag szemantikai tartalommal és szemantikai konfigurációval rendelkező szövegmezőket kell tartalmaznia.

A Keresőböngésző a szemantikai rangsorolási lehetőségeket tartalmazza.

  1. Jelentkezzen be az Azure Portalra.

  2. Nyisson meg egy keresési indexet, és válassza a Kereséskezelő lehetőséget.

  3. Válassza a Lekérdezési beállítások lehetőséget. Ha már definiált szemantikai konfigurációt, az alapértelmezés szerint ki van választva. Ha nem rendelkezik ilyennel, hozzon létre egy szemantikai konfigurációt az indexhez.

    Screenshot showing query options in Search explorer.

  4. Adjon meg egy lekérdezést, például "történelmi szálloda jó ételekkel", és válassza a Keresés lehetőséget.

  5. Másik lehetőségként válassza a JSON-nézetet, és illessze be a definíciókat a lekérdezésszerkesztőbe:

    Screenshot showing JSON query syntax in the Azure portal.

    Íme néhány JSON-szöveg, amelyet beilleszthet a nézetbe:

     {
         "queryType": "semantic",
         "search": "historic hotel with good food",
         "semanticConfiguration": "my-semantic-config",
         "answers": "extractive|count-3",
         "captions": "extractive|highlight-true",
         "highlightPreTag": "<strong>",
         "highlightPostTag": "</strong>",
         "select": "HotelId,HotelName,Description,Category",
         "count": true
     }
    

A válasz kiértékelése

A kezdeti eredmények közül csak az első 50 találat lehet szemantikailag rangsorolva. Mint minden lekérdezés esetében, a válasz az összes beolvashatóként megjelölt mezőből, vagy csak a kiválasztási paraméterben felsorolt mezőkből áll. A válasz tartalmazza az eredeti relevanciapontot, és a kérés megfogalmazásától függően számmal vagy kötegelt eredményekkel is járhat.

A szemantikai rangsorban a válasz több elemből áll: egy új szemantikailag rangsorolt relevanciapont, egy választható képaláírás egyszerű szövegben és kiemelésekkel, valamint opcionális válasz. Ha az eredmények nem tartalmazzák ezeket a további elemeket, előfordulhat, hogy a lekérdezés helytelenül van konfigurálva. A probléma elhárításának első lépéseként ellenőrizze a szemantikai konfigurációt, hogy az az indexdefinícióban és a lekérdezésben is meg legyen adva.

Egy ügyfélalkalmazásban úgy strukturálhatja a keresőlapot, hogy egy adott mező teljes tartalma helyett egy képaláírás szerepeljen az egyezés leírásaként. Ez a módszer akkor hasznos, ha az egyes mezők túl sűrűk a keresési eredmények oldalához.

A fenti példa lekérdezésre adott válasz a következő egyezést adja vissza a legjobb választásként. A feliratok azért jelennek meg, mert a "képaláírás s" tulajdonság be van állítva, egyszerű szöveggel és kiemelt verziókkal. A válaszok kimaradnak a példából, mert nem sikerült meghatározni az adott lekérdezést és korpuszt.

"@odata.count": 35,
"@search.answers": [],
"value": [
    {
        "@search.score": 1.8810667,
        "@search.rerankerScore": 1.1446577133610845,
        "@search.captions": [
            {
                "text": "Oceanside Resort. Luxury. New Luxury Hotel. Be the first to stay. Bay views from every room, location near the pier, rooftop pool, waterfront dining & more.",
                "highlights": "<strong>Oceanside Resort.</strong> Luxury. New Luxury Hotel. Be the first to stay.<strong> Bay</strong> views from every room, location near the pier, rooftop pool, waterfront dining & more."
            }
        ],
        "HotelName": "Oceanside Resort",
        "Description": "New Luxury Hotel. Be the first to stay. Bay views from every room, location near the pier, rooftop pool, waterfront dining & more.",
        "Category": "Luxury"
    },
  ...
]

Következő lépések

A szemantikai rangsorolás olyan hibrid lekérdezésekben használható, amelyek a kulcsszókeresést és a vektorkeresést egyetlen kérelemben és egységes válaszban egyesítik.