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:
- Az Azure Portalon az indextervezővel adhat hozzá szemantikai konfigurációt.
- Visual Studio Code REST-ügyféllel
- Azure SDK for .NET
- Pythonhoz készült Azure SDK
- Javához készült Azure SDK
- Azure SDK for JavaScript
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.
Jelentkezzen be az Azure Portalra.
Nyisson meg egy keresési indexet, és válassza a Kereséskezelő lehetőséget.
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.
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.
Másik lehetőségként válassza a JSON-nézetet, és illessze be a definíciókat a lekérdezésszerkesztőbe:
Í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.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: