Função vector_search
Aplica-se a: Databricks SQL
Importante
Esta funcionalidade está na Pré-visualização Pública. Envie o formulário de inscrição para participar da visualização.
A vector_search()
função permite que você consulte um índice Mosaic AI Vetor Search usando SQL.
Requisitos
- Esta função não está disponível em armazéns SQL clássicos.
- Para obter mais informações, consulte a página de preços do Databricks SQL.
Sintaxe
vector_search(index, query, num_results)
Argumentos
Todos os argumentos devem ser passados pelo nome, como vector_search(index => indexName, query => queryText)
.
index
: UmaSTRING
constante, o nome totalmente qualificado de um índice de pesquisa vetorial existente no mesmo espaço de trabalho para invocações. O definidor deve ter a permissão "Selecionar" no índice.query
: UmaSTRING
expressão, a cadeia de caracteres a ser pesquisada no índice.num_results
(opcional): uma constante inteira, o número máximo de registros a serem retornados. O padrão é 10.
Devoluções
Uma tabela dos principais registros correspondentes do índice. Todas as colunas do índice estão incluídas.
Exemplos
Pesquise sobre um índice de SKUs de produtos para encontrar produtos semelhantes por nome.
SELECT * FROM VECTOR_SEARCH(index => "main.db.my_index", query => "iphone", num_results => 2)
ID | Nome do Produto |
---|---|
10 | iPhone |
20 | iPhone SE [en] |
O exemplo a seguir pesquisa vários termos ao mesmo tempo usando uma subconsulta 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 [en] |
píxel 8 | 2 | 30 | Píxel 8 |
píxel 8 | 2 | 40 | Píxel 8a |
Limitações
As seguintes limitações aplicam-se durante a pré-visualização:
- Não há suporte para tipos de índice de
DIRECT_ACCESS
consulta. - Não há suporte para índices com
embedding_vector_columns
. - Parâmetros
filters_json
de entrada oucolumns
não são suportados. - A Pesquisa Vetorial com
num_results
mais de 100 não é suportada. - Os usuários que não têm acesso READ à tabela de origem não podem usar
vector_search()
o .