fix: Bump Chroma versions for Graph RAG updates and changes#9952
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughUpdated dependency constraints in pyproject.toml, replacing strict pins with ranges and bumping versions for several packages, including boto3, chromadb, and multiple langchain-related libraries. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested labels
Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
pyproject.toml (1)
35-36: Duplicate/conflicting certifi specs.Both a range and an exact pin are listed; this effectively pins to 2024.8.30. Consider keeping only the intended constraint.
Apply one of:
- Keep the pin and remove the range, or
- Keep the range and drop the pin (preferred if lockfile provides reproducibility).
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
src/frontend/package-lock.jsonis excluded by!**/package-lock.jsonuv.lockis excluded by!**/*.lock
📒 Files selected for processing (1)
pyproject.toml(4 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (13)
- GitHub Check: Run Frontend Tests / merge-reports
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 3
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 5
- GitHub Check: Lint Backend / Run Mypy (3.10)
- GitHub Check: Run Backend Tests / Integration Tests - Python 3.10
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 2
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 4
- GitHub Check: Run Backend Tests / Unit Tests - Python 3.10 - Group 1
- GitHub Check: Lint Backend / Run Mypy (3.12)
- GitHub Check: Lint Backend / Run Mypy (3.13)
- GitHub Check: Lint Backend / Run Mypy (3.11)
- GitHub Check: Run Frontend Unit Tests / Frontend Jest Unit Tests
- GitHub Check: Test Starter Templates
🔇 Additional comments (5)
pyproject.toml (5)
82-82: Minor bump for langchain-astradb is fine.
88-89: Cap langchain-chroma to <0.3.0; verify langchain-aws pairingRepo uses langchain_chroma.Chroma extensively (vectorstores, knowledge_bases, tests) — pin to avoid unexpected 0.3.0 API breaks.
File: pyproject.toml Lines: 88-89
Apply:
- "langchain-chroma>=0.2.6", + "langchain-chroma>=0.2.6,<0.3.0",Verify: langchain-aws==0.2.33 is imported (BedrockEmbeddings/ChatBedrock, etc.) in src/lfx/.../amazon_*.py — confirm the recommended boto3/botocore range for that langchain-aws release before upgrading dependencies or changing constraints.
56-56: Cap chromadb to <2.0.0 and verify API usageUnbounded major upgrades can break our code — we import chromadb.Client and chromadb.config.Settings; lock the dependency and verify our usage against Chroma 1.x.
Locations:
- src/lfx/src/lfx/components/vectorstores/chroma.py — imports chromadb.config.Settings and chromadb.Client
- src/lfx/src/lfx/components/chroma/chroma.py — imports chromadb.config.Settings and chromadb.Client
- Tests/data referencing chromadb.Client: src/backend/tests/data/Vector_store.json and src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py
Apply:
- "chromadb>=1.0.0", + "chromadb>=1.0.0,<2.0.0",
116-117: Confirm Graph RAG libs to 0.8.0 — verify API/rename migrationsFound usages to check:
- src/lfx/src/lfx/components/vectorstores/graph_rag.py — imports: graph_retriever.strategies, from langchain_graph_retriever import GraphRetriever; GraphRetriever(...) instantiation; from graph_retriever.edges.metadata import Id.
- src/lfx/src/lfx/components/datastax/graph_rag.py — same usages.
- docs/docs/Components/components-vector-stores.mdx — doc reference.
Verify GraphRetriever constructor/signature, strategies module/class names, edges.metadata.Id presence and any config/constructor arg changes introduced in v0.8.0; update these call sites (and docs) if names/params changed.
92-92: Large jump in langchain-mongodb: audit for breaking API changes.Going from 0.2.0 → 0.7.0 likely includes breaking changes. Validate the following callsites and imports against 0.7.0 APIs:
- pyproject.toml: langchain-mongodb==0.7.0 (version bump).
- src/lfx/src/lfx/components/vectorstores/mongodb_atlas.py — imports MongoDBAtlasVectorSearch from langchain_community.vectorstores; uses MongoDBAtlasVectorSearch.from_documents(...) and MongoDBAtlasVectorSearch(embedding=..., collection=..., index_name=...). Verify these methods/signatures still exist.
- src/lfx/src/lfx/components/mongodb/mongodb_atlas.py — same usages; verify consistency.
- src/lfx/src/lfx/interface/initialize/loading.py and src/backend/base/langflow/interface/initialize/loading.py — call params["retriever"].as_retriever(); confirm as_retriever() still exists and returns the expected retriever type.
- src/lfx/src/lfx/components/deactivated/vector_store.py — returns vectorstore.as_retriever(); verify compatibility.
If APIs changed, update callers or pin to a compatible langchain-mongodb version.
|
Approved it! |
|
…-ai#9952) * tentative all-in version bumps * Update package-lock.json * Package version bumps --------- Co-authored-by: Stefano Lottini <stefano.lottini@ibm.com>



This pull request updates several dependency versions in the
pyproject.tomlfile to ensure compatibility with newer releases and to take advantage of recent improvements and bug fixes. The most important changes involve relaxing version constraints, upgrading key packages, and aligning related dependencies.Dependency version updates and compatibility improvements:
boto3to allow any version from1.34.162up to, but not including,2.0.0, improving flexibility for future updates.chromadbto require version1.0.0or higher, removing the previous upper limit and allowing for newer features and fixes.LangChain and related ecosystem upgrades:
langchainpackages for improved functionality and compatibility:langchain-astradbfrom~0.6.0to~0.6.1langchain-chromafrom>=0.1.4,<0.2.0to>=0.2.6langchain-awsfrom0.2.7to0.2.33langchain-mongodbfrom0.2.0to0.7.0langchain-graph-retrieverandgraph-retrieverfrom0.6.1to0.8.0for improved graph retrieval capabilities.Summary by CodeRabbit