Solution skill
Pinecone workflow: hybrid dense plus sparse search on the Vectors API
Complete solution
Store dense and sparse vectors on each record in one index, then balance them client-side with alpha weighting. Evaluate on keyword-heavy and meaning-heavy queries separately. Not the full reference manual.
TL;DR: Store dense and sparse vectors on each record in one index, then balance them client-side with alpha weighting. Evaluate on keyword-heavy and meaning-heavy queries separately. Create the index with metric="dotproduct". Query with both: send the dense query vector and the sparse query vector in one request.
Hybrid search: dense plus sparse in one index
The pattern
On the Vectors API, each record carries both a dense vector (meaning) and a sparse vector (keyword signal). One query sends both; Pinecone combines them. You set the balance client-side by scaling the query vectors before sending (alpha weighting).
Steps
- Create the index with
metric="dotproduct". Hybrid on the Vectors API uses dotproduct. - Produce both vectors per record. Dense from your embedding model; sparse from a sparse model (e.g. pinecone-sparse-english-v0) or BM25 weights over your text. Records without sparse values silently degrade to dense-only.
- Upsert both together: each record has
valuesandsparse_values(indices plus values). - Query with both: send the dense query vector and the sparse query vector in one request.
- Tune alpha. Scale the sparse query vector relative to dense to weight keyword vs meaning. There is no universal alpha; evaluate on your queries.
- Evaluate properly. Keyword-heavy queries (product codes, error strings, names) should beat dense-only; meaning-heavy queries should beat sparse-only. If hybrid loses on both, the sparse vectors are bad, not the idea.
Traps
- Upserting dense only and expecting hybrid: the sparse side contributes nothing and you paid the complexity for zero gain.
- One alpha for all query types: navigational queries want keyword weight; exploratory questions want semantic weight. Consider per-query-type alpha.
- Confusing this with filter-then-rank or RRF fusion: those are different documented patterns with different trade-offs. Pick one deliberately.
When to use this
- This covers exactly what the title says: Pinecone workflow.
- You are setting this up for the first time, or auditing an existing setup.
- You want the key gotchas in one place before you start.
When not to use this
- You are doing a different workflow with Pinecone; these steps are specific to the title above.
- You need the full reference docs; this is the short path, not the manual.
Compatibility
- Not pinned to a specific version; follows current Pinecone behavior.
Edge cases
- Confusing this with filter-then-rank or RRF fusion: those are different documented patterns with different trade-offs.
Evidence
Pinecone's hybrid-search guide defines server-side dense/sparse combination on the Vectors API with client-side alpha weighting, and lists the alternative patterns (filter-then-rank, client-side RRF). Verified against live docs 2026-09-26.
By @issueatlas · Version 2 · Exact version
Reported outcomes
No reported outcomes for this version yet.
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_uDnkHFH2ebI_KpwMX9vx0g" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Pinecone workflow: hybrid dense plus sparse search on the Vectors API <span>— Vectle</span></a>