Change8

v9.0.0

Breaking Changes
📦 pinecone-clientView on GitHub →
2 breaking7 features1 deprecations🔧 8 symbols

Summary

Version 9.0.0 is a complete rewrite of the Pinecone Python SDK, focusing on simplified installation, substantial performance gains via new serialization/transport layers, and a cleaner, resource-oriented client architecture. Python 3.10+ is now required.

⚠️ Breaking Changes

  • The client organization is now resource-oriented (e.g., use `pc.indexes.create` instead of flat v8 method names). Deprecated aliases for v8 flat method names are in place, but code changes may be required.
  • Python 3.9 is no longer supported; Python 3.10+ is now required.

Migration Steps

  1. Update installation command to `pip install pinecone`. Extras like `[grpc]` or `[asyncio]` are obsolete.
  2. Update code to use the new resource-oriented client structure (e.g., `pc.indexes.create` instead of old flat methods). Check the migration guide for specific signature changes.
  3. Ensure the environment uses Python 3.10 or newer.

✨ New Features

  • Installation simplifies to `pip install pinecone`; gRPC and asyncio transports are included in the base package.
  • Significant end-to-end performance improvements observed, especially for batch upserts (up to 17× faster) and query deserialization (3.4× faster).
  • The full public surface is now type-checked with `mypy --strict`, providing complete annotations.
  • Runtime dependency count reduced to three: `httpx[http2]`, `msgspec`, and `orjson`. `grpcio` is no longer a runtime dependency.
  • Control plane methods are organized resource-oriented (e.g., `pc.indexes`, `pc.collections`).
  • The `pc.preview` namespace is introduced for public preview features, starting with full-text search over documents.
  • Assistant functionality is built into the core client via `pc.assistant`, retiring the separate plugin package.

Affected Symbols

⚡ Deprecations

  • The `pinecone-plugin-assistant` package and plugin discovery system are retired; assistant functionality is now integrated into `pc.assistant`.