Quickstart¶
Get from install to your first similarity search in five minutes.
1. Initialize the client¶
from pinecone import Pinecone, ServerlessSpec
# Option A: read API key from the PINECONE_API_KEY environment variable
pc = Pinecone()
# Option B: pass it explicitly
pc = Pinecone(api_key="your-api-key")
2. Create a serverless index¶
pc.indexes.create(
name="quickstart",
dimension=3,
metric="cosine",
spec=ServerlessSpec(cloud="aws", region="us-east-1"),
)
3. Wait for the index to be ready¶
create polls until the index is ready by default. If you passed timeout=-1 to
return immediately, check readiness yourself:
import time
while True:
desc = pc.indexes.describe("quickstart")
if desc.status.ready:
break
time.sleep(1)
4. Get an Index client¶
index = pc.index("quickstart")
5. Upsert vectors¶
index.upsert(vectors=[
("id1", [0.1, 0.2, 0.3]),
("id2", [0.4, 0.5, 0.6]),
("id3", [0.7, 0.8, 0.9]),
])
6. Query¶
results = index.query(vector=[0.1, 0.2, 0.3], top_k=3)
for match in results.matches:
print(match.id, match.score)
7. Clean up¶
pc.indexes.delete("quickstart")
Complete example¶
from pinecone import Pinecone, ServerlessSpec
pc = Pinecone() # reads PINECONE_API_KEY
pc.indexes.create(
name="quickstart",
dimension=3,
metric="cosine",
spec=ServerlessSpec(cloud="aws", region="us-east-1"),
)
index = pc.index("quickstart")
index.upsert(vectors=[
("id1", [0.1, 0.2, 0.3]),
("id2", [0.4, 0.5, 0.6]),
("id3", [0.7, 0.8, 0.9]),
])
results = index.query(vector=[0.1, 0.2, 0.3], top_k=3)
for match in results.matches:
print(match.id, match.score)
pc.indexes.delete("quickstart")