langchain
par langchain-ai
Construisez des agents avec une architecture préconstruite et des intégrations pour tout modèle ou outil. Utilisez lors de la création d'agents appelant des outils, du changement de fournisseurs de modèles, ou de l'ajout…
npx skills add https://github.com/langchain-ai/docs --skill langchainLangChain
LangChain is an open-source framework with a prebuilt agent architecture and integrations for any model or tool. Build agents and LLM-powered applications in under 10 lines of code, with integrations for OpenAI, Anthropic, Google, and hundreds more.
When to use
Use LangChain when you need to:
- Build tool-calling agents with
create_agent()and a prebuilt agent loop - Switch model providers without changing application code via
init_chat_model() - Add structured output to parse LLM responses into typed objects
- Integrate with any model or tool using LangChain's provider packages
- Use middleware for cross-cutting concerns like rate limiting and caching
When NOT to use
- For complex multi-step workflows with custom control flow, use LangGraph instead
- For a batteries-included agent with planning, subagents, and context management, use Deep Agents instead
- LangChain provides the core building blocks; LangGraph adds orchestration; Deep Agents adds high-level capabilities on top
Install
# Python
pip install -U langchain
# JavaScript/TypeScript
npm install langchain @langchain/core
Install a provider integration:
# Python
pip install -U langchain-openai # or langchain-anthropic, langchain-google-genai
# JavaScript/TypeScript
npm install @langchain/openai # or @langchain/anthropic, @langchain/google-genai
Quick reference
Create an agent
from langchain.agents import create_agent
def get_weather(city: str) -> str:
"""Get weather for a given city."""
return f"It's always sunny in {city}!"
agent = create_agent(
model="openai:gpt-5.5",
tools=[get_weather],
system_prompt="You are a helpful assistant",
)
result = agent.invoke(
{"messages": [{"role": "user", "content": "What is the weather in SF?"}]}
)
Initialize a chat model
from langchain.chat_models import init_chat_model
# Switch providers by changing the string
model = init_chat_model("openai:gpt-5.5")
model = init_chat_model("anthropic:claude-opus-4-8")
model = init_chat_model("google_genai:gemini-3.6-flash")
Define a tool
from langchain.tools import tool
@tool
def search(query: str) -> str:
"""Search the web for information."""
return "search results"
Gotchas
- Snake_case tool names—Tool function names must be valid Python identifiers. Use
get_weather, notget-weather. - Reserved parameters—Do not name tool parameters
type,name, ordescriptionas these conflict with the tool schema. - Provider packages—Models live in separate packages (e.g.,
langchain-openai). The baselangchainpackage does not include providers. - Model string format—Use
"provider:model-name"format withinit_chat_model()(e.g.,"openai:gpt-5.5").
Key documentation
- Overview—What LangChain is and how to get started
- Quickstart—Build your first agent
- Agents—Prebuilt agent architecture
- Models—Chat models and provider integrations
- Tools—Define and use tools
- Structured output—Parse LLM responses into typed objects
- MCP integration—Use Model Context Protocol servers as tools
API reference
For SDK class and method details, use the LangChain API Reference site:
- Browse:
https://reference.langchain.com/python/langchain-core - MCP server:
https://reference.langchain.com/mcp
Related skills
- langgraph—Low-level orchestration for stateful, durable agent workflows
- deep-agents—Batteries-included agent harness built on LangChain
- langsmith—Trace, evaluate, and deploy your LangChain agents