Função vector_search

Aplica-se a: Marque Sim 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: Uma STRING 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: Uma STRING 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 ou columns 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 .