Функция vector_search
Область применения: Databricks SQL
Внимание
Эта функция предоставляется в режиме общедоступной предварительной версии.
Эта vector_search()
функция позволяет запрашивать индекс поиска вектора вектора мозаики с помощью SQL.
Требования
- Эта функция недоступна в классических хранилищах SQL.
- Дополнительные сведения см. на странице цен на Databricks SQL.
- Эта функция доступна в регионах и поддерживается векторный поиск Mosaic AI where.
Синтаксис
vector_search(index, query, num_results)
Аргументы
Все аргументы должны передаваться по имени, например vector_search(index => indexName, query => queryText)
.
-
index
STRING
: константа, полное имя существующего индекса векторного поиска в той же рабочей области для вызовов. Определяющий объект должен иметь разрешение "Select" для индекса. -
query
STRING
: выражение, строка для поиска в индексе. -
num_results
(необязательно): целочисленная константа, максимальное число возвращаемых записей. Значение по умолчанию равно 10.
Возвраты
table наиболее совпадающих записей из индекса. Включены все элементы columns индекса.
Примеры
Выполните поиск по индексу номеров SKU продукта, чтобы найти аналогичные продукты по имени.
SELECT * FROM VECTOR_SEARCH(index => "main.db.my_index", query => "iphone", num_results => 2)
ID | Название продукта |
---|---|
10 | iPhone |
20 | iPhone SE |
В следующем примере выполняется поиск нескольких терминов одновременно с помощью вложенных запросов 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 |
пиксель 8 | 2 | 30 | Пиксель 8 |
пиксель 8 | 2 | 40 | Пиксель 8a |
Ограничения
Следующие ограничения применяются во время предварительной версии:
- Типы индексов
DIRECT_ACCESS
запросов не поддерживаются. - Индексы с
embedding_vector_columns
не поддерживаются. - Входы parameters
filters_json
илиcolumns
не поддерживаются. - Поиск векторов с
num_results
более чем 100 не поддерживается. - Пользователи, у которых нет права доступа на чтение к исходному table, не могут использовать
vector_search()
. - Поиск по сходству с гибридными ключевыми словами не поддерживается с помощью
vector_search()
. -
vector_search
нельзя использовать с конечными точками обслуживания моделей с помощью api-интерфейсов модели Foundation, подготовленных пропускной способностью.