feat(langchain): add meta extra and support langchain-meta in init_chat_model (#38786)

This commit is contained in:
ccurme
2026-07-10 18:46:45 -04:00
committed by GitHub
parent 1c6bfc8f60
commit 7327e84d6f
3 changed files with 44 additions and 3 deletions

View File

@@ -65,6 +65,7 @@ _BUILTIN_PROVIDERS: dict[str, tuple[str, str, Callable[..., BaseChatModel]]] = {
lambda cls, model, **kwargs: cls(model_id=model, **kwargs),
),
"litellm": ("langchain_litellm", "ChatLiteLLM", _call),
"meta": ("langchain_meta", "ChatMetaModel", _call),
"mistralai": ("langchain_mistralai", "ChatMistralAI", _call),
"nvidia": ("langchain_nvidia_ai_endpoints", "ChatNVIDIA", _call),
"ollama": ("langchain_ollama", "ChatOllama", _call),
@@ -307,6 +308,7 @@ def init_chat_model(
- `upstage` -> [`langchain-upstage`](https://docs.langchain.com/oss/python/integrations/providers/upstage)
- `baseten` -> [`langchain-baseten`](https://docs.langchain.com/oss/python/integrations/providers/baseten)
- `litellm` -> [`langchain-litellm`](https://docs.langchain.com/oss/python/integrations/providers/litellm)
- `meta` -> [`langchain-meta`](https://pypi.org/project/langchain-meta)
configurable_fields: Which model parameters are configurable at runtime:

View File

@@ -48,6 +48,7 @@ baseten = ["langchain-baseten>=0.2.0"]
deepseek = ["langchain-deepseek"]
xai = ["langchain-xai"]
perplexity = ["langchain-perplexity"]
meta = ["langchain-meta"]
[project.urls]
Homepage = "https://docs.langchain.com/"

View File

@@ -1047,7 +1047,7 @@ name = "exceptiongroup"
version = "1.3.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "typing-extensions" },
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/0b/9f/a65090624ecf468cdca03533906e7c69ed7588582240cfe7cc9e770b50eb/exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88", size = 29749, upload-time = "2025-05-10T17:42:51.123Z" }
wheels = [
@@ -2013,6 +2013,9 @@ groq = [
huggingface = [
{ name = "langchain-huggingface" },
]
meta = [
{ name = "langchain-meta" },
]
mistralai = [
{ name = "langchain-mistralai" },
]
@@ -2077,6 +2080,7 @@ requires-dist = [
{ name = "langchain-google-vertexai", marker = "extra == 'google-vertexai'" },
{ name = "langchain-groq", marker = "extra == 'groq'" },
{ name = "langchain-huggingface", marker = "extra == 'huggingface'" },
{ name = "langchain-meta", marker = "extra == 'meta'" },
{ name = "langchain-mistralai", marker = "extra == 'mistralai'" },
{ name = "langchain-ollama", marker = "extra == 'ollama'" },
{ name = "langchain-openai", marker = "extra == 'openai'", editable = "../partners/openai" },
@@ -2086,7 +2090,7 @@ requires-dist = [
{ name = "langgraph", specifier = ">=1.2.5,<1.3.0" },
{ name = "pydantic", specifier = ">=2.7.4,<3.0.0" },
]
provides-extras = ["community", "anthropic", "openai", "azure-ai", "google-vertexai", "google-genai", "fireworks", "ollama", "together", "mistralai", "huggingface", "groq", "aws", "baseten", "deepseek", "xai", "perplexity"]
provides-extras = ["community", "anthropic", "openai", "azure-ai", "google-vertexai", "google-genai", "fireworks", "ollama", "together", "mistralai", "huggingface", "groq", "aws", "baseten", "deepseek", "xai", "perplexity", "meta"]
[package.metadata.requires-dev]
lint = [{ name = "ruff", specifier = ">=0.15.0,<0.16.0" }]
@@ -2413,6 +2417,23 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/bc/90/a1440bfa467a6dd9025ad80f3c239554de28aec49dacfb369fda92871556/langchain_huggingface-1.2.1-py3-none-any.whl", hash = "sha256:0930c216a457d2c8dc7b39a756c39c567f1d88593bfee2c3441f3ae718435f0f", size = 30924, upload-time = "2026-03-02T18:44:37.745Z" },
]
[[package]]
name = "langchain-meta"
version = "0.5.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "aiohttp" },
{ name = "langchain-core" },
{ name = "langchain-openai" },
{ name = "llama-api-client" },
{ name = "regex" },
{ name = "requests" },
]
sdist = { url = "https://files.pythonhosted.org/packages/4f/f3/b2fb2c60e1cca510ad324b23e22122dd55362ab0a4017d3fa2743aef4191/langchain_meta-0.5.0.tar.gz", hash = "sha256:55c4b0bf4ee7e5909105c60cfb1a58a60c8409bd53144bea018e898a70f7d6ae", size = 54701, upload-time = "2026-07-10T22:20:21.448Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/78/36/8533d8d3c36588746ed00fbdef4df7507c00268751d165eab71f9acd9a1b/langchain_meta-0.5.0-py3-none-any.whl", hash = "sha256:eb370ed42e2e0ed8dfd469dda0791fbb911ad4da6588eabbaf700c9be1357d11", size = 57588, upload-time = "2026-07-10T22:20:20.536Z" },
]
[[package]]
name = "langchain-mistralai"
version = "1.1.1"
@@ -2444,7 +2465,7 @@ wheels = [
[[package]]
name = "langchain-openai"
version = "1.3.4"
version = "1.3.5"
source = { editable = "../partners/openai" }
dependencies = [
{ name = "langchain-core" },
@@ -2810,6 +2831,23 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/ce/62/b40b382fa0c66fee1478073eb8db352a4a6beda4a1adccf1df911d8c289c/librt-0.11.0-cp314-cp314t-win_arm64.whl", hash = "sha256:dee008f20b542e3cd162ba338a7f9ec0f6d23d395f66fe8aeeec3c9d067ea253", size = 102572, upload-time = "2026-05-10T18:17:06.809Z" },
]
[[package]]
name = "llama-api-client"
version = "0.6.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "anyio" },
{ name = "distro" },
{ name = "httpx" },
{ name = "pydantic" },
{ name = "sniffio" },
{ name = "typing-extensions" },
]
sdist = { url = "https://files.pythonhosted.org/packages/6a/98/1bc43b6d2bb2261facf93b3b6557df7aabe37bd0d6435bba25fb2d061628/llama_api_client-0.6.0.tar.gz", hash = "sha256:f6dd125110b9bdfd31b4cea9376d0457b01481ded6ab70efbe115a94a97eb145", size = 127273, upload-time = "2025-12-18T20:30:55.956Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/c4/65/aacd8e608f2b57dc114ec33ef6a18f4a451da2b0265aa13a6eeab2e8de64/llama_api_client-0.6.0-py3-none-any.whl", hash = "sha256:b41ccced2dfb17f15ae0c2ae2f70cb3cfc76705aa4412286ebfaae61e7fc37ce", size = 94606, upload-time = "2025-12-18T20:30:53.777Z" },
]
[[package]]
name = "markdown-it-py"
version = "4.0.0"