Sdílet prostřednictvím


Načtení dat do indexu vyhledávání ve službě Azure AI Search

Tento článek vysvětluje, jak importovat dokumenty do předdefinovaného indexu vyhledávání. Ve službě Azure AI Search se nejprve vytvoří index vyhledávání s importem dat, který následuje jako druhý krok. Výjimkou jsou průvodci importem na portálu a kanálech indexeru, které vytvářejí a načítají index v jednom pracovním postupu.

Jak funguje import dat

Vyhledávací služba přijímá dokumenty JSON, které odpovídají schématu indexu. Vyhledávací služba importuje a indexuje prostý text a vektory ve formátu JSON, které se používají ve scénářích fulltextového vyhledávání, vektorového vyhledávání, hybridního vyhledávání a dolování znalostí.

  • Obsah ve formátu prostého textu je možné získat z alfanumerických polí v externím zdroji dat, metadat, která jsou užitečná ve scénářích hledání nebo rozšířeného obsahu vytvořeného sadou dovedností (dovednosti mohou extrahovat nebo odvozovat textové popisy z obrázků a nestrukturovaného obsahu).

  • Vektorový obsah se vektorizuje pomocí externího vloženého modelu nebo integrované vektorizace pomocí funkcí služby Azure AI Search, které se integrují s použitou AI.

Tyto dokumenty můžete připravit sami, ale pokud se obsah nachází v podporovaném zdroji dat, spustíte indexer nebo použijete Průvodce importem, může automatizovat načítání dokumentů, serializaci JSON a indexování.

Po indexování dat jsou fyzické datové struktury indexu uzamčeny. Pokyny k tomu, co se nedá změnit, najdete v tématu Aktualizace a opětovné sestavení indexu.

Indexování není proces na pozadí. Vyhledávací služba vyrovnává úlohy indexování a dotazů, ale pokud je latence dotazů příliš vysoká, můžete buď přidat kapacitu , nebo identifikovat období nízké aktivity dotazů pro načtení indexu.

Další informace naleznete v tématu Strategie importu dat.

Použití portálu Azure Portal

Na webu Azure Portal pomocí průvodců importu vytvořte a načtěte indexy v bezproblémovém pracovním postupu. Pokud chcete načíst existující index, zvolte alternativní přístup.

  1. Přihlaste se k webu Azure Portal pomocí svého účtu Azure a vyhledejte vyhledávací službu.

  2. Na stránce Přehled vyberte Importovat data nebo Importovat a vektorizovat data na panelu příkazů a vytvořte a naplňte index vyhledávání.

    Snímek obrazovky s příkazem Importovat data

    Následující odkazy vám pomůžou zkontrolovat pracovní postup: Rychlý start: Vytvoření indexu Azure AI Search a rychlého startu: Integrovaná vektorizace.

  3. Po dokončení průvodce vyhledejte výsledky pomocí Průzkumníka služby Search.

Tip

Průvodci importem vytvářejí a spouštějí indexery. Pokud už jsou indexery definované, můžete indexer resetovat a spustit z webu Azure Portal, což je užitečné v případě, že přidáváte pole přírůstkově. Reset vynutí, aby indexer začal znovu a vyzvedá všechna pole ze všech zdrojových dokumentů.

Použití rozhraní REST API

Dokumenty – Index je rozhraní REST API pro import dat do indexu vyhledávání. Rozhraní REST API jsou užitečná pro počáteční testování konceptu, kde můžete testovat pracovní postupy indexování, aniž byste museli psát velké množství kódu. Parametr @search.action určuje, zda jsou dokumenty přidány v plném rozsahu, nebo částečně z hlediska nových nebo náhradních hodnot pro konkrétní pole.

Rychlý start: Vyhledávání textu pomocí rest vysvětluje kroky. Následující příklad je upravená verze příkladu. Byla oříznuta kvůli stručnosti a první hodnota HotelId byla změněna, aby se zabránilo přepsání existujícího dokumentu.

  1. Formulujte volání POST určující název indexu, koncový bod docs/index a text požadavku, který obsahuje @search.action parametr.

    POST https://[service name].search.windows.net/indexes/hotels-sample-index/docs/index?api-version=2024-07-01
    Content-Type: application/json   
    api-key: [admin key] 
    {
        "value": [
        {
        "@search.action": "upload",
        "HotelId": "1111",
        "HotelName": "Secret Point Motel",
        "Description": "The hotel is ideally located on the main commercial artery of the city in the heart of New York. A few minutes away is Time's Square and the historic centre of the city, as well as other places of interest that make New York one of America's most attractive and cosmopolitan cities.",
        "Category": "Boutique",
        "Tags": [ "pool", "air conditioning", "concierge" ]
        },
        {
        "@search.action": "mergeOrUpload",
        "HotelId": "2",
        "HotelName": "Twin Dome Motel",
        "Description": "This is description is replacing the original one for this hotel. New and changed values overwrite the previous ones. In a comma-delimited list like Tags, be sure to provide the full list because there is no merging of values within the field itself.",
        "Category": "Boutique",
        "Tags": [ "pool", "free wifi", "concierge", "my first new tag", "my second new tag" ]
        }
      ]
    }
    
  2. @search.action Nastavte parametr pro upload vytvoření nebo přepsání dokumentu. Nastavte ho merge nebo uploadOrMerge pokud cílíte na aktualizace konkrétních polí v dokumentu. Předchozí příklad ukazuje obě akce.

    Akce Účinnost
    sloučit Aktualizuje dokument, který již existuje, a selže dokument, který se nedá najít. Sloučení nahradí existující hodnoty. Z tohoto důvodu nezapomeňte zkontrolovat pole kolekce, která obsahují více hodnot, například pole typu Collection(Edm.String). Pokud například tags pole začíná hodnotou ["budget"] a provedete sloučení s ["economy", "pool"], konečná hodnota tags pole je ["economy", "pool"]. ["budget", "economy", "pool"]Nebude to .
    mergeOrUpload Chová se jako sloučení, pokud dokument existuje, a nahraje, pokud je dokument nový. Toto je nejběžnější akce pro přírůstkové aktualizace.
    upload Podobně jako "upsert", kde se dokument vloží, pokud je nový, a pokud existuje, aktualizuje nebo nahradí. Pokud v dokumentu chybí hodnoty, které index vyžaduje, je hodnota pole dokumentu nastavená na hodnotu null.
  3. Odešlete požadavek.

  4. Vyhledejte dokumenty , které jste právě přidali jako ověřovací krok:

    GET https://[service name].search.windows.net/indexes/hotel-sample-index/docs/1111?api-version=2024-07-01
    

Pokud je klíč dokumentu nebo ID nové, hodnota null se změní na hodnotu pro jakékoli pole, které není v dokumentu zadané. U akcí u existujícího dokumentu nahradí aktualizované hodnoty předchozí hodnoty. Všechna pole, která nebyla zadána v "sloučení" nebo "mergeUpload", zůstanou v indexu vyhledávání nedotčena.

Použití sad Azure SDK

Programovatelnost je k dispozici v následujících sadách Azure SDK.

Sada Azure SDK pro .NET poskytuje následující rozhraní API pro jednoduché a hromadné nahrání dokumentů do indexu:

Existuje několik ukázek, které ilustrují indexování v kontextu jednoduchého a rozsáhlého indexování:

Viz také