Weaviate

The Weaviate component is a data component that allows users to build and search vector datasets. It can carry out the following tasks:

#Release Stage

Alpha

#Configuration

The component definition and tasks are defined in the definition.json and tasks.json files respectively.

#Setup

In order to communicate with Weaviate, the following connection details need to be provided. You may specify them directly in a pipeline recipe as key-value pairs within the component's setup block, or you can create a Connection from the Integration Settings page and reference the whole setup as setup: ${connection.<my-connection-id>}.

FieldField IDTypeNote
API Key (required)api-keystringFill in your Weaviate API key. Please refer to clusters in Weaviate Console.
Weaviate URL Endpoint (required)urlstringFill in your Weaviate base URL without https:// or http://. Please refer to clusters in Weaviate Console.

#Supported Tasks

Perform a vector search on a collection

InputIDTypeDescription
Task ID (required)taskstringTASK_VECTOR_SEARCH
Collection Name (required)collection-namestringThe name of the collection to perform vector search on.
Vectorvectorarray[number]An array of dimensions for the vector query, optional. If not provided, all objects will be returned.
LimitlimitintegerThe limit of objects, empty for all objects.
Fieldsfieldsarray[string]The fields to return in the objects. If empty then all fields will be returned.
FilterfilterobjectThe properties filter to be applied to the data with GraphQL queries, which starts with WHERE field, please refer to here.
TenanttenantstringThe tenant to perform the vector search on.
OutputIDTypeDescription
ResultresultobjectResult of the vector search operation.
StatusstatusstringUpsert status.
Output Objects in Vector Search

Result

FieldField IDTypeNote
IDsidsarrayThe ids returned from the vector search operation.
MetadatametadataarrayThe metadata returned from the vector search operation.
ObjectsobjectsarrayThe objects returned from the vector search operation.
VectorsvectorsarrayThe vectors returned from the vector search operation.

#Batch Insert

Insert multiple vector objects into a collection

InputIDTypeDescription
Task ID (required)taskstringTASK_BATCH_INSERT
Collection Name (required)collection-namestringThe name of the collection to upsert the object into.
Array IDarray-idarray[string]The array of id.
Array Metadata (required)array-metadataarray[object]The array of vector metadata properties.
Array Vector (required)array-vectorarray[array]The array of vector values.
OutputIDTypeDescription
StatusstatusstringBatch insert status.

#Insert

Insert a vector object into a collection

InputIDTypeDescription
Task ID (required)taskstringTASK_INSERT
Collection Name (required)collection-namestringThe name of the collection to upsert the object into.
IDidstringThe ID of the object.
Vector (required)vectorarray[number]An array of dimensions for the vector value.
Metadata (required)metadataobjectThe vector metadata properties.
OutputIDTypeDescription
StatusstatusstringUpsert status.

#Update

Update vector object in a collection

InputIDTypeDescription
Task ID (required)taskstringTASK_UPDATE
Collection Name (required)collection-namestringThe name of the collection to update the object in.
ID (required)idstringThe ID of the object.
Update Vectorupdate-vectorarray[number]The updated vector value, optional.
Update Metadataupdate-metadataobjectThe updated vector metadata properties, optional.
OutputIDTypeDescription
StatusstatusstringUpdate status.

#Delete

Delete vector objects from a collection

InputIDTypeDescription
Task ID (required)taskstringTASK_DELETE
Collection Name (required)collection-namestringThe name of the collection to delete the object from.
IDidstringThe ID of the object.
FilterfilterobjectThe properties filter to be applied to the data with GraphQL queries, which starts with WHERE field, please refer to here.
OutputIDTypeDescription
StatusstatusstringDelete status.

#Delete Collection

Delete a collection

InputIDTypeDescription
Task ID (required)taskstringTASK_DELETE_COLLECTION
Collection Name (required)collection-namestringThe name of the collection to delete.
OutputIDTypeDescription
StatusstatusstringDelete collection status.