Haystack currently has no DocumentStore integration for Upstash Vector, a serverless HTTP-based vector database. Users building RAG systems who want a vector store with zero infrastructure to provision (no Docker container, no server, no cluster) currently have to choose between self-hosted options like Chroma/Qdrant or other managed options. Upstash fills a specific niche - pay-as-you-go serverless with a generous free tier - that LangChain already supports but Haystack doesn't.
Add an upstash-haystack integration under integrations/upstash/, including:
UpstashDocumentStore - implements the full DocumentStore protocol (write_documents, filter_documents, delete_documents, count_documents, to_dict/from_dict), with credentials handled via Haystack's Secret type
UpstashEmbeddingRetriever - standard dense vector retrieval
UpstashHybridRetriever - dense + sparse retrieval combined via Upstash's native Reciprocal Rank Fusion, a differentiator versus stores that require hand-rolled hybrid fusion
Built on the official upstash-vector Python SDK.
Existing Document Stores (Chroma, Qdrant, pgvector) cover self-hosted/Docker use cases well already, so this targets a different need: zero-ops serverless, closer to how Pinecone is managed cloud but without Upstash's HTTP-only, container-free model.
I've built and tested a working implementation, including:
- Full unit test coverage (mocked) for all protocol methods, duplicate-policy branches, and both retrievers
- A
DocumentStoreBaseTests-compliant integration test suite (haystack.testing.document_store), run against a live free-tier Upstash index, so this isn't just passing my own assumptions about correctness — it passes Haystack's own ecosystem-wide compliance contract
- CI workflow following the existing scaffold conventions
I'm opening the PR alongside this issue since the implementation is already complete and tested. Happy to take on ongoing maintenance/triage for this integration going forward.
Haystack currently has no DocumentStore integration for Upstash Vector, a serverless HTTP-based vector database. Users building RAG systems who want a vector store with zero infrastructure to provision (no Docker container, no server, no cluster) currently have to choose between self-hosted options like Chroma/Qdrant or other managed options. Upstash fills a specific niche - pay-as-you-go serverless with a generous free tier - that LangChain already supports but Haystack doesn't.
Add an
upstash-haystackintegration underintegrations/upstash/, including:UpstashDocumentStore- implements the full DocumentStore protocol (write_documents,filter_documents,delete_documents,count_documents,to_dict/from_dict), with credentials handled via Haystack'sSecrettypeUpstashEmbeddingRetriever- standard dense vector retrievalUpstashHybridRetriever- dense + sparse retrieval combined via Upstash's native Reciprocal Rank Fusion, a differentiator versus stores that require hand-rolled hybrid fusionBuilt on the official
upstash-vectorPython SDK.Existing Document Stores (Chroma, Qdrant, pgvector) cover self-hosted/Docker use cases well already, so this targets a different need: zero-ops serverless, closer to how Pinecone is managed cloud but without Upstash's HTTP-only, container-free model.
I've built and tested a working implementation, including:
DocumentStoreBaseTests-compliant integration test suite (haystack.testing.document_store), run against a live free-tier Upstash index, so this isn't just passing my own assumptions about correctness — it passes Haystack's own ecosystem-wide compliance contractI'm opening the PR alongside this issue since the implementation is already complete and tested. Happy to take on ongoing maintenance/triage for this integration going forward.