Semantische rangschikking in Azure AI Zoeken

Opmerking

Azure AI Zoeken is beschikbaar via de Azure-portal, REST API's en Azure-SDK's. Het vormt ook een basis voor Foundry IQ, de beheerde kennislaag die bedrijfsinhoud transformeert in herbruikbare, machtigingsbewuste knowledge bases voor agents in de Microsoft Foundry-portal.

In Azure AI Zoeken is semantische ranker een functie die de relevantie van zoekopdrachten aanzienlijk verbetert door de taalbegripmodellen van Microsoft te gebruiken om zoekresultaten opnieuw te rangschikken. Semantische ranker is ook ingebouwd in agentisch ophalen. Dit artikel is een inleiding op hoog niveau om inzicht te krijgen in het gedrag en de voordelen van semantische rangschikking.

Semantische ranker is een Premium-functie die wordt gefactureerd op basis van gebruik, maar u kunt deze gratis gebruiken, afhankelijk van servicelimieten voor de gratis laag. We raden dit artikel aan voor achtergrond, maar als u liever aan de slag wilt gaan, volgt u deze stappen.

Wat is semantische rangschikking?

Semantische rangschikking is een verzameling mogelijkheden aan de queryzijde die de kwaliteit verbeteren van een eerste BM25-gerangschikt of RRF-gerangschikt zoekresultaat voor op tekst gebaseerde query's, het tekstgedeelte van vectorquery's en hybride query's. Semantische classificatie breidt de pijplijn voor het uitvoeren van query's op drie manieren uit:

  • Eerst voegt het altijd secundaire classificatie toe bovenop een eerste resultatenset die is beoordeeld met BM25 of Reciprocal Rank Fusion (RRF). Deze secundaire classificatie maakt gebruik van meertalige deep learning-modellen die zijn aangepast van Microsoft Bing om de meest semantisch relevante resultaten te promoten.

  • Ten tweede retourneert het bijschriften en extraheert het eventueel antwoorden in het antwoord, die u op een zoekpagina kunt weergeven om de zoekervaring van de gebruiker te verbeteren.

  • Ten derde, als u het herschrijven van query's inschakelt, wordt een eerste queryreeks uitgebreid naar meerdere semantisch vergelijkbare queryreeksen.

Secundaire classificatie en antwoorden zijn van toepassing op het queryantwoord. Het herschrijven van query's maakt deel uit van de queryaanvraag.

Hier volgen de mogelijkheden van de semantische reranker.

Vermogen Beschrijving
L2-classificatie Gebruikt de context of semantische betekenis van een query om een nieuwe relevantiescore te berekenen ten opzichte van vooraf gedefinieerde resultaten.
Semantische bijschriften en markeringen Extraheert exacte zinnen en woordgroepen uit velden die de inhoud het beste samenvatten, met markeringen over belangrijke passages voor eenvoudig scannen. Bijschriften die een resultaat samenvatten, zijn handig wanneer afzonderlijke inhoudsvelden te dicht zijn voor de pagina met zoekresultaten. Gemarkeerde tekst verhoogt de meest relevante termen en woordgroepen, zodat gebruikers snel kunnen bepalen waarom een overeenkomst als relevant werd beschouwd.
Semantische antwoorden Een optionele en extra substructuur die wordt geretourneerd door een semantische query. Het biedt een direct antwoord op een query die lijkt op een vraag. Het vereist dat een document tekst bevat met de kenmerken van een antwoord.
Query opnieuw schrijven Met behulp van tekstquery's of het tekstgedeelte van een vectorquery maakt de semantische rangschikking maximaal 10 varianten van de query, mogelijk het corrigeren van typefouten of spelfouten, of het herformuleren van een query met behulp van gegenereerde synoniemen. De herschreven query wordt uitgevoerd op de zoekmachine. De resultaten worden gescoord met behulp van BM25- of RRF-score en vervolgens opnieuw gescoord door een semantische ranker.

Hoe de semantische rangschikker werkt

Semantische ranker neemt een query en resultaten en verzendt deze vervolgens naar taalkennismodellen die worden gehost door Microsoft. Het scant naar betere overeenkomsten.

In de volgende afbeelding wordt het concept uitgelegd. Houd rekening met de term 'kapitaal'. Het heeft verschillende betekenissen, afhankelijk van of de context financieel, recht, geografie of grammatica is. Via taalkennis detecteert de semantische ranker context en bevordert deze resultaten die passen bij de queryintentie.

Afbeelding van vectorweergave voor context.

Semantische classificatie maakt gebruik van veel resources en tijd. Om de verwerking binnen de verwachte latentie van een querybewerking te voltooien, consolideert en vermindert het systeem de invoer tot de semantische rangschikking. Deze aanpak helpt de herrankeringsstap zo snel mogelijk te voltooien.

Semantische classificatie heeft drie stappen:

  1. Invoer verzamelen en samenvatten
  2. Behaal scoreresultaten door gebruik te maken van de semantische ranker.
  3. Gerescorede resultaten, bijschriften en antwoorden geven

Hoe het systeem invoer verzamelt en samenvat

In semantische classificatie geeft het querysubsysteem zoekresultaten door als invoer voor samenvattings- en classificatiemodellen. Omdat de classificatiemodellen beperkingen voor invoergrootte hebben en intensief worden verwerkt, moeten zoekresultaten worden aangepast en gestructureerd (samengevat) voor een efficiënte verwerking.

  1. De semantische ranker begint met een BM25-gerangschikt resultaat van een tekstquery of een RRF-gerangschikt resultaat van een vector- of hybride query. In de herrankeringsoefening wordt alleen tekst gebruikt. Zelfs als resultaten meer dan 50 resultaten bevatten, wordt alleen de top 50 resultaten voortgezet naar een semantische rangschikking. Semantische rangschikking maakt doorgaans gebruik van informatieve en beschrijvende velden.

  2. Voor elk document in het zoekresultaat accepteert het samenvattingsmodel maximaal 2000 tokens, waarbij een token ongeveer 10 tekens is. Het model verzamelt invoer uit de velden 'title', 'keyword' en 'content' die worden vermeld in de semantische configuratie.

  3. Het systeem trimt overmatig lange tekenreeksen om ervoor te zorgen dat de totale lengte voldoet aan de invoervereisten van de samenvattingsstap. Deze bijsnijdoefening is waarom het belangrijk is om velden toe te voegen aan uw semantische configuratie in volgorde van prioriteit. Als u zeer grote documenten met tekstzware velden hebt, negeert het systeem alles na de maximale limiet.

    Semantisch veld Tokenlimiet
    "titel" 128 tokens
    "trefwoorden 128 tokens
    "inhoud" resterende tokens
  4. De samenvattingsuitvoer is een samenvattingstekenreeks voor elk document, samengesteld uit de meest relevante informatie uit elk veld. Het systeem verzendt samenvattingstekenreeksen naar de rangschikker voor scoren en naar computerlezingsmodellen voor bijschriften en antwoorden.

    Vanaf november 2024 is de maximale lengte van elke gegenereerde samenvattingstekenreeks die wordt doorgegeven aan de semantische rangschikking 2048 tokens. Voorheen waren het 256 tokens.

Hoe resultaten worden beoordeeld

Het systeem scoort resultaten op basis van het bijschrift en eventuele andere inhoud uit de samenvattingsreeks die de totale lengte van 2.048 tokens aanvult.

  1. Het systeem evalueert bijschriften voor conceptuele en semantische relevantie ten opzichte van de query die u opgeeft.

  2. Het systeem wijst een @search.rerankerScore toe aan elk document op basis van de semantische relevantie van het document voor de opgegeven query. Scores variëren van 4 tot 0 (hoog tot laag), waarbij een hogere score een hogere relevantie aangeeft.

    Score Betekenis
    4.0 Het document is zeer relevant en beantwoordt de vraag volledig, hoewel de passage mogelijk extra tekst bevat die niet aan de vraag is gerelateerd.
    3.0 Het document is relevant, maar ontbreekt aan details waarmee het document kan worden voltooid.
    2.0 Het document is enigszins relevant; het beantwoordt de vraag gedeeltelijk of alleen een aantal aspecten van de vraag.
    1.0 Het document is gerelateerd aan de vraag en beantwoordt een klein deel ervan.
    0.0 Het document is niet relevant.
  3. Het systeem bevat overeenkomsten in aflopende volgorde op score en bevat deze in de nettolading van het queryantwoord. De payload bevat antwoorden, platte tekst, gemarkeerde bijschriften, en alle velden die u hebt gemarkeerd als ophaalbaar of opgegeven in een select-clausule.

Opmerking

Voor een bepaalde query kunnen de distributies van @search.rerankerScore lichte variaties vertonen vanwege omstandigheden op infrastructuurniveau. Updates van classificatiemodellen kunnen ook van invloed zijn op de distributie. Als u om deze redenen aangepaste code schrijft voor minimale drempelwaarden of de drempelwaarde-eigenschap instelt voor vector- en hybride query's, moet u de limieten niet te gedetailleerd maken.

Uitvoer van semantische ranking

Uit elke samenvattingstekenreeks vinden de machinebegripmodellen passages die het meest representatief zijn.

De uitvoer is:

  • Een semantisch bijschrift voor het document. Elk bijschrift is beschikbaar in een tekst zonder opmaak en een markeringsversie en is vaak minder dan 200 woorden per document.

  • Een optioneel semantisch antwoord, ervan uitgaande dat u de answers parameter hebt opgegeven, is de query ingesteld als een vraag en wordt een passage gevonden in de lange tekenreeks die waarschijnlijk antwoord geeft op de vraag.

Bijschriften en antwoorden zijn altijd exacte tekst uit uw index. Er is geen generatief AI-model in deze werkstroom waarmee nieuwe inhoud wordt gemaakt of samengesteld.

Semantische mogelijkheden en beperkingen

Wat semantische rangschikking kan doen:

  • Promoot overeenkomsten die semantisch meer in lijn zijn met de intentie van de oorspronkelijke zoekopdracht.

  • Zoek tekenreeksen die moeten worden gebruikt als bijschriften en antwoorden. Het antwoord retourneert bijschriften en antwoorden, die u op een pagina met zoekresultaten kunt weergeven.

Wat semantische ranker niet kan doen, is de query opnieuw uitvoeren op het hele corpus om semantisch relevante resultaten te vinden. De Semantische classificatie herschikt de bestaande resultatenset, bestaande uit de top 50 resultaten, zoals beoordeeld door het standaardclassificatie-algoritme. Bovendien kan de semantische ranker geen nieuwe informatie of tekenreeksen maken. De taalmodellen halen bijschriften en antwoorden uit uw inhoud uit, dus als de resultaten geen antwoordachtige tekst bevatten, produceren ze er geen.

Hoewel semantische rangschikking in elk scenario niet nuttig is, kan bepaalde inhoud aanzienlijk profiteren van de mogelijkheden ervan. De taalmodellen in semantische rangschikking werken het beste voor doorzoekbare inhoud die informatierijk en gestructureerd is als proza. Een knowledge base, onlinedocumentatie of documenten die beschrijvende inhoud bevatten, zien de meeste voordelen van semantische classificatiemogelijkheden.

De onderliggende technologie is afkomstig van Bing en Microsoft Research en is geïntegreerd in de Azure AI Zoeken-infrastructuur als een invoegtoepassingsfunctie. Zie Hoe AI van Bing Azure AI Zoeken aandrijft (Microsoft Research Blog) voor meer informatie over het onderzoek en de AI-investeringen die de semantische rangschikking ondersteunen.

De volgende video biedt een overzicht van de mogelijkheden.

Hoe semantische ranker synoniemenkaarten gebruikt

Als u ondersteuning inschakelt voor synoniementoewijzingen die zijn gekoppeld aan een veld in uw zoekindex en dat veld in de semantische rangschikkingsconfiguratie opneemt, past de semantische rangschikking automatisch de geconfigureerde synoniemen toe tijdens het herrankeringsproces.

Beschikbaarheid en prijzen

Semantische ranker is beschikbaar in bepaalde regio's. Het kan worden gebruikt als een zelfstandige functie of als een ingebouwd onderdeel van agentisch ophalen. Elke functie wordt onafhankelijk gefactureerd.

Semantische Ranker biedt een gratis abonnement (standaard) met een maandelijkse gratis aanvraagtoelage en een standaardplan voor pay-as-you-go-prijsstelling nadat het gratis tegoed is verbruikt. Zie Semantische rangschikkingsfacturering in- of uitschakelen voor meer informatie.

Er worden kosten in rekening gebracht voor de semantische ranker wanneer query's de semantische ranker bevatten queryType=semantic en de zoekopdracht niet leeg is (bijvoorbeeld search=pet friendly hotels in New York). Als uw zoekreeks leeg is (search=*), worden er geen kosten in rekening gebracht, zelfs niet als het queryType is ingesteld op semantisch.

Aan de slag

  1. Controleer de regionale beschikbaarheid.

  2. (Optioneel) Schakel over naar het standaardfactureringsplan voor gebruik buiten het gratis maandelijkse quotum.

  3. Semantische rangschikking configureren in een zoekindex.

  4. Stel vragen in om semantische bijschriften en hoogtepunten te retourneren.

  5. (Optioneel) Semantische antwoorden retourneren.