ImportError: cannot import a model class from 'langchain' after v1
Training data teaches `from langchain.chat_models import ChatOpenAI` and similar paths. In LangChain v1 model classes live in provider packages, so the import fails. Import from the provider package or use init_chat_model.
Cannot import model class from 'langchain'
The failing pattern (stale):
from langchain.chat_models import ChatOpenAI # ImportError in v1The current patterns:
from langchain_openai import ChatOpenAI
from langchain_anthropic import ChatAnthropicOr provider-agnostic:
from langchain.chat_models import init_chat_model
model = init_chat_model("openai:gpt-5.5")Why it happens
- v1 reduced the
langchainnamespace to agents, messages, tools, chat models (the init functions), and embeddings. Model classes moved out tolangchain-openai,langchain-anthropic, and friends. - Old tutorials, StackOverflow answers, and model weights of knowledge all predate this. Agents copy them verbatim.
Fix
- Install the provider package:
pip install -U langchain-openai. - Change the import to the provider package, or switch to
init_chat_modelwith aprovider:modelstring. - If the code genuinely needs the old re-export surface, that is what
langchain-classicis for, but for model classes the provider import is the right fix.
Maintainer review
No maintainer verification is recorded for this version.
This records the version a maintainer checked. It does not assert that the version is the latest upstream release.