Támogatott adattípusok (Azure AI Search)

Ez a cikk az Azure AI Search által támogatott adattípusokat ismerteti. A mezők és a szűrőkifejezésekben használt értékek az entitás adatmodellje (EDM) szerint vannak beírva. Az EDM-adattípus megadása a meződefiníció követelménye.

Jegyzet

Ha indexelőket használ , további információt talál arról, hogy az indexelők hogyan képezik le a forrásspecifikus adattípusokat a keresési index EDM-adattípusaira.

EDM-adattípusok vektormezőkhöz

A vektormező típusának érvényesnek kell lennie a beágyazási modell kimenetéhez. Ha például a text-embedding-ada-002 értéket használja, a kimeneti formátum vagy Float32 .Collection(Edm.Single) Ebben a forgatókönyvben nem rendelhet hozzá adattípustInt8, mert tilos a primitívekre való átküldés.floatint Átküldheti azonban a Float32 vagy Float16(Collection(Edm.Half))a .

A vektormezők beágyazások tömbjei. Az EDM-ben a tömbök gyűjtemények.

Adattípus Vektor típusa Leírás Ajánlott használat
Collection(Edm.Byte) Bináris 1 bites nem aláírt bináris. Általánosan elérhető az Index létrehozása vagy frissítése szolgáltatásban. Támogatja a bináris beágyazásokat kibocsátó modellekkel való integrációt, például a Cohere v3 bináris beágyazási modelljeit. vagy egyéni kvantálási logikát, amely 1 bites, aláíratlan bináris kimenetet bocsát ki. A típusú Collection(Edm.Byte)mezők esetében a bináris adatok meződefiníciójának és vektoros keresési algoritmusainak megadásához lásd: Bináris adatok indexelése .
Collection(Edm.Single) Float32 32 bites lebegőpontos. Általánosan elérhető az Index létrehozása vagy frissítése szolgáltatásban. Alapértelmezett adattípus a Microsoft-eszközökben, amelyek vektormezőket hoznak létre az Ön nevében. Egyensúlyt teremt a pontosság és a hatékonyság között. A legtöbb beágyazási modell vektorokat bocsát ki, mint .Float32
Collection(Edm.Half) Float16 16 bites lebegőpontos, kisebb pontosságú és tartományú. Általánosan elérhető az Index létrehozása vagy frissítése szolgáltatásban. Olyan helyzetekben hasznos, ahol a memória és a számítási hatékonyság kritikus fontosságú, és ahol bizonyos pontosság feláldozása elfogadható. Gyakran gyorsabb lekérdezési időket és kisebb memóriaigényt Float32eredményez a , bár kissé csökkentett pontossággal. Az indexbeágyazások Float32 típusát a következőképpen Float16rendelheti Float16 hozzá: . Natív módon kibocsátott Float16 modellek vagy egyéni kvantálási folyamatok beágyazására is használhatóFloat16.
Collection(Edm.Int16) Int16 16 bites aláírt egész szám. Általánosan elérhető az Index létrehozása vagy frissítése szolgáltatásban. Csökkentett memóriaigényt kínál a nagyobb pontosságú kvantálási módszerekhez képest Float32 , és támogatja azokat, miközben számos alkalmazáshoz elegendő pontosságot biztosít. Alkalmas olyan esetekre, amikor fontos a memóriahatékonyság. Egyéni kvantálást igényel, amely a vektorokat a következőképpen Int16adja ki: .
Collection(Edm.SByte) Int8 8 bites aláírt egész szám. Általánosan elérhető az Index létrehozása vagy frissítése szolgáltatásban. Jelentős memória- és számítási hatékonyságnövekedést biztosít a Float32 vagy Float16. Azonban valószínűleg kiegészítő technikákat (például kvantálást és túlbélyegezést) igényel a pontosság csökkentésének ellensúlyozásához és a megfelelő visszahíváshoz. Egyéni kvantálást igényel, amely a vektorokat a következőképpen Int8adja ki: .

EDM-adattípusok nem adatmegjelenítő mezőkhöz

Adattípus Leírás
Edm.String Szöveges adatok.
Edm.Boolean Igaz/hamis értékeket tartalmaz.
Edm.Int32 32 bites egész számértékek.
Edm.Int64 64 bites egész számértékek.
Edm.Double Dupla pontosságú IEEE 754 lebegőpontos értékek.
Edm.DateTimeOffset Az OData V4 formátumban megjelenített dátum- és időértékek: yyyy-MM-ddTHH:mm:ss.fffZ vagy yyyy-MM-ddTHH:mm:ss.fff[+|-]HH:mm. A mezők pontossága DateTimeOffset ezredmásodpercre korlátozódik. Ha ezredmásodperc alatti pontossággal tölt fel DateTimeOffset értékeket, a visszaadott értéket ezredmásodpercre kerekíti (például 2024-04-15T10:30:09.7552052Z a következőként 2024-04-15T10:30:09.7550000Zadja vissza: ). Amikor időzóna-adatokat tartalmazó értékeket tölt fel DateTimeOffset az indexbe, az Azure AI Search normalizálja ezeket az értékeket UTC értékre. Például a következőképpen 2024-01-13T22:03:00Zvan tárolva. 2024-01-13T14:03:00-08:00 Ha időzónaadatokat kell tárolnia, adjon hozzá egy további mezőt az indexhez.
Edm.GeographyPoint Egy földrajzi helyet jelképező pont a földgömbön. A kérelem- és választestek esetében az ilyen típusú értékek megjelenítése a GeoJSON "Pont" típusformátumot követi. URL-címek esetén az OData a WKT szabványon alapuló konstans űrlapot használ. A pontkonstans a "POINT(lon lat)" földrajzi helyként van létrehozva.
Edm.ComplexType Olyan objektumok, amelyek tulajdonsága olyan almezőkre van leképezve, amelyek bármely más támogatott adattípushoz lehetnek rendelve. Ez a típus lehetővé teszi a strukturált hierarchikus adatok, például a JSON indexelését. A típusmező Edm.ComplexType objektumai tartalmazhatnak beágyazott objektumokat, de a beágyazás szintje korlátozott. A korlátokat a Szolgáltatási korlátok ismertetik.
Collection(Edm.String) Sztringek listája.
Collection(Edm.Boolean) Logikai értékek listája.
Collection(Edm.Int32) 32 bites egész számértékek listája.
Collection(Edm.Int64) 64 bites egész számértékek listája.
Collection(Edm.Double) Dupla pontosságú numerikus értékek listája.
Collection(Edm.DateTimeOffset) A dátum időértékeinek listája.
Collection(Edm.GeographyPoint) Földrajzi helyeket képviselő pontok listája.
Collection(Edm.ComplexType) A . Edm.ComplexTypetípusú objektumok listája. A dokumentum összes típusgyűjteményében Edm.ComplexType korlátozott az elemek maximális száma. A részletekért lásd: Szolgáltatási korlátok .

A fenti típusok mindegyike nullázható, kivéve a primitív és összetett típusok gyűjteményeit, például Collection(Edm.String). A null értékű mezők explicit módon null értékre állíthatók. A rendszer automatikusan null értékre állítja őket, ha egy Azure AI Search-indexbe feltöltött dokumentumból kimaradnak. A gyűjteménymezők automatikusan üresre vannak állítva ([] JSON-ban), ha kihagyják őket egy dokumentumból. Emellett nem lehet null értéket tárolni egy gyűjteménymezőben.

Az összetett gyűjteményektől eltérően a primitív típusok gyűjteményében nincs felső korlát az elemek számára, de a hasznos adatok méretének 16 MB-os felső korlátja a dokumentumok minden részére vonatkozik, beleértve a gyűjteményeket is.

Szűrőkifejezésekben használt térinformatikai adattípus

Az Azure AI Searchben a térinformatikai keresés szűrőként van kifejezve.

Edm.FöldrajzA sokszög egy sokszög, amely a földgömb egy földrajzi régióját képviseli. Bár ez a típus nem használható dokumentummezőkben, a függvény argumentumaként geo.intersects használható. Az OData URL-címeinek konstans alakja a WKT (jól ismert szöveg) és az OGC egyszerű funkció-hozzáférési szabványain alapul. A sokszögkonstans a "POLYGON(((lon lat, lon lat, ...))".

Fontos

A sokszög pontjainak az óramutató járásával ellentétes sorrendben kell lenniük. A sokszögben lévő pontok az óramutató járásával ellentétes sorrendben vannak értelmezve a sokszög belsejéhez viszonyítva. Egy London körüli 4 pontos zárt sokszög például -0,3°W 51,6°N [bal felső] , -0,3°W 51,4°N [bal alsó], 0,1°E 51,4°N [jobb alsó], 0,1°E 51,6 °N [jobb felső], -0,3°W 51,6 °N [kiindulási pont].

Lásd még: