Udostępnij przez


Dodawanie zasobu indeksu wyszukiwania wektorowego do aplikacji usługi Databricks

Dodaj indeksy wyszukiwania wektorowego jako zasoby usługi Databricks Apps, aby umożliwić semantyczne wyszukiwanie i pobieranie oparte na podobieństwie w aplikacjach. Indeksy wyszukiwania wektorowego przechowują i wyszukują wielowymiarowe osadzenia wektorowe, wspierając przypadki użycia takie jak generowanie z rozszerzonym dostępem do danych (RAG), wyszukiwanie semantyczne i systemy rekomendacji.

Wymagania dotyczące uprawnień

Aby uzyskać dostęp do indeksu wyszukiwania wektorowego, jednostka usługi aplikacji musi mieć USE CATALOG uprawnienia do katalogu nadrzędnego, USE SCHEMA uprawnienia do schematu nadrzędnego i SELECT uprawnienia w indeksie. Po dodaniu zasobu indeksu usługa Azure Databricks automatycznie przyznaje te uprawnienia głównej jednostce usługi aplikacji.

Aby to automatyczne udzielanie powiodło się, należy spełnić jeden z następujących warunków dla każdego uprawnienia:

  • W przypadku USE CATALOG: wszyscy użytkownicy konta mają USE CATALOG uprawnienia do katalogu lub masz MANAGE uprawnienia do katalogu.
  • W przypadku USE SCHEMA: wszyscy użytkownicy konta mają uprawnienia USE SCHEMA do schematu lub masz uprawnienia MANAGE do schematu.
  • W przypadku SELECT: wszyscy użytkownicy konta mają SELECT uprawnienia do indeksu lub masz MANAGE uprawnienia do indeksu.

Aby uzyskać więcej informacji na temat wykonywania zapytań dotyczących indeksów wyszukiwania wektorów przy użyciu tych uprawnień, zobacz Jak wykonywać zapytania dotyczące indeksu wyszukiwania wektorowego.

Zobacz uprawnienia Katalogu Unity i obiekty podlegające zabezpieczeniom.

Dodawanie zasobu indeksu wyszukiwania wektorowego

Przed dodaniem indeksu wyszukiwania wektorowego jako zasobu zapoznaj się z wymaganiami wstępnymi dotyczącymi zasobów aplikacji.

  1. Podczas tworzenia lub edytowania aplikacji przejdź do kroku Konfigurowanie .
  2. W sekcji Zasoby aplikacji kliknij pozycję + Dodaj zasób.
  3. Wybierz indeks wyszukiwania wektorowego jako typ zasobu.
  4. Wybierz indeks wyszukiwania wektorowego z dostępnych indeksów w obszarze roboczym. Indeks musi już istnieć w katalogu Unity Catalog.
  5. Wybierz poziom uprawnień dla aplikacji:
    • Można wybrać: Przyznaje aplikacji uprawnienie do wykonywania zapytań dotyczących indeksu wyszukiwania wektorów pod kątem wyszukiwania podobieństwa. Odpowiada przywilejowi SELECT .
  6. (Opcjonalnie) Określ niestandardowy klucz zasobu, czyli sposób odwołowania się do indeksu w konfiguracji aplikacji. Kluczem domyślnym jest vector-search-index.

Uwaga / Notatka

Indeksy wyszukiwania wektorowego to tabele katalogu Unity o typie TABLE_ONLINE_VECTOR_INDEX_REPLICA lub TABLE_ONLINE_VECTOR_INDEX_DIRECT. Po wybraniu indeksu wyszukiwania wektorowego wybierasz specjalnie skonfigurowaną tabelę, która obsługuje operacje wyszukiwania semantycznego.

Zmienne środowiskowe

Podczas wdrażania aplikacji z zasobem indeksu wyszukiwania wektorowego usługa Azure Databricks uwidacznia pełną trzypoziomową nazwę za pomocą zmiennych środowiskowych, do których można się odwołać przy użyciu pola valueFrom.

Przykładowa konfiguracja:

env:
  - name: VECTOR_SEARCH_INDEX
    valueFrom: vector-search-index # Use your custom resource key if different

Za pomocą indeksu w aplikacji:

import os
from databricks.sdk import WorkspaceClient

# Access the vector search index name
index_name = os.getenv("VECTOR_SEARCH_INDEX")

# Initialize workspace client
w = WorkspaceClient()

# Query the vector search index
results = w.vector_search_indexes.query_index(
    index_name=index_name,
    query_text="What is machine learning?",
    num_results=10
)

# Process results
for result in results.manifest.columns:
    print(f"Result: {result}")

Aby uzyskać więcej informacji, zobacz Używanie zmiennych środowiskowych do uzyskiwania dostępu do zasobów.

Usuwanie zasobu indeksu wyszukiwania wektorowego

Gdy usuniesz zasób indeksu wyszukiwania wektorowego z aplikacji, pryncypał usługi aplikacji utraci dostęp do indeksu. Sam indeks pozostaje niezmieniony i nadal będzie dostępny dla innych użytkowników i aplikacji, które mają odpowiednie uprawnienia.

Najlepsze rozwiązania

Podczas pracy z zasobami indeksu wyszukiwania wektorowego należy wziąć pod uwagę następujące kwestie:

  • Upewnij się, że jednostka usługi aplikacji ma dostęp do bazowych źródeł danych, jeśli indeks odwołuje się do innych tabel.
  • Monitoruj wydajność zapytań i dostosuj konfigurację indeksu lub modele osadzania, jeśli czasy odpowiedzi są obniżone.
  • Rozważ harmonogramy odświeżania indeksu, aby zachować synchronizację osadzania z danymi źródłowymi.
  • Użyj odpowiednich metryk podobieństwa (cosinus, euclidean, dot product) na podstawie modelu osadzania.