# Pinecone SDK review

> Pinecone SDK is the official Python client for the Pinecone vector database, used to manage indexes, upsert and query records, and run inference.

Devtoolwatch Board, the week of Oct 25–31, 2026. Canonical page: https://index.devtoolwatch.com/tools/pinecone/

## TL;DR

Pinecone SDK is the official Python client for the Pinecone vector database. It is for Python developers building vector search or RAG applications on Pinecone. Version 10 uses schema-based document indexes, and version 10.1.0 lets Pinecone embed text fields for you.

## Pinecone SDK at a glance

- **Category:** [RAG, data and memory](https://index.devtoolwatch.com/categories/rag-data-and-memory/)
- **Maintained by:** Pinecone (organization, [@pinecone-io](https://github.com/pinecone-io) on GitHub)
- **License:** Apache 2.0
- **Language:** Python, Rust, Shell
- **Repository:** [github.com/pinecone-io/python-sdk](https://github.com/pinecone-io/python-sdk)
- **Website:** [pinecone-io.github.io/python-sdk](https://pinecone-io.github.io/python-sdk/)
- **npm package:** [@pinecone-database/pinecone](https://www.npmjs.com/package/@pinecone-database/pinecone) 9.1.0
- **PyPI package:** [pinecone](https://pypi.org/project/pinecone/) 10.1.0
- **Latest release:** [v10.1.0](https://github.com/pinecone-io/python-sdk/releases/tag/v10.1.0) on GitHub, Oct 20, 2026
- **First published:** Sep 16, 2021

## What Pinecone SDK does

- Pinecone SDK creates and manages indexes, upserts and queries records, and runs inference operations from Python.
- Pinecone SDK declares index fields as a schema, making a document index where each record is a JSON document with fields you name.
- Pinecone SDK searches documents by comparing a query vector against a named field, returning matches with IDs and scores.
- Pinecone SDK can have Pinecone embed text when a string field is marked embed=True or sparse_embed=True.
- Pinecone SDK provides an async client, AsyncPinecone, for use with asyncio.
- Pinecone SDK retries throttled requests with decorrelated jitter and automatic per-host concurrency back-off, and raises RateLimitError for throttling.

### How it works

Pinecone SDK is a Python library you install with pip. You create a Pinecone client with an API key, then create an index with a schema and a managed deployment such as AWS us-east-1. You get a data-plane handle with pc.index() and read and write through index.documents. Version 10 targets the Pinecone 2026-07 API.

## How to install Pinecone SDK

**With pip**

```
pip install pinecone
```

### Requirements

- Python 3.10 or later; version 10.0.0 runs on Python 3.10 through 3.14.
- A Pinecone API key, passed directly or set in PINECONE_API_KEY.

### First steps

1. Create a client with Pinecone(api_key="your-api-key") or set the PINECONE_API_KEY environment variable.
2. Create an index with pc.indexes.create, passing a name, a schema of fields, and a deployment.
3. Get a handle with pc.index("movie-recommendations") and upsert documents, each with an _id, through index.documents.upsert.
4. Query with index.documents.search, using score_by with a DenseVectorQuery on your vector field.

## Who Pinecone SDK is for

- Python developers building RAG or vector search applications on the Pinecone vector database.
- Asyncio-based Python services that need an async vector database client.
- Bulk upsert workloads that need throttling-aware retries and concurrency back-off.

### Limitations

- Upserts apply asynchronously, so a document may not appear in the next search immediately.
- Version 10 has breaking changes: create and configure moved from spec=/dimension= to schema=/deployment=.
- Older indexes use different interfaces: index.upsert/index.query or the legacy Records API, depending on how the index was created.

## Usage data (the week of Oct 25–31, 2026)

- Board rank: #288 overall, #29 in RAG, data and memory, momentum score 33
- Downloads that week: 2.1M (+6% vs 4-week average)
- New GitHub stars per week (last 12 weeks): Aug 9: 0; Aug 16: 0; Aug 23: 0; Aug 30: 0; Sep 6: 1; Sep 13: 1; Sep 20: 2; Sep 27: 1; Oct 4: 0; Oct 11: 0; Oct 18: 1; Oct 25: 2

## Pinecone SDK alternatives

| Rank | Tool | Stars | Downloads/wk |
|---|---|---|---|
| #1 | [XERJ](https://index.devtoolwatch.com/tools/xerj-org-xerj/) | 17.9k | – |
| #2 | [Memvid](https://index.devtoolwatch.com/tools/memvid-memvid/) | 17.3k | – |
| #3 | [LEANN](https://index.devtoolwatch.com/tools/startrail-org-leann/) | 13.7k | – |
| #4 | [Graphify](https://index.devtoolwatch.com/tools/graphify-labs-graphify/) | 140k | 480.7k |
| #5 | [MarkItDown](https://index.devtoolwatch.com/tools/markitdown/) | 193.2k | 4.7M |
| #6 | [Firecrawl](https://index.devtoolwatch.com/tools/firecrawl/) | 197.4k | 2.9M |

## Pinecone SDK FAQ

### Is Pinecone SDK free and open source?

Yes. Pinecone SDK's source code is on GitHub (pinecone-io/python-sdk) under the Apache 2.0 license, so you can use it for free.

### How do I install Pinecone SDK?

Run `pip install pinecone`. It needs Node.js >=22.0.0. The install section above has the other options from the project's README.

### Is Pinecone SDK still maintained?

Yes. The pinecone-io/python-sdk repository was last updated on Oct 20, 2026, and the latest release, v10.1.0 on GitHub, came out on Oct 20, 2026.

### How popular is Pinecone SDK?

Pinecone SDK has 456 GitHub stars as of Nov 1, 2026. It gained 2 new stars in the week of Oct 25–31, 2026, against a 12-week average of 1 a week. Its main package had about 2.1M downloads that week, +6% against its own 4-week average. That made it #29 among RAG, data and memory tools on the Devtoolwatch Board.

### What are the best alternatives to Pinecone SDK?

Other RAG, data and memory tools on the Devtoolwatch Board in the week of Oct 25–31, 2026, by momentum: XERJ (#1), Memvid (#2), LEANN (#3), Graphify (#4), MarkItDown (#5). The alternatives table above has their numbers.

### What changed in Pinecone SDK version 10?

Pinecone SDK 10.0.0 targets the Pinecone 2026-07 API and moves the schema-based document interface and SchemaBuilder out of pinecone.preview onto the main client. Index creation now uses schema= and deployment= instead of spec= and dimension=. A migration guide covers the full mapping.

### Can Pinecone SDK embed text for me?

Yes. Since version 10.1.0, Pinecone SDK lets you mark a string field in a document index with embed=True or sparse_embed=True so Pinecone embeds the text.

### Does Pinecone SDK support async code?

Yes. Pinecone SDK includes AsyncPinecone for asyncio. Its index() method is a coroutine, and the returned handle is an async context manager.

### How does Pinecone SDK handle rate limiting?

Since version 9.1.0, Pinecone SDK uses decorrelated jitter on every transport. It also shrinks in-flight bulk requests per host during 429 throttling and recovers as pressure eases. A RateLimitError lets you catch throttling separately.

### How do I set the API key and other options in Pinecone SDK?

Pinecone SDK takes the key through api_key or the PINECONE_API_KEY environment variable. You can also set a custom control plane host and a request timeout in seconds. Set PINECONE_DEBUG=1 to turn on debug logging.

## Sources

1. [pinecone-io/python-sdk on GitHub](https://github.com/pinecone-io/python-sdk)
2. [Pinecone SDK README](https://github.com/pinecone-io/python-sdk/blob/main/README.md)
3. [@pinecone-database/pinecone on npm](https://www.npmjs.com/package/@pinecone-database/pinecone)
4. [pinecone on PyPI](https://pypi.org/project/pinecone/)
5. [Pinecone SDK website](https://pinecone-io.github.io/python-sdk/)
6. [Release v10.1.0 (Oct 20, 2026)](https://github.com/pinecone-io/python-sdk/releases/tag/v10.1.0)
7. [Release v10.0.0 (Sep 3, 2026)](https://github.com/pinecone-io/python-sdk/releases/tag/v10.0.0)
8. [Release v9.1.0 (Jun 4, 2026)](https://github.com/pinecone-io/python-sdk/releases/tag/v9.1.0)
9. [Devtoolwatch Board, the week of Oct 25–31, 2026](https://index.devtoolwatch.com/)
