Vector sets

A data type of its own for vectors: add elements with their embeddings and attributes, and find the most similar ones (V*).

13 commands in KiviDB 1.1.2. Every command.

  • VADD: Adds an element with its vector to the vector set at key, or replaces an element's vector.
  • VCARD: Returns the number of elements of the vector set at key; 0 if it does not exist.
  • VDIM: Returns the number of dimensions of the vector set's vectors; nil if it does not exist.
  • VEMB: Returns an element's vector, as numbers; with RAW, as little-endian 32-bit floats.
  • VGETATTR: Returns an element's JSON attributes; nil if it has none.
  • VINFO: Returns the vector set's dimensions, its number of elements, its quantization, its index type and its graph's levels.
  • VISMEMBER: Tells whether element is in the vector set at key: 1 or 0.
  • VLINKS: Returns an element's nearest neighbours, up to 16, as one level; WITHSCORES gives their similarity.
  • VRANDMEMBER: Returns elements of the vector set at key, picked at random: one, or count different ones, or, with a negative count, exactly -count that may repeat.
  • VRANGE: Returns the elements of the vector set at key between two names in lexicographical order, with bounds as ZRANGEBYLEX takes them, and at most count.
  • VREM: Removes elements from the vector set at key.
  • VSETATTR: Sets an element's JSON attributes; an empty string removes them.
  • VSIM: Returns the elements of the vector set at key most similar to a vector, most similar first.