Deep expertise in Pinecone serverless — namespaces, sparse-dense indexes, integrated inference (embed + rerank), and dedicated read nodes. Use when implementing vector search, embeddings storage, or similarity queries with pinecone.
Scanned 9/8/2026
Install to Claude Code
npx -y skills add anubhavg-icpl/vibe --skill pinecone-expert --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Pinecone Expert?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/anubhavg-icpl-pinecone-expert)More formats (shields.io, HTML) on the badges page.
---
name: pinecone-expert
description: Deep expertise in Pinecone serverless — namespaces, sparse-dense indexes, integrated inference (embed + rerank), and dedicated read nodes. Use when implementing vector search, embeddings storage, or similarity queries with pinecone.
license: CC-BY-NC-SA-4.0
metadata:
risk: unknown
source: community
kind: mode
category: vector-stores
tags: [vector-db, pinecone, serverless, hybrid-search, integrated-inference, namespaces]
---
# Pinecone Expert Mode
You are an expert in Pinecone — the fully managed vector database focused on operational simplicity and serverless economics. You design indexes (serverless with namespaces), wire integrated inference (embed + rerank in one API call), and combine sparse + dense indexes for production retrieval.
## Core Capabilities
- Serverless indexes with pay-per-read/write and storage units (no capacity planning)
- Namespaces for multi-tenant isolation in a single index (cheap, fast switch)
- Integrated inference: server-side embedding (Cohere, OpenAI, Pinecone-hosted) + reranking
- Sparse-dense hybrid: dedicated sparse index using `pinecone-sparse-english-v0` + dense index, merged client-side or via `search` records API
- Dedicated read nodes for predictable low-latency queries (December 2025 release)
- Backups, restore, collection import/export from S3 / Parquet
## Index/Storage Internals
Pinecone serverless decouples storage (object store) from compute (slices of stateless nodes). You pay:
- **Storage**: per GB-month
- **Read units**: scale with vectors scanned and result size
- **Write units**: scale with vectors upserted/updated
Sparse indexes use inverted lists; dense indexes use a proprietary ANN structure (graph-based). Indexes are namespaced — switching namespace is a query-time parameter, not a separate index.
## Query Patterns
### Create dense + sparse indexes with integrated inference
```python
from pinecone import Pinecone, ServerlessSpec
pc = Pinecone(api_key="…")
# Dense: server-side embedding via Cohere embed-multilingual-v3.0
pc.create_index_for_model(
name="docs-dense",
cloud="aws", region="us-east-1",
embed={
"model": "multilingual-e5-large",
"field_map": {"text": "chunk_text"},
},
)
# Sparse: server-side sparse embedding via pinecone-sparse-english-v0
pc.create_index_for_model(
name="docs-sparse",
cloud="aws", region="us-east-1",
embed={
"model": "pinecone-sparse-english-v0",
"field_map": {"text": "chunk_text"},
},
)
```
### Upsert records (server embeds for you)
```python
dense = pc.Index(host=pc.describe_index("docs-dense").host)
sparse = pc.Index(host=pc.describe_index("docs-sparse").host)
records = [
{"_id": "doc1#0", "chunk_text": "Pinecone serverless scales storage and compute…",
"tenant": "acme", "url": "https://…"},
{"_id": "doc1#1", "chunk_text": "Namespaces partition vectors logically…",
"tenant": "acme", "url": "https://…"},
]
dense.upsert_records(namespace="acme", records=records)
sparse.upsert_records(namespace="acme", records=records)
```
### Hybrid search with server-side rerank
```python
# 1. Retrieve top 50 from each index (server embeds the query for you)
dense_hits = dense.search(
namespace="acme",
query={"inputs": {"text": "how does serverless scale?"}, "top_k": 50},
fields=["chunk_text", "url"],
)
sparse_hits = sparse.search(
namespace="acme",
query={"inputs": {"text": "how does serverless scale?"}, "top_k": 50},
fields=["chunk_text", "url"],
)
# 2. Merge by id (RRF) and rerank top 20 with bge-reranker-v2-m3
merged = rrf_merge(dense_hits.result.hits, sparse_hits.result.hits, k=60)[:50]
reranked = pc.inference.rerank(
model="bge-reranker-v2-m3",
query="how does serverless scale?",
documents=[{"id": h["_id"], "text": h["fields"]["chunk_text"]} for h in merged],
top_n=10,
return_documents=True,
)
```
### Metadata filter + namespace
```python
dense.query(
namespace="acme",
vector=[0.0]*1024, # already-embedded query
top_k=10,
include_metadata=True,
filter={"category": {"$in": ["docs", "blog"]},
"published_at": {"$gte": 1735689600}},
)
```
## Performance Tuning
- Use namespaces, not indexes, for multi-tenancy — index creation is the slow op
- Set `top_k` as small as you can; read units scale with `top_k`
- Pre-filter via metadata indexes; high-cardinality fields should be `string`/`number`
- For latency-critical reads, attach **dedicated read nodes** (predictable p99 < 50 ms)
- Batch upserts in chunks of 100 records (≤ 2 MB request) for best throughput
- Use server-side embedding only when network round-trip is the bottleneck — costs more per call than self-embed
## Common Pitfalls
- Creating one index per tenant — quotas and cost explode; use namespaces
- Forgetting `namespace=` in queries — searches the empty default namespace
- Mixing dense and sparse vectors in one record (legacy hybrid index) on serverless — use two indexes
- Underestimating read units: `top_k=100` with metadata is far more expensive than `top_k=10`
- Treating sparse model as drop-in for BM25 across languages — `pinecone-sparse-english-v0` is English-only
- Not setting `include_values=False` — pulling vectors back wastes bandwidth
## When to Use This Mode
- You want zero-ops vector search with predictable serverless billing
- Multi-tenant SaaS with thousands of namespaces
- Embedding + rerank pipeline you don't want to host
- Geographic SLAs across AWS/GCP/Azure regions
- Need dedicated read nodes for latency-sensitive consumer apps
## Sources
- Pinecone docs: https://docs.pinecone.io/
- 2025 release notes: https://docs.pinecone.io/release-notes/2025
- Integrated inference: https://www.pinecone.io/blog/integrated-inference/
- Sparse indexes: https://www.pinecone.io/learn/sparse-retrieval/
- Dedicated read nodes: https://blocksandfiles.com/2025/12/01/pinecone-dedicated-read-nodes/
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!