Encrypted Index
Upsert
Adds or updates vector embeddings in the index. Accepts a list of dictionaries, where each dictionary represents a vector with its ID.
Parameters
Parameter | Type | Description |
---|---|---|
items | List[Dict[str, Any]] | A list of dictionaries, where each dictionary has the format {"id": str, "vector": List[float], "contents": Union[bytes, str], "metadata": Dict[str, str]} . |
Where each item
dictionary has the following fields:
Parameter | Type | Description |
---|---|---|
id | str | Unique string identifier for the item. |
vector | List[float] | Embedding vector as a list of floats (optional if index is configured to compute embeddings). |
contents | bytes , str or Image | Item contents (optional). Must be a str or Image if index is configured to compute embeddings. |
metadata | Dict[str, any] | Dictionary of key-value metadata pairs associated with the vector (optional). |
If embedding auto-generation is enabled (by setting the
embedding_model
parameter in create_index()
), then the vector
parameter is optional.
If vector
provided, then it will be used (its dimensionality must match that of the embedding_model
).
If vector
is not provided, a vector embedding will be auto-generated from contents
using sentence-transformers
. contents
must be text in this case.For more info on metadata, see Metadata Filtering.
Exceptions
Example Usage
You can pass the
id
and vector
fields as tuples, if you wish to skip the dictionary. On big datasets, this can make a signficant difference in memory usage.Upsert Secondary Overload: NumPy Array Format
This format is optimal for large batches due to its memory efficiency and compatibility with batch processing optimizations.
It is primarily intended for benchmarking purposes (hence the use of
int
for IDs).Accepts two NumPy arrays:
- A 2D array of floats for the vector embeddings.
- A 1D array of integers for the unique IDs.
This structure is suited for efficient handling of large batches, with type safety for IDs and embeddings.
Parameters
Parameter | Type | Description |
---|---|---|
ids | np.ndarray | 1D NumPy array of shape (num_items,) with dtype=int , containing unique integer identifiers for each vector. Length must match vectors . |
vectors | np.ndarray | 2D NumPy array of shape (num_items, vector_dim) with dtype=float , representing vector embeddings. |
Exceptions
Example Usage
Was this page helpful?