I have searched the existing issues and discussions.
Problem Description
I use the Milvus vector database on the backend to store RAG vector data.
When I upload files to the knowledge base, I can see a Collection corresponding to a knowledge base ID in Milvus (named open_webui_<knowledge_id>), as well as a separate Collection for the file (named open_webui_file_<file_id>).
Why is the vector data stored twice for a single file—once in open_webui_<knowledge_id> and once in open_webui_file_<file_id>?
My understanding is that when chatting based on the knowledge base, the vectors are queried from the knowledge base's corresponding Collection, while when chatting based on a single file, the vectors are queried from the file's corresponding Collection. Are there any other purposes behind this design?
Desired Solution you'd like
aaa
Alternatives Considered
No response
Additional Context
No response
Originally created by @qiaozhi199 on GitHub (Apr 28, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/13270
### Check Existing Issues
- [x] I have searched the existing issues and discussions.
### Problem Description
I use the Milvus vector database on the backend to store RAG vector data.
When I upload files to the knowledge base, I can see a Collection corresponding to a knowledge base ID in Milvus (named open_webui_<knowledge_id>), as well as a separate Collection for the file (named open_webui_file_<file_id>).
Why is the vector data stored twice for a single file—once in open_webui_<knowledge_id> and once in open_webui_file_<file_id>?
My understanding is that when chatting based on the knowledge base, the vectors are queried from the knowledge base's corresponding Collection, while when chatting based on a single file, the vectors are queried from the file's corresponding Collection. Are there any other purposes behind this design?
### Desired Solution you'd like
aaa
### Alternatives Considered
_No response_
### Additional Context
_No response_
You can reference both the collection and the file individually from the chat.
PLEASE check for existing discussions and issues before creating a new one.
<!-- gh-comment-id:2835118020 -->
@tjbck commented on GitHub (Apr 28, 2025):
You can reference both the collection and the file individually from the chat.
PLEASE check for existing discussions and issues before creating a new one.
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.
Originally created by @qiaozhi199 on GitHub (Apr 28, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/13270
Check Existing Issues
Problem Description
I use the Milvus vector database on the backend to store RAG vector data.
When I upload files to the knowledge base, I can see a Collection corresponding to a knowledge base ID in Milvus (named open_webui_<knowledge_id>), as well as a separate Collection for the file (named open_webui_file_<file_id>).
Why is the vector data stored twice for a single file—once in open_webui_<knowledge_id> and once in open_webui_file_<file_id>?
My understanding is that when chatting based on the knowledge base, the vectors are queried from the knowledge base's corresponding Collection, while when chatting based on a single file, the vectors are queried from the file's corresponding Collection. Are there any other purposes behind this design?
Desired Solution you'd like
aaa
Alternatives Considered
No response
Additional Context
No response
@tjbck commented on GitHub (Apr 28, 2025):
You can reference both the collection and the file individually from the chat.
PLEASE check for existing discussions and issues before creating a new one.