Správa indexu v Azure AI Vyhledávač

Note

Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.

Po vytvoření indexu můžete pomocí portálu Azure portal získat přístup ke statistikě a definici nebo ho z vyhledávací služby odebrat.

Po vytvoření indexu můžete použít rozhraní Azure AI Vyhledávač REST API pro přístup k jeho statistikám a definici nebo ho ze vyhledávací služby odebrat.

Po vytvoření indexu Můžete použít Azure SDK pro .NET, Java, JavaScript nebo Python pro přístup k jeho statistikě a definici nebo ho můžete z vyhledávací služby odebrat.

Tento článek popisuje, jak spravovat index, aniž by to ovlivnilo jeho obsah. Pokyny k úpravě definice indexu najdete v tématu Update nebo opětovné sestavení indexu v Azure AI Vyhledávač.

Omezení

Cenová úroveň vyhledávací služby určuje maximální počet a velikost indexů, polí a dokumentů. Další informace najdete v tématu Limity služby v Azure AI Vyhledávač.

Jinak platí následující omezení pro správu indexů:

  • Index nemůžete pro údržbu převést do offline režimu. Indexy jsou vždy k dispozici pro operace vyhledávání.

  • Index nemůžete přímo kopírovat ani duplikovat v rámci vyhledávacích služeb nebo napříč vyhledávacími službami. Ukázku zálohování a obnovení ale můžete použít pro .NET nebo Python k dosažení podobných funkcí.

Zobrazit všechny indexy

Zobrazení všech indexů:

  1. Přejděte do vyhledávací služby na portálu Azure.

  2. V levém podokně vyberte správu vyhledávání>Indexy.

    Snímek obrazovky se stránkou indexů na portálu

    Ve výchozím nastavení jsou indexy seřazené podle názvu ve vzestupném pořadí. Výběrem odpovídající hlavičky sloupce můžete řadit podle názvu, počtu dokumentů, využití kvóty vektorového indexu nebo celkové velikosti úložiště .

Pomocí Indexy - Seznam (REST API) získáte všechny indexy ve své vyhledávací službě.

### List all indexes
GET https://[service name].search.windows.net/indexes?api-version=[api version]
    Content-Type: application/json
    api-key: [admin key]

K načtení všech indexů ve vyhledávací službě použijte upřednostňovaný Azure SDK.

Azure SDK pro .NET pro tuto úlohu poskytuje GetIndexesAsync.

// Create a SearchIndexClient
var endpoint = new Uri("[service endpoint]");
var credential = new AzureKeyCredential("[admin key]");
var indexClient = new SearchIndexClient(endpoint, credential);

// List all indexes
await foreach (var index in indexClient.GetIndexesAsync())
{
    Console.WriteLine(index.Name);
}

Zobrazení statistik indexu

Na stránce indexu portál poskytuje následující statistiky:

  • Počet dokumentů v indexu
  • Prostor úložiště používaný indexem
  • Vektorový prostor úložiště používaný indexem
  • Maximální prostor úložiště pro každý index ve vyhledávací službě, který závisí na vaší cenové úrovni. Tato hodnota nepředstavuje celkové úložiště aktuálně dostupné indexu.

Snímek obrazovky se statistikou indexu na portálu

Pomocí indexů – Získání statistiky (REST API) načtěte počet dokumentů, využití úložiště a využití vektorového úložiště indexu.

### Get index statistics
GET https://[service name].search.windows.net/indexes/[index name]/stats?api-version=[api version]
    Content-Type: application/json
    api-key: [admin key]

Použijte vaše upřednostňované Azure SDK k načtení počtu dokumentů, využití úložiště a využití vektorového úložiště indexu.

Azure SDK pro .NET poskytuje pro tuto úlohu GetIndexStatisticsAsync.

// Create a SearchIndexClient
var endpoint = new Uri("[service endpoint]");
var credential = new AzureKeyCredential("[admin key]");
var indexClient = new SearchIndexClient(endpoint, credential);

// Get index statistics
var statsResponse = await indexClient.GetIndexStatisticsAsync("[index name]");
var stats = statsResponse.Value;
Console.WriteLine($"Number of documents: {stats.DocumentCount:N0}");
Console.WriteLine($"Storage consumed by index: {stats.StorageSize:N0} bytes");
Console.WriteLine($"Storage consumed by vectors: {stats.VectorIndexSize:N0} bytes");

Zobrazení definice indexu

Každý index je definován poli a volitelnými komponentami, které vylepšují možnosti vyhledávání, jako jsou analyzátory, normalizátory, tokenizátory a mapy synonym. Tato definice určuje strukturu a chování indexu během indexování a dotazování.

Na stránce indexu vyberte Upravit JSON a zobrazte její úplnou definici.

Snímek obrazovky s tlačítkem Upravit JSON na portálu

K načtení definice JSON indexu použijte indexy – Get (REST API ).

### Get index definition
GET https://[service name].search.windows.net/indexes/[index name]?api-version=[api version]
    Content-Type: application/json
    api-key: [admin key]

K načtení definice JSON indexu použijte upřednostňovaný Azure SDK.

Azure SDK pro .NET poskytuje pro tuto úlohu GetIndexAsync.

// Create a SearchIndexClient
var endpoint = new Uri("[service endpoint]");
var credential = new AzureKeyCredential("[admin key]");
var indexClient = new SearchIndexClient(endpoint, credential);

// Get index definition
var index = await indexClient.GetIndexAsync("[index name]");
string indexJson = JsonSerializer.Serialize(index.Value, new JsonSerializerOptions { WriteIndented = true });
Console.WriteLine(indexJson);

Odstranění indexu

Výstraha

Odstranění indexu nejde vrátit zpět. Než budete pokračovat, ujistěte se, že chcete trvale odebrat index a jeho dokumenty z vyhledávací služby.

Na stránce indexu vyberte Odstranit a spusťte proces odstranění.

Snímek obrazovky s tlačítkem Odstranit na portálu

Portál vás vyzve k potvrzení odstranění. Po výběru možnosti Odstranit zkontrolujte oznámení a ověřte, že odstranění proběhlo úspěšně.

Snímek obrazovky s potvrzením odstranění na portálu

K trvalému odstranění indexu použijte Indexy - Odstranit (REST API).

### Delete an index
DELETE https://[service name].search.windows.net/indexes/[index name]?api-version=[api version]
    Content-Type: application/json
    api-key: [admin key]

Pokud se index úspěšně odstranil, měli byste obdržet HTTP/1.1 204 No Content odpověď.

K trvalému odstranění indexu použijte upřednostňovaný Azure SDK.

Azure SDK pro .NET pro tuto úlohu poskytuje DeleteIndexAsync.

// Create a SearchIndexClient
var endpoint = new Uri("[service endpoint]");
var credential = new AzureKeyCredential("[admin key]");
var indexClient = new SearchIndexClient(endpoint, credential);

// Delete the index
await indexClient.DeleteIndexAsync("[index name]");
Console.WriteLine("Index deleted successfully.");