Multi Vector Search in a single class

Hello Everyone,

Does Weaviate provide a multi-vector search for the single class?

I have a scenario where I have a class named Sites, it has the following properties:

Site title, Description, and keywords

now when a user queries similar sites currently i am providing the title vector of the site in the near_vector parameter but is there any other way I can also add the description and keywords vector?

Hi Faizan,

In Weaviate, currently each object has one vector attached to it.

So to do what you are describing, you could create different classes which are linked to each other. Alternatively, you could create multiple objects in each class, each vectorized differently.

Hello Jphwang,

Regarding that, I read the documentation for cross reference, & I think my solution will be to create a cross-reference between the classes.

In cross-reference is there any way we can do a parent childs relation?

Hi @Faizan_Muzaffar. I’m not sure what you mean specifically by “parent” and “child” relationship, but each cross reference is one-directional, so there’s a distinction between a reference “from” and a reference “to”.

Thanks @jphwang, Just another question when searched with the near vector FROM class, will it return the TO class?

Hi @jphwang,

I just want to ask if we can create the cross-reference using graphQL.

because I am currently using a PHP client(GitHub - timkley/weaviate-php: A PHP client to communicate with a Weaviate instance). and in this plugin, there is no endpoint to create the cross-reference.

so can we do this using graphQL and if yes, is there any example you can provide?

HI @Faizan_Muzaffar

I am not sure what the PHP client can and can’t do, but you can create cross-references with the REST endpoints directly in Weaviate.

Please take a look here:

I note that the GraphQL is used for queries.

Cheers,
JP

I hope this can help you. Create objects