Pinecone Python SDK

8.1.0 · active · verified Sat Feb 28

Official Python SDK for the Pinecone managed vector database service. Supports serverless and pod-based indexes, vector upsert/query/delete, metadata filtering, namespaces, and integrated inference (embedding + reranking). REST client by default; optional gRPC transport for performance. Async support via PineconeAsyncio. Package was renamed from pinecone-client to pinecone in v5.1.0.

Warnings

Install

Imports

Quickstart

v3+ uses object-oriented client. ServerlessSpec replaces the old environment string. Pod indexes use PodSpec instead.

from pinecone import Pinecone, ServerlessSpec

pc = Pinecone(api_key='YOUR_API_KEY')  # or set PINECONE_API_KEY env var

# Create serverless index
if not pc.has_index('my-index'):
    pc.create_index(
        name='my-index',
        dimension=1536,
        metric='cosine',
        spec=ServerlessSpec(cloud='aws', region='us-east-1'),
    )

index = pc.Index('my-index')

# Upsert vectors
index.upsert(vectors=[
    {'id': 'v1', 'values': [0.1] * 1536, 'metadata': {'source': 'doc1'}},
])

# Query
results = index.query(vector=[0.1] * 1536, top_k=5, include_metadata=True)
print(results)

view raw JSON →