Target branch: Pull requests should target the dev branch.
Description: Introducing Qdrant vectorstore
Changelog: Ensure a changelog entry following the format of Keep a Changelog is added at the bottom of the PR description.
Documentation: Have you updated relevant documentation Open WebUI Docs, or other documentation sources?
Dependencies: Are there any new dependencies? Have you updated the dependency versions in the documentation?
Testing: Have you written and run sufficient tests for the changes?
Code Review: Have you self-reviewed your code and addressed any coding standard issues?
Description
It introduces Qdrant as alternative to Chroma. Beforehand it abstract Chroma under VectorStore.
Changelog Entry
Added
Qdrant vector store
Fixed
[List any fixes, corrections, or bug fixes]
Changed
[List any changes, updates, refactorings, or optimizations]
Removed
[List any removed features, files, or deprecated functionalities]
Security
[List any new or updated security-related changes, including vulnerability fixes]
Breaking Changes
[List any breaking changes affecting compatibility or functionality]
Additional Information
[Insert any additional context, notes, or explanations for the changes]
[Reference any related issues, commits, or other relevant information]
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/open-webui/open-webui/pull/2269
**Author:** [@mkhludnev](https://github.com/mkhludnev)
**Created:** 5/14/2024
**Status:** ❌ Closed
**Base:** `dev` ← **Head:** `store_abstraction`
---
### 📝 Commits (2)
- [`1699950`](https://github.com/open-webui/open-webui/commit/169995036bada53158ff843912dabf0937af35b0) prototyping abstract vector store
- [`867e87c`](https://github.com/open-webui/open-webui/commit/867e87cdfd108184bc835ccf548c6430ffa29854) fix rebase and some weird things
### 📊 Changes
**9 files changed** (+355 additions, -38 deletions)
<details>
<summary>View changed files</summary>
📝 `backend/apps/rag/main.py` (+7 -10)
📝 `backend/apps/rag/utils.py` (+9 -8)
📝 `backend/config.py` (+2 -20)
📝 `backend/requirements.txt` (+1 -0)
➕ `backend/vectorstore/__init__.py` (+11 -0)
➕ `backend/vectorstore/factory.py` (+11 -0)
➕ `backend/vectorstore/qdrant_store.py` (+116 -0)
➕ `backend/vectorstore/test_vectorstore.py` (+71 -0)
➕ `backend/vectorstore/vector_store.py` (+127 -0)
</details>
### 📄 Description
## Pull Request Checklist
- [x] **Target branch:** Pull requests should target the `dev` branch.
- [ ] **Description:** Introducing Qdrant vectorstore
- [ ] **Changelog:** Ensure a changelog entry following the format of [Keep a Changelog](https://keepachangelog.com/) is added at the bottom of the PR description.
- [ ] **Documentation:** Have you updated relevant documentation [Open WebUI Docs](https://github.com/open-webui/docs), or other documentation sources?
- [ ] **Dependencies:** Are there any new dependencies? Have you updated the dependency versions in the documentation?
- [x] **Testing:** Have you written and run sufficient tests for the changes?
- [ ] **Code Review:** Have you self-reviewed your code and addressed any coding standard issues?
---
## Description
It introduces Qdrant as alternative to Chroma. Beforehand it abstract Chroma under VectorStore.
---
### Changelog Entry
### Added
- Qdrant vector store
### Fixed
- [List any fixes, corrections, or bug fixes]
### Changed
- [List any changes, updates, refactorings, or optimizations]
### Removed
- [List any removed features, files, or deprecated functionalities]
### Security
- [List any new or updated security-related changes, including vulnerability fixes]
### Breaking Changes
- [List any breaking changes affecting compatibility or functionality]
---
### Additional Information
- [Insert any additional context, notes, or explanations for the changes]
- [Reference any related issues, commits, or other relevant information]
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/2269
Author: @mkhludnev
Created: 5/14/2024
Status: ❌ Closed
Base:
dev← Head:store_abstraction📝 Commits (2)
1699950prototyping abstract vector store867e87cfix rebase and some weird things📊 Changes
9 files changed (+355 additions, -38 deletions)
View changed files
📝
backend/apps/rag/main.py(+7 -10)📝
backend/apps/rag/utils.py(+9 -8)📝
backend/config.py(+2 -20)📝
backend/requirements.txt(+1 -0)➕
backend/vectorstore/__init__.py(+11 -0)➕
backend/vectorstore/factory.py(+11 -0)➕
backend/vectorstore/qdrant_store.py(+116 -0)➕
backend/vectorstore/test_vectorstore.py(+71 -0)➕
backend/vectorstore/vector_store.py(+127 -0)📄 Description
Pull Request Checklist
devbranch.Description
It introduces Qdrant as alternative to Chroma. Beforehand it abstract Chroma under VectorStore.
Changelog Entry
Added
Fixed
Changed
Removed
Security
Breaking Changes
Additional Information
[Insert any additional context, notes, or explanations for the changes]
[Reference any related issues, commits, or other relevant information]
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.