A chromadb embeddings plugin for OVOS
Project description
ChromaEmbeddingsDB Plugin
Overview
The ChromaEmbeddingsDB plugin integrates with the ChromaDB database to provide a robust solution for managing and querying embeddings. This plugin extends the abstract EmbeddingsDB class, allowing you to store, retrieve, and query embeddings efficiently using ChromaDB’s capabilities.
This plugin is meant to be used by other specialized plugins such as:
- https://github.com/TigreGotico/ovos-face-embeddings-plugin
- https://github.com/TigreGotico/ovos-voice-embeddings-plugin
- https://github.com/TigreGotico/ovos-gguf-embeddings-plugin
Features
- Add Embeddings: Store embeddings with associated keys.
- Retrieve Embeddings: Fetch embeddings by their keys.
- Delete Embeddings: Remove embeddings by their keys.
- Query Embeddings: Find the closest embeddings to a given query, with support for cosine distance.
Example
Here is a full example demonstrating the basic usage of ChromaEmbeddingsDB.
import numpy as np
from chroma_embeddings_db import ChromaEmbeddingsDB
# Initialize the database
db = ChromaEmbeddingsDB(path="path_to_chromadb_storage")
# Add embeddings
embedding1 = np.array([0.1, 0.2, 0.3])
embedding2 = np.array([0.4, 0.5, 0.6])
db.add_embeddings("user1", embedding1)
db.add_embeddings("user2", embedding2)
# Retrieve and print embeddings
print(db.get_embedding("user1"))
print(db.get_embedding("user2"))
# Query embeddings
query_embedding = np.array([0.2, 0.3, 0.4])
results = db.query(query_embedding, top_k=2)
print(results)
# Delete an embedding
db.delete_embedding("user1")
Ensure that the path provided to the
ChromaEmbeddingsDBconstructor is accessible and writable.
Acknowledgements
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ovos-chromadb-embeddings-plugin-0.0.0.tar.gz.
File metadata
- Download URL: ovos-chromadb-embeddings-plugin-0.0.0.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1fbc58a17071e9d62751751189b3310932ccf3c271fc1773ccf098aeba837cb9
|
|
| MD5 |
2a0b97c7d855ffce226aa5ea27490a36
|
|
| BLAKE2b-256 |
451e0fdaa673c39a5c8835ba4b74bf1a7dae53b7ccae9bff3bcff4584256aff4
|
File details
Details for the file ovos_chromadb_embeddings_plugin-0.0.0-py3-none-any.whl.
File metadata
- Download URL: ovos_chromadb_embeddings_plugin-0.0.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
210ed1ec21674db02de954390ad0fe6c1512e88abfd6fbb9e248e3cb92ca32b4
|
|
| MD5 |
88daaec54320b1a139e957fd56a219b1
|
|
| BLAKE2b-256 |
3a5bc2836b0962f174ed98a757c54844a3d81b69e8f7993b5dba2ea670af1f1f
|