Udostępnij za pośrednictwem


Funkcja vector_search

Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL

Ważne

Ta funkcja jest dostępna w publicznej wersji zapoznawczej.

Funkcja vector_search() umożliwia wykonywanie zapytań względem indeksu wyszukiwania wektorów mozaiki sztucznej inteligencji przy użyciu języka SQL.

Wymagania

  • Ta funkcja nie jest dostępna w klasycznych magazynach SQL.
  • Aby uzyskać więcej informacji, zobacz stronę cennika usługi Databricks SQL.
  • Ta funkcja jest dostępna w regionach, w których jest obsługiwane wyszukiwanie wektorów mozaiki sztucznej inteligencji.

Składnia

vector_search(index, query, num_results)

Argumenty

Wszystkie argumenty muszą być przekazywane według nazwy, na przykład vector_search(index => indexName, query => queryText).

  • index: stała, w pełni kwalifikowana STRING nazwa istniejącego indeksu wyszukiwania wektorów w tym samym obszarze roboczym dla wywołań. Definiowanie musi mieć uprawnienie "Wybierz" w indeksie.
  • querySTRING: wyrażenie, ciąg do wyszukania w indeksie.
  • num_results (opcjonalnie): stała całkowita, maksymalna liczba rekordów do zwrócenia. Wartość domyślna to 10.

Zwraca

Tabela najważniejszych pasujących rekordów z indeksu. Wszystkie kolumny indeksu są uwzględniane.

Przykłady

Wyszukaj indeks jednostek SKU produktu, aby znaleźć podobne produkty według nazwy.


SELECT * FROM VECTOR_SEARCH(index => "main.db.my_index", query => "iphone", num_results => 2)
ID Nazwa produktu
10 iPhone
20 iPhone SE

Poniższy przykład wyszukuje wiele terminów jednocześnie przy użyciu podzapytania LATERAL.


SELECT
  query_txt,
  query_id,
  search.*
FROM
  query_table,
  LATERAL(
SELECT * FROM VECTOR_SEARCH(index => "main.db.my_index", query => query_txt, num_results => 2)
  ) as search
query_txt query_id search.id search.product_name
iPhone 1 10 iPhone 10
iPhone 1 20 iPhone SE
piksel 8 2 30 Piksel 8
piksel 8 2 40 Piksel 8a

Ograniczenia

W wersji zapoznawczej obowiązują następujące ograniczenia:

  • Wykonywanie zapytań dotyczących typów indeksów DIRECT_ACCESS nie jest obsługiwane.
  • Indeksy z programem embedding_vector_columns nie są obsługiwane.
  • Parametry filters_json wejściowe lub columns nie są obsługiwane.
  • Wyszukiwanie wektorowe z num_results większa niż 100 nie jest obsługiwane.
  • Użytkownicy, którzy nie mają dostępu do odczytu do tabeli źródłowej, nie mogą używać polecenia vector_search().
  • vector_search nie można używać z punktami końcowymi obsługującymi model przy użyciu interfejsów API modelu foundation aprowizowanej przepływności.