Share via


Snabbstart: Integrerad vektorisering (förhandsversion)

Viktigt!

Guiden Importera och vektorisera data finns i offentlig förhandsversion under Kompletterande användningsvillkor. Den riktar sig till REST API:et 2024-05-01-Preview.

Kom igång med integrerad vektorisering (förhandsversion) med hjälp av guiden Importera och vektorisera data i Azure-portalen. Den här guiden anropar en Inbäddningsmodell för Azure OpenAI-text för att vektorisera innehåll under indexering och för frågor.

I den här förhandsversionen av guiden:

  • Källdata är antingen blobar i Azure Storage eller filer i OneLake, med standardläge för parsning (ett sökdokument per blob eller fil).

  • Indexschemat kan inte konfigureras. Källfält inkluderar content (segmenterade och vektoriserade), metadata_storage_name för rubrik och en metadata_storage_path för dokumentnyckeln, som representeras som parent_id i indexet.

  • Vektorisering är endast Azure OpenAI (textinbäddning-ada-002) med hjälp av HNSW-algoritmen (Hierarchical Navigable Small Worlds) med standardvärden.

  • Segmentering kan inte konfigureras. De effektiva inställningarna är:

    textSplitMode: "pages",
    maximumPageLength: 2000,
    pageOverlapLength: 500
    

Om du vill ha fler konfigurations- och datakällsalternativ kan du prova Python eller REST-API:erna. Mer information finns i exempel på integrerad vektorisering.

  • En Azure-prenumeration Skapa en kostnadsfritt.

  • Azure AI Search, i valfri region och på valfri nivå. De flesta befintliga tjänster stöder vektorsökning. För en liten delmängd av tjänster som skapades före januari 2019 misslyckas ett index som innehåller vektorfält vid skapandet. I det här fallet måste en ny tjänst skapas.

  • Azure OpenAI-slutpunkt med distribution av textinbäddning-ada-002 och en API-nyckel eller Cognitive Services OpenAI-användarbehörigheter för att ladda upp data. Du kan bara välja en vektoriserare i den här förhandsversionen och vektoriseraren måste vara Azure OpenAI.

  • Azure Storage-konto, standardprestanda (generell användning v2), frekvent, lågfrekvent och kall åtkomstnivå eller OneLake.

  • Blobbar eller filer som tillhandahåller textinnehåll, endast ostrukturerade dokument och metadata.

  • Läsbehörigheter för datakällan. För anslutningar till Azure Storage kan du använda nycklar eller en rolltilldelning för Storage Blob Data Reader . För anslutningar till OneLake måste du ansluta med rollen Deltagare (det finns inget stöd för nyckelautentisering).

  • Alla komponenter (datakälla och inbäddningsslutpunkt) måste ha offentlig åtkomst aktiverad för att portalnoderna ska kunna komma åt dem. Annars misslyckas guiden. När guiden har körts kan brandväggar och privata slutpunkter aktiveras i de olika integreringskomponenterna för säkerhet. Om privata slutpunkter redan finns och inte kan inaktiveras är det alternativa alternativet att köra respektive flöde från slutpunkt till slutpunkt från ett skript eller program från en virtuell dator i samma virtuella nätverk som den privata slutpunkten. Här är ett Python-kodexempel för integrerad vektorisering. På samma GitHub-lagringsplats finns exempel på andra programmeringsspråk.

Kontrollera utrymmet

Många kunder börjar med den kostnadsfria tjänsten. Den kostnadsfria nivån är begränsad till tre index, tre datakällor, tre kompetensuppsättningar och tre indexerare. Kontrollera att du har plats för extra objekt innan du börjar. Den här snabbstarten skapar ett av varje objekt.

Sök efter semantisk rangordning

Den här guiden stöder semantisk rangordning, men endast på Basic-nivå och högre, och endast om semantisk rangordning redan är aktiverad i söktjänsten. Om du använder en fakturerbar nivå kontrollerar du om semantisk rangordning är aktiverad.

Skärmbild av konfigurationssidan för semantisk ranker.

Förbereda exempeldata

Det här avsnittet pekar på data som fungerar för den här snabbstarten.

  1. Logga in på Azure-portalen med ditt Azure-konto och gå till ditt Azure Storage-konto.

  2. I navigeringsfönstret går du till Datalagring och väljer Containrar.

  3. Skapa en ny container och ladda sedan upp de PDF-dokument för hälsoplan som används för den här snabbstarten.

  4. Innan du lämnar Azure Storage-kontot i Azure-portalen beviljar du Storage Blob Data Reader-behörigheter för containern, förutsatt att du vill ha rollbaserad åtkomst. Du kan också hämta en anslutningssträng till lagringskontot från sidan Åtkomstnycklar.

Hämta anslutningsinformation för Azure OpenAI

Guiden behöver en slutpunkt, en distribution av text-embedding-ada-002 och antingen en API-nyckel eller en söktjänsthanterad identitet med Cognitive Services OpenAI-användarbehörigheter.

  1. Logga in på Azure-portalen med ditt Azure-konto och gå till din Azure OpenAI-resurs.

  2. Kopiera slutpunkten under Nycklar och hantering.

  3. På samma sida kopierar du en nyckel eller kontrollerar Åtkomstkontroll för att tilldela rollmedlemmar till din söktjänstidentitet.

  4. Under Modelldistributioner väljer du Hantera distributioner för att öppna Azure AI Studio. Kopiera distributionsnamnet för text-embedding-ada-002.

Starta guiden

Kom igång genom att bläddra till din Azure AI-tjänsten Search i Azure-portalen och öppna guiden Importera och vektorisera data.

  1. Logga in på Azure-portalen med ditt Azure-konto och gå till din Azure AI-tjänsten Search.

  2. På sidan Översikt väljer du Importera och vektorisera data.

    Skärmbild av guidens kommando.

Ansluta till data

Nästa steg är att ansluta till en datakälla som ska användas för sökindexet.

  1. I guiden Importera och vektorisera data på fliken Anslut till dina data expanderar du listrutan Datakälla och väljer Azure Blob Storage.

  2. Ange den Azure-prenumeration, lagringskonto och container som tillhandahåller data.

  3. För anslutningen anger du antingen en fullständig åtkomst anslutningssträng som innehåller en nyckel eller anger en hanterad identitet som har behörigheter för Storage Blob Data Reader på containern.

  4. Ange om du vill ta bort identifiering:

    Skärmbild av datakällans sida.

  5. Välj Nästa: Vektorisera och berika för att fortsätta.

Berika och vektorisera dina data

I det här steget anger du den inbäddningsmodell som används för att vektorisera segmenterade data.

  1. Ange prenumeration, slutpunkt, API-nyckel och modelldistributionsnamn.

  2. Du kan också knäcka binära bilder (till exempel skannade dokumentfiler) och använda OCR för att identifiera text.

  3. Du kan också lägga till semantisk rangordning för att rangordna om resultaten i slutet av frågekörningen, vilket främjar de mest semantiskt relevanta matchningarna högst upp.

  4. Ange ett körningstidsschema för indexeraren.

    Skärmbild av berikningssidan.

  5. Välj Nästa: Skapa och granska för att fortsätta.

Kör guiden

Det här steget skapar följande objekt:

  • Datakällans anslutning till blobcontainern.

  • Index med vektorfält, vektoriserare, vektorprofiler, vektoralgoritmer. Du uppmanas inte att utforma eller ändra standardindexet under guidens arbetsflöde. Index överensstämmer med versionen 2023-10-01-Preview.

  • Kompetensuppsättning med kunskaper om textdelning för segmentering och AzureOpenAIEmbeddingModel för vektorisering.

  • Indexerare med fältmappningar och utdatafältmappningar (om tillämpligt).

Om du får fel granskar du behörigheterna först. Du behöver Cognitive Services OpenAI-användare på Azure OpenAI och Storage Blob Data Reader på Azure Storage. Dina blobar måste vara ostrukturerade (segmenterade data hämtas från blobens "innehåll"-egenskap).

Kontrollera resultat

Sökutforskaren accepterar textsträngar som indata och vektoriserar sedan texten för körning av vektorfrågor.

  1. Välj ditt index.

  2. Du kan också välja Frågealternativ och dölja vektorvärden i sökresultat. Det här steget gör sökresultaten enklare att läsa.

    Skärmbild av knappen frågealternativ.

  3. Välj JSON-vy så att du kan ange text för vektorfrågan i frågeparametern för textvektorer .

    Skärmbild av JSON-väljare.

    Den här guiden erbjuder en standardfråga som utfärdar en vektorfråga i fältet "vektor" och returnerar de 5 närmaste grannarna. Om du valde att dölja vektorvärden innehåller standardfrågan en "select"-instruktion som exkluderar vektorfältet från sökresultat.

    {
       "select": "chunk_id,parent_id,chunk,title",
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "vector"
           }
        ]
    }
    
  4. Ersätt texten "*" med en fråga som rör hälsoplaner, till exempel "vilken plan som har lägst självrisk".

  5. Välj Sök för att köra frågan.

    Skärmbild av sökresultat.

    Du bör se 5 matchningar, där varje dokument är ett segment av den ursprungliga PDF-filen. Rubrikfältet visar vilken PDF som segmentet kommer från.

  6. Om du vill se alla segment från ett visst dokument lägger du till ett filter för rubrikfältet för en specifik PDF:

    {
       "select": "chunk_id,parent_id,chunk,title",
       "filter": "title eq 'Benefit_Options.pdf'",
       "count": true,
       "vectorQueries": [
           {
              "kind": "text",
              "text": "*",
              "k": 5,
              "fields": "vector"
           }
        ]
    }
    
    

Rensa

Azure AI Search är en fakturerbar resurs. Om den inte längre behövs tar du bort den från din prenumeration för att undvika avgifter.

Nästa steg

Den här snabbstarten introducerade dig i guiden Importera och vektorisera data som skapar alla objekt som behövs för integrerad vektorisering. Om du vill utforska varje steg i detalj kan du prova ett integrerat vektoriseringsexempel.