Denne veiledningen vil hjelpe deg med å sette opp Azure AI Search ved bruk av Azure-portalen. Følg trinnene nedenfor for å opprette og konfigurere din Azure AI Search-tjeneste.
Før du begynner, sørg for at du har følgende:
https://<service-name>.search.windows.net.Azure AI Search integreres med ulike verktøy for å forbedre søkefunksjonaliteten din. Du kan bruke Azure CLI, Python SDK, .NET SDK og andre verktøy for avanserte konfigurasjoner og operasjoner.
Logg inn i Azure CLI med kommandoen:
az login
(Anbefalt) Aktiver nøkkelfri tilgang med Microsoft Entra ID (RBAC):
az search service update --name <service-name> --resource-group <resource-group> --auth-options aadOrApiKey
az role assignment create --assignee <your-user-or-principal-id> --role "Search Service Contributor" --scope $(az search service show -g <resource-group> -n <service-name> --query id -o tsv)
az role assignment create --assignee <your-user-or-principal-id> --role "Search Index Data Contributor" --scope $(az search service show -g <resource-group> -n <service-name> --query id -o tsv)
# az search service show har ikke noe "endpoint"-felt; bygg URL-en fra tjenestenavnet.
export AZURE_SEARCH_SERVICE_ENDPOINT="https://<service-name>.search.windows.net"
Med RBAC aktivert, autentiserer Python- og .NET SDK-eksemplene nedenfor med DefaultAzureCredential, som bruker din az login-økt under lokal utvikling — ingen admin-nøkkel nødvendig. Se Connect to Azure AI Search using roles.
```bash
# zsh/bash
# az search service show har ikke noe "endpoint"-felt; bygg URL fra tjenestenavnet.
export AZURE_SEARCH_SERVICE_ENDPOINT="https://<service-name>.search.windows.net"
export AZURE_SEARCH_API_KEY=$(az search admin-key show -g <resource-group> --service-name <service-name> --query "primaryKey" -o tsv)
```
```powershell
# PowerShell
# az search service show har ikke noe "endpoint"-felt; bygg URL fra tjenestenavnet.
$env:AZURE_SEARCH_SERVICE_ENDPOINT = "https://<service-name>.search.windows.net"
$env:AZURE_SEARCH_API_KEY = $(az search admin-key show -g <resource-group> --service-name <service-name> --query "primaryKey" -o tsv)
```
Installer Azure Cognitive Search-klientbiblioteket og Azure Identity for Python:
pip install azure-search-documents azure-identity
Bruk følgende Python-kode for å opprette en indeks og laste opp dokumenter:
import os
from azure.identity import DefaultAzureCredential
from azure.search.documents import SearchClient
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import SearchIndex, SimpleField, edm
service_endpoint = os.getenv("AZURE_SEARCH_SERVICE_ENDPOINT")
index_name = "sample-index"
# Nøkkelfri (anbefalt): bruker din `az login` identitet via Entra ID RBAC.
# Krever rollene "Search Service Contributor" og "Search Index Data Contributor".
credential = DefaultAzureCredential()
# Reservealternativ (nøkkelbasert autentisering):
# fra azure.core.credentials import AzureKeyCredential
# credential = AzureKeyCredential(os.getenv("AZURE_SEARCH_API_KEY"))
index_client = SearchIndexClient(service_endpoint, credential)
fields = [
SimpleField(name="id", type=edm.String, key=True),
SimpleField(name="content", type=edm.String, searchable=True),
]
index = SearchIndex(name=index_name, fields=fields)
index_client.create_index(index)
search_client = SearchClient(service_endpoint, index_name, credential)
documents = [
{"id": "1", "content": "Hello world"},
{"id": "2", "content": "Azure Cognitive Search"}
]
search_client.upload_documents(documents)
Kjør følgende kommando for å opprette en indeks og laste opp dokumenter:
dotnet run ./AzureSearch.cs
.NET-eksempelet nedenfor bruker DefaultAzureCredential, som kan bruke din Azure CLI-pålogging fra az login under lokal utvikling.
Her er .NET-koden i AzureSearch.cs:
#:package Azure.Search.Documents@11.*
#:package Azure.Identity@1.21.0
#:property PublishAot=false
using Azure;
using Azure.Identity;
using Azure.Search.Documents;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
var serviceEndpoint = new Uri(Environment.GetEnvironmentVariable("AZURE_SEARCH_SERVICE_ENDPOINT")!);
var indexName = "sample-index";
// Keyless (recommended): uses your `az login` identity via Entra ID RBAC.
// Requires the "Search Service Contributor" and "Search Index Data Contributor" roles.
var credential = new DefaultAzureCredential();
// Fallback (key-based auth): the `using Azure;` directive above already imports
// AzureKeyCredential; replace the credential line above with:
// var credential = new AzureKeyCredential(Environment.GetEnvironmentVariable("AZURE_SEARCH_API_KEY")!);
var indexClient = new SearchIndexClient(serviceEndpoint, credential);
var fields = new List<SearchField>()
{
new SimpleField("id", SearchFieldDataType.String) { IsKey = true },
new SearchableField("content")
};
var index = new SearchIndex(name: indexName, fields: fields);
var response = await indexClient.CreateOrUpdateIndexAsync(index);
Console.WriteLine($"Index '{response.Value.Name}' ready.");
var searchClient = new SearchClient(serviceEndpoint, indexName, credential);
var documents = new[]
{
new { id = "1", content = "Hello world" },
new { id = "2", content = "Azure Cognitive Search" }
};
var result = await searchClient.UploadDocumentsAsync(documents);
Console.WriteLine($"Uploaded {result.Value.Results.Count} documents to index '{response.Value.Name}'.");
For mer detaljert informasjon, se følgende dokumentasjon:
Du har nå satt opp Azure AI Search ved hjelp av Azure-portalen og integrerte verktøy. Du kan nå utforske flere avanserte funksjoner og muligheter i Azure AI Search for å forbedre søkeløsningene dine.
For ytterligere hjelp, besøk Azure Cognitive Search-dokumentasjonen.
Ansvarsfraskrivelse: Dette dokumentet er oversatt ved hjelp av AI-oversettelsestjenesten Co-op Translator. Selv om vi streber etter nøyaktighet, vær oppmerksom på at automatiske oversettelser kan inneholde feil eller unøyaktigheter. Det opprinnelige dokumentet på originalspråket skal betraktes som den autoritative kilden. For kritisk informasjon anbefales profesjonell menneskelig oversettelse. Vi er ikke ansvarlige for eventuelle misforståelser eller feiltolkninger som oppstår ved bruk av denne oversettelsen.