Skip to main content

L1Distance

導入バージョン: v21.11.0 L1 空間における 2 点間の距離 (ベクトルの各要素が座標) を計算します (1-ノルム、タクシー幾何学距離) 。 構文
別名: distanceL1 引数 戻り値 1-ノルム距離を返します。Array 入力の場合、要素型の最小の共通スーパータイプが Float32 または BFloat16 であれば Float32、それ以外の場合は 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 ユークリッド空間における 2 点間の距離 (ベクトルの各要素が座標) を計算します (ユークリッド距離) 。 構文
別名: distanceL2 引数 戻り値 2-ノルム距離を返します。入力が Array の場合、要素型の最小の共通スーパータイプが Float32 または BFloat16 であれば Float32 を返し、それ以外の場合は Float64 を返します。入力が Tuple の場合は、常に Float64 を返します。Float* 基本的な使い方
Query
Response

L2DistanceTransposed

導入バージョン: v25.10.0 ユークリッド空間における 2 点間の近似距離 (ベクトルの各値を座標とする) を計算します (ユークリッド距離) 。 構文
別名: distanceL2Transposed 引数
  • vectors — ベクトル。QBit(T, UInt64[, UInt64])
  • reference — 参照ベクトル。Array(T)
  • p — 距離計算で各ベクトル要素から使用するビット数 (1 から要素のビット幅まで) 。量子化レベルによって、精度と速度のトレードオフが決まります。ビット数を少なくすると I/O と計算は高速になりますが精度は低下し、ビット数を多くすると精度は向上しますが、その分パフォーマンスは低下します。UInt
  • used_dims — 任意。ストライド付き QBit に対して低次元 (Matryoshka) 検索を行うために読み取る先頭の次元数です。QBit の stride の倍数であり、その次元数を超えてはなりません。また、参照ベクトルは少なくともこの数だけの要素を持っている必要があります (末尾の余分な要素は無視されます) 。これらの次元をカバーする stride グループだけが読み取られます。UInt
戻り値 近似的な 2-ノルム距離を返します。戻り値は常に Float64 です。Float64 基本的な使い方
Query
Response

L2DistanceTransposedQuantized

導入バージョン: v26.7.0 quantizeBFloat16ToInt8 のコードを持つ QBit(Int8) (オンザフライで逆量子化) と参照ベクトルの間の近似 ユークリッド距離 を計算します。Float の参照 (クエリ) ベクトルは、逆量子化されたコードの再構成精度である Float32 精度で直接比較されるため、Float64 のクエリは Float32 に縮小され、BFloat16 のクエリは正確に Float32 に拡張されます (非対称距離計算)。Array(Int8) の参照は、それ自体が quantizeBFloat16ToInt8 のコードとして扱われ、その再構成レベルに逆量子化されます。p が切り詰めるのは保存された QBit コードだけである点に注意してください。Array(Int8) の参照は完全なクエリであり、常に完全な 8 ビット精度で再構成されるため、これは p = 8 のときにのみ対称な量子化同士の距離になります (p < 8 では、保存側だけがより粗い精度で読み取られます)。これは、量子化前の値が属していたのと同じ空間、つまり同じランダム回転とスケーリングを適用した後の空間になければならず、これを担保するのは呼び出し元の責任です。cosine distance はスケール不変ですが、内積と L2 距離 はそうではありません。 構文
引数
  • vectorsquantizeBFloat16ToInt8 コードのベクトル。QBit(Int8, UInt64[, UInt64])
  • reference — 参照 (クエリ) ベクトル: Float 配列 (クエリ。Float32 精度で比較されます。Float64 のクエリは Float32 に変換されます)、または quantizeBFloat16ToInt8 コードの Array(Int8) で、オンザフライで逆量子化されます。Array(Float32) または Array(Int8)
  • p — 使用する、格納済み QBit コードの上位ビット数 (1 から 8) 。ビット数が少ないほど、より粗い埋め込み量子化器が再構築され、I/O は高速になりますが精度は低下します。8 ビットはフル精度の再構築です。p は格納済み QBit のみを切り詰めます。Array(Int8) の参照は常に完全な 8 ビット精度で再構築されます。UInt
  • used_dims — 任意。ストライド付き QBit に対して低次元 (Matryoshka) 検索を行うために読み取る先頭の次元数です。QBit の stride の倍数であり、その次元数を超えてはなりません。また、参照ベクトルは少なくともこの数の要素を持っている必要があります (末尾の余分な要素は無視されます)。これらの次元をカバーする 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 2 つのベクトルの対応する要素間の差の二乗和を計算します。 構文
別名: distanceL2Squared 引数 戻り値 2つのベクトルの対応する要素の差の二乗和を返します。Array 入力の場合、要素型の最小共通スーパータイプが Float32 または BFloat16 なら Float32、それ以外は 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} 空間における 2 点間の距離を計算します (ベクトルの要素が座標を表します) (最大ノルム) 。 構文
別名: distanceLinf 引数 戻り値 無限大ノルム距離を返します。入力が Array の場合、要素型の最小共通スーパータイプが Float32 または BFloat16 であれば Float32、それ以外は 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 空間における 2 点間の距離 (ベクトルの要素を座標とする) を計算します (p-ノルム距離) 。 構文
別名: distanceLp 引数
  • vector1 — 1つ目のベクトル。Tuple(T) または Array(T)
  • vector2 — 2つ目のベクトル。Tuple(T) または Array(T)
  • p — べき指数。設定可能な値: [1; inf) の実数。UInt* または Float*
戻り値 p-ノルム距離を返します。Array 入力の場合、要素型の最小共通スーパータイプが Float32 または BFloat16 であれば Float32、それ以外の場合は 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 2 つのベクトル間の コサイン距離 を計算します (タプルの要素は座標です) 。戻り値が小さいほど、2 つのベクトルはより類似しています。 構文
別名: distanceCosine 引数 戻り値 コサイン距離 (コサイン類似度から 1 を引いた値) を返します。Array を入力した場合、要素型の最小共通スーパータイプが Float32 または BFloat16 であれば Float32、それ以外の場合は Float64 を返します。Tuple を入力した場合は、常に Float64 を返します。Float* 基本的な使い方
Query
Response

cosineDistanceTransposed

導入バージョン: v26.1.0 2 点間の近似的な コサイン距離 を計算します (ベクトルの値を座標とみなします) 。戻り値が小さいほど、ベクトルはより類似しています。 構文
別名: distanceCosineTransposed 引数
  • vectors — ベクトル。QBit(T, UInt64[, UInt64])
  • reference — 参照ベクトル。Array(T)
  • p — 距離計算で各ベクトル要素から使用するビット数 (1 から要素のビット幅まで) 。量子化レベルによって、精度と速度のトレードオフが決まります。使用するビット数を減らすと、精度は低下しますが、I/O と計算は高速になります。一方、ビット数を増やすと精度は向上しますが、パフォーマンスは低下します。UInt
  • used_dims — 省略可能。ストライド付き QBit で低次元 (Matryoshka) 検索を行うために、先頭から読み取る次元数です。QBit の stride の倍数であり、その次元数を超えてはなりません。また、参照ベクトルには少なくともこの数の要素が必要です (末尾の余分な要素は無視されます) 。これらの次元をカバーする stride グループのみが読み取られます。UInt
戻り値 近似コサイン距離 (コサイン類似度を 1 から引いた値) を返します。返り値は常に Float64 です。Float64 基本的な使い方
Query
Response

cosineDistanceTransposedQuantized

導入バージョン: v26.7.0 quantizeBFloat16ToInt8 コードの QBit(Int8) (オンザフライで逆量子化) と参照ベクトルの間の近似的な コサイン距離 を計算します。戻り値が小さいほど、ベクトル同士の類似度は高くなります。Float の参照 (クエリ) ベクトルは、復量子化されたコードの再構成精度である Float32 精度で直接比較されます。つまり、Float64 クエリは Float32 に丸められ、BFloat16 クエリは正確に Float32 へ拡張されます (非対称な距離計算) 。一方、Array(Int8) の参照は、それ自体が quantizeBFloat16ToInt8 コードとして扱われ、対応する再構成レベルへ復量子化されます。なお、p によって切り詰められるのは保存済みの QBit コードだけです。Array(Int8) の参照は完全なクエリそのものであり、常に完全な 8 ビット精度で再構成されます。そのため、これは p = 8 の場合にのみ対称な量子化同士の距離となります (p < 8 の場合は、保存側だけがより粗い精度で読み出されます) 。また、これは量子化前の値が属していた空間と同じ空間に存在している必要があります (つまり、同じランダム回転とスケーリングを適用した後の空間) 。これを保証するのは呼び出し側の責任です。コサイン距離はスケール不変ですが、内積と L2 距離はそうではありません。 構文
引数
  • vectorsquantizeBFloat16ToInt8 コードのベクトル。QBit(Int8, UInt64[, UInt64])
  • reference — 参照 (クエリ) ベクトル: Float の配列 (クエリは Float32 精度で比較され、Float64 のクエリは Float32 に変換されます) 、またはオンザフライで逆量子化される quantizeBFloat16ToInt8 コードの Array(Int8)Array(Float32) または Array(Int8)
  • p — 各格納済み QBit コードで使用する上位ビット数 (1 ~ 8) 。ビット数が少ないほど、より粗い埋め込み量子化器が再構成されるため、精度は下がりますが I/O は高速になります。8 ビットはフル精度での再構成です。p で切り詰められるのは格納済み QBit のみで、Array(Int8) の参照は常に 8 ビットのフル精度で再構成されます。UInt
  • used_dims — 省略可。ストライド付き QBit に対する 低次元 (Matryoshka) 検索で読み取る先頭の次元数です。QBit の stride の倍数であり、その dimension を超えてはならず、参照ベクトルは少なくともこの数の要素を持っている必要があります (余分な末尾の要素は無視されます) 。これらの次元を含む stride グループ のみが読み取られます。UInt
戻り値 近似 コサイン距離 (cosine similarity から 1 を引いた値) を返します。戻り値は常に Float64 です。Float64 基本的な使い方
Query

dotProductTransposed

導入バージョン: v26.7.0 2 つのベクトルの近似的な 内積 (インナー積) を計算します (ベクトルの値を座標とみなします) 。距離関数とは異なり、これは類似度の指標です。戻り値が大きいほど、ベクトルはより類似しています。 構文
別名: scalarProductTransposed 引数
  • vectors — ベクトル。QBit(T, UInt64[, UInt64])
  • reference — 参照ベクトル。Array(T)
  • p — 計算で各ベクトル要素から使用するビット数 (1 から要素のビット幅まで) 。量子化レベルによって、精度と速度のトレードオフが決まります。使用するビット数を減らすと、精度は低下しますが、I/O と計算は高速になります。一方、ビット数を増やすと精度は向上しますが、パフォーマンスは低下します。UInt
  • used_dims — 省略可能。ストライド付き QBit に対する低次元 (Matryoshka) 検索のために、読み取る先頭の次元数です。QBit の stride の倍数であり、その次元数を超えてはなりません。また、参照ベクトルは少なくともこの数の要素を持っている必要があります (余分な末尾要素は無視されます) 。これらの次元をカバーする stride グループのみが読み取られます。UInt
戻り値 2 つのベクトルの近似内積を返します。返り値は常に Float64 です。Float64 基本的な使い方
Query
Response

dotProductTransposedQuantized

導入バージョン: v26.7.0 quantizeBFloat16ToInt8 のコードを持つ QBit(Int8) と参照ベクトルの間の近似的な 内積 (インナー積) を計算します (QBit(Int8) は オンザフライで逆量子化されます) 。これは類似度の指標です。戻り値が大きいほど、ベクトルはより類似しています。Float の参照 (クエリ) ベクトルは、逆量子化されたコードの再構成精度である Float32 精度で直接比較されるため、Float64 クエリは Float32 に縮小され、BFloat16 クエリは正確に Float32 に拡張されます (非対称距離計算) 。Array(Int8) の参照は、それ自体が quantizeBFloat16ToInt8 のコードとして扱われ、再構成レベルに逆量子化されます。p は保存された QBit コードのみを切り詰める点に注意してください。Array(Int8) の参照は完全なクエリであり、常に完全な 8 ビット精度で再構成されるため、これは p = 8 の場合にのみ対称な量子化対量子化距離になります (p < 8 の場合、より粗い精度で読み取られるのは保存側だけです) 。これは、量子化前の値が属していたのと同じ空間、すなわち同じランダム回転とスケーリングを適用した後の空間に属している必要があり、これを保証するのは呼び出し側の責任です。コサイン距離はスケール不変ですが、内積と L2 距離はそうではありません。 構文
引数
  • vectorsquantizeBFloat16ToInt8 コードのベクトル。QBit(Int8, UInt64[, UInt64])
  • reference — 参照 (クエリ) ベクトル: Float 配列 (クエリは Float32 精度で比較され、Float64 クエリは Float32 に縮小されます) 、または quantizeBFloat16ToInt8 コードの Array(Int8) で、オンザフライで逆量子化されます。Array(Float32) または Array(Int8)
  • p — 使用する、格納された各 QBit コードの上位ビット数 (1 から 8) 。ビット数を減らすと、より粗い埋め込み量子化器が再構成され、精度は低下しますが I/O は高速になります。8 ビットはフル精度の再構成です。p が切り詰めるのは格納された QBit のみであり、Array(Int8) の参照は常に完全な 8 ビット精度で再構成されます。UInt
  • used_dims — 省略可能。ストライド付き QBit に対する低次元 (Matryoshka) 検索のために、読み取る先頭の次元数です。QBit の stride の倍数であり、その次元数を超えてはなりません。また、参照ベクトルは少なくともこの数の要素を持っている必要があります (末尾に余分な要素がある場合は無視されます) 。これらの次元をカバーする stride グループのみが読み取られます。UInt
戻り値 2 つのベクトルの近似内積を返します。返り値は常に Float64 です。Float64 基本的な使い方
Query
最終更新日 2026年7月23日