Skip to main content

L1Distance

Добавленный в: v21.11.0 Вычисляет расстояние между двумя точками (элементы векторов представляют собой координаты) в пространстве L1 (1-норма — таксомоторная геометрия). Синтаксис
Псевдонимы: distanceL1 Аргументы Возвращаемое значение Возвращает расстояние по 1-норме. Для входных данных типа Array возвращает Float32, если наименьший общий супертип типов элементов — Float32 или BFloat16, в противном случае — Float64. Для входных данных типа Tuple возвращаемый тип соответствует арифметическому типу результата поэлементных операций (целочисленные типы сохраняются). (U)Int* или Float* Примеры Базовое использование
Query
Response

L1Norm

Добавленный в: v21.11.0 Вычисляет сумму модулей элементов вектора. Синтаксис
Псевдонимы: normL1 Аргументы
  • vector — Вектор или кортеж числовых значений. Array(T) или Tuple(T)
Возвращаемое значение Возвращает L1-норму или расстояние в таксомоторной геометрии. UInt* или Float* или Decimal Примеры Базовое использование
Query
Response

L1Normalize

Добавленный в: v21.11.0 Вычисляет единичный вектор заданного вектора (элементы кортежа — координаты) в пространстве L1 (таксомоторная геометрия). Синтаксис
Псевдонимы: normalizeL1 Аргументы
  • tuple — Кортеж из числовых значений. Tuple(T)
Возвращаемое значение Возвращает единичный вектор. Tuple(Float64) Примеры Базовое использование
Query
Response

L2Distance

Добавленный в: v21.11.0 Вычисляет расстояние между двумя точками (элементы векторов служат координатами) в евклидовом пространстве (евклидово расстояние). Синтаксис
Псевдонимы: distanceL2 Аргументы Возвращаемое значение Возвращает расстояние по 2-норме. Для входных данных типа Array возвращает Float32, если наименьший общий супертип типов элементов — Float32 или BFloat16, в противном случае — Float64. Для входных данных типа Tuple всегда возвращает Float64. Float* Примеры Базовое использование
Query
Response

L2DistanceTransposed

Добавленный в: v25.10.0 Вычисляет приблизительное расстояние между двумя точками в евклидовом пространстве, где значения векторов служат координатами (евклидово расстояние). Синтаксис
Псевдонимы: distanceL2Transposed Аргументы
  • vectors — Векторы. QBit(T, UInt64[, UInt64])
  • reference — Опорный вектор. Array(T)
  • p — Количество битов из каждого элемента вектора, используемых при вычислении расстояния (от 1 до битовой ширины элемента). Уровень квантования определяет компромисс между точностью и скоростью. Использование меньшего количества битов ускоряет операции ввода-вывода и вычисления, но снижает точность, тогда как большее количество битов повышает точность ценой производительности. UInt
  • used_dims — Необязательно. Количество первых размерностей, которые нужно считывать, для поиска с уменьшенной размерностью в QBit со stride. Должно быть кратно stride в QBit и не превышать его размерность, а опорный вектор должен содержать как минимум столько элементов (любые дополнительные конечные элементы игнорируются). Считываются только те группы stride, которые покрывают эти размерности. UInt
Возвращаемое значение Возвращает приблизительное расстояние по 2-норме. Всегда возвращает Float64. Float64 Примеры Базовое использование
Query
Response

L2DistanceTransposedQuantized

Добавленный в: v26.7.0 Вычисляет приблизительное евклидово расстояние между QBit(Int8) из кодов quantizeBFloat16ToInt8 (деквантованных на лету) и опорным вектором. Опорный вектор (запрос) типа Float сравнивается напрямую с точностью Float32 — точностью восстановления деквантованных кодов, поэтому запрос Float64 сужается до Float32, а запрос BFloat16 точно расширяется до него (асимметричное вычисление расстояния); опорный вектор Array(Int8) сам рассматривается как коды quantizeBFloat16ToInt8 и деквантуется до своих уровней восстановления. Обратите внимание, что p усекает только сохранённые коды QBit; опорный Array(Int8) сам является полным запросом и всегда восстанавливается с полной 8-битной точностью, поэтому это симметричное расстояние между квантованными векторами только при p = 8 (при p < 8 только сохранённая сторона считывается с более грубой точностью). Он должен находиться в том же пространстве, в котором значения были до квантования (то есть после того же случайного поворота и масштабирования), и ответственность за это лежит на вызывающей стороне. Косинусное расстояние инвариантно к масштабу; скалярное произведение и расстояние L2 — нет. Синтаксис
Аргументы
  • vectors — Векторы кодов quantizeBFloat16ToInt8. QBit(Int8, UInt64[, UInt64])
  • reference — Опорный вектор (запрос): массив Float (запрос сравнивается с точностью Float32 — запрос Float64 приводится к Float32) или Array(Int8) из кодов quantizeBFloat16ToInt8, деквантованных на лету. Array(Float32) или Array(Int8)
  • p — Количество старших битов каждого сохранённого кода QBit, которые следует использовать (от 1 до 8). Меньшее количество битов восстанавливает более грубый встроенный квантизатор, обеспечивая более быстрый ввод-вывод ценой снижения точности; 8 бит — это восстановление с полной точностью. p усекает только сохранённый QBit; опорный Array(Int8) всегда восстанавливается с полной 8-битной точностью. UInt
  • used_dims — Необязательно. Количество первых размерностей, которые нужно считывать, для поиска с уменьшенной размерностью (Matryoshka) в QBit со stride. Должно быть кратно stride в QBit и не превышать его размерность, а опорный вектор должен содержать как минимум столько элементов (любые дополнительные конечные элементы игнорируются). Считываются только те группы stride, которые покрывают эти размерности. UInt
Возвращаемое значение Возвращает приблизительное расстояние по 2-норме. Всегда возвращает Float64. Float64 Примеры Базовое использование
Query

L2Norm

Добавленный в: v21.11.0 Вычисляет квадратный корень из суммы квадратов элементов вектора. Синтаксис
Псевдонимы: normL2 Аргументы
  • vector — Вектор или кортеж из числовых значений. Tuple(T) или Array(T)
Возвращаемое значение Возвращает норму L2 или евклидово расстояние. UInt* или Float* Примеры Базовое использование
Query
Response

L2Normalize

Добавленный в: v21.11.0 Вычисляет единичный вектор для заданного вектора (элементы кортежа служат координатами) в евклидовом пространстве (с помощью евклидова расстояния). Синтаксис
Псевдонимы: normalizeL2 Аргументы
  • tuple — Кортеж числовых значений. Tuple(T)
Возвращаемое значение Возвращает единичный вектор. Tuple(Float64) Примеры Базовое использование
Query
Response

L2SquaredDistance

Добавленный в: v22.7.0 Вычисляет сумму квадратов разностей соответствующих элементов двух векторов. Синтаксис
Псевдонимы: distanceL2Squared Аргументы Возвращаемое значение Возвращает сумму квадратов разностей соответствующих элементов двух векторов. Для входных значений Array возвращает Float32, если наименьший общий супертип типов элементов — Float32 или BFloat16, в противном случае — Float64. Для входных значений Tuple возвращаемый тип соответствует арифметическому типу результата поэлементных операций (целочисленные типы сохраняются). (U)Int* или Float* Примеры Базовое использование
Query
Response

L2SquaredNorm

Добавленный в: v22.7.0 Вычисляет квадрат нормы L2Norm, то есть сумму квадратов элементов вектора. Синтаксис
Псевдонимы: normL2Squared Аргументы
  • vector — Вектор или кортеж числовых значений. Array(T) или Tuple(T)
Возвращаемое значение Возвращает квадрат нормы L2. UInt* или Float* или Decimal Примеры Базовое использование
Query
Response

LinfDistance

Добавленный в: v21.11.0 Вычисляет расстояние между двумя точками (элементы векторов служат координатами) в пространстве L_{inf} (максимальная норма). Синтаксис
Псевдонимы: distanceLinf Аргументы Возвращаемое значение Возвращает расстояние в норме бесконечности. Для входных значений типа Array возвращает Float32, если наименьший общий супертип типов элементов — Float32 или BFloat16, в противном случае — Float64. Для входных значений типа Tuple всегда возвращает Float64. Float* Примеры Базовое использование
Query
Response

LinfNorm

Добавленный в: v21.11.0 Вычисляет максимальное по модулю значение элемента вектора. Синтаксис
Псевдонимы: normLinf Аргументы
  • vector — Вектор или кортеж из числовых значений. Array(T) или Tuple(T)
Возвращаемое значение Возвращает норму Linf, то есть максимальное по модулю значение. Float64 Примеры Базовое использование
Query
Response

LinfNormalize

Добавленный в: v21.11.0 Вычисляет единичный вектор для заданного вектора (элементы кортежа служат координатами) в пространстве L_{inf} (с использованием максимальной нормы). Синтаксис
Псевдонимы: normalizeLinf Аргументы
  • tuple — Кортеж из числовых значений. Tuple(T)
Возвращаемое значение Возвращает единичный вектор. Tuple(Float64) Примеры Базовое использование
Query
Response

LpDistance

Добавленный в: v21.11.0 Вычисляет расстояние между двумя точками (элементы векторов являются координатами) в пространстве Lp (расстояние p-нормы). Синтаксис
Псевдонимы: distanceLp Аргументы
  • vector1 — Первый вектор. Tuple(T) или Array(T)
  • vector2 — Второй вектор. Tuple(T) или Array(T)
  • p — Степень. Возможные значения: действительное число в диапазоне [1; inf). UInt* или Float*
Возвращаемое значение Возвращает расстояние по p-норме. Для аргументов типа Array возвращает Float32, если наименьший общий супертип типов элементов — Float32 или BFloat16, в противном случае — Float64. Для аргументов типа Tuple всегда возвращает Float64. Float* Примеры Базовое использование
Query
Response

LpNorm

Добавленный в: v21.11.0 Вычисляет p-норму вектора, то есть корень степени p из суммы p-х степеней абсолютных значений его элементов. Особые случаи:
  • При p=1 эквивалентна L1Norm (манхэттенское расстояние).
  • При p=2 эквивалентна L2Norm (евклидово расстояние).
  • При p=∞ эквивалентна LinfNorm (максимальная норма).
Синтаксис
Псевдонимы: normLp Аргументы
  • vector — Вектор или кортеж числовых значений. Tuple(T) или Array(T)
  • p — Степень. Возможные значения — действительные числа в диапазоне [1; inf). UInt* или Float*
Возвращаемое значение Возвращает Lp-норму. Float64 Примеры Базовое использование
Query
Response

LpNormalize

Добавленный в: v21.11.0 Вычисляет единичный вектор для заданного вектора (элементы кортежа служат координатами) в пространстве Lp (с использованием p-нормы). Синтаксис
Псевдонимы: normalizeLp Аргументы
  • tuple — Кортеж из числовых значений. Tuple(T)
  • p — Степень. Возможные значения — любое число в диапазоне [1; inf). UInt* или Float*
Возвращаемое значение Возвращает единичный вектор. Tuple(Float64) Примеры Пример использования
Query
Response

cosineDistance

Добавленный в: v21.11.0 Вычисляет косинусное расстояние между двумя векторами (элементы кортежей — это координаты). Чем меньше возвращаемое значение, тем больше векторы похожи друг на друга. Синтаксис
Псевдонимы: distanceCosine Аргументы Возвращаемое значение Возвращает косинусное расстояние (единица минус косинусное сходство). Для входных значений Array возвращается Float32, если наименьший общий супертип типов элементов — Float32 или BFloat16, иначе — Float64. Для входных значений Tuple всегда возвращается Float64. Float* Примеры Базовое использование
Query
Response

cosineDistanceTransposed

Добавленный в: v26.1.0 Вычисляет приблизительное косинусное расстояние между двумя точками (значения векторов служат координатами). Чем меньше возвращаемое значение, тем более похожи векторы. Синтаксис
Псевдонимы: distanceCosineTransposed Аргументы
  • vectors — Векторы. QBit(T, UInt64[, UInt64])
  • reference — Опорный вектор. Array(T)
  • p — Количество битов из каждого элемента вектора, используемых при вычислении расстояния (от 1 до разрядности элемента в битах). Уровень квантования определяет компромисс между точностью и скоростью. Использование меньшего количества битов ускоряет операции ввода-вывода и вычисления, но снижает точность, тогда как большее количество битов повышает точность ценой производительности. UInt
  • used_dims — Необязательно. Количество начальных размерностей для чтения при поиске с уменьшенной размерностью (Matryoshka) по QBit со stride. Должно быть кратно stride QBit и не превышать его размерность, а опорный вектор должен содержать как минимум столько элементов (любые дополнительные конечные элементы игнорируются). Считываются только группы stride, покрывающие эти размерности. UInt
Возвращаемое значение Возвращает приближённое косинусное расстояние (единица минус косинусное сходство). Всегда возвращает Float64. Float64 Примеры Базовое использование
Query
Response

cosineDistanceTransposedQuantized

Добавленный в: v26.7.0 Вычисляет приблизительное косинусное расстояние между кодами QBit(Int8) функции quantizeBFloat16ToInt8 (деквантуемыми на лету) и опорным вектором. Чем меньше возвращаемое значение, тем больше сходство между векторами. Опорный вектор Float (вектор запроса) сравнивается напрямую с точностью Float32 — то есть с точностью восстановления деквантованных кодов, поэтому Float64-запрос приводится к Float32, а BFloat16-запрос точно расширяется до него (асимметричное вычисление расстояния); опорный Array(Int8) сам рассматривается как коды quantizeBFloat16ToInt8 и деквантуется до своих уровней восстановления. Обратите внимание: p усекает только сохранённые коды QBit; опорный Array(Int8) сам по себе является полным запросом и всегда восстанавливается с полной 8-битной точностью, поэтому симметричное расстояние между квантованными векторами здесь получается только при p = 8 (при p < 8 только сохранённая сторона читается с более грубой точностью). Он должен находиться в том же пространстве, в котором значения находились до квантования (то есть после того же случайного поворота и масштабирования); это ответственность вызывающей стороны. Косинусное расстояние инвариантно к масштабу; скалярное произведение и L2-расстояние — нет. Синтаксис
Аргументы
  • vectors — Векторы кодов quantizeBFloat16ToInt8. QBit(Int8, UInt64[, UInt64])
  • reference — Опорный вектор (запрос): массив Float (запрос сравнивается с точностью Float32 — запрос Float64 приводится к Float32) или Array(Int8) с кодами quantizeBFloat16ToInt8, деквантуемыми на лету. Array(Float32) или Array(Int8)
  • p — Число старших битов каждого хранимого кода QBit, которое нужно использовать (от 1 до 8). Чем меньше битов, тем грубее восстанавливаемый квантизатор, но тем быстрее I/O и ниже точность; 8 бит — это восстановление с полной точностью. p усекает только хранимый QBit; опорный вектор Array(Int8) всегда восстанавливается с полной 8-битной точностью. UInt
  • used_dims — Необязательно. Количество начальных размерностей, которые нужно считывать для поиска с уменьшенной размерностью (Matryoshka) по QBit со stride. Должно быть кратно stride QBit и не превышать его размерность, а опорный вектор должен содержать как минимум столько элементов (любые дополнительные конечные элементы игнорируются). Считываются только группы stride, покрывающие эти размерности. UInt
Возвращаемое значение Возвращает приближённое косинусное расстояние (единица минус косинусное сходство). Всегда возвращает Float64. Float64 Примеры Базовое использование
Query

dotProductTransposed

Добавленный в: v26.7.0 Вычисляет приблизительное скалярное произведение (внутреннее произведение) двух векторов (значения векторов служат координатами). В отличие от функций расстояния, это мера сходства: чем больше возвращаемое значение, тем более похожи векторы. Синтаксис
Псевдонимы: scalarProductTransposed Аргументы
  • vectors — Векторы. QBit(T, UInt64[, UInt64])
  • reference — Опорный вектор. Array(T)
  • p — Количество битов из каждого элемента вектора, используемых при вычислении (от 1 до разрядности элемента в битах). Уровень квантования определяет компромисс между точностью и скоростью. Использование меньшего количества битов ускоряет операции ввода-вывода и вычисления, но снижает точность, тогда как большее количество битов повышает точность ценой производительности. UInt
  • used_dims — Необязательно. Количество начальных размерностей, которые нужно считывать, для поиска с уменьшенной размерностью (Matryoshka) по QBit со stride. Должно быть кратно stride в QBit и не превышать его размерность, а опорный вектор должен содержать как минимум столько элементов (любые дополнительные элементы в конце игнорируются). Считываются только группы stride, покрывающие эти размерности. UInt
Возвращаемое значение Возвращает приблизительное скалярное произведение двух векторов. Всегда возвращает Float64. Float64 Примеры Базовое использование
Query
Response

dotProductTransposedQuantized

Добавленный в: v26.7.0 Вычисляет приблизительное скалярное произведение (внутреннее произведение) между QBit(Int8), содержащим коды quantizeBFloat16ToInt8 (деквантуемые на лету), и опорным вектором. Это мера сходства: чем больше возвращаемое значение, тем более похожи векторы. Опорный вектор (запрос) типа Float сравнивается напрямую с точностью Float32 — точностью восстановления деквантованных кодов, поэтому запрос Float64 сужается до Float32, а запрос BFloat16 точно расширяется до этого типа (асимметричное вычисление расстояния); опорный вектор Array(Int8) сам рассматривается как коды quantizeBFloat16ToInt8 и деквантуется до уровней их восстановления. Обратите внимание, что p усекает только сохранённые коды QBit; опорный вектор Array(Int8) сам по себе является полным запросом и всегда восстанавливается с полной 8-битной точностью, поэтому симметричное расстояние между квантованными представлениями получается только при p = 8 (при p < 8 только сохранённая сторона считывается с более грубой точностью). Он должен находиться в том же пространстве, в котором значения были до квантования (то есть после того же случайного поворота и масштабирования), и это ответственность вызывающей стороны. Косинусное расстояние инвариантно к масштабу; скалярное произведение и расстояние L2 — нет. Синтаксис
Аргументы
  • vectors — Векторы кодов quantizeBFloat16ToInt8. QBit(Int8, UInt64[, UInt64])
  • reference — Опорный вектор (запрос): массив Float (запрос сравнивается с точностью Float32 — запрос типа Float64 приводится к Float32) или Array(Int8) из кодов quantizeBFloat16ToInt8, деквантуемых на лету. Array(Float32) или Array(Int8)
  • p — Количество старших битов каждого сохранённого кода QBit, используемых при вычислении (от 1 до 8). Меньшее количество битов даёт более грубое восстановление встроенного квантизатора, что ускоряет ввод-вывод ценой снижения точности; 8 бит — это восстановление с полной точностью. p усекает только сохранённый QBit; опорный Array(Int8) всегда восстанавливается с полной 8-битной точностью. UInt
  • used_dims — Необязательно. Количество начальных размерностей, которые нужно считывать, для поиска с уменьшенной размерностью (Matryoshka) по QBit со stride. Должно быть кратно stride в QBit и не превышать его размерность, а опорный вектор должен содержать как минимум столько элементов (все дополнительные элементы в конце игнорируются). Считываются только группы stride, покрывающие эти размерности. UInt
Возвращаемое значение Возвращает приблизительное скалярное произведение двух векторов. Всегда возвращает Float64. Float64 Примеры Базовое использование
Query
Последнее изменение 23 июля 2026 г.