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:
- 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
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.
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ó 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.