Uh oh!
There was an error while loading. Please reload this page.
Pinecone sdk 10.0.0 migration - #614
Merged
Merged
Conversation
… 10.0.0 Converts index creation/upsert/search to the new schema-based Documents API (pc.indexes.create with SchemaBuilder, index.documents.upsert/search) and fixes a rerank response breaking change (document is now a plain dict). Also fixes a stale refs/heads/master data URL and swaps a describe_index_stats freshness check for one that polls document search directly, since document upserts aren't visible to search as soon as the vector count updates. Verified end-to-end against a live Pinecone project on pinecone==10.0.0rc1 before bumping the pin to 10.0.0.
… namespace pc.preview.indexes/pc.preview.index graduated to pc.indexes/pc.index in pinecone 10.0.0, and pinecone.preview.SchemaBuilder moved to a top-level import. Also fixes idx.documents.batch_upsert(max_workers=...) which was renamed to max_concurrency in the GA API. Verified sections 0-15 and the search/filter mechanics of section 16 end-to-end against a live Pinecone project on pinecone==10.0.0rc1 (with the two Gemini embedding calls stubbed, since GOOGLE_API_KEY isn't available in this session) before bumping the pin to 10.0.0.
No API changes needed - create_index_for_model, pc.Index, upsert_records, search, and delete_index are all unchanged in 10.0.0. Verified end-to-end against a live Pinecone project (under a temporary test index name) on pinecone==10.0.0rc1 before bumping the pin to 10.0.0. Also fixes two pre-existing typos (distinguise, invervention) flagged by codespell.
No API changes needed - has_index, create_index_for_model, pc.Index, upsert_records, search (with rerank), and delete_index are all unchanged in 10.0.0. Verified end-to-end against a live Pinecone project (under a temporary test index name) on pinecone==10.0.0rc1 before bumping the pin.
No API changes needed - has_index, create_index_for_model, pc.Index, upsert_records, search, pc.inference.rerank, and delete_index are all unchanged in 10.0.0. Verified end-to-end against a live Pinecone project (under temporary test index names) on pinecone==10.0.0rc1 before bumping the pin.
No API changes needed - has_index, create_index_for_model, pc.Index, upsert_records, search, pc.inference.rerank, and delete_index are all unchanged in 10.0.0. Also switches !pip to %pip for reliable kernel targeting. Verified the full RAG pipeline end-to-end (upsert, cascading retrieval, OpenAI generation) against a live Pinecone project on pinecone==10.0.0rc1 before bumping the pin.
…e 10.0.0 Fixes a real breaking change: index.search() Hit objects only support bracket access via "id"/"score" in 10.0.0, not the "_id"/"_score" wire names this notebook used (that alias existed in 7.0.2 but was removed). Also updates the Claude model from the now-404ing claude-3-5-haiku-latest to claude-haiku-4-5-20251001 (unrelated to the SDK migration, but needed for the notebook to run at all). Verified end-to-end against a live Pinecone project (under temporary test index names) on pinecone==10.0.0rc1, including the real Claude generation call, before bumping the pin to 10.0.0.
Updates the Claude model from the now-404ing claude-3-5-haiku-latest to claude-haiku-4-5-20251001, and fixes a resulting fragility: the newer model consistently emits a leading text block before its tool_use block, breaking the single-step demo cell's response.content[0] assumption. Now scans for the tool_use block explicitly, matching the pattern the notebook's own run_agent() function already uses. Verified the full multi-turn, multi-step agentic workflow end-to-end against a live Pinecone project (under a temporary test index name) on pinecone==10.0.0rc1, including real web search and Claude tool-use calls, before bumping the pin to 10.0.0.
Brings it in line with the other notebooks in the repo, which all set source_tag for usage attribution.
"state-of-the-art" was flagged for time-sensitive language. Swaps in "red-tailed" (as in red-tailed hawk), which ties into the notebook's own bird corpus and demonstrates the same tokenizer-splitting behavior.
…o-search check-pinning.py only regex-matched the first line of a `%pip install \` continuation, so it flagged the trailing backslash as a fake unpinned "package" while silently skipping every real package on the continuation lines. Now joins \-continued lines before parsing. That blind spot had hidden a real unpinned dependency in agentic-rag-with-claude.ipynb: duckduckgo-search, which is also deprecated in favor of ddgs. Migrated to ddgs==9.16.0 (confirmed drop-in: same DDGS class/import, same .text() signature).
jennapederson
marked this pull request as ready for review
September 1, 2026 20:14
jennapederson
commented
Sep 1, 2026
ContributorAuthor
Addressed most linting failures. Remaining are ones we need to ignore at this point or related to SDK not being published yet. |
arjunpatel7
approved these changes
Sep 2, 2026
arjunpatel7
left a comment
Contributor
There was a problem hiding this comment.
Many of these change are sdk bumps with minimal potential issues for errata. Approved!
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Migrate notebooks on https://docs.pinecone.io/examples/notebooks to python SDK 10.0.0.
Solution
Bumped versions, updated non-integrated inference notebooks to use Docs API, clean up, minor bug fixes.
Type of Change
Test Plan
Have all been run locally via Claude.
Note
Low Risk
Documentation and GitHub Actions validation only; no production runtime or auth logic changes.
Overview
This slice of the Pinecone Python SDK 10.0.0 notebook work updates CI and one docs example.
Notebook:
cascading-retrieval.ipynbnow installspinecone==10.0.0instead of9.1.0(withpinecone-notebooks==0.1.1unchanged).Link checker:
aistudio.google.comis added to the ignore list so CI does not fail on URLs that redirect to Google sign-in.Pinning checker: A new
join_continuationshelper merges backslash-continued lines in code cells before scanning%pip installlines, so multi-line installs (e.g. one package per line) are validated as a single command and pinned versions are detected correctly.Reviewed by Cursor Bugbot for commit 9b8990b. Bugbot is set up for automated code reviews on this repo. Configure here.