Source code for docarray.array.annlite

from docarray.array.document import DocumentArray
from docarray.array.storage.annlite import StorageMixins, AnnliteConfig

__all__ = ['AnnliteConfig', 'DocumentArrayAnnlite']


[docs]class DocumentArrayAnnlite(StorageMixins, DocumentArray): """ DocumentArray that stores Documents in `ANNLite <https://github.com/jina-ai/annlite>`_. .. note:: This DocumentArray requires `annlite`. You can install it via `pip install "docarray[annlite]"`. With this implementation, :meth:`match` and :meth:`find` perform fast (approximate) vector search. Additionally, search with filters on a :class:`~docarray.document.Document` s :attr:`~docarray.document.Document.tags` attribute is supported. Example usage: .. code-block:: python from docarray import Document, DocumentArray import numpy as np da = DocumentArray(storage='annlite', config={'data_path': './data', 'n_dim': 10}) n_dim = 3 da = DocumentArray( storage='annlite', config={ 'n_dim': n_dim, 'columns': [('price', 'float')], }, ) with da: da.extend([Document(id=f'r{i}', tags={'price': i}) for i in range(10)]) max_price = 3 n_limit = 4 filter = {'price': {'$lte': max_price}} results = da.find(filter=filter) .. seealso:: For further details, see our :ref:`user guide <annlite>`. """ def __new__(cls, *args, **kwargs): return super().__new__(cls)