diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md
index f468f34e6..4f66b1242 100644
--- a/.github/copilot-instructions.md
+++ b/.github/copilot-instructions.md
@@ -83,5 +83,6 @@ In general, follow the [Google Developer Documentation Style Guide](https://deve
- Do not review code blocks (denoted by ```), as they are often not full snippets
- Do not include untested code examples
- Do not make assumptions - always ask for clarification
+- Do not include localization in relative links (e.g., `/python/` or `/javascript/`) - these are resolved automatically by the build pipeline
For questions, refer to the Mintlify docs (either via MCP, if available), or at the [Mintlify documentation](https://docs.mintlify.com/docs/introduction).
diff --git a/AGENTS.md b/AGENTS.md
index f468f34e6..4f66b1242 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -83,5 +83,6 @@ In general, follow the [Google Developer Documentation Style Guide](https://deve
- Do not review code blocks (denoted by ```), as they are often not full snippets
- Do not include untested code examples
- Do not make assumptions - always ask for clarification
+- Do not include localization in relative links (e.g., `/python/` or `/javascript/`) - these are resolved automatically by the build pipeline
For questions, refer to the Mintlify docs (either via MCP, if available), or at the [Mintlify documentation](https://docs.mintlify.com/docs/introduction).
diff --git a/CLAUDE.md b/CLAUDE.md
index f468f34e6..4f66b1242 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -83,5 +83,6 @@ In general, follow the [Google Developer Documentation Style Guide](https://deve
- Do not review code blocks (denoted by ```), as they are often not full snippets
- Do not include untested code examples
- Do not make assumptions - always ask for clarification
+- Do not include localization in relative links (e.g., `/python/` or `/javascript/`) - these are resolved automatically by the build pipeline
For questions, refer to the Mintlify docs (either via MCP, if available), or at the [Mintlify documentation](https://docs.mintlify.com/docs/introduction).
diff --git a/reference/python/pyproject.toml b/reference/python/pyproject.toml
index e9ab2c334..f0f597d95 100644
--- a/reference/python/pyproject.toml
+++ b/reference/python/pyproject.toml
@@ -94,94 +94,103 @@ dependencies = [
[tool.uv]
package = false
-# Use copy mode instead of hardlink to avoid filesystem compatibility issues
-# This is necessary for CI/CD environments like Vercel where cache and target
-# directories may be on different filesystems
-link-mode = "copy"
override-dependencies = [
"pytest-codspeed>=3.1.0,<4.0.0",
]
[tool.uv.sources]
-# Remote installs for prod
+# Local installs for development
+# NOTE: ensure you are on the correct branch for each repo when doing local installs
+#
+# The paths assume you have a folder structure like:
+# /some-parent-folder
+# /docs <-- this repo
+# /python
+# /reference
+# /langchain
+# /libs
+# langchain
+# core
+# ...
+# /external-repos-here
## LangChain monorepo packages (alphabetical)
### Top level
-#langchain-cli = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/cli" }
-langchain-core = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/core" }
-langchain = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/langchain_v1" }
-langchain-classic = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/langchain" }
-#langchain-tests = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/standard-tests" }
-#langchain-text-splitters = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/text-splitters" }
+## TODO: re-map langchain-v1 on release, add legacy/classic
+langchain-cli = { path = "../../../langchain/libs/cli", editable = true }
+langchain-core = { path = "../../../langchain/libs/core", editable = true }
+langchain = { path = "../../../langchain/libs/langchain_v1", editable = true }
+langchain-classic = { path = "../../../langchain/libs/langchain", editable = true }
+langchain-tests = { path = "../../../langchain/libs/standard-tests", editable = true }
+langchain-text-splitters = { path = "../../../langchain/libs/text-splitters", editable = true }
### Partners
-langchain-anthropic = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/anthropic" }
-langchain-chroma = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/chroma" }
-langchain-deepseek = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/deepseek" }
-langchain-exa = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/exa" }
-langchain-fireworks = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/fireworks" }
-langchain-groq = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/groq" }
-langchain-huggingface = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/huggingface" }
-langchain-mistralai = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/mistralai" }
-langchain-nomic = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/nomic" }
-langchain-ollama = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/ollama" }
-langchain-openai = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/openai" }
-langchain-perplexity = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/perplexity" }
-langchain-prompty = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/prompty" }
-langchain-qdrant = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/qdrant" }
-langchain-xai = { git = "https://github.com/langchain-ai/langchain.git", subdirectory = "libs/partners/xai" }
+langchain-anthropic = { path = "../../../langchain/libs/partners/anthropic", editable = true }
+langchain-chroma = { path = "../../../langchain/libs/partners/chroma", editable = true }
+langchain-deepseek = { path = "../../../langchain/libs/partners/deepseek", editable = true }
+langchain-exa = { path = "../../../langchain/libs/partners/exa", editable = true }
+langchain-fireworks = { path = "../../../langchain/libs/partners/fireworks", editable = true }
+langchain-groq = { path = "../../../langchain/libs/partners/groq", editable = true }
+langchain-huggingface = { path = "../../../langchain/libs/partners/huggingface", editable = true }
+langchain-mistralai = { path = "../../../langchain/libs/partners/mistralai", editable = true }
+langchain-nomic = { path = "../../../langchain/libs/partners/nomic", editable = true }
+langchain-ollama = { path = "../../../langchain/libs/partners/ollama", editable = true }
+langchain-openai = { path = "../../../langchain/libs/partners/openai", editable = true }
+langchain-perplexity = { path = "../../../langchain/libs/partners/perplexity", editable = true }
+langchain-prompty = { path = "../../../langchain/libs/partners/prompty", editable = true }
+langchain-qdrant = { path = "../../../langchain/libs/partners/qdrant", editable = true }
+langchain-xai = { path = "../../../langchain/libs/partners/xai", editable = true }
## Experimental
-#langchain-experimental = { git = "https://github.com/langchain-ai/langchain-experimental.git", subdirectory = "libs/experimental" }
+#langchain-experimental = { path = "../../../langchain-experimental/libs/experimental", editable = true }
## Community
-langchain-community = { git = "https://github.com/langchain-ai/langchain-community.git", subdirectory = "libs/community" }
+langchain-community = { path = "../../../langchain-community/libs/community", editable = true }
## MCP
-langchain-mcp-adapters = { git = "https://github.com/langchain-ai/langchain-mcp-adapters.git" }
+langchain-mcp-adapters = { path = "../../../langchain-mcp-adapters", editable = true }
## Other langchain-ai org packages (alphabetical)
-langchain-astradb = { git = "https://github.com/langchain-ai/langchain-datastax.git", subdirectory = "libs/astradb" }
-langchain-ai21 = { git = "https://github.com/langchain-ai/langchain-ai21.git", subdirectory = "libs/ai21" }
-langchain-aws = { git = "https://github.com/langchain-ai/langchain-aws.git", subdirectory = "libs/aws" }
-langchain-azure-ai = { git = "https://github.com/langchain-ai/langchain-azure.git", subdirectory = "libs/azure-ai" }
-langchain-azure-dynamic-sessions = { git = "https://github.com/langchain-ai/langchain-azure.git", subdirectory = "libs/azure-dynamic-sessions" }
-langchain-cerebras = { git = "https://github.com/langchain-ai/langchain-cerebras.git", subdirectory = "libs/cerebras" }
-langchain-cohere = { git = "https://github.com/langchain-ai/langchain-cohere.git", subdirectory = "libs/cohere" }
-langchain-db2 = { git = "https://github.com/langchain-ai/langchain-ibm.git", subdirectory = "libs/langchain-db2" }
-langchain-elasticsearch = { git = "https://github.com/langchain-ai/langchain-elastic.git", subdirectory = "libs/elasticsearch" }
-langchain-google-community = { git = "https://github.com/langchain-ai/langchain-google.git", subdirectory = "libs/community" }
-langchain-google-genai = { git = "https://github.com/langchain-ai/langchain-google.git", subdirectory = "libs/genai" }
-langchain-google-vertexai = { git = "https://github.com/langchain-ai/langchain-google.git", subdirectory = "libs/vertexai" }
-langchain-ibm = { git = "https://github.com/langchain-ai/langchain-ibm.git", subdirectory = "libs/ibm" }
-langchain-milvus = { git = "https://github.com/langchain-ai/langchain-milvus.git", subdirectory = "libs/milvus" }
-langchain-mongodb = { git = "https://github.com/langchain-ai/langchain-mongodb.git", subdirectory = "libs/langchain-mongodb" }
-langchain-neo4j = { git = "https://github.com/langchain-ai/langchain-neo4j.git", subdirectory = "libs/neo4j" }
-langchain-nvidia-ai-endpoints = { git = "https://github.com/langchain-ai/langchain-nvidia.git", subdirectory = "libs/ai-endpoints" }
-langchain-pinecone = { git = "https://github.com/langchain-ai/langchain-pinecone.git", subdirectory = "libs/pinecone" }
-langchain-postgres = { git = "https://github.com/langchain-ai/langchain-postgres.git" }
-langchain-redis = { git = "https://github.com/langchain-ai/langchain-redis.git", subdirectory = "libs/redis" }
-langchain-sema4 = { git = "https://github.com/langchain-ai/langchain-sema4.git", subdirectory = "libs/sema4" }
-langchain-snowflake = { git = "https://github.com/langchain-ai/langchain-snowflake.git", subdirectory = "libs/snowflake" }
-langchain-sqlserver = { git = "https://github.com/langchain-ai/langchain-azure.git", subdirectory = "libs/sqlserver" }
-langchain-together = { git = "https://github.com/langchain-ai/langchain-together.git", subdirectory = "libs/together" }
-langchain-unstructured = { git = "https://github.com/langchain-ai/langchain-unstructured.git", subdirectory = "libs/unstructured" }
-langchain-upstage = { git = "https://github.com/langchain-ai/langchain-upstage.git", subdirectory = "libs/upstage" }
-langchain-weaviate = { git = "https://github.com/langchain-ai/langchain-weaviate.git", subdirectory = "libs/weaviate", branch = "v1.0" }
+langchain-astradb = { path = "../../../langchain-datastax/libs/astradb", editable = true }
+langchain-ai21 = { path = "../../../langchain-ai21/libs/ai21", editable = true }
+langchain-aws = { path = "../../../langchain-aws/libs/aws", editable = true }
+langchain-azure-ai = { path = "../../../langchain-azure/libs/azure-ai", editable = true }
+langchain-azure-dynamic-sessions = { path = "../../../langchain-azure/libs/azure-dynamic-sessions", editable = true }
+langchain-cerebras = { path = "../../../langchain-cerebras/libs/cerebras", editable = true }
+langchain-cohere = { path = "../../../langchain-cohere/libs/cohere", editable = true }
+langchain-db2 = { path = "../../../langchain-ibm/libs/langchain-db2", editable = true }
+langchain-elasticsearch = { path = "../../../langchain-elastic/libs/elasticsearch", editable = true }
+langchain-google-community = { path = "../../../langchain-google/libs/community", editable = true }
+langchain-google-genai = { path = "../../../langchain-google/libs/genai", editable = true }
+langchain-google-vertexai = { path = "../../../langchain-google/libs/vertexai", editable = true }
+langchain-ibm = { path = "../../../langchain-ibm/libs/ibm", editable = true }
+langchain-milvus = { path = "../../../langchain-milvus/libs/milvus", editable = true }
+langchain-mongodb = { path = "../../../langchain-mongodb/libs/langchain-mongodb", editable = true }
+langchain-neo4j = { path = "../../../langchain-neo4j/libs/neo4j", editable = true }
+langchain-nvidia-ai-endpoints = { path = "../../../langchain-nvidia/libs/ai-endpoints", editable = true }
+langchain-pinecone = { path = "../../../langchain-pinecone/libs/pinecone", editable = true }
+langchain-postgres = { path = "../../../langchain-postgres", editable = true }
+langchain-redis = { path = "../../../langchain-redis/libs/redis", editable = true }
+langchain-sema4 = { path = "../../../langchain-sema4/libs/sema4", editable = true }
+langchain-snowflake = { path = "../../../langchain-snowflake/libs/snowflake", editable = true }
+langchain-sqlserver = { path = "../../../langchain-azure/libs/sqlserver", editable = true }
+langchain-together = { path = "../../../langchain-together/libs/together", editable = true }
+langchain-unstructured = { path = "../../../langchain-unstructured/libs/unstructured", editable = true }
+langchain-upstage = { path = "../../../langchain-upstage/libs/upstage", editable = true }
+langchain-weaviate = { path = "../../../langchain-weaviate/libs/weaviate", editable = true }
## Non-langchain-ai org packages (alphabetical)
-langchain-tavily = { git = "https://github.com/tavily-ai/langchain-tavily.git" }
+langchain-tavily = { path = "../../../langchain-tavily", editable = true }
## LangGraph monorepo packages (alphabetical)
-langgraph = { git = "https://github.com/langchain-ai/langgraph", subdirectory = "libs/langgraph" }
-langgraph-prebuilt = { git = "https://github.com/langchain-ai/langgraph", subdirectory = "libs/prebuilt" }
-langgraph-checkpoint = { git = "https://github.com/langchain-ai/langgraph", subdirectory = "libs/checkpoint" }
-langgraph-checkpoint-sqlite = { git = "https://github.com/langchain-ai/langgraph", subdirectory = "libs/checkpoint-sqlite" }
-langgraph-checkpoint-postgres = { git = "https://github.com/langchain-ai/langgraph", subdirectory = "libs/checkpoint-postgres" }
-langgraph-sdk = { git = "https://github.com/langchain-ai/langgraph", subdirectory = "libs/sdk-py" }
+langgraph = { path = "../../../langgraph/libs/langgraph", editable = true }
+langgraph-prebuilt = { path = "../../../langgraph/libs/prebuilt", editable = true }
+langgraph-checkpoint = { path = "../../../langgraph/libs/checkpoint", editable = true }
+langgraph-checkpoint-sqlite = { path = "../../../langgraph/libs/checkpoint-sqlite", editable = true }
+langgraph-checkpoint-postgres = { path = "../../../langgraph/libs/checkpoint-postgres", editable = true }
+langgraph-sdk = { path = "../../../langgraph/libs/sdk-py", editable = true }
# External repos (alphabetical)
-langgraph-supervisor = { git = "https://github.com/langchain-ai/langgraph-supervisor-py" }
-langgraph-swarm = { git = "https://github.com/langchain-ai/langgraph-swarm-py" }
-langgraph-checkpoint-aws = { git = "https://github.com/langchain-ai/langchain-aws.git", subdirectory = "libs/langgraph-checkpoint-aws" }
-
+langgraph-supervisor = { path = "../../../langgraph-supervisor-py", editable = true }
+langgraph-swarm = { path = "../../../langgraph-swarm-py", editable = true }
+langgraph-checkpoint-aws = { path = "../../../langchain-aws/libs/langgraph-checkpoint-aws", editable = true }
diff --git a/reference/python/uv.lock b/reference/python/uv.lock
index 74228e053..dd642877f 100644
--- a/reference/python/uv.lock
+++ b/reference/python/uv.lock
@@ -1615,37 +1615,156 @@ wheels = [
[[package]]
name = "langchain"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Flangchain_v1#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/langchain_v1" }
dependencies = [
{ name = "langchain-core" },
{ name = "langgraph" },
{ name = "pydantic" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-anthropic", marker = "extra == 'anthropic'" },
+ { name = "langchain-aws", marker = "extra == 'aws'" },
+ { name = "langchain-community", marker = "extra == 'community'" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-deepseek", marker = "extra == 'deepseek'" },
+ { name = "langchain-fireworks", marker = "extra == 'fireworks'" },
+ { name = "langchain-google-genai", marker = "extra == 'google-genai'" },
+ { name = "langchain-google-vertexai", marker = "extra == 'google-vertexai'" },
+ { name = "langchain-groq", marker = "extra == 'groq'" },
+ { name = "langchain-huggingface", marker = "extra == 'huggingface'" },
+ { name = "langchain-mistralai", marker = "extra == 'mistralai'" },
+ { name = "langchain-ollama", marker = "extra == 'ollama'" },
+ { name = "langchain-openai", marker = "extra == 'openai'", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-perplexity", marker = "extra == 'perplexity'" },
+ { name = "langchain-together", marker = "extra == 'together'" },
+ { name = "langchain-xai", marker = "extra == 'xai'" },
+ { name = "langgraph", specifier = ">=1.0.0,<1.1.0" },
+ { name = "pydantic", specifier = ">=2.7.4,<3.0.0" },
+]
+provides-extras = ["community", "anthropic", "openai", "google-vertexai", "google-genai", "fireworks", "ollama", "together", "mistralai", "huggingface", "groq", "aws", "deepseek", "xai", "perplexity"]
+
+[package.metadata.requires-dev]
+lint = [{ name = "ruff", specifier = ">=0.12.2,<0.13.0" }]
+test = [
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=8.0.0,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.23.2,<2.0.0" },
+ { name = "pytest-cov", specifier = ">=4.0.0,<8.0.0" },
+ { name = "pytest-mock" },
+ { name = "pytest-socket", specifier = ">=0.6.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.2.6,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.6.1,<4.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+ { name = "toml", specifier = ">=0.10.2,<1.0.0" },
+]
+test-integration = [
+ { name = "cassio", specifier = ">=0.1.0,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "langchainhub", specifier = ">=0.1.16,<1.0.0" },
+ { name = "python-dotenv", specifier = ">=1.0.0,<2.0.0" },
+ { name = "vcrpy", specifier = ">=7.0.0,<8.0.0" },
+ { name = "wrapt", specifier = ">=1.15.0,<2.0.0" },
+]
+typing = [
+ { name = "mypy", specifier = ">=1.18.1,<1.19.0" },
+ { name = "types-toml", specifier = ">=0.10.8.20240310,<1.0.0.0" },
+]
+
[[package]]
name = "langchain-anthropic"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fanthropic#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/anthropic" }
dependencies = [
{ name = "anthropic" },
{ name = "langchain-core" },
{ name = "pydantic" },
]
+[package.metadata]
+requires-dist = [
+ { name = "anthropic", specifier = ">=0.69.0,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "pydantic", specifier = ">=2.7.4,<3.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "defusedxml", specifier = ">=0.7.1,<1.0.0" },
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain", editable = "../../../langchain/libs/langchain_v1" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "langgraph-prebuilt", specifier = ">=0.7.0a2" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<1.8.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-timeout", specifier = ">=2.3.1,<3.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.8.0,<4.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+ { name = "vcrpy", specifier = ">=7.0.0,<8.0.0" },
+]
+test-integration = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "requests", specifier = ">=2.32.3,<3.0.0" },
+]
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.17.1,<2.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0,<3.0.0" },
+]
+
[[package]]
name = "langchain-astradb"
version = "0.6.1"
-source = { git = "https://github.com/langchain-ai/langchain-datastax.git?subdirectory=libs%2Fastradb#662fe43b54c3e38f21927368ef33e1cad214f32c" }
+source = { editable = "../../../langchain-datastax/libs/astradb" }
dependencies = [
{ name = "astrapy" },
{ name = "langchain-core" },
{ name = "numpy" },
]
+[package.metadata]
+requires-dist = [
+ { name = "astrapy", specifier = ">=2.0.1,<3.0.0" },
+ { name = "langchain-core", specifier = ">=0.3.74,<2.0.0" },
+ { name = "numpy", specifier = ">=1.21" },
+ { name = "numpy", marker = "python_full_version >= '3.12'", specifier = ">=1.26" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+]
+
+[package.metadata.requires-dev]
+codespell = [{ name = "codespell", specifier = ">=2.2.0,<3.0.0" }]
+lint = [{ name = "ruff", specifier = ">=0.12.10,<0.13" }]
+test = [
+ { name = "blockbuster", specifier = ">=1.5.25,<1.6.0" },
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "pytest", specifier = ">=8,<9" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-dotenv", specifier = ">=0.5.2,<1.0.0" },
+ { name = "pytest-httpserver", specifier = ">=1.0.8,<1.1" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = [{ name = "langchain-tests", specifier = ">=0.3.21,<2.0.0" }]
+typing = [
+ { name = "mypy", specifier = ">=1.17.1,<1.18" },
+ { name = "simsimd", specifier = ">=6.5.1,<7.0.0" },
+]
+
[[package]]
name = "langchain-aws"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain-aws.git?subdirectory=libs%2Faws#474671e7d521d83a9be04ef7d8d3affcbbd37dfb" }
+source = { editable = "../../../langchain-aws/libs/aws" }
dependencies = [
{ name = "boto3" },
{ name = "langchain-core" },
@@ -1653,20 +1772,91 @@ dependencies = [
{ name = "pydantic" },
]
+[package.metadata]
+requires-dist = [
+ { name = "beautifulsoup4", marker = "extra == 'tools'", specifier = ">=4.13.4" },
+ { name = "bedrock-agentcore", marker = "python_full_version >= '3.10' and extra == 'tools'", specifier = ">=0.1.0" },
+ { name = "boto3", specifier = ">=1.40.19" },
+ { name = "langchain-core", specifier = ">=1.0.0" },
+ { name = "numpy", marker = "python_full_version < '3.12'", specifier = ">=1.0.0,<3" },
+ { name = "numpy", marker = "python_full_version >= '3.12'", specifier = ">=2.3.2,<3" },
+ { name = "playwright", marker = "extra == 'tools'", specifier = ">=1.53.0" },
+ { name = "pydantic", specifier = ">=2.10.6,<3" },
+]
+provides-extras = ["tools"]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "boto3-stubs", extras = ["essential"], specifier = ">=1.40.19" },
+ { name = "botocore-stubs", specifier = ">=1.38.46" },
+]
+lint = [{ name = "ruff", specifier = ">=0.13.0" }]
+test = [
+ { name = "langchain", specifier = ">=1.0.0rc2" },
+ { name = "langchain-tests", specifier = ">=1.0.0" },
+ { name = "pytest", specifier = ">=8.4.1" },
+ { name = "pytest-asyncio", specifier = ">=0.20,<1" },
+ { name = "pytest-cov", specifier = ">=6.2.1" },
+ { name = "pytest-watcher", specifier = ">=0.4.3" },
+ { name = "syrupy", specifier = ">=4.9.1" },
+]
+test-integration = []
+typing = [
+ { name = "mypy", specifier = ">=1.17.1" },
+ { name = "types-requests", marker = "platform_python_implementation != 'PyPy'", specifier = ">=2.32.0" },
+ { name = "types-requests", marker = "platform_python_implementation == 'PyPy'", specifier = ">=2.31.0,<2.32.0" },
+]
+
[[package]]
name = "langchain-chroma"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fchroma#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/chroma" }
dependencies = [
{ name = "chromadb" },
{ name = "langchain-core" },
{ name = "numpy" },
]
+[package.metadata]
+requires-dist = [
+ { name = "chromadb", specifier = ">=1.0.20,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.0" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [
+ { name = "onnxruntime", marker = "python_full_version < '3.10'", specifier = "<1.20" },
+ { name = "onnxruntime", marker = "python_full_version >= '3.10'" },
+ { name = "ruff", specifier = ">=0.13.1,<0.14.0" },
+]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "onnxruntime", marker = "python_full_version < '3.10'", specifier = "<1.20.0" },
+ { name = "onnxruntime", marker = "python_full_version >= '3.10'" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-benchmark" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0,<3.0.0" },
+]
+
[[package]]
name = "langchain-classic"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Flangchain#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/langchain" }
dependencies = [
{ name = "langchain-core" },
{ name = "langchain-text-splitters" },
@@ -1677,6 +1867,99 @@ dependencies = [
{ name = "sqlalchemy" },
]
+[package.metadata]
+requires-dist = [
+ { name = "async-timeout", marker = "python_full_version < '3.11'", specifier = ">=4.0.0,<5.0.0" },
+ { name = "langchain-anthropic", marker = "extra == 'anthropic'" },
+ { name = "langchain-aws", marker = "extra == 'aws'" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-deepseek", marker = "extra == 'deepseek'" },
+ { name = "langchain-fireworks", marker = "extra == 'fireworks'" },
+ { name = "langchain-google-genai", marker = "extra == 'google-genai'" },
+ { name = "langchain-google-vertexai", marker = "extra == 'google-vertexai'" },
+ { name = "langchain-groq", marker = "extra == 'groq'" },
+ { name = "langchain-huggingface", marker = "extra == 'huggingface'" },
+ { name = "langchain-mistralai", marker = "extra == 'mistralai'" },
+ { name = "langchain-ollama", marker = "extra == 'ollama'" },
+ { name = "langchain-openai", marker = "extra == 'openai'", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-perplexity", marker = "extra == 'perplexity'" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "langchain-together", marker = "extra == 'together'" },
+ { name = "langchain-xai", marker = "extra == 'xai'" },
+ { name = "langsmith", specifier = ">=0.1.17,<1.0.0" },
+ { name = "pydantic", specifier = ">=2.7.4,<3.0.0" },
+ { name = "pyyaml", specifier = ">=5.3.0,<7.0.0" },
+ { name = "requests", specifier = ">=2.0.0,<3.0.0" },
+ { name = "sqlalchemy", specifier = ">=1.4.0,<3.0.0" },
+]
+provides-extras = ["anthropic", "openai", "google-vertexai", "google-genai", "fireworks", "ollama", "together", "mistralai", "huggingface", "groq", "aws", "deepseek", "xai", "perplexity"]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "jupyter", specifier = ">=1.0.0,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "playwright", specifier = ">=1.28.0,<2.0.0" },
+ { name = "setuptools", specifier = ">=67.6.1,<68.0.0" },
+]
+lint = [
+ { name = "cffi", marker = "python_full_version < '3.10'", specifier = "<1.17.1" },
+ { name = "cffi", marker = "python_full_version >= '3.10'" },
+ { name = "ruff", specifier = ">=0.13.1,<0.14.0" },
+]
+test = [
+ { name = "blockbuster", specifier = ">=1.5.18,<1.6.0" },
+ { name = "cffi", marker = "python_full_version < '3.10'", specifier = "<1.17.1" },
+ { name = "cffi", marker = "python_full_version >= '3.10'" },
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "lark", specifier = ">=1.1.5,<2.0.0" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+ { name = "packaging", specifier = ">=24.2.0,<26.0.0" },
+ { name = "pandas", specifier = ">=2.0.0,<3.0.0" },
+ { name = "pytest", specifier = ">=8.0.0,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.23.2,<1.0.0" },
+ { name = "pytest-cov", specifier = ">=4.0.0,<5.0.0" },
+ { name = "pytest-dotenv", specifier = ">=0.5.2,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.6.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.2.6,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.6.1,<4.0.0" },
+ { name = "requests-mock", specifier = ">=1.11.0,<2.0.0" },
+ { name = "responses", specifier = ">=0.22.0,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+ { name = "toml", specifier = ">=0.10.2,<1.0.0" },
+]
+test-integration = [
+ { name = "cassio", specifier = ">=0.1.0,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "langchainhub", specifier = ">=0.1.16,<1.0.0" },
+ { name = "python-dotenv", specifier = ">=1.0.0,<2.0.0" },
+ { name = "urllib3", marker = "python_full_version < '3.10'", specifier = "<2.0.0" },
+ { name = "vcrpy", specifier = ">=7.0.0,<8.0.0" },
+ { name = "wrapt", specifier = ">=1.15.0,<2.0.0" },
+]
+typing = [
+ { name = "fastapi", specifier = ">=0.116.1,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "mypy", specifier = ">=1.18.2,<1.19.0" },
+ { name = "mypy-protobuf", specifier = ">=3.0.0,<4.0.0" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+ { name = "types-chardet", specifier = ">=5.0.4.6,<6.0.0.0" },
+ { name = "types-pytz", specifier = ">=2023.3.0.0,<2024.0.0.0" },
+ { name = "types-pyyaml", specifier = ">=6.0.12.2,<7.0.0.0" },
+ { name = "types-redis", specifier = ">=4.3.21.6,<5.0.0.0" },
+ { name = "types-requests", specifier = ">=2.28.11.5,<3.0.0.0" },
+ { name = "types-toml", specifier = ">=0.10.8.1,<1.0.0.0" },
+]
+
[[package]]
name = "langchain-community"
version = "0.4"
@@ -1703,7 +1986,7 @@ wheels = [
[[package]]
name = "langchain-core"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fcore#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/core" }
dependencies = [
{ name = "jsonpatch" },
{ name = "langsmith" },
@@ -1714,28 +1997,119 @@ dependencies = [
{ name = "typing-extensions" },
]
+[package.metadata]
+requires-dist = [
+ { name = "jsonpatch", specifier = ">=1.33.0,<2.0.0" },
+ { name = "langsmith", specifier = ">=0.3.45,<1.0.0" },
+ { name = "packaging", specifier = ">=23.2.0,<26.0.0" },
+ { name = "pydantic", specifier = ">=2.7.4,<3.0.0" },
+ { name = "pyyaml", specifier = ">=5.3.0,<7.0.0" },
+ { name = "tenacity", specifier = ">=8.1.0,!=8.4.0,<10.0.0" },
+ { name = "typing-extensions", specifier = ">=4.7.0,<5.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "grandalf", specifier = ">=0.8.0,<1.0.0" },
+ { name = "jupyter", specifier = ">=1.0.0,<2.0.0" },
+ { name = "setuptools", specifier = ">=67.6.1,<68.0.0" },
+]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "blockbuster", specifier = ">=1.5.18,<1.6.0" },
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "grandalf", specifier = ">=0.8.0,<1.0.0" },
+ { name = "langchain-tests", directory = "../../../langchain/libs/standard-tests" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+ { name = "pytest", specifier = ">=8.0.0,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-benchmark" },
+ { name = "pytest-codspeed" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.6.1,<4.0.0" },
+ { name = "responses", specifier = ">=0.25.0,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-text-splitters", directory = "../../../langchain/libs/text-splitters" },
+ { name = "mypy", specifier = ">=1.18.1,<1.19.0" },
+ { name = "types-pyyaml", specifier = ">=6.0.12.2,<7.0.0.0" },
+ { name = "types-requests", specifier = ">=2.28.11.5,<3.0.0.0" },
+]
+
[[package]]
name = "langchain-deepseek"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fdeepseek#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/deepseek" }
dependencies = [
{ name = "langchain-core" },
{ name = "langchain-openai" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+]
+
+[package.metadata.requires-dev]
+dev = []
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.4.3,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.23.2,<1.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-timeout", specifier = ">=2.3.1,<3.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+]
+test-integration = []
+typing = [{ name = "mypy", specifier = ">=1.10.0,<2.0.0" }]
+
[[package]]
name = "langchain-exa"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fexa#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/exa" }
dependencies = [
{ name = "exa-py" },
{ name = "langchain-core" },
]
+[package.metadata]
+requires-dist = [
+ { name = "exa-py", specifier = ">=1.0.8,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-benchmark" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+]
+
[[package]]
name = "langchain-fireworks"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Ffireworks#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/fireworks" }
dependencies = [
{ name = "aiohttp" },
{ name = "fireworks-ai" },
@@ -1744,10 +2118,40 @@ dependencies = [
{ name = "requests" },
]
+[package.metadata]
+requires-dist = [
+ { name = "aiohttp", specifier = ">=3.9.1,<4.0.0" },
+ { name = "fireworks-ai", specifier = ">=0.13.0,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "openai", specifier = ">=2.0.0,<3.0.0" },
+ { name = "requests", specifier = ">=2.0.0,<3.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+ { name = "types-requests", specifier = ">=2.0.0,<3.0.0" },
+]
+
[[package]]
name = "langchain-google-community"
version = "3.0.0"
-source = { git = "https://github.com/langchain-ai/langchain-google.git?subdirectory=libs%2Fcommunity#99fa1ff2e15c9c7773594a768d95d4a6495bbbe8" }
+source = { editable = "../../../langchain-google/libs/community" }
dependencies = [
{ name = "google-api-core" },
{ name = "google-api-python-client" },
@@ -1758,10 +2162,81 @@ dependencies = [
{ name = "langchain-core" },
]
+[package.metadata]
+requires-dist = [
+ { name = "beautifulsoup4", marker = "extra == 'gmail'", specifier = ">=4.12.3,<5.0.0" },
+ { name = "db-dtypes", marker = "extra == 'featurestore'", specifier = ">=1.2.0,<2.0.0" },
+ { name = "gapic-google-longrunning", marker = "extra == 'docai'", specifier = ">=0.11.2,<1.0.0" },
+ { name = "google-api-core", specifier = ">=2.25.0,<3.0.0" },
+ { name = "google-api-python-client", specifier = ">=2.161.0,<3.0.0" },
+ { name = "google-auth", marker = "extra == 'calendar'", specifier = ">=2.36.0,<3.0.0" },
+ { name = "google-auth-httplib2", marker = "extra == 'drive'", specifier = ">=0.2.0,<1.0.0" },
+ { name = "google-auth-httplib2", marker = "extra == 'gmail'", specifier = ">=0.2.0,<1.0.0" },
+ { name = "google-auth-oauthlib", marker = "extra == 'calendar'", specifier = ">=1.2.0,<2.0.0" },
+ { name = "google-auth-oauthlib", marker = "extra == 'drive'", specifier = ">=1.2.0,<2.0.0" },
+ { name = "google-auth-oauthlib", marker = "extra == 'gmail'", specifier = ">=1.2.0,<2.0.0" },
+ { name = "google-cloud-aiplatform", marker = "extra == 'featurestore'", specifier = ">=1.56.0,<2.0.0" },
+ { name = "google-cloud-bigquery", marker = "extra == 'bigquery'", specifier = ">=3.21.0,<4.0.0" },
+ { name = "google-cloud-bigquery-storage", marker = "extra == 'featurestore'", specifier = ">=2.6.0,<3.0.0" },
+ { name = "google-cloud-contentwarehouse", marker = "extra == 'docai'", specifier = ">=0.7.7,<1.0.0" },
+ { name = "google-cloud-core", specifier = ">=2.4.3,<3.0.0" },
+ { name = "google-cloud-discoveryengine", marker = "extra == 'vertexaisearch'", specifier = ">=0.11.14,<1.0.0" },
+ { name = "google-cloud-documentai", marker = "extra == 'docai'", specifier = ">=2.26.0,<3.0.0" },
+ { name = "google-cloud-documentai-toolbox", marker = "extra == 'docai'", specifier = ">=0.13.3a0,<1.0.0" },
+ { name = "google-cloud-modelarmor", specifier = ">=0.2.8,<1.0.0" },
+ { name = "google-cloud-speech", marker = "extra == 'speech'", specifier = ">=2.26.0,<3.0.0" },
+ { name = "google-cloud-storage", marker = "extra == 'gcs'", specifier = ">=2.16.0,<3.0.0" },
+ { name = "google-cloud-texttospeech", marker = "extra == 'texttospeech'", specifier = ">=2.16.3,<3.0.0" },
+ { name = "google-cloud-translate", marker = "extra == 'translate'", specifier = ">=3.15.3,<4.0.0" },
+ { name = "google-cloud-vision", marker = "extra == 'vision'", specifier = ">=3.7.2,<4.0.0" },
+ { name = "googlemaps", marker = "extra == 'places'", specifier = ">=4.10.0,<5.0.0" },
+ { name = "grpcio", specifier = ">=1.74.0,<2.0.0" },
+ { name = "langchain-community", specifier = ">=0.4.0,<2.0.0" },
+ { name = "langchain-core", specifier = ">=1.0.0,<2.0.0" },
+ { name = "pandas", marker = "python_full_version >= '3.12' and extra == 'featurestore'", specifier = ">=2.0.0,<3.0.0" },
+ { name = "pandas", marker = "python_full_version < '3.12' and extra == 'featurestore'", specifier = ">=1.0.0" },
+ { name = "pyarrow", marker = "extra == 'featurestore'", specifier = ">=6.0.1" },
+ { name = "pydantic", marker = "extra == 'featurestore'", specifier = ">=2.7.4,<3.0.0" },
+]
+provides-extras = ["bigquery", "calendar", "docai", "drive", "gcs", "speech", "places", "texttospeech", "translate", "vertexaisearch", "vision", "gmail", "featurestore"]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "pillow", specifier = ">=10.1.0,<11.0.0" },
+ { name = "types-google-cloud-ndb", specifier = ">=2.2.0.1,<3.0.0.0" },
+ { name = "types-pillow", specifier = ">=10.1.0.2,<11.0.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0.10,<3.0.0.0" },
+]
+lint = [{ name = "ruff", specifier = ">=0.12.10,<1" }]
+test = [
+ { name = "cloudpickle", specifier = ">=3.0.0,<4.0.0" },
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "google-cloud-bigquery", specifier = ">=3.19.0,<4.0.0" },
+ { name = "google-cloud-discoveryengine", specifier = ">=0.11.14,<1.0.0" },
+ { name = "google-cloud-documentai", specifier = ">=2.24.2,<3.0.0" },
+ { name = "google-cloud-documentai-toolbox", marker = "python_full_version < '3.13'", specifier = ">=0.13.3a0,<1.0.0" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<2.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = [{ name = "pillow", specifier = ">=10.1.0,<11.0.0" }]
+typing = [
+ { name = "mypy", specifier = ">=1.17.1,<2.0.0" },
+ { name = "types-beautifulsoup4", specifier = ">=4.12.0,<5.0.0" },
+ { name = "types-google-cloud-ndb", specifier = ">=2.2.0.1,<3.0.0.0" },
+ { name = "types-pillow", specifier = ">=10.1.0.2,<11.0.0.0" },
+ { name = "types-protobuf", specifier = ">=4.24.0.20240302,<5.0.0.0" },
+ { name = "types-requests", specifier = ">=2.28.11.5,<3.0.0" },
+]
+
[[package]]
name = "langchain-google-genai"
version = "3.0.0"
-source = { git = "https://github.com/langchain-ai/langchain-google.git?subdirectory=libs%2Fgenai#99fa1ff2e15c9c7773594a768d95d4a6495bbbe8" }
+source = { editable = "../../../langchain-google/libs/genai" }
dependencies = [
{ name = "filetype" },
{ name = "google-ai-generativelanguage" },
@@ -1769,10 +2244,43 @@ dependencies = [
{ name = "pydantic" },
]
+[package.metadata]
+requires-dist = [
+ { name = "filetype", specifier = ">=1.2.0,<2.0.0" },
+ { name = "google-ai-generativelanguage", specifier = ">=0.7.0,<1.0.0" },
+ { name = "langchain-core", specifier = ">=1.0.0,<2.0.0" },
+ { name = "pydantic", specifier = ">=2.0.0,<3.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = []
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.5.0,<2.0.0" },
+ { name = "langchain-tests", specifier = ">=1.0.0,<2.0.0" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+ { name = "pytest", specifier = ">=8.4.0,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.0,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.14.0,<4.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<2.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.4.0,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.9.0,<5.0.0" },
+]
+test-integration = [{ name = "pytest", specifier = ">=8.4.0,<9.0.0" }]
+typing = [
+ { name = "mypy", specifier = ">=1.18.1,<1.19.0" },
+ { name = "numpy", specifier = ">=1.26.2" },
+ { name = "types-google-cloud-ndb", specifier = ">=2.2.0.1,<3.0.0.0" },
+ { name = "types-protobuf", specifier = ">=4.24.0.20240302,<5.0.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0,<3.0.0" },
+]
+
[[package]]
name = "langchain-google-vertexai"
version = "3.0.0"
-source = { git = "https://github.com/langchain-ai/langchain-google.git?subdirectory=libs%2Fvertexai#99fa1ff2e15c9c7773594a768d95d4a6495bbbe8" }
+source = { editable = "../../../langchain-google/libs/vertexai" }
dependencies = [
{ name = "bottleneck" },
{ name = "google-cloud-aiplatform" },
@@ -1786,29 +2294,128 @@ dependencies = [
{ name = "validators" },
]
+[package.metadata]
+requires-dist = [
+ { name = "anthropic", marker = "extra == 'anthropic'", specifier = ">=0.35.0,<1.0.0" },
+ { name = "bottleneck", specifier = ">=1.4.0,<2.0.0" },
+ { name = "google-cloud-aiplatform", specifier = ">=1.97.0,<2.0.0" },
+ { name = "google-cloud-storage", specifier = ">=2.18.0,<3.0.0" },
+ { name = "httpx", specifier = ">=0.28.0,<1.0.0" },
+ { name = "httpx-sse", specifier = ">=0.4.0,<1.0.0" },
+ { name = "langchain-core", specifier = ">=1.0.0,<2.0.0" },
+ { name = "langchain-mistralai", marker = "extra == 'mistral'", specifier = ">=0.2.0,<2.0.0" },
+ { name = "numexpr", specifier = ">=2.8.6,<3.0.0" },
+ { name = "pyarrow", specifier = ">=19.0.1,<22.0.0" },
+ { name = "pydantic", specifier = ">=2.9.0,<3.0.0" },
+ { name = "validators", specifier = ">=0.22.0,<1.0.0" },
+]
+provides-extras = ["anthropic", "mistral"]
+
+[package.metadata.requires-dev]
+dev = []
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "anthropic", specifier = ">=0.64.0,<1.0.0" },
+ { name = "freezegun", specifier = ">=1.5.0,<2.0.0" },
+ { name = "google-api-python-client", specifier = ">=2.117.0,<3.0.0" },
+ { name = "langchain", specifier = ">=1.0.0rc2,<2.0.0" },
+ { name = "langchain-tests", specifier = ">=1.0.0,<2.0.0" },
+ { name = "pytest", specifier = ">=8.4.0,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.0,<2.0.0" },
+ { name = "pytest-mock", specifier = ">=3.14.0,<4.0.0" },
+ { name = "pytest-order", specifier = ">=1.3.0,<2.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<2.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.4.0,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.8.0,<4.0.0" },
+ { name = "syrupy", specifier = ">=4.9.0,<5.0.0" },
+ { name = "types-protobuf", specifier = ">=4.24.0.4,<7.0.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0,<3.0.0" },
+ { name = "validators", specifier = ">=0.35.0,<1.0.0" },
+]
+test-integration = [
+ { name = "google-api-python-client", specifier = ">=2.114.0,<3.0.0" },
+ { name = "google-cloud-datastore", specifier = ">=2.19.0,<3.0.0" },
+ { name = "langchain-mistralai", specifier = ">=0.2.12,<2.0.0" },
+ { name = "langchain-tests", specifier = ">=1.0.0,<2.0.0" },
+ { name = "numexpr", marker = "python_full_version >= '3.9'", specifier = ">=2.8.8" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+]
+typing = [
+ { name = "anthropic", specifier = ">=0.64.0,<1.0.0" },
+ { name = "mypy", specifier = ">=1.18.1,<1.19.0" },
+ { name = "types-google-cloud-ndb", specifier = ">=2.2.0.20240106,<3.0.0.0" },
+ { name = "types-protobuf", specifier = ">=4.24.0.4,<5.0.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0,<3.0.0" },
+]
+
[[package]]
name = "langchain-groq"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fgroq#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/groq" }
dependencies = [
{ name = "groq" },
{ name = "langchain-core" },
]
+[package.metadata]
+requires-dist = [
+ { name = "groq", specifier = ">=0.30.0,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<1.8.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+]
+test-integration = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+]
+
[[package]]
name = "langchain-mcp-adapters"
version = "0.1.10"
-source = { git = "https://github.com/langchain-ai/langchain-mcp-adapters.git#4db3ccbb65355bbda07f221f093bd9568733b1e2" }
+source = { editable = "../../../langchain-mcp-adapters" }
dependencies = [
{ name = "langchain-core" },
{ name = "mcp" },
{ name = "typing-extensions" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", specifier = ">=0.3.36,<2.0.0" },
+ { name = "mcp", specifier = ">=1.9.2" },
+ { name = "typing-extensions", specifier = ">=4.14.0" },
+]
+
+[package.metadata.requires-dev]
+test = [
+ { name = "mypy", specifier = ">=1.8.0" },
+ { name = "pytest", specifier = ">=8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.26.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0" },
+ { name = "pytest-timeout", specifier = ">=2.4.0" },
+ { name = "ruff", specifier = ">=0.9.4" },
+ { name = "types-setuptools", specifier = ">=69.0.0" },
+ { name = "websockets", specifier = ">=15.0.1" },
+]
+
[[package]]
name = "langchain-mongodb"
-version = "0.7.1"
-source = { git = "https://github.com/langchain-ai/langchain-mongodb.git?subdirectory=libs%2Flangchain-mongodb#b457a5b60eddb739b06c36483a6f6765449c0243" }
+version = "0.7.0"
+source = { editable = "../../../langchain-mongodb/libs/langchain-mongodb" }
dependencies = [
{ name = "langchain" },
{ name = "langchain-core" },
@@ -1818,63 +2425,291 @@ dependencies = [
{ name = "pymongo" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain", specifier = ">=0.3" },
+ { name = "langchain-core", specifier = ">=0.3" },
+ { name = "langchain-text-splitters", specifier = ">=0.3" },
+ { name = "lark", specifier = ">=1.1.9,<2.0.0" },
+ { name = "numpy", specifier = ">=1.26" },
+ { name = "pymongo", specifier = ">=4.6.1" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "flaky", specifier = ">=3.8.1" },
+ { name = "freezegun", specifier = ">=1.2.2" },
+ { name = "langchain", specifier = ">=0.3.14" },
+ { name = "langchain-community", specifier = ">=0.3.27" },
+ { name = "langchain-core", specifier = ">=0.3.29" },
+ { name = "langchain-ollama", specifier = ">=0.2.2" },
+ { name = "langchain-openai", specifier = ">=0.2.14" },
+ { name = "langchain-tests", specifier = "==0.3.22" },
+ { name = "langchain-text-splitters", specifier = ">=0.3.5" },
+ { name = "langgraph", specifier = ">=0.2.72" },
+ { name = "mongomock", specifier = ">=4.2.0.post1" },
+ { name = "mypy", specifier = ">=1.10" },
+ { name = "pip", specifier = ">=25.0.1" },
+ { name = "pre-commit", specifier = ">=4.0" },
+ { name = "pypdf", specifier = ">=5.0.1" },
+ { name = "pytest", specifier = ">=7.3.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1" },
+ { name = "pytest-mock", specifier = ">=3.10.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4" },
+ { name = "simsimd", specifier = ">=6.5.0" },
+ { name = "syrupy", specifier = ">=4.0.2" },
+ { name = "typing-extensions", specifier = ">=4.12.2" },
+]
+
[[package]]
name = "langchain-nomic"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fnomic#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/nomic" }
dependencies = [
{ name = "langchain-core" },
{ name = "nomic" },
{ name = "pillow" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "nomic", specifier = ">=3.5.3,<4.0.0" },
+ { name = "pillow", specifier = ">=10.3.0,<11.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-benchmark" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=0.991.0,<1.0.0" },
+]
+
[[package]]
name = "langchain-ollama"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Follama#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/ollama" }
dependencies = [
{ name = "langchain-core" },
{ name = "ollama" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "ollama", specifier = ">=0.6.0,<1.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=8.4.1,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.26.0,<1.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.4.3,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.9.1,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.17.1,<2.0.0" },
+]
+
[[package]]
name = "langchain-openai"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fopenai#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/openai" }
dependencies = [
{ name = "langchain-core" },
{ name = "openai" },
{ name = "tiktoken" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "openai", specifier = ">=1.109.1,<3.0.0" },
+ { name = "tiktoken", specifier = ">=0.7.0,<1.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain", editable = "../../../langchain/libs/langchain_v1" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "langgraph-prebuilt", specifier = ">=0.7.0rc1" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-cov", specifier = ">=4.1.0,<5.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<1.8.0" },
+ { name = "pytest-socket", specifier = ">=0.6.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.6.1,<4.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+ { name = "vcrpy", specifier = ">=7.0.0,<8.0.0" },
+]
+test-integration = [
+ { name = "httpx", specifier = ">=0.27.0,<1.0.0" },
+ { name = "numpy", marker = "python_full_version < '3.13'", specifier = ">=1.26.4" },
+ { name = "numpy", marker = "python_full_version >= '3.13'", specifier = ">=2.1.0" },
+ { name = "pillow", specifier = ">=10.3.0,<12.0.0" },
+]
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.17.1,<2.0.0" },
+ { name = "types-tqdm", specifier = ">=4.66.0.5,<5.0.0.0" },
+]
+
[[package]]
name = "langchain-perplexity"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fperplexity#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/perplexity" }
dependencies = [
{ name = "langchain-core" },
{ name = "openai" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "openai", specifier = ">=2.0.0,<3.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-cov", specifier = ">=4.1.0,<5.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-retry", specifier = ">=1.7.0,<1.8.0" },
+ { name = "pytest-socket", specifier = ">=0.6.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.6.1,<4.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = [
+ { name = "httpx", specifier = ">=0.27.0,<1.0.0" },
+ { name = "pillow", specifier = ">=10.3.0,<12.0.0" },
+]
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+ { name = "types-tqdm", specifier = ">=4.66.0.5,<5.0.0.0" },
+]
+
[[package]]
name = "langchain-prompty"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fprompty#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/prompty" }
dependencies = [
{ name = "langchain-core" },
{ name = "pyyaml" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "pyyaml", specifier = ">=6.0.1,<7.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "types-pyyaml", specifier = ">=6.0.12.20240311,<7.0.0.0" },
+]
+lint = [
+ { name = "ruff", specifier = ">=0.13.1,<0.14.0" },
+ { name = "types-urllib3", specifier = ">=1.26.25.14,<2.0.0.0" },
+]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-classic", editable = "../../../langchain/libs/langchain" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "langchain-text-splitters", editable = "../../../langchain/libs/text-splitters" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-benchmark" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.18.1,<1.19.0" },
+ { name = "types-pyyaml", specifier = ">=6.0.12.20240311,<7.0.0.0" },
+]
+
[[package]]
name = "langchain-qdrant"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fqdrant#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/qdrant" }
dependencies = [
{ name = "langchain-core" },
{ name = "pydantic" },
{ name = "qdrant-client" },
]
+[package.metadata]
+requires-dist = [
+ { name = "fastembed", marker = "python_full_version >= '3.9' and python_full_version < '3.13' and extra == 'fastembed'", specifier = ">=0.3.3,<1.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "pydantic", specifier = ">=2.7.4,<3.0.0" },
+ { name = "qdrant-client", specifier = ">=1.10.1,<2.0.0" },
+]
+provides-extras = ["fastembed"]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-benchmark" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "requests", specifier = ">=2.31.0,<3.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+ { name = "simsimd", specifier = ">=6.0.0,<7.0.0" },
+]
+
[[package]]
name = "langchain-reference-docs"
version = "0.1.0"
@@ -1931,36 +2766,36 @@ dependencies = [
requires-dist = [
{ name = "griffe-inherited-docstrings", specifier = ">=1.1.2,<2.0.0" },
{ name = "griffe-warnings-deprecated", specifier = ">=1.1.0,<2.0.0" },
- { name = "langchain", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Flangchain_v1" },
- { name = "langchain-anthropic", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fanthropic" },
- { name = "langchain-astradb", git = "https://github.com/langchain-ai/langchain-datastax.git?subdirectory=libs%2Fastradb" },
- { name = "langchain-aws", git = "https://github.com/langchain-ai/langchain-aws.git?subdirectory=libs%2Faws" },
- { name = "langchain-chroma", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fchroma" },
- { name = "langchain-classic", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Flangchain" },
- { name = "langchain-core", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fcore" },
- { name = "langchain-deepseek", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fdeepseek" },
- { name = "langchain-exa", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fexa" },
- { name = "langchain-fireworks", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Ffireworks" },
- { name = "langchain-google-community", git = "https://github.com/langchain-ai/langchain-google.git?subdirectory=libs%2Fcommunity" },
- { name = "langchain-google-genai", git = "https://github.com/langchain-ai/langchain-google.git?subdirectory=libs%2Fgenai" },
- { name = "langchain-google-vertexai", git = "https://github.com/langchain-ai/langchain-google.git?subdirectory=libs%2Fvertexai" },
- { name = "langchain-groq", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fgroq" },
- { name = "langchain-mcp-adapters", git = "https://github.com/langchain-ai/langchain-mcp-adapters.git" },
- { name = "langchain-mongodb", git = "https://github.com/langchain-ai/langchain-mongodb.git?subdirectory=libs%2Flangchain-mongodb" },
- { name = "langchain-nomic", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fnomic" },
- { name = "langchain-ollama", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Follama" },
- { name = "langchain-openai", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fopenai" },
- { name = "langchain-perplexity", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fperplexity" },
- { name = "langchain-prompty", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fprompty" },
- { name = "langchain-qdrant", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fqdrant" },
- { name = "langchain-tavily", git = "https://github.com/tavily-ai/langchain-tavily.git" },
- { name = "langchain-xai", git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fxai" },
- { name = "langgraph", git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Flanggraph" },
- { name = "langgraph-checkpoint", git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fcheckpoint" },
- { name = "langgraph-checkpoint-postgres", git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fcheckpoint-postgres" },
- { name = "langgraph-checkpoint-sqlite", git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fcheckpoint-sqlite" },
- { name = "langgraph-prebuilt", git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fprebuilt" },
- { name = "langgraph-sdk", git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fsdk-py" },
+ { name = "langchain", editable = "../../../langchain/libs/langchain_v1" },
+ { name = "langchain-anthropic", editable = "../../../langchain/libs/partners/anthropic" },
+ { name = "langchain-astradb", editable = "../../../langchain-datastax/libs/astradb" },
+ { name = "langchain-aws", editable = "../../../langchain-aws/libs/aws" },
+ { name = "langchain-chroma", editable = "../../../langchain/libs/partners/chroma" },
+ { name = "langchain-classic", editable = "../../../langchain/libs/langchain" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-deepseek", editable = "../../../langchain/libs/partners/deepseek" },
+ { name = "langchain-exa", editable = "../../../langchain/libs/partners/exa" },
+ { name = "langchain-fireworks", editable = "../../../langchain/libs/partners/fireworks" },
+ { name = "langchain-google-community", editable = "../../../langchain-google/libs/community" },
+ { name = "langchain-google-genai", editable = "../../../langchain-google/libs/genai" },
+ { name = "langchain-google-vertexai", editable = "../../../langchain-google/libs/vertexai" },
+ { name = "langchain-groq", editable = "../../../langchain/libs/partners/groq" },
+ { name = "langchain-mcp-adapters", editable = "../../../langchain-mcp-adapters" },
+ { name = "langchain-mongodb", editable = "../../../langchain-mongodb/libs/langchain-mongodb" },
+ { name = "langchain-nomic", editable = "../../../langchain/libs/partners/nomic" },
+ { name = "langchain-ollama", editable = "../../../langchain/libs/partners/ollama" },
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-perplexity", editable = "../../../langchain/libs/partners/perplexity" },
+ { name = "langchain-prompty", editable = "../../../langchain/libs/partners/prompty" },
+ { name = "langchain-qdrant", editable = "../../../langchain/libs/partners/qdrant" },
+ { name = "langchain-tavily", editable = "../../../langchain-tavily" },
+ { name = "langchain-xai", editable = "../../../langchain/libs/partners/xai" },
+ { name = "langgraph", editable = "../../../langgraph/libs/langgraph" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "langgraph-checkpoint-postgres", editable = "../../../langgraph/libs/checkpoint-postgres" },
+ { name = "langgraph-checkpoint-sqlite", editable = "../../../langgraph/libs/checkpoint-sqlite" },
+ { name = "langgraph-prebuilt", editable = "../../../langgraph/libs/prebuilt" },
+ { name = "langgraph-sdk", editable = "../../../langgraph/libs/sdk-py" },
{ name = "markdown-callouts", specifier = ">=0.3.0,<1.0.0" },
{ name = "markdown-include", specifier = ">=0.8.1,<1.0.0" },
{ name = "mkdocs", specifier = ">=1.6.0,<2.0.0" },
@@ -1979,7 +2814,7 @@ requires-dist = [
[[package]]
name = "langchain-tavily"
version = "0.2.12"
-source = { git = "https://github.com/tavily-ai/langchain-tavily.git#e12637c1bd2ea6f935cd3a2bda7f96b6cd7a4fba" }
+source = { editable = "../../../langchain-tavily" }
dependencies = [
{ name = "aiohttp" },
{ name = "langchain" },
@@ -1987,18 +2822,67 @@ dependencies = [
{ name = "requests" },
]
+[package.metadata]
+requires-dist = [
+ { name = "aiohttp", specifier = ">=3.11.14,<4.0.0" },
+ { name = "langchain", specifier = ">=0.3.20,<2.0.0" },
+ { name = "langchain-core", specifier = ">=0.3.15,<2.0.0" },
+ { name = "requests", specifier = ">=2.32.3,<3.0.0" },
+]
+
[[package]]
name = "langchain-text-splitters"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Ftext-splitters#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/text-splitters" }
dependencies = [
{ name = "langchain-core" },
]
+[package.metadata]
+requires-dist = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "jupyter", specifier = ">=1.0.0,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+]
+lint = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "ruff", specifier = ">=0.13.1,<0.14.0" },
+]
+test = [
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "pytest", specifier = ">=8.0.0,<9.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "pytest-xdist", specifier = ">=3.6.1,<4.0.0" },
+]
+test-integration = [
+ { name = "en-core-web-sm", url = "https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.8.0/en_core_web_sm-3.8.0-py3-none-any.whl" },
+ { name = "nltk", specifier = ">=3.9.1,<4.0.0" },
+ { name = "scipy", marker = "python_full_version == '3.12.*'", specifier = ">=1.7.0,<2.0.0" },
+ { name = "scipy", marker = "python_full_version >= '3.13'", specifier = ">=1.14.1,<2.0.0" },
+ { name = "sentence-transformers", marker = "python_full_version < '3.14'", specifier = ">=3.0.1,<4.0.0" },
+ { name = "spacy", marker = "python_full_version < '3.14'", specifier = ">=3.8.7,<4.0.0" },
+ { name = "thinc", specifier = ">=8.3.6,<9.0.0" },
+ { name = "tiktoken", specifier = ">=0.8.0,<1.0.0" },
+ { name = "transformers", specifier = ">=4.51.3,<5.0.0" },
+]
+typing = [
+ { name = "beautifulsoup4", specifier = ">=4.13.5,<5.0.0" },
+ { name = "lxml-stubs", specifier = ">=0.5.1,<1.0.0" },
+ { name = "mypy", specifier = ">=1.18.1,<1.19.0" },
+ { name = "tiktoken", specifier = ">=0.8.0,<1.0.0" },
+ { name = "types-requests", specifier = ">=2.31.0.20240218,<3.0.0.0" },
+]
+
[[package]]
name = "langchain-xai"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langchain.git?subdirectory=libs%2Fpartners%2Fxai#a47386f6dce4552ccf3fce3b838f3f239c658298" }
+source = { editable = "../../../langchain/libs/partners/xai" }
dependencies = [
{ name = "aiohttp" },
{ name = "langchain-core" },
@@ -2006,10 +2890,41 @@ dependencies = [
{ name = "requests" },
]
+[package.metadata]
+requires-dist = [
+ { name = "aiohttp", specifier = ">=3.9.1,<4.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+ { name = "requests", specifier = ">=2.0.0,<3.0.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [{ name = "langchain-core", editable = "../../../langchain/libs/core" }]
+lint = [{ name = "ruff", specifier = ">=0.13.1,<0.14.0" }]
+test = [
+ { name = "docarray", specifier = ">=0.32.1,<1.0.0" },
+ { name = "freezegun", specifier = ">=1.2.2,<2.0.0" },
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "langchain-openai", editable = "../../../langchain/libs/partners/openai" },
+ { name = "langchain-tests", editable = "../../../langchain/libs/standard-tests" },
+ { name = "pytest", specifier = ">=7.3.0,<8.0.0" },
+ { name = "pytest-asyncio", specifier = ">=0.21.1,<1.0.0" },
+ { name = "pytest-mock", specifier = ">=3.10.0,<4.0.0" },
+ { name = "pytest-socket", specifier = ">=0.7.0,<1.0.0" },
+ { name = "pytest-watcher", specifier = ">=0.3.4,<1.0.0" },
+ { name = "syrupy", specifier = ">=4.0.2,<5.0.0" },
+]
+test-integration = []
+typing = [
+ { name = "langchain-core", editable = "../../../langchain/libs/core" },
+ { name = "mypy", specifier = ">=1.10.0,<2.0.0" },
+ { name = "types-requests", specifier = ">=2.0.0,<3.0.0" },
+]
+
[[package]]
name = "langgraph"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Flanggraph#d298b489b477b6b6d479faf80b20aeba89a96ba5" }
+source = { editable = "../../../langgraph/libs/langgraph" }
dependencies = [
{ name = "langchain-core" },
{ name = "langgraph-checkpoint" },
@@ -2019,19 +2934,128 @@ dependencies = [
{ name = "xxhash" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", specifier = ">=0.1" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "langgraph-prebuilt", editable = "../../../langgraph/libs/prebuilt" },
+ { name = "langgraph-sdk", editable = "../../../langgraph/libs/sdk-py" },
+ { name = "pydantic", specifier = ">=2.7.4" },
+ { name = "xxhash", specifier = ">=3.5.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "httpx" },
+ { name = "jupyter" },
+ { name = "langchain-core", specifier = "==1.0.0a1" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "langgraph-checkpoint-postgres", editable = "../../../langgraph/libs/checkpoint-postgres" },
+ { name = "langgraph-checkpoint-sqlite", editable = "../../../langgraph/libs/checkpoint-sqlite" },
+ { name = "langgraph-cli", marker = "python_full_version < '3.14'", editable = "../../../langgraph/libs/cli" },
+ { name = "langgraph-cli", extras = ["inmem"], marker = "python_full_version < '3.14'", editable = "../../../langgraph/libs/cli" },
+ { name = "langgraph-prebuilt", editable = "../../../langgraph/libs/prebuilt" },
+ { name = "langgraph-sdk", editable = "../../../langgraph/libs/sdk-py" },
+ { name = "mypy" },
+ { name = "psycopg", extras = ["binary"] },
+ { name = "py-spy" },
+ { name = "pycryptodome" },
+ { name = "pyperf" },
+ { name = "pytest" },
+ { name = "pytest-cov" },
+ { name = "pytest-dotenv" },
+ { name = "pytest-mock" },
+ { name = "pytest-repeat" },
+ { name = "pytest-watcher" },
+ { name = "pytest-xdist", extras = ["psutil"] },
+ { name = "redis" },
+ { name = "ruff" },
+ { name = "syrupy" },
+ { name = "types-requests" },
+ { name = "uvloop", specifier = "==0.21.0b1" },
+]
+lint = [
+ { name = "mypy" },
+ { name = "ruff" },
+ { name = "types-requests" },
+]
+test = [
+ { name = "httpx" },
+ { name = "langchain-core", specifier = "==1.0.0a1" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "langgraph-checkpoint-postgres", editable = "../../../langgraph/libs/checkpoint-postgres" },
+ { name = "langgraph-checkpoint-sqlite", editable = "../../../langgraph/libs/checkpoint-sqlite" },
+ { name = "langgraph-cli", marker = "python_full_version < '3.14'", editable = "../../../langgraph/libs/cli" },
+ { name = "langgraph-cli", extras = ["inmem"], marker = "python_full_version < '3.14'", editable = "../../../langgraph/libs/cli" },
+ { name = "langgraph-prebuilt", editable = "../../../langgraph/libs/prebuilt" },
+ { name = "langgraph-sdk", editable = "../../../langgraph/libs/sdk-py" },
+ { name = "psycopg", extras = ["binary"] },
+ { name = "py-spy" },
+ { name = "pycryptodome" },
+ { name = "pyperf" },
+ { name = "pytest" },
+ { name = "pytest-cov" },
+ { name = "pytest-dotenv" },
+ { name = "pytest-mock" },
+ { name = "pytest-repeat" },
+ { name = "pytest-watcher" },
+ { name = "pytest-xdist", extras = ["psutil"] },
+ { name = "redis" },
+ { name = "syrupy" },
+ { name = "uvloop", specifier = "==0.21.0b1" },
+]
+
[[package]]
name = "langgraph-checkpoint"
version = "2.1.2"
-source = { git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fcheckpoint#d298b489b477b6b6d479faf80b20aeba89a96ba5" }
+source = { editable = "../../../langgraph/libs/checkpoint" }
dependencies = [
{ name = "langchain-core" },
{ name = "ormsgpack" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", specifier = ">=0.2.38" },
+ { name = "ormsgpack", specifier = ">=1.10.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "codespell" },
+ { name = "dataclasses-json" },
+ { name = "mypy" },
+ { name = "numpy" },
+ { name = "pandas" },
+ { name = "pandas-stubs", specifier = ">=2.2.2.240807" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watcher" },
+ { name = "redis" },
+ { name = "ruff" },
+]
+lint = [
+ { name = "codespell" },
+ { name = "mypy" },
+ { name = "ruff" },
+]
+test = [
+ { name = "dataclasses-json" },
+ { name = "numpy" },
+ { name = "pandas" },
+ { name = "pandas-stubs", specifier = ">=2.2.2.240807" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watcher" },
+ { name = "redis" },
+]
+
[[package]]
name = "langgraph-checkpoint-postgres"
version = "2.0.25"
-source = { git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fcheckpoint-postgres#d298b489b477b6b6d479faf80b20aeba89a96ba5" }
+source = { editable = "../../../langgraph/libs/checkpoint-postgres" }
dependencies = [
{ name = "langgraph-checkpoint" },
{ name = "orjson" },
@@ -2039,34 +3063,170 @@ dependencies = [
{ name = "psycopg-pool" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "orjson", specifier = ">=3.10.1" },
+ { name = "psycopg", specifier = ">=3.2.0" },
+ { name = "psycopg-pool", specifier = ">=3.2.0" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "anyio" },
+ { name = "codespell" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "mypy" },
+ { name = "psycopg", extras = ["binary"] },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watcher" },
+ { name = "ruff" },
+]
+lint = [
+ { name = "codespell" },
+ { name = "mypy" },
+ { name = "ruff" },
+]
+test = [
+ { name = "anyio" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "psycopg", extras = ["binary"] },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watcher" },
+]
+
[[package]]
name = "langgraph-checkpoint-sqlite"
version = "2.0.11"
-source = { git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fcheckpoint-sqlite#d298b489b477b6b6d479faf80b20aeba89a96ba5" }
+source = { editable = "../../../langgraph/libs/checkpoint-sqlite" }
dependencies = [
{ name = "aiosqlite" },
{ name = "langgraph-checkpoint" },
{ name = "sqlite-vec" },
]
+[package.metadata]
+requires-dist = [
+ { name = "aiosqlite", specifier = ">=0.20" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "sqlite-vec", specifier = ">=0.1.6" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "codespell" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "mypy" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-retry", specifier = ">=1.7.0" },
+ { name = "pytest-watcher" },
+ { name = "ruff" },
+]
+lint = [
+ { name = "codespell" },
+ { name = "mypy" },
+ { name = "ruff" },
+]
+test = [
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-retry", specifier = ">=1.7.0" },
+ { name = "pytest-watcher" },
+]
+
[[package]]
name = "langgraph-prebuilt"
version = "1.0.0"
-source = { git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fprebuilt#d298b489b477b6b6d479faf80b20aeba89a96ba5" }
+source = { editable = "../../../langgraph/libs/prebuilt" }
dependencies = [
{ name = "langchain-core" },
{ name = "langgraph-checkpoint" },
]
+[package.metadata]
+requires-dist = [
+ { name = "langchain-core", specifier = ">=0.3.67" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "codespell" },
+ { name = "langchain-core" },
+ { name = "langgraph", editable = "../../../langgraph/libs/langgraph" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "langgraph-checkpoint-postgres", editable = "../../../langgraph/libs/checkpoint-postgres" },
+ { name = "langgraph-checkpoint-sqlite", editable = "../../../langgraph/libs/checkpoint-sqlite" },
+ { name = "mypy" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watcher" },
+ { name = "ruff" },
+ { name = "syrupy" },
+]
+lint = [
+ { name = "codespell" },
+ { name = "mypy" },
+ { name = "ruff" },
+]
+test = [
+ { name = "langchain-core" },
+ { name = "langgraph", editable = "../../../langgraph/libs/langgraph" },
+ { name = "langgraph-checkpoint", editable = "../../../langgraph/libs/checkpoint" },
+ { name = "langgraph-checkpoint-postgres", editable = "../../../langgraph/libs/checkpoint-postgres" },
+ { name = "langgraph-checkpoint-sqlite", editable = "../../../langgraph/libs/checkpoint-sqlite" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watcher" },
+ { name = "syrupy" },
+]
+
[[package]]
name = "langgraph-sdk"
-version = "0.2.9"
-source = { git = "https://github.com/langchain-ai/langgraph?subdirectory=libs%2Fsdk-py#d298b489b477b6b6d479faf80b20aeba89a96ba5" }
+source = { editable = "../../../langgraph/libs/sdk-py" }
dependencies = [
{ name = "httpx" },
{ name = "orjson" },
]
+[package.metadata]
+requires-dist = [
+ { name = "httpx", specifier = ">=0.25.2" },
+ { name = "orjson", specifier = ">=3.10.1" },
+]
+
+[package.metadata.requires-dev]
+dev = [
+ { name = "codespell" },
+ { name = "mypy" },
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watch" },
+ { name = "ruff" },
+]
+lint = [
+ { name = "codespell" },
+ { name = "mypy" },
+ { name = "ruff" },
+]
+test = [
+ { name = "pytest" },
+ { name = "pytest-asyncio" },
+ { name = "pytest-mock" },
+ { name = "pytest-watch" },
+]
+
[[package]]
name = "langsmith"
version = "0.4.37"
diff --git a/src/oss/python/integrations/providers/azure_ai.mdx b/src/oss/python/integrations/providers/azure_ai.mdx
index f9aed9a02..a0415e2c0 100644
--- a/src/oss/python/integrations/providers/azure_ai.mdx
+++ b/src/oss/python/integrations/providers/azure_ai.mdx
@@ -2,7 +2,7 @@
title: Azure AI
---
-All functionality related to [Azure AI Foundry](https://learn.microsoft.com/en-us/azure/developer/python/get-started) and its related projects.
+All LangChain integrations with [Microsoft Azure](https://azure.microsoft.com/) and its related projects.
Integration packages for Azure AI, Dynamic Sessions, SQL Server are maintained in
the [langchain-azure](https://github.com/langchain-ai/langchain-azure) repository.
@@ -11,7 +11,7 @@ the [langchain-azure](https://github.com/langchain-ai/langchain-azure) repositor
We recommend developers start with the (`langchain-azure-ai`) to access all the models available in [Azure AI Foundry](https://learn.microsoft.com/en-us/azure/ai-studio/how-to/model-catalog-overview).
-### Azure AI Chat Completions Model
+### Azure AI chat completions
Access models like Azure OpenAI, DeepSeek R1, Cohere, Phi and Mistral using the `AzureAIChatCompletionsModel` class.
@@ -71,3 +71,84 @@ embed_model = AzureAIEmbeddingsModel(
model_name="text-embedding-ada-002"
)
```
+
+## Vector stores
+
+### Azure CosmosDB NoSQL Vector Search
+
+> [Azure CosmosDB NoSQL](https://azure.microsoft.com/en-us/products/cosmos-db/) is a fully managed,
+> globally distributed, serverless document database for modern applications. It stores data in flexible
+> JSON documents and uses a SQL-like query language. This provides high performance, low latency, and automatic,
+> elastic scalability. It also features integrated vector search capabilities for AI workloads
+> like generative AI and RAG. This allows you to store, index, and query vector embeddings alongside
+> your operational data in the same database. You can combine vector similarity search with traditional
+> keyword-based search for relevant results and choose from various indexing methods for optimal performance.
+> This unified approach simplifies application architecture and ensures data consistency.
+
+We need to install the `azure-cosmos` package to use this vector store.
+
+
+ ```bash pip
+ pip install -qU azure-cosmos
+ ```
+
+ ```bash uv
+ uv add azure-cosmos
+ ```
+
+
+```python
+from langchain_azure_ai.vectorstores.azure_cosmos_db_no_sql import (
+ AzureCosmosDBNoSqlVectorSearch,
+)
+vector_search = AzureCosmosDBNoSqlVectorSearch.from_documents(
+ documents=docs,
+ embedding=openai_embeddings,
+ cosmos_client=cosmos_client,
+ database_name=database_name,
+ container_name=container_name,
+ vector_embedding_policy=vector_embedding_policy,
+ full_text_policy=full_text_policy,
+ indexing_policy=indexing_policy,
+ cosmos_container_properties=cosmos_container_properties,
+ cosmos_database_properties={},
+ full_text_search_enabled=True,
+)
+```
+
+See a [usage example](/oss/integrations/vectorstores/azure_cosmos_db_no_sql).
+
+
+### Azure CosmosDB Mongo vCore Vector Search
+
+> [Azure CosmosDB Mongo vCore](https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/vcore/) architecture makes
+it easy to create a database with full native MongoDB support. You can apply your MongoDB experience and continue
+to use your favorite MongoDB drivers, SDKs, and tools by pointing your application to the API for MongoDB (vCore)
+cluster's connection string.
+
+We need to install the `pymongo` package to use this vector store.
+
+
+ ```bash pip
+ pip install -qU pymongo
+ ```
+
+ ```bash uv
+ uv add pymongo
+ ```
+
+
+```python
+from langchain_azure_ai.vectorstores.azure_cosmos_db_mongo_vcore import (
+ AzureCosmosDBMongoVCoreVectorSearch,
+)
+
+vectorstore = AzureCosmosDBMongoVCoreVectorSearch.from_documents(
+ docs,
+ openai_embeddings,
+ collection=collection,
+ index_name=INDEX_NAME,
+)
+```
+
+See a [usage example](/oss/integrations/vectorstores/azure_cosmos_db_mongo_vcore).
diff --git a/src/oss/python/integrations/vectorstores/azure_cosmos_db.mdx b/src/oss/python/integrations/vectorstores/azure_cosmos_db_mongo_vcore.mdx
similarity index 88%
rename from src/oss/python/integrations/vectorstores/azure_cosmos_db.mdx
rename to src/oss/python/integrations/vectorstores/azure_cosmos_db_mongo_vcore.mdx
index 33cfaea2c..58949614b 100644
--- a/src/oss/python/integrations/vectorstores/azure_cosmos_db.mdx
+++ b/src/oss/python/integrations/vectorstores/azure_cosmos_db_mongo_vcore.mdx
@@ -6,12 +6,12 @@ This notebook shows you how to leverage this integrated [vector database](https:
Azure Cosmos DB is the database that powers OpenAI's ChatGPT service. It offers single-digit millisecond response times, automatic and instant scalability, along with guaranteed speed at any scale.
-Azure Cosmos DB for MongoDB vCore([learn.microsoft.com/en-us/azure/cosmos-db/mongodb/vcore/](https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/vcore/)) provides developers with a fully managed MongoDB-compatible database service for building modern applications with a familiar architecture. You can apply your MongoDB experience and continue to use your favorite MongoDB drivers, SDKs, and tools by pointing your application to the API for MongoDB vCore account's connection string.
+[Azure Cosmos DB for MongoDB vCore](learn.microsoft.com/en-us/azure/cosmos-db/mongodb/vcore/) provides developers with a fully managed MongoDB-compatible database service for building modern applications with a familiar architecture. You can apply your MongoDB experience and continue to use your favorite MongoDB drivers, SDKs, and tools by pointing your application to the API for MongoDB vCore account's connection string.
[Sign Up](https://azure.microsoft.com/en-us/free/) for lifetime free access to get started today.
```python
-pip install -qU pymongo langchain-openai langchain-community
+%pip install -qU pymongo langchain-openai langchain-azure-ai
```
```output
@@ -22,8 +22,8 @@ Note: you may need to restart the kernel to use updated packages.
import os
CONNECTION_STRING = "YOUR_CONNECTION_STRING"
-INDEX_NAME = "izzy-test-index"
-NAMESPACE = "izzy_test_db.izzy_test_collection"
+INDEX_NAME = "langchain-test-index"
+NAMESPACE = "langchain_test_db.langchain_test_collection"
DB_NAME, COLLECTION_NAME = NAMESPACE.split(".")
```
@@ -35,7 +35,8 @@ We want to use `AzureOpenAIEmbeddings` so we need to set up our Azure OpenAI API
os.environ["AZURE_OPENAI_API_KEY"] = "YOUR_AZURE_OPENAI_API_KEY"
os.environ["AZURE_OPENAI_ENDPOINT"] = "YOUR_AZURE_OPENAI_ENDPOINT"
os.environ["AZURE_OPENAI_API_VERSION"] = "2023-05-15"
-os.environ["OPENAI_EMBEDDINGS_MODEL_NAME"] = "text-embedding-ada-002" # the model name
+os.environ["OPENAI_EMBEDDINGS_MODEL_NAME"] = "text-embedding-ada-002"
+os.environ["OPENAI_EMBEDDINGS_DEPLOYMENT"] = "text-embedding-ada-002"
```
Now, we need to load the documents into the collection, create the index and then run our queries against the index to retrieve matches.
@@ -44,8 +45,8 @@ Please refer to the [documentation](https://learn.microsoft.com/en-us/azure/cosm
```python
from langchain_community.document_loaders import TextLoader
-from langchain_community.vectorstores.azure_cosmos_db import (
- AzureCosmosDBVectorSearch,
+from langchain_azure_ai.vectorstores.azure_cosmos_db_mongo_vcore import (
+ AzureCosmosDBMongoVCoreVectorSearch,
CosmosDBSimilarityType,
CosmosDBVectorSearchType,
)
@@ -94,7 +95,7 @@ model_deployment = os.getenv(
)
model_name = os.getenv("OPENAI_EMBEDDINGS_MODEL_NAME", "text-embedding-ada-002")
-vectorstore = AzureCosmosDBVectorSearch.from_documents(
+vectorstore = AzureCosmosDBMongoVCoreVectorSearch.from_documents(
docs,
openai_embeddings,
collection=collection,
@@ -177,7 +178,7 @@ And I did that 4 days ago, when I nominated Circuit Court of Appeals Judge Ketan
Once the documents have been loaded and the index has been created, you can now instantiate the vector store directly and run queries against the index
```python
-vectorstore = AzureCosmosDBVectorSearch.from_connection_string(
+vectorstore = AzureCosmosDBMongoVCoreVectorSearch.from_connection_string(
CONNECTION_STRING, NAMESPACE, openai_embeddings, index_name=INDEX_NAME
)
@@ -199,7 +200,7 @@ And I did that 4 days ago, when I nominated Circuit Court of Appeals Judge Ketan
```
```python
-vectorstore = AzureCosmosDBVectorSearch(
+vectorstore = AzureCosmosDBMongoVCoreVectorSearch(
collection, openai_embeddings, index_name=INDEX_NAME
)
@@ -222,10 +223,10 @@ And I did that 4 days ago, when I nominated Circuit Court of Appeals Judge Ketan
## Filtered vector search (Preview)
-Azure Cosmos DB for MongoDB supports pre-filtering with $lt, $lte, $eq, $neq, $gte, $gt, $in, $nin, and $regex. To use this feature, enable "filtering vector search" in the "Preview Features" tab of your Azure Subscription. Learn more about preview features [here](https://learn.microsoft.com/azure/cosmos-db/mongodb/vcore/vector-search#filtered-vector-search-preview).
+Azure Cosmos DB for MongoDB supports pre-filtering with `$lt`, `$lte`, `$eq`, `$neq`, `$gte`, `$gt`, `$in`, `$nin`, and `$regex`. To use this feature, enable `"filtering vector search"` in the "Preview Features" tab of your Azure Subscription. Learn more about preview features [here](https://learn.microsoft.com/azure/cosmos-db/mongodb/vcore/vector-search#filtered-vector-search-preview).
```python
-# create a filter index
+# Create a filter index
vectorstore.create_filter_index(
property_to_filter="metadata.source", index_name="filter_index"
)
@@ -268,7 +269,3 @@ len(docs)
```output
0
```
-
-```python
-
-```
diff --git a/src/oss/python/integrations/vectorstores/azure_cosmos_db_no_sql.mdx b/src/oss/python/integrations/vectorstores/azure_cosmos_db_no_sql.mdx
index 83239ec2c..4081aeec3 100644
--- a/src/oss/python/integrations/vectorstores/azure_cosmos_db_no_sql.mdx
+++ b/src/oss/python/integrations/vectorstores/azure_cosmos_db_no_sql.mdx
@@ -17,7 +17,7 @@ Please refer here for more details:
[Sign Up](https://azure.microsoft.com/en-us/free/) for lifetime free access to get started today.
```python
-pip install -qU azure-cosmos langchain-openai langchain-community
+%pip install -qU azure-cosmos langchain-openai langchain-azure-ai
```
```output
@@ -103,10 +103,10 @@ full_text_policy = {
```python
from azure.cosmos import CosmosClient, PartitionKey
-from langchain_community.vectorstores.azure_cosmos_db_no_sql import (
+from langchain_azure_ai.vectorstores.azure_cosmos_db_no_sql import (
AzureCosmosDBNoSqlVectorSearch,
)
-from langchain_openai import OpenAIEmbeddings
+from langchain_openai import AzureOpenAIEmbeddings
HOST = "AZURE_COSMOS_DB_ENDPOINT"
KEY = "AZURE_COSMOS_DB_KEY"
@@ -210,16 +210,12 @@ Score 5: 0.8272138555588135
```python
query = "What were the compute requirements for training GPT 4"
-pre_filter = {
- "conditions": [
- {"property": "metadata.page", "operator": "$eq", "value": 0},
- ],
-}
+where = "c.metadata.page = 0"
results = vector_search.similarity_search_with_score(
query=query,
k=5,
- pre_filter=pre_filter,
+ where=where,
)
# Display results
@@ -249,23 +245,15 @@ Score 4: 0.8209972517303962
## Full Text Search
```python
-from langchain_community.vectorstores.azure_cosmos_db_no_sql import CosmosDBQueryType
-
query = "What were the compute requirements for training GPT 4"
-pre_filter = {
- "conditions": [
- {
- "property": "text",
- "operator": "$full_text_contains_any",
- "value": "What were the compute requirements for training GPT 4",
- },
- ],
-}
+
+where = "FullTextContainsAny(c.description, 'compute', 'GPT-4')"
+
results = vector_search.similarity_search_with_score(
query=query,
k=5,
- query_type=CosmosDBQueryType.FULL_TEXT_SEARCH,
- pre_filter=pre_filter,
+ search_type="full_text_search",
+ where=where,
)
# Display results
@@ -295,10 +283,15 @@ Result 5: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf
```python
query = "What were the compute requirements for training GPT 4"
+full_text_rank_filter = [
+ {"search_field": "description", "search_text": "compute requirements GPT-4"}
+]
+
results = vector_search.similarity_search_with_score(
query=query,
k=5,
- query_type=CosmosDBQueryType.FULL_TEXT_RANK,
+ search_type="full_text_ranking",
+ full_text_rank_filter=full_text_rank_filter,
)
# Display results
@@ -328,15 +321,20 @@ Result 5: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf
```python
query = "What were the compute requirements for training GPT 4"
+full_text_rank_filter = [
+ {"search_field": "description", "search_text": "compute requirements GPT-4"}
+]
+
results = vector_search.similarity_search_with_score(
query=query,
k=5,
- query_type=CosmosDBQueryType.HYBRID,
+ search_type="hybrid",
+ full_text_rank_filter=full_text_rank_filter,
)
# Display results
for i in range(0, len(results)):
- print(f"Result {i + 1}: ", results[i][0].json())
+ print(f"Result {i + 1}: ", results[i][0])
print(f"Score {i + 1}: ", results[i][1])
print("\n")
```
@@ -367,20 +365,17 @@ Score 5: 0.8213247840132897
```python
query = "What were the compute requirements for training GPT 4"
-pre_filter = {
- "conditions": [
- {
- "property": "text",
- "operator": "$full_text_contains_any",
- "value": "compute requirements",
- },
- {"property": "metadata.page", "operator": "$eq", "value": 0},
- ],
- "logical_operator": "$and",
-}
+full_text_rank_filter = [
+ {"search_field": "description", "search_text": "compute requirements GPT-4"}
+]
+where = "c.metadata.page = 0"
results = vector_search.similarity_search_with_score(
- query=query, k=5, query_type=CosmosDBQueryType.HYBRID, pre_filter=pre_filter
+ query=query,
+ k=5,
+ search_type="hybrid",
+ where=where,
+ full_text_rank_filter=full_text_rank_filter,
)
# Display results
@@ -411,6 +406,54 @@ Result 5: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf
Score 5: 0.8213247840132897
```
-```python
+## Hybrid Search with custom projection
+
+```python
+query = "What were the compute requirements for training GPT 4"
+
+full_text_rank_filter = [
+ {"search_field": "description", "search_text": "compute requirements GPT-4"}
+]
+where = "c.metadata.page = 0"
+
+projection_mapping = {
+ "description": "text",
+ }
+
+results = vector_search.similarity_search_with_score(
+ query=query,
+ k=5,
+ search_type="hybrid",
+ where=where,
+ full_text_rank_filter=full_text_rank_filter,
+ projection_mapping=projection_mapping,
+)
+
+# Display results
+for i in range(0, len(results)):
+ print(f"Result {i + 1}: ", results[i][0].json())
+ print(f"Score {i + 1}: ", results[i][1])
+ print("\n")
+```
+
+```output
+Result 1: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf","page":97,"id":"36dfcd6c-d3cf-4e34-a5d6-cc4d63013cba"},"page_content":"Figure 11: Results on IF evaluations across GPT3.5, GPT3.5-Turbo, GPT-4-launch\n98","type":"Document"}
+Score 1: 0.8173275975778744
+
+
+Result 2: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf","page":7,"id":"3d6e4715-4a38-40b1-89f1-e768bad5f9c8"},"page_content":"Preliminary results on a narrow set of academic vision benchmarks can be found in the GPT-4 blog\npost [ 65]. We plan to release more information about GPT-4’s visual capabilities in follow-up work.\n8","type":"Document"}
+Score 2: 0.8176419674549597
+
+
+Result 3: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf","page":2,"id":"f2746fd3-bbcb-4197-b2d5-ee7b355b6009"},"page_content":"the HumanEval dataset. A power law fit to the smaller models (excluding GPT-4) is shown as the dotted\nline; this fit accurately predicts GPT-4’s performance. The x-axis is training compute normalized so that\nGPT-4 is 1.\n3","type":"Document"}
+Score 3: 0.8053881702559759
+
+
+Result 4: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf","page":0,"id":"9d59c3ed-deac-48cb-9382-a8ab079334e5"},"page_content":"performance based on models trained with no more than 1/1,000th the compute of\nGPT-4.\n1 Introduction\nThis technical report presents GPT-4, a large multimodal model capable of processing image and\ntext inputs and producing text outputs. Such models are an important area of study as they have the\npotential to be used in a wide range of applications, such as dialogue systems, text summarization,\nand machine translation. As such, they have been the subject of substantial interest and progress in\nrecent years [1–34].\nOne of the main goals of developing such models is to improve their ability to understand and generate\nnatural language text, particularly in more complex and nuanced scenarios. To test its capabilities\nin such scenarios, GPT-4 was evaluated on a variety of exams originally designed for humans. In\nthese evaluations it performs quite well and often outscores the vast majority of human test takers.","type":"Document"}
+Score 4: 0.8394796122122777
+
+
+Result 5: {"id":null,"metadata":{"source":"https://arxiv.org/pdf/2303.08774.pdf","page":1,"id":"20153a6c-7c2c-4328-9b0e-e3502d7ac4dd"},"page_content":"safety considerations above against the scientific value of further transparency.\n3 Predictable Scaling\nA large focus of the GPT-4 project was building a deep learning stack that scales predictably. The\nprimary reason is that for very large training runs like GPT-4, it is not feasible to do extensive\nmodel-specific tuning. To address this, we developed infrastructure and optimization methods that\nhave very predictable behavior across multiple scales. These improvements allowed us to reliably\npredict some aspects of the performance of GPT-4 from smaller models trained using 1,000×–\n10,000×less compute.\n3.1 Loss Prediction\nThe final loss of properly-trained large language models is thought to be well approximated by power\nlaws in the amount of compute used to train the model [41, 42, 2, 14, 15].\nTo verify the scalability of our optimization infrastructure, we predicted GPT-4’s final loss on our","type":"Document"}
+Score 5: 0.8213247840132897
```
diff --git a/src/oss/python/integrations/vectorstores/index.mdx b/src/oss/python/integrations/vectorstores/index.mdx
index 89c542641..c46e5c83b 100644
--- a/src/oss/python/integrations/vectorstores/index.mdx
+++ b/src/oss/python/integrations/vectorstores/index.mdx
@@ -407,6 +407,62 @@ vector_store = AstraDBVectorStore(
)
```
+
+
+
+```bash pip
+pip install -qU langchain-azure-ai azure-cosmos
+```
+
+```bash uv
+uv add langchain-azure-ai
+```
+
+
+```python
+from langchain_azure_ai.vectorstores.azure_cosmos_db_no_sql import (
+ AzureCosmosDBNoSqlVectorSearch,
+)
+vector_search = AzureCosmosDBNoSqlVectorSearch.from_documents(
+ documents=docs,
+ embedding=openai_embeddings,
+ cosmos_client=cosmos_client,
+ database_name=database_name,
+ container_name=container_name,
+ vector_embedding_policy=vector_embedding_policy,
+ full_text_policy=full_text_policy,
+ indexing_policy=indexing_policy,
+ cosmos_container_properties=cosmos_container_properties,
+ cosmos_database_properties={},
+ full_text_search_enabled=True,
+)
+```
+
+
+
+
+```bash pip
+pip install -qU langchain-azure-ai pymongo
+```
+
+```bash uv
+uv add pymongo
+```
+
+
+```python
+from langchain_azure_ai.vectorstores.azure_cosmos_db_mongo_vcore import (
+ AzureCosmosDBMongoVCoreVectorSearch,
+)
+
+vectorstore = AzureCosmosDBMongoVCoreVectorSearch.from_documents(
+ docs,
+ openai_embeddings,
+ collection=collection,
+ index_name=INDEX_NAME,
+)
+```
+
@@ -590,6 +646,8 @@ vector_store = QdrantVectorStore(
| Vectorstore | Delete by ID | Filtering | Search by Vector | Search with score | Async | Passes Standard Tests | Multi Tenancy | IDs in add Documents |
|------------|-------------|-----------|-----------------|------------------|--------|---------------------|---------------|-------------------|
| [`AstraDBVectorStore`](/oss/integrations/vectorstores/astradb) | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
+| [`AzureCosmosDBNoSqlVectorStore`](/oss/python/integrations/vectorstores/azure_cosmos_db_no_sql) | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
+| [`AzureCosmosDBMongoVCoreVectorStore`](/oss/python/integrations/vectorstores/azure_cosmos_db_mongo_vcore) | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
| [`Chroma`](/oss/integrations/vectorstores/chroma) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| [`Clickhouse`](/oss/integrations/vectorstores/clickhouse) | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ |
| [`CouchbaseSearchVectorStore`](/oss/integrations/vectorstores/couchbase) | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
@@ -621,7 +679,7 @@ vector_store = QdrantVectorStore(
-
+