Skip to main content

L1Distance

Introduzido em: v21.11.0 Calcula a distância entre dois pontos (os elementos dos vetores são as coordenadas) no espaço L1 (norma 1 (distância da geometria do táxi)). Sintaxe
Aliases: distanceL1 Argumentos Valor retornado Retorna a distância L1. Para entradas Array, retorna Float32 se o menor supertipo comum dos tipos de elemento for Float32 ou BFloat16; caso contrário, Float64. Para entradas Tuple, o tipo de retorno segue o tipo de resultado aritmético das operações elemento a elemento (os tipos inteiros são preservados). (U)Int* ou Float* Exemplos Uso básico
Query
Response

L1Norm

Introduzido na versão: v21.11.0 Calcula a soma dos valores absolutos dos elementos de um vetor. Sintaxe
Aliases: normL1 Argumentos Valor retornado Retorna a norma L1 ou a distância em geometria do táxi. UInt* ou Float* ou Decimal Exemplos Uso básico
Query
Response

L1Normalize

Introduzido em: v21.11.0 Calcula o vetor unitário de um dado vetor (os elementos da tupla são as coordenadas) no espaço L1 (geometria do táxi). Sintaxe
Aliases: normalizeL1 Argumentos
  • tuple — Uma tupla de valores numéricos. Tuple(T)
Valor retornado Retorna o vetor unitário. Tuple(Float64) Exemplos Uso básico
Query
Response

L2Distance

Introduzido em: v21.11.0 Calcula a distância entre dois pontos (os elementos dos vetores são as coordenadas) no espaço euclidiano (distância euclidiana). Sintaxe
Aliases: distanceL2 Argumentos Valor retornado Retorna a distância de norma 2. Para entradas Array, retorna Float32 se o menor supertipo comum dos tipos de elemento for Float32 ou BFloat16; caso contrário, Float64. Para entradas Tuple, sempre retorna Float64. Float* Exemplos Uso básico
Query
Response

L2DistanceTransposed

Introduzido na: v25.10.0 Calcula a distância aproximada entre dois pontos (os valores dos vetores são as coordenadas) no espaço euclidiano (distância euclidiana). Sintaxe
Aliases: distanceL2Transposed Argumentos
  • vectors — Vetores. QBit(T, UInt64[, UInt64])
  • reference — Vetor de referência. Array(T)
  • p — Número de bits de cada elemento do vetor a ser usado no cálculo da distância (de 1 até a largura de bits do elemento). O nível de quantização controla o equilíbrio entre precisão e velocidade. Usar menos bits resulta em E/S e cálculos mais rápidos, com menor precisão, enquanto usar mais bits aumenta a precisão à custa do desempenho. UInt
  • used_dims — Opcional. Número de dimensões iniciais a serem lidas, para uma busca de dimensão reduzida (Matryoshka) em um QBit com stride. Deve ser um múltiplo do stride do QBit que não exceda sua dimensão, e o vetor de referência deve ter pelo menos esse número de elementos (quaisquer elementos extras no final são ignorados). Apenas os grupos de stride que abrangem essas dimensões são lidos. UInt
Valor retornado Retorna a distância aproximada de norma 2. Sempre retorna Float64. Float64 Exemplos Uso básico
Query
Response

L2DistanceTransposedQuantized

Introduzido na: v26.7.0 Calcula a distância euclidiana aproximada entre um QBit(Int8) de códigos quantizeBFloat16ToInt8 (desquantizados em tempo de execução) e um vetor de referência. Um vetor de referência (consulta) Float é comparado diretamente com precisão Float32 — a precisão de reconstrução dos códigos desquantizados; assim, uma consulta Float64 é reduzida para Float32, enquanto uma consulta BFloat16 é ampliada para esse formato exatamente (cálculo de distância assimétrico); uma referência Array(Int8) é tratada como códigos quantizeBFloat16ToInt8 e desquantizada para seus níveis de reconstrução. Observe que p trunca apenas os códigos QBit armazenados; a referência Array(Int8) é, por si só, uma consulta completa e é sempre reconstruída com precisão total de 8 bits, portanto esta é uma distância simétrica entre quantizados apenas em p = 8 (para p < 8, apenas o lado armazenado é lido com precisão mais grosseira). Ela deve estar no mesmo espaço em que os valores estavam antes da quantização (isto é, após a mesma rotação aleatória e o mesmo escalonamento), o que é responsabilidade de quem chama. A distância de cosseno é invariante à escala; o produto escalar e a distância L2 não são. Sintaxe
Argumentos
  • vectors — Vetores de códigos quantizeBFloat16ToInt8. QBit(Int8, UInt64[, UInt64])
  • reference — Vetor de referência (consulta): um array de Float (a consulta, comparada com precisão Float32 — uma consulta Float64 é convertida para Float32) ou um Array(Int8) de códigos quantizeBFloat16ToInt8 desquantizados em tempo de execução. Array(Float32) ou Array(Int8)
  • p — Número dos bits mais altos de cada código QBit armazenado a serem usados (de 1 a 8). Menos bits reconstroem um quantizador embutido mais grosseiro para E/S mais rápida, com menor precisão; 8 bits correspondem à reconstrução com precisão total. p trunca apenas o QBit armazenado; uma referência Array(Int8) é sempre reconstruída com precisão total de 8 bits. UInt
  • used_dims — Opcional. Número de dimensões iniciais a serem lidas, para uma busca de dimensão reduzida (Matryoshka) em um QBit com stride. Deve ser um múltiplo do stride do QBit que não exceda sua dimensão, e o vetor de referência deve ter pelo menos essa quantidade de elementos (quaisquer elementos extras no final são ignorados). Apenas os grupos de stride que abrangem essas dimensões são lidos. UInt
Valor retornado Retorna a distância aproximada de norma 2. Sempre retorna Float64. Float64 Exemplos Uso básico
Query

L2Norm

Introduzido em: v21.11.0 Calcula a raiz quadrada da soma dos quadrados dos elementos de um vetor. Sintaxe
Aliases: normL2 Argumentos Valor retornado Retorna a norma L2, ou a distância euclidiana. UInt* ou Float* Exemplos Uso básico
Query
Response

L2Normalize

Introduzido em: v21.11.0 Calcula o vetor unitário de um vetor dado (os elementos da tupla são as coordenadas) no espaço euclidiano (usando a distância euclidiana). Sintaxe
Aliases: normalizeL2 Argumentos
  • tuple — Uma tupla de valores numéricos. Tuple(T)
Valor retornado Retorna o vetor unitário. Tuple(Float64) Exemplos Uso básico
Query
Response

L2SquaredDistance

Introduzido em: v22.7.0 Calcula a soma dos quadrados das diferenças entre os elementos correspondentes de dois vetores. Sintaxe
Aliases: distanceL2Squared Argumentos Valor retornado Retorna a soma dos quadrados das diferenças entre os elementos correspondentes de dois vetores. Para entradas Array, retorna Float32 se o menor supertipo comum dos tipos de elemento for Float32 ou BFloat16; caso contrário, retorna Float64. Para entradas Tuple, o tipo de retorno segue o tipo de resultado aritmético das operações elemento a elemento (os tipos inteiros são preservados). (U)Int* ou Float* Exemplos Uso básico
Query
Response

L2SquaredNorm

Introduzido em: v22.7.0 Calcula o quadrado da raiz quadrada da soma dos quadrados dos elementos do vetor (a L2Norm). Sintaxe
Aliases: normL2Squared Argumentos Valor retornado Retorna o quadrado da norma L2. UInt* ou Float* ou Decimal Exemplos Uso básico
Query
Response

LinfDistance

Introduzido na versão: v21.11.0 Calcula a distância entre dois pontos (os elementos dos vetores são as coordenadas) no espaço L_{inf} (norma máxima). Sintaxe
Aliases: distanceLinf Argumentos Valor retornado Retorna a distância na norma infinita. Para entradas Array, retorna Float32 se o menor supertipo comum dos tipos de elemento for Float32 ou BFloat16; caso contrário, retorna Float64. Para entradas Tuple, sempre retorna Float64. Float* Exemplos Uso básico
Query
Response

LinfNorm

Introduzido em: v21.11.0 Calcula o máximo dos valores absolutos dos elementos de um vetor. Sintaxe
Aliases: normLinf Argumentos Valor retornado Retorna a norma Linf, ou seja, o maior valor absoluto. Float64 Exemplos Uso básico
Query
Response

LinfNormalize

Introduzido em: v21.11.0 Calcula o vetor unitário de um determinado vetor (os elementos da tupla são as coordenadas) no espaço L_{inf} (usando a norma máxima). Sintaxe
Aliases: normalizeLinf Argumentos
  • tuple — Uma tupla de valores numéricos. Tuple(T)
Valor retornado Retorna o vetor unitário. Tuple(Float64) Exemplos Uso básico
Query
Response

LpDistance

Introduzido em: v21.11.0 Calcula a distância entre dois pontos (os elementos dos vetores são as coordenadas) no espaço Lp (distância da norma p). Sintaxe
Aliases: distanceLp Argumentos Valor retornado Retorna a distância da norma-p. Para entradas Array, retorna Float32 se o menor supertipo comum dos tipos de elemento for Float32 ou BFloat16; caso contrário, Float64. Para entradas Tuple, sempre retorna Float64. Float* Exemplos Uso básico
Query
Response

LpNorm

Introduzido em: v21.11.0 Calcula a norma p de um vetor, que é a raiz p-ésima da soma das p-ésimas potências dos valores absolutos de seus componentes. Casos especiais:
  • Quando p=1, é equivalente a L1Norm (distância de Manhattan).
  • Quando p=2, é equivalente a L2Norm (distância euclidiana).
  • Quando p=∞, é equivalente a LinfNorm (norma máxima).
Sintaxe
Aliases: normLp Arguments
  • vector — Vetor ou tupla de valores numéricos. Tuple(T) ou Array(T)
  • p — A potência. Os valores possíveis são números reais no intervalo [1; inf). UInt* ou Float*
Returned value Retorna a norma Lp. Float64 Examples Basic usage
Query
Response

LpNormalize

Introduzido em: v21.11.0 Calcula o vetor unitário de um vetor dado (os elementos da tupla são as coordenadas) no espaço Lp (usando norma p). Sintaxe
Aliases: normalizeLp Argumentos
  • tuple — Uma tupla de valores numéricos. Tuple(T)
  • p — A potência. Os valores possíveis são quaisquer números no intervalo [1; inf). UInt* ou Float*
Valor retornado Retorna o vetor unitário. Tuple(Float64) Exemplos Exemplo de uso
Query
Response

cosineDistance

Introduzido em: v21.11.0 Calcula a distância de cosseno entre dois vetores (os elementos das tuplas são as coordenadas). Quanto menor for o valor retornado, mais semelhantes serão os vetores. Sintaxe
Aliases: distanceCosine Argumentos Valor retornado Retorna a distância de cosseno (um menos a similaridade de cosseno). Para entradas Array, retorna Float32 se o menor supertipo comum dos tipos dos elementos for Float32 ou BFloat16; caso contrário, Float64. Para entradas Tuple, sempre retorna Float64. Float* Exemplos Uso básico
Query
Response

cosineDistanceTransposed

Introduzido em: v26.1.0 Calcula a distância de cosseno aproximada entre dois pontos (os valores dos vetores são as coordenadas). Quanto menor o valor retornado, mais semelhantes são os vetores. Sintaxe
Aliases: distanceCosineTransposed Argumentos
  • vectors — Vetores. QBit(T, UInt64[, UInt64])
  • reference — Vetor de referência. Array(T)
  • p — Número de bits de cada elemento do vetor usados no cálculo da distância (de 1 até a largura de bits do elemento). O nível de quantização controla o equilíbrio entre precisão e velocidade. Usar menos bits resulta em E/S e cálculos mais rápidos, com menor precisão, enquanto usar mais bits aumenta a precisão ao custo do desempenho. UInt
  • used_dims — Opcional. Número de dimensões iniciais a serem lidas, para uma busca de dimensão reduzida (Matryoshka) em um QBit com stride. Deve ser um múltiplo do stride do QBit, sem exceder sua dimensão, e o vetor de referência deve ter pelo menos essa quantidade de elementos (quaisquer elementos adicionais no final são ignorados). Somente os grupos de stride que cobrem essas dimensões são lidos. UInt
Valor retornado Retorna a distância de cosseno aproximada (um menos a similaridade de cosseno). Sempre retorna Float64. Float64 Exemplos Uso básico
Query
Response

cosineDistanceTransposedQuantized

Introduzido em: v26.7.0 Calcula a distância de cosseno aproximada entre um QBit(Int8) de códigos quantizeBFloat16ToInt8 (desquantizados em tempo de execução) e um vetor de referência. Quanto menor o valor retornado, mais semelhantes são os vetores. Um vetor de referência (consulta) Float é comparado diretamente com precisão Float32 — a precisão de reconstrução dos códigos desquantizados; assim, uma consulta Float64 é reduzida para Float32, enquanto uma consulta BFloat16 é promovida exatamente para Float32 (cálculo de distância assimétrica). Já uma referência Array(Int8) é tratada como códigos quantizeBFloat16ToInt8 e desquantizada para seus níveis de reconstrução. Observe que p trunca apenas os códigos QBit armazenados; a referência Array(Int8) é, por si só, uma consulta completa e sempre é reconstruída com precisão total de 8 bits, portanto esta é uma distância simétrica entre quantizados somente em p = 8 (para p < 8, apenas o lado armazenado é lido com precisão mais baixa). Ela deve estar no mesmo espaço em que os valores estavam antes da quantização (isto é, após a mesma rotação aleatória e o mesmo escalonamento), o que é responsabilidade de quem faz a chamada. A distância de cosseno é invariante à escala; produto escalar e distância L2 não são. Sintaxe
Argumentos
  • vectors — Vetores de códigos quantizeBFloat16ToInt8. QBit(Int8, UInt64[, UInt64])
  • reference — Vetor de referência (consulta): um array de Float (a consulta é comparada com precisão Float32 — uma consulta Float64 é reduzida para Float32), ou um Array(Int8) de códigos quantizeBFloat16ToInt8 desquantizados em tempo de execução. Array(Float32) ou Array(Int8)
  • p — Número de bits mais altos de cada código QBit armazenado a serem usados (de 1 a 8). Menos bits reconstroem um quantizador embutido mais grosseiro, para E/S mais rápida com menor precisão; 8 bits correspondem à reconstrução em precisão total. p trunca apenas o QBit armazenado; uma referência Array(Int8) é sempre reconstruída com precisão total de 8 bits. UInt
  • used_dims — Opcional. Número de dimensões iniciais a serem lidas, para uma busca de dimensão reduzida (Matryoshka) em um QBit com stride. Deve ser um múltiplo do stride do QBit, sem exceder sua dimensão, e o vetor de referência deve ter pelo menos essa quantidade de elementos (quaisquer elementos extras ao final são ignorados). Apenas os grupos de stride que cobrem essas dimensões são lidos. UInt
Valor retornado Retorna a distância de cosseno aproximada (um menos a similaridade de cosseno). Sempre retorna Float64. Float64 Exemplos Uso básico
Query

dotProductTransposed

Introduzido em: v26.7.0 Calcula o produto escalar aproximado (produto interno) de dois vetores (os valores dos vetores são as coordenadas). Ao contrário das funções de distância, esta é uma medida de similaridade: quanto maior o valor retornado, mais semelhantes são os vetores. Sintaxe
Aliases: scalarProductTransposed Argumentos
  • vectors — Vetores. QBit(T, UInt64[, UInt64])
  • reference — Vetor de referência. Array(T)
  • p — Número de bits de cada elemento do vetor usados no cálculo (de 1 até a largura de bits do elemento). O nível de quantização controla o equilíbrio entre precisão e velocidade. Usar menos bits resulta em E/S e cálculos mais rápidos, com menor precisão, enquanto usar mais bits aumenta a precisão ao custo do desempenho. UInt
  • used_dims — Opcional. Número de dimensões iniciais a serem lidas, para uma busca de dimensão reduzida (Matryoshka) em um QBit com stride. Deve ser um múltiplo do stride do QBit que não exceda sua dimensão, e o vetor de referência deve ter pelo menos esse número de elementos (quaisquer elementos extras no final são ignorados). Somente os grupos de stride que abrangem essas dimensões são lidos. UInt
Valor retornado Retorna o produto escalar aproximado dos dois vetores. Sempre retorna Float64. Float64 Exemplos Uso básico
Query
Response

dotProductTransposedQuantized

Introduzido em: v26.7.0 Calcula o produto escalar aproximado (produto interno) entre um QBit(Int8) de códigos quantizeBFloat16ToInt8 (desquantizados em tempo de execução) e um vetor de referência. Esta é uma medida de similaridade: quanto maior o valor retornado, mais semelhantes são os vetores. Um vetor de referência Float (consulta) é comparado diretamente com precisão Float32 — a precisão de reconstrução dos códigos desquantizados —, de modo que uma consulta Float64 é reduzida para Float32, enquanto uma consulta BFloat16 é ampliada exatamente para esse formato (cálculo de distância assimétrico); uma referência Array(Int8) é tratada como códigos quantizeBFloat16ToInt8 e desquantizada para seus níveis de reconstrução. Observe que p trunca apenas os códigos QBit armazenados; a referência Array(Int8) é, por si só, uma consulta completa e sempre é reconstruída com precisão total de 8 bits, portanto esta é uma distância simétrica entre quantizados somente em p = 8 (para p < 8, apenas o lado armazenado é lido com precisão mais baixa). Ela deve estar no mesmo espaço em que os valores estavam antes da quantização (isto é, após a mesma rotação aleatória e o mesmo escalonamento), o que é responsabilidade do chamador. A distância cosseno é invariante à escala; o produto escalar e a distância L2 não são. Sintaxe
Argumentos
  • vectors — Vetores de códigos quantizeBFloat16ToInt8. QBit(Int8, UInt64[, UInt64])
  • reference — Vetor de referência (consulta): um array de Float (a consulta, comparada com precisão Float32 — uma consulta Float64 é convertida para Float32), ou um Array(Int8) de códigos quantizeBFloat16ToInt8 desquantizados em tempo de execução. Array(Float32) ou Array(Int8)
  • p — Número de bits mais significativos de cada código QBit armazenado a serem usados (de 1 a 8). Menos bits reconstroem um quantizador embutido mais grosseiro para E/S mais rápida, com menor precisão; 8 bits correspondem à reconstrução com precisão total. p trunca apenas o QBit armazenado; uma referência Array(Int8) é sempre reconstruída com precisão total de 8 bits. UInt
  • used_dims — Opcional. Número de dimensões iniciais a serem lidas, para uma busca de dimensão reduzida (Matryoshka) em um QBit com stride. Deve ser um múltiplo do stride do QBit que não exceda sua dimensão, e o vetor de referência deve ter pelo menos esse número de elementos (quaisquer elementos extras no final são ignorados). Somente os grupos de stride que abrangem essas dimensões são lidos. UInt
Valor retornado Retorna o produto escalar aproximado dos dois vetores. Sempre retorna Float64. Float64 Exemplos Uso básico
Query
Última modificação em 23 de julho de 2026