Magazyny wektorów na serwerze elastycznym Azure Database for PostgreSQL

Magazyny wektorów są używane w wielu domenach i sytuacjach w analitycznej i generatywnej sztucznej inteligencji, takie jak przetwarzanie języka naturalnego, rozpoznawanie wideo i obrazów, systemy rekomendacji i wyszukiwania.

Co to jest magazyn wektorów?

Magazyn wektorów (nazywany również bazą danych wektorów) to baza danych, która przechowuje wektory osadzania i zarządza nimi. Osadzanie wektorów to matematyczne reprezentacje danych w przestrzeni wielowymiarowej.

W tym obszarze każdy wymiar odpowiada funkcji danych. Dziesiątki tysięcy wymiarów może służyć do reprezentowania zaawansowanych danych. Położenie wektora w tym obszarze reprezentuje jego cechy. Wyrazy, frazy, całe dokumenty, obrazy, dźwięk i inne typy danych mogą być wektoryzowane.

Jak działa magazyn wektorów?

W magazynie wektorów algorytmy wyszukiwania wektorów służą do indeksowania i wykonywania zapytań dotyczących osadzania. Dobrze znane algorytmy wyszukiwania wektorów to Disk Approximate Nearest Neighbor (DiskANN),Hierarchical Navigable Small World (HNSW) i Inverted File with Flat Compression (IVFFlat).

Wyszukiwanie wektorowe to metoda, która ułatwia znajdowanie podobnych elementów na podstawie ich cech danych, a nie dokładnych dopasowań w polu właściwości. Ta technika jest przydatna w aplikacjach, takich jak wyszukiwanie podobnego tekstu, znajdowanie powiązanych obrazów, tworzenie zaleceń, a nawet wykrywanie anomalii.

Wyszukiwanie wektorowe służy do wykonywania zapytań dotyczących osadzania wektorów danych utworzonych przy użyciu modelu uczenia maszynowego za pośrednictwem interfejsu API osadzania. Przykładami osadzania interfejsów API są osadzanie w usłudze Azure OpenAI i przytulanie twarzy na platformie Azure.

Wyszukiwanie wektorowe mierzy odległość między wektorami danych a wektorem zapytania. Wektory danych znajdujące się najbliżej wektora zapytania to te, które są najbardziej podobne semantycznie.

Gdy używasz usługi Azure Database for PostgreSQL jako magazynu wektorów, możesz przechowywać, indeksować i wykonywać zapytania osadzania obok oryginalnych danych. Takie podejście eliminuje dodatkowy koszt replikowania danych w oddzielnej, czystej bazie danych wektorów.

Ta architektura przechowuje również wektorowe osadzanie i oryginalne dane razem. Przechowywanie embeddingów i danych razem ułatwia operacje na danych wielomodalnych. Zapewnia również większą spójność danych, skalę i wydajność.