Lapozás Azure AI Keresés lista eredményei között (előzetes verzió)

Note

Azure AI Keresés a Azure portálon, REST API-kon és Azure SDK-k keresztül érhető el. Emellett a Foundry IQ-t is támogatja, amely a vállalati tartalmakat újrafelhasználható, engedélytudatos tudásbázisokká alakítja át az Microsoft Foundry portálon található ügynökök számára.

Important

Az (előzetes verzióban) megjelölt funkciókra, képességekre vagy tulajdonságokra nem vonatkozik szolgáltatási szintű szerződés, nem ajánlott éles számítási feladatokhoz, és az általános elérhetővé válásuk előtt változhatnak vagy korlátozhatók. Az Azure AI Keresés előzetes verziójú kifejezések az összes előzetes verziós funkcióra vonatkoznak, függetlenül attól, hogy önálló vagy egy általánosan elérhető funkció része.

A 2026-08-01-preview REST API-val kezdve a kurzoralapú lapozás (előzetes verzió) használatával oldalanként sorolhatja fel a támogatott szolgáltatáserőforrásokat. A szolgáltatás átlátszatlan folytatási URL-címet ad vissza, ha további eredmények érhetők el.

Ez a cikk ismerteti a kurzorszerződést, és bemutatja, hogyan lapozza át a meglévő indexeket.

Prerequisites

  • A legújabb Azure.Search.Documents előzetes csomag: dotnet add package Azure.Search.Documents --prerelease

  • Kulcs nélküli hitelesítés esetén a Azure.Identity csomag: dotnet add package Azure.Identity

    Note

    Az ügyfélkódtárnak támogatnia kell a 2026-08-01-preview Search Service REST API verzióját. A korábbi verziók nem teszik elérhetővé a cikkben szereplő kurzorparamétereket.

  • A legújabb azure-search-documents előzetes csomag: pip install --pre azure-search-documents

  • Kulcs nélküli hitelesítés esetén a azure-identity csomag: pip install azure-identity

    Note

    Az ügyfélkódtárnak támogatnia kell a 2026-08-01-preview Search Service REST API verzióját. A korábbi verziók nem teszik elérhetővé a cikkben szereplő kurzorparamétereket.

  • A Search Service REST API 2026-08-01 előzetes verziója .

  • Kulcs nélküli hitelesítéshez minden HTTP-kérés fejlécében adjon meg egy Authorization.

Listaművelet kiválasztása

A 2026-08-01-preview kurzorszerződés a következő listaműveletekre vonatkozik:

Operation Erőforrás elérési útja
Álnevek listázása /aliases
Adatforrások listázása /datasources
Indexelők listázása /indexers
Indexek listázása /indexes
Indexstatisztikák megjelenítése /indexstats
Tudásbázisok listázása /knowledgebases
Tudásbázisok listázása /knowledgesources
Tudásbázisfájlok listázása /knowledgesources('{knowledge-source-name}')/files
Képességkészletek listázása /skillsets
Szinonimatérképek listázása /synonymmaps

Oldalak kérelmezése és nyomon követése

Az alábbi példa azokat az indexeket sorolja fel, amelyek nevével hotels kezdődnek, és oldalanként legfeljebb 50 indexet kérnek. Az eredmény iterálása automatikusan kéri az AsyncPageable<SearchIndex> egyes további oldalakat.

using System;
using Azure;
using Azure.Identity;
using Azure.Search.Documents;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.Models;

string endpoint = Environment.GetEnvironmentVariable(
    "AZURE_SEARCH_ENDPOINT")!;

var options = new SearchClientOptions(
    SearchClientOptions.ServiceVersion.V2026_08_01_Preview);
var client = new SearchIndexClient(
    new Uri(endpoint),
    new AzureCliCredential(),
    options);

AsyncPageable<SearchIndex> indexes = client.GetIndexesAsync(
    search: "hotels",
    pageSize: 50,
    searchType: ListingSearchType.Prefix);

await foreach (SearchIndex index in indexes)
{
    Console.WriteLine(index.Name);
}

Referencia:SearchIndexClient.GetIndexesAsync

Az alábbi példa azokat az indexeket sorolja fel, amelyek nevével hotels kezdődnek, és oldalanként legfeljebb 50 indexet kérnek. Az eredmény iterálása automatikusan kéri az ItemPaged egyes további oldalakat.

import os

from azure.identity import AzureCliCredential
from azure.search.documents.indexes import SearchIndexClient

endpoint = os.getenv("AZURE_SEARCH_ENDPOINT")

with SearchIndexClient(
    endpoint,
    AzureCliCredential(),
    api_version="2026-08-01-preview",
) as client:
    indexes = client.list_indexes(
        select=["name"],
        search="hotels",
        page_size=50,
        search_type="prefix",
    )
    for index in indexes:
        print(index.name)

Hivatkozás:SearchIndexClient.list_indexes

Küldjön egy kezdeti kérést azoknak az indexeknek a listázására, amelyeknek a neve a következővel hotelskezdődik: . A kérés legfeljebb 50 indexnevet ad vissza:

GET https://<search-service-name>.search.windows.net/indexes?api-version=2026-08-01-preview&search=hotels&searchType=prefix&pageSize=50&$select=name
Authorization: Bearer <access-token>
Accept: application/json

Hivatkozás:Indexek listázása

Ha több mint 50 egyező index létezik, a válasz tartalmazza a @odata.nextLink elemet, amely a teljes folytatási URL-t és egy nem értelmezhető tokent tartalmazza. A következő válasz rövidítve van:

{
  "value": [
    {
      "name": "<index-name>"
    }
  ],
  "@odata.nextLink": "https://<search-service-name>.search.windows.net/indexes?api-version=2026-08-01-preview&searchType=prefix&%24select=name&%24skiptoken=<opaque-token>"
}

A következő oldal lekéréséhez küldjön GET-kérést a teljes @odata.nextLink érték használatával, pontosan a visszaadott formában. Tartsa meg ugyanazt a hitelesítési fejlécet:

GET <[email protected]>
Authorization: Bearer <access-token>
Accept: application/json

Hivatkozás:Indexek listázása

A terminál válasza tartalmazza a végső indexneveket, és nem tartalmazza a @odata.nextLink elemet, ami azt jelzi, hogy nincs több oldal. Az eredménysorrend nem része a kurzorszerződésnek:

{
  "value": [
    {
      "name": "<next-index-name>"
    }
  ]
}

A kurzor viselkedésének kezelése

  • Az utolsó oldal észlelése: Csak akkor folytassa a lapozást, ha a válasz tartalmaz @odata.nextLink. A terminállap kihagyja ezt a tulajdonságot, és a válaszok nem tartalmazzák azokat @odata.count.

  • Folytatási állapot megőrzése: Használja a teljes @odata.nextLink-t pontosan a kapott formában. Ne hozza létre, ne módosítsa, ne fejtse vissza és ne használja fel újra a(z) $skiptoken elemet. A token csak az előre lapozást támogatja.

  • Kérelem paramétereinek módosítása: Új kezdeti kérés indítása az erőforrás-elérési út, az API-verzió, a keresési előtag, a kijelölt tulajdonságok vagy az oldalméret módosítására. A(z) $skiptoken és search vagy pageSize kombinálása HTTP 400-as hibát ad vissza.

  • Fiók a gyűjtemény módosításaihoz: A továbbítási lapozás csak akkor stabil, ha a gyűjtemény változatlan marad. Az erőforrások enumerálás során történő hozzáadása, frissítése vagy törlése ismétlődő vagy kihagyott eredményeket eredményezhet.