chore: Add new session-level service for getting embeddings of a specific collection MCP-246 #626
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
Proposed changes
This PR adds a new session level service called VectorSearchEmbeddings, that is responsible of:
Given that the embedding combinations and detection can be inaccurate, we also provide a new configuration option called "disableEmbeddingsValidation" that can be set up by CLI/Env and when true, the validation is bypassed.
This PR also introduces the embedding validation in the insertMany tool, so users can not randomly add data that can break
existing models or indexes unknowingly.
We depend on #628 to be merged, as it implements a method to detect if Atlas Search is available. Whenever the PR is merged, I'll refactor the method introduced there and use VectorSearchEmbeddings, so we have only one single place for search detection.
Checklist