qdrant-client
qdrant-client copied to clipboard
Don't write .lock file when loading from an existing collection
I have stored a qdrant
collection locally on my computer to access it for testing purposes. I am building a chatbot app in gradio and it requires to load the app.py
many times to develop it in iterations.
However, every time I load the collection a .lock
file is automatically created which I have to manually delete each time when loading app again for my application. Otherwise I run into following error:
RuntimeError: Storage folder qdrant/ is already accessed by another instance of Qdrant client. If you require concurrent access, use Qdrant server instead.
The code to load the collection is as follows:
vectors = QdrantVectorStore.from_existing_collection(
path="qdrant/",
collection_name="uganda-documents",
embedding = HuggingFaceEmbeddings(
model_kwargs = {'device': device},
encode_kwargs = {'normalize_embeddings': bool(int(config.get('retriever','NORMALIZE')))},
model_name=config.get('retriever','MODEL')
)
)
I would like to either automatically delete the .lock
file or to not create it at all in the first place. Is this possible within Qdrant or do I have to build a manual work around?
I know I could simply add something like a os.remove("qdrant/.lock")
but it seems not very intuitive.