-
Notifications
You must be signed in to change notification settings - Fork 361
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
Add Pinecone as Vector Store Backend
Problem
Cipher's current architecture for vector storage is limited to Qdrant and Milvus. This constraint prevents users who rely on Pinecone for their cloud-based vector search and management needs from integrating their existing infrastructure with Cipher.
Solution
Add Pinecone as a supported vector store backend following the existing architecture patterns.
Implement
User Experience
Users will be able to configure Cipher to connect to Pinecone using the following environment variables:
VECTOR_STORE_TYPE=pineconePINECONE_API_KEY=<your-pinecone-api-key>PINECONE_ENVIRONMENT=<your-pinecone-environment>PINECONE_INDEX=knowledge-memoryPINECONE_NAMESPACE=default(optional)VECTOR_STORE_DIMENSION=1536
Technical Changes
- Add dependency: Include
@pinecone-database/pineconeinpackage.json. - Create backend: Develop
src/core/vector_storage/backend/pinecone.ts. - Update factory: Extend the
getVectorStoreConfigFromEnv()function infactory.tsto support Pinecone's configuration. - Update types: Integrate Pinecone into the existing vector store type system.
- Update docs: Add setup instructions to
/docs/vector-stores.md.
Requirements
- Implement the
VectorStoreinterface frombackend/types.ts. - Fully support Pinecone features such as namespaces and metadata filtering.
- Handle authentication via the API key (
PINECONE_API_KEY). - Include proper error handling, connection management, and rate limiting.
- Add comprehensive test coverage (unit + integration).
- Support workspace memory and multi-collection features by leveraging Pinecone's namespaces.
Acceptance Criteria
- Pinecone client dependency added.
- Pinecone backend fully implemented.
- Environment variable configuration supported.
- Factory method updated to recognize Pinecone.
- Test coverage (unit and integration) achieved.
- Documentation updates
- Pinecone namespaces are supported.
- Workspace memory collection supported.
Priority
- Priority: Medium
- Impact: Medium
- Effort: Medium
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request