Uw gegevens doorzoekbaar maken

Voltooid

Wanneer u een agent wilt maken die gebruikmaakt van uw eigen gegevens om nauwkeurige antwoorden te genereren, moet u uw gegevens efficiënt kunnen doorzoeken. Wanneer u een agent bouwt met Microsoft Foundry, kunt u de integratie met Azure AI Search gebruiken om de relevante context op te halen in uw chatstroom.

Azure AI Search is een retriever die u kunt opnemen bij het bouwen van een taalmodeltoepassing met promptstroom. Met Azure AI Search kunt u uw eigen gegevens meenemen, uw gegevens indexeren en de index opvragen om alle informatie op te halen die u nodig hebt.

Diagram van een index waarop een query wordt uitgevoerd om grondgegevens op te halen.

Een vectorindex gebruiken

Hoewel een op tekst gebaseerde index de zoekefficiëntie verbetert, kunt u meestal een betere oplossing voor het ophalen van gegevens bereiken met behulp van een vectorindex die insluitingen bevat die de teksttokens in uw gegevensbron vertegenwoordigen.

Een insluiting is een speciale indeling van gegevensweergave die een zoekmachine kan gebruiken om eenvoudig de relevante informatie te vinden. Een insluiting is meer specifiek een vector van drijvendekommagetallen.

Stel dat u twee documenten hebt met de volgende inhoud:

  • "De kinderen speelden vreugdevol in het park."
  • "Kinderen liepen gelukkig rond de speeltuin."

Deze twee documenten bevatten teksten die semantisch gerelateerd zijn, ook al worden verschillende woorden gebruikt. Door vector insluitingen te maken voor de tekst in de documenten, kan de relatie tussen de woorden in de tekst wiskundig worden berekend.

Stel dat de trefwoorden uit het document worden geëxtraheerd en zijn uitgezet als een vector in een multidimensionale ruimte:

Diagram van vector-insluitingen.

De afstand tussen vectoren kan worden berekend door de cosinus van de hoek tussen twee vectoren te meten, ook wel bekend als de cosinus-gelijkenis. Met andere woorden, de cosinus-gelijkenis berekent de semantische gelijkenis tussen documenten en een query.

Door woorden en hun betekenissen weer te geven met vectoren, kunt u relevante context extraheren uit uw gegevensbron, zelfs wanneer uw gegevens zijn opgeslagen in verschillende indelingen (tekst of afbeelding) en talen.

Wanneer u vectorzoekopdrachten wilt kunnen gebruiken om uw gegevens te doorzoeken, moet u insluitingen maken bij het maken van uw zoekindex. Als u insluitingen wilt maken voor uw zoekindex, kunt u een Azure OpenAI-insluitmodel gebruiken dat beschikbaar is in Microsoft Foundry.

Diagram met een vectorindex die insluitingen bevat.

Aanbeveling

Meer informatie over insluitingen in Azure OpenAI in Foundry-modellen.

Een zoekindex maken

In Azure AI Search wordt in een zoekindex beschreven hoe uw inhoud is ingedeeld om deze doorzoekbaar te maken. Stel dat een bibliotheek met veel boeken bevat. U wilt in staat zijn om door de bibliotheek te zoeken en het relevante boek eenvoudig en efficiënt op te halen. Als u de bibliotheek doorzoekbaar wilt maken, maakt u een catalogus die relevante gegevens over boeken bevat, zodat elk boek gemakkelijk te vinden is. De catalogus van een bibliotheek fungeert als de zoekindex.

Hoewel er verschillende benaderingen zijn voor het maken van een index, kunt u met de integratie van Azure AI Search in Microsoft Foundry eenvoudig een index maken die geschikt is voor taalmodellen. U kunt uw gegevens toevoegen aan Microsoft Foundry, waarna u Azure AI Search kunt gebruiken om een index te maken in de Microsoft Foundry-portal met behulp van een insluitmodel. De indexasset wordt opgeslagen in Azure AI Search en door Microsoft Foundry opgevraagd wanneer deze wordt gebruikt in een chatstroom.

Schermopname van het maken van een index in Microsoft Foundry.

Hoe u uw zoekindex configureert, is afhankelijk van de gegevens die u hebt en de context die u wilt gebruiken voor uw taalmodel. Met trefwoorden zoeken kunt u bijvoorbeeld informatie ophalen die exact overeenkomt met de zoekquery. Semantische zoekopdrachten doen het al een stap verder door informatie op te halen die overeenkomt met de betekenis van de query in plaats van het exacte trefwoord, met behulp van semantische modellen. De meest geavanceerde techniek is vectorzoekopdrachten, waarmee insluitingen worden gemaakt om uw gegevens weer te geven.

Aanbeveling

Meer informatie over vectorzoekopdrachten.

Een index doorzoeken

Er zijn verschillende manieren waarop gegevens kunnen worden opgevraagd in een index:

  • Trefwoorden zoeken: identificeert relevante documenten of passages op basis van specifieke trefwoorden of termen die als invoer worden verstrekt.
  • Semantische zoekopdracht: haalt documenten of passages op door inzicht te krijgen in de betekenis van de query en deze te vergelijken met semantisch gerelateerde inhoud in plaats van alleen te vertrouwen op exacte trefwoordovereenkomsten.
  • Vectorzoekopdrachten: gebruikt wiskundige representaties van tekst (vectoren) om vergelijkbare documenten of passages te vinden op basis van hun semantische betekenis of context.
  • Hybride zoeken: combineert een of alle andere zoektechnieken. Query's worden parallel uitgevoerd en worden geretourneerd in een uniforme resultatenset.

Wanneer u een zoekindex maakt in Microsoft Foundry, wordt u begeleid bij het configureren van een index die het meest geschikt is voor gebruik in combinatie met een taalmodel. Wanneer uw zoekresultaten worden gebruikt in een generatieve AI-toepassing, geeft hybride zoekopdracht de meest nauwkeurige resultaten.

Hybride zoeken is een combinatie van trefwoorden (en volledige tekst) en vectorzoekopdrachten, waaraan desgewenst semantische rangschikking wordt toegevoegd. Wanneer u een index maakt die compatibel is met hybride zoekopdrachten, is de opgehaalde informatie precies wanneer exacte overeenkomsten beschikbaar zijn (met trefwoorden) en nog steeds relevant wanneer alleen conceptuele vergelijkbare informatie kan worden gevonden (met vectorzoekopdrachten).

Aanbeveling

Meer informatie over hybride zoeken.