HCL Informix VectorBlade
Imagine a complex object like a digital image, a sound file, or a short paragraph of text containing medical jargon. How can software quickly compare two images for similarity, or determine whether a question posed in plain English, more nuanced than a simple collection of keywords, was best answered by this paragraph or that paragraph? This is the engineering problem that has thus far been addressed by vectors.
A vector in this context is an array of floating-point numbers called dimensions. Vectors describe complex data. The process of generating a vector from an image or a chunk of text is called embedding. Once you have a method of succinctly describing an image, for example, in terms of various attributes, you can compare these descriptions and do some very
useful database operations such as indexing and searching. To successfully compare two vectors, they must have the same number of dimensions. They must also be generated by the same embedding model.
With the HCL Informix VectorBlade, you can now store vectors, index them, compare them for similarity (calculate the distance between the two vectors), and perform hybrid searches involving them. You can even generate the embeddings you are storing, but this is not required.
Vectors are stored in your HCL Informix Dynamic Server using a new opaque data type: lvector_embedding. In order to index and perform searches on these vectors they must be copied, using one of several UDRs provided with the blade, to special file system files outside of Informix chunks. The location of these external files is configurable.