Custom Embeddings
Overview
Autotag, Similarity Search, and Natural Language Search* in Nucleus are all powered through the use of embeddings. Though Nucleus normally generates these embeddings internally as you upload items and objects, it is also possible to supply your own custom embeddings to Nucleus. This allows the features mentioned above to be more fine tuned for your dataset's particular use case.
Indexing Status
A set of embeddings on a dataset is abstracted as an index. Each index will only have at most one embedding per item. All datasets automatically have an internal index with Nucleus generated embeddings for images.
Switching Indexes
By default, the features listed above are powered by internal, Nucleus generated embeddings. You can use this endpoint to switch between using internal or custom embeddings.
Custom Image Embeddings
To upload your own custom image embeddings, use the custom image embedding API endpoint. You can call this endpoint multiple times to write embeddings for new images that have been added to your dataset.
However, modifying existing embeddings is currently not supported. If you wish to replace existing embeddings, you must first delete all your custom image embeddings via this endpoint.
Custom Object Embeddings
Custom object embeddings may be uploaded for existing or new ground truth and model prediction annotations. To do so, simply set the embedding_vector
parameter when constructing your ground truth and model prediction classes in the Python client. You can then upload your annotations normally. If the annotations already exist, make sure to set update = True
when uploading through the client.
However, modifying existing embeddings is currently not supported. If you wish to replace existing embeddings, you must first delete all your custom object embeddings via this endpoint.
*Natural Language Search does not support the use of custom embeddings.
Updated over 2 years ago