Megosztás a következőn keresztül:


Szemantikai rangsorolás hozzáadása lekérdezésekhez az Azure AI Searchben

Ez a cikk bemutatja, hogyan hívhatja meg a szemantikai rangsorolót a lekérdezéseken. A szemantikai rangsorolást szöveges lekérdezésekre, hibrid lekérdezésekre és vektoros lekérdezésekre is alkalmazhatja, ha a keresési dokumentumok sztringmezőket tartalmaznak, és a vektoros lekérdezés szöveges ábrázolású.

A szemantikai rangsor egy kezdeti eredményhalmazon keresztül iterál, és egy L2 rangsorolási módszertant alkalmaz, amely a legszembetűnőbb eredményeket segíti elő a verem tetejére. Szemantikai feliratokat is kaphat, kiemelve a legrelevánsabb kifejezéseket és kifejezéseket, valamint szemantikai válaszokat.

Előfeltételek

  • Egy alapszintű vagy magasabb szintű keresési szolgáltatás, amelyen engedélyezve van a szemantikai rangsorolás.

  • 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 felirat 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

Az alábbi eszközök és SDK-k bármelyikével létrehozhat egy szemantikai rangsorolást használó lekérdezést:

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

Néhány lekérdezési képesség megkerüli a relevanciapontozást, ami miatt nem kompatibilisek 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űrős lekérdezések nem működnek, mert nincs semmi a szemantikai relevancia mérésére, így a keresési pontszámok nullák. A lekérdezésnek olyan kifejezéseket vagy kifejezéseket kell megadnia, amelyek kiértékelhetők a feldolgozás során.

  • 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.

    Képernyőkép a lekérdezési beállításokról a Kereséskezelőben.

  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:

    Az Azure Portal JSON-lekérdezési szintaxisát bemutató képernyőkép.

    Í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ó felirat 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ési oldalt, hogy egy adott mező teljes tartalma helyett egy feliratot adjon meg 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 "captions" 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"
    },
  ...
]

Várható számítási feladatok

A szemantikai rangsoroláshoz egy keresési szolgáltatásnak replikánként legfeljebb 10 egyidejű lekérdezést kell támogatnia.

A szolgáltatás szabályozza a szemantikai rangsorolási kérelmeket, ha a kötetek túl magasak. Az alábbi kifejezéseket tartalmazó hibaüzenet azt jelzi, hogy a szolgáltatás alkalmas a szemantikai rangsorolásra:

Error in search query: Operation returned an invalid status 'Partial Content'`
@search.semanticPartialResponseReason`
CapacityOverloaded

Ha konzisztens átviteli követelményeket vár ezen a szinten, vagy annál magasabb szinten, küldjön egy támogatási jegyet, hogy kiéphessük a számítási feladatát.

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.