QBit 数据类型会重新组织向量的存储方式,以加快近似向量搜索。它不是将每个向量的元素存储在一起,而是将所有向量中相同二进制位位置的值分组存储。
这样既能以全精度存储向量,又能让你在搜索时选择细粒度的量化级别:读取更少的位可减少 I/O 并加快计算,读取更多的位则可获得更高精度。你既能享受量化在减少数据传输和计算量方面带来的速度优势,又能在需要时使用全部原始数据。
要声明一个 QBit 类型的列,请使用以下语法:
element_type– 每个向量元素的数据类型。允许的类型包括BFloat16、Float32和Float64dimension– 每个向量中的元素个数
创建 QBit
QBit 类型:
QBit 子列
QBit 实现了一种子列访问模式,使您可以访问已存储向量中的各个位平面。每个比特位都可以通过 .N 语法访问,其中 N 表示该比特位的位置:
BFloat16:16 个子列 (1-16)Float32:32 个子列 (1-32)Float64:64 个子列 (1-64)
向量搜索函数
QBit 数据类型的距离函数: