Acest ghid vă va ajuta să configurați Azure AI Search folosind portalul Azure. Urmați pașii de mai jos pentru a crea și configura serviciul dvs. Azure AI Search.
Înainte de a începe, asigurați-vă că aveți următoarele:
https://<service-name>.search.windows.net.Azure AI Search se integrează cu diverse instrumente pentru a vă îmbunătăți capabilitățile de căutare. Puteți folosi Azure CLI, Python SDK, .NET SDK și alte instrumente pentru configurații și operații avansate.
Autentificați-vă în Azure CLI folosind comanda:
az login
(Recomandat) Activați accesul fără cheie cu 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 nu are un câmp "endpoint"; construiește URL-ul din numele serviciului.
export AZURE_SEARCH_SERVICE_ENDPOINT="https://<service-name>.search.windows.net"
Cu RBAC activat, exemplele SDK Python și .NET de mai jos se autentifică cu DefaultAzureCredential, care folosește sesiunea dvs. az login în timpul dezvoltării locale — nu este nevoie de cheia de administrator. Vedeți Connect to Azure AI Search using roles.
```bash
# zsh/bash
# az search service show nu are câmp "endpoint"; construiți URL-ul din numele serviciului.
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 nu are câmp "endpoint"; construiți URL-ul din numele serviciului.
$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)
```
Instalați biblioteca client Azure Cognitive Search și Azure Identity pentru Python:
pip install azure-search-documents azure-identity
Folosiți următorul cod Python pentru a crea un index și a încărca documente:
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"
# Fără cheie (recomandat): folosește identitatea ta `az login` prin Entra ID RBAC.
# Necesită rolurile „Search Service Contributor” și „Search Index Data Contributor”.
credential = DefaultAzureCredential()
# Soluție de rezervă (autentificare pe bază de cheie):
# din 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)
Rulați următoarea comandă pentru a crea un index și a încărca documente:
dotnet run ./AzureSearch.cs
Exemplul .NET de mai jos folosește DefaultAzureCredential, care poate utiliza autentificarea dvs. Azure CLI din az login în timpul dezvoltării locale.
Iată codul .NET din 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}'.");
Pentru informații mai detaliate, consultați următoarea documentație:
Ați configurat cu succes Azure AI Search folosind portalul Azure și instrumentele integrate. Acum puteți explora funcții și capabilități mai avansate Azure AI Search pentru a îmbunătăți soluțiile dvs. de căutare.
Pentru asistență suplimentară, vizitați documentația Azure Cognitive Search.
Declinare a responsabilității: Acest document a fost tradus folosind serviciul de traducere AI Co-op Translator. În timp ce ne străduim pentru acuratețe, vă rugăm să rețineți că traducerile automate pot conține erori sau inexactități. Documentul original în limba sa nativă trebuie considerat sursa autorizată. Pentru informații critice, se recomandă traducerea profesională realizată de un om. Nu ne asumăm responsabilitatea pentru eventualele neînțelegeri sau interpretări greșite care decurg din utilizarea acestei traduceri.