site_name: "" site_description: Build language agents as graphs site_url: https://langchain-ai.github.io/langgraph/ repo_url: https://github.com/langchain-ai/langgraph edit_uri: edit/main/docs/docs/ theme: name: material custom_dir: overrides logo_dark_mode: static/wordmark_light.svg logo_light_mode: static/wordmark_dark.svg favicon: static/favicon.png icon: repo: fontawesome/brands/git-alt features: - announce.dismiss - content.code.annotate - content.code.copy - content.code.select - content.tabs.link - content.action.edit - content.tooltips - header.autohide - navigation.expand - navigation.tabs - navigation.footer # - navigation.indexes - navigation.instant - navigation.sections - navigation.instant.prefetch - navigation.instant.progress - navigation.path - navigation.prune - navigation.top - navigation.tracking - search.highlight - search.share - search.suggest - toc.follow palette: - scheme: default primary: white accent: gray toggle: icon: material/brightness-7 name: Switch to dark mode - scheme: slate primary: grey accent: white toggle: icon: material/brightness-4 name: Switch to light mode font: text: "Public Sans" code: "Roboto Mono" plugins: - search: separator: '[\s\u200b\-_,:!=\[\]()"`/]+|\.(?!\d)|&[lg]t;|(?!\b)(?=[A-Z][a-z])' - autorefs - redirects: redirect_maps: 'cloud/index.md': 'concepts/index.md#langgraph-platform' 'cloud/how-tos/index.md': 'how-tos/index.md#langgraph-platform' 'cloud/concepts/api.md': 'concepts/langgraph_server.md' 'cloud/concepts/cloud.md': 'concepts/langgraph_cloud.md' 'cloud/faq/studio.md': 'concepts/langgraph_studio.md#studio-faqs' - mkdocstrings: handlers: python: import: - https://docs.python.org/3/objects.inv - https://api.python.langchain.com/en/latest/objects.inv options: members_order: source allow_inspection: true heading_level: 2 show_bases: true show_source: false summary: true inherited_members: true selection: docstring_style: google docstring_section_style: list show_root_toc_entry: false show_signature_annotations: true show_symbol_type_heading: true show_symbol_type_toc: true signature_crossrefs: true options: filters: - "!^_" - nav: - LangGraph: - Introduction: index.md - Get started: - Learn the basics: tutorials/introduction.ipynb - Guides: - Concepts: concepts/index.md - How-to guides: how-tos/index.md # - how-tos/index.md # - Controllability: how-tos#controllability # - Persistence: how-tos#persistence # - Memory: how-tos#memory # - Human-in-the-loop: how-tos#human-in-the-loop # - Time travel: how-tos/#time-travel # - Streaming: how-tos#streaming # - Tool calling: how-tos#tool-calling # - Subgraphs: how-tos#subgraphs # - Multi-agent: how-tos#multi-agent # - State Management: how-tos#state-management # - Other: how-tos#other # - Prebuilt ReAct Agent: how-tos#prebuilt-react-agent - Tutorials & examples: tutorials/index.md # - tutorials/index.md # - Chatbots: tutorials#chatbots # - RAG: tutorials#rag # - Agent Architectures: tutorials#agent-architectures # - Evaluation: tutorials#evaluation # - Experimental: tutorials#experimental - Troubleshooting: troubleshooting/errors/index.md # - Learn: # - concepts/index.md # - Why LangGraph: concepts/high_level.md # - Primitives: concepts/low_level.md # - Agents: concepts/agentic_concepts.md # - Multi-agent systems: concepts/multi_agent.md # - Human-in-the-loop: concepts/human_in_the_loop.md # - concepts/persistence.md # - concepts/memory.md # - concepts/streaming.md - LangGraph Platform: - Introduction: concepts/langgraph_platform/ - Get Started: - Local Quickstart: tutorials/langgraph-platform/local-server.md - Template Applications: concepts/template_applications.md - Cloud Quickstart: langgraph/cloud/quick_stard.md - Guides: - Concepts: concepts/index.md - How-to guides: how-tos/#langgraph-platform # TODO: make own page - Tutorials & examples: tutorials/#platform # TODO: make own page(?) - Learn: - High level: - concepts/langgraph_platform.md - concepts/deployment_options.md - concepts/plans.md - concepts/template_applications.md - Components: - Server: concepts/langgraph_server.md - Studio: concepts/langgraph_studio.md - CLI: concepts/langgraph_cli.md - SDK: concepts/sdk.md - RemoteGraph: how-tos/use-remote-graph.md - LangGraph Server: - concepts/application_structure.md - concepts/assistants.md - concepts/double_texting.md - Deployment options: - concepts/self_hosted.md - concepts/langgraph_cloud.md - concepts/bring_your_own_cloud.md - API reference: - LangGraph: - Graphs: reference/graphs.md - Checkpointing: reference/checkpoints.md - Storage: reference/store.md - Prebuilt components: reference/prebuilt.md - Channels: reference/channels.md - Errors: reference/errors.md - Types: reference/types.md - Constants: reference/constants.md - LangGraph Platform API: - Server API: "cloud/reference/api/api_ref.md" - CLI: "cloud/reference/cli.md" - SDK (Python): "cloud/reference/sdk/python_sdk_ref.md" - SDK (JS/TS): "cloud/reference/sdk/js_ts_sdk_ref.md" - RemoteGraph: reference/remote_graph.md - Environment variables: "cloud/reference/env_var.md" - FAQ: concepts/faq.md # # - Tutorials & Examples: # - tutorials/index.md # - Quick Start: # - Quick Start: tutorials#quick-start # - tutorials/introduction.ipynb # - tutorials/langgraph-platform/local-server.md # - cloud/quick_start.md # - Chatbots: # - Chatbots: tutorials#chatbots # - tutorials/customer-support/customer-support.ipynb # - tutorials/chatbots/information-gather-prompting.ipynb # - tutorials/code_assistant/langgraph_code_assistant.ipynb # - RAG: # - RAG: tutorials#rag # - tutorials/rag/langgraph_adaptive_rag.ipynb # - tutorials/rag/langgraph_adaptive_rag_local.ipynb # - tutorials/rag/langgraph_agentic_rag.ipynb # - tutorials/rag/langgraph_crag.ipynb # - tutorials/rag/langgraph_crag_local.ipynb # - tutorials/rag/langgraph_self_rag.ipynb # - tutorials/rag/langgraph_self_rag_local.ipynb # - tutorials/sql-agent.ipynb # - Agent Architectures: # - Agent Architectures: tutorials#agent-architectures # - Multi-Agent Systems: # - Multi-Agent Systems: tutorials#multi-agent-systems # - tutorials/multi_agent/multi-agent-collaboration.ipynb # - tutorials/multi_agent/agent_supervisor.ipynb # - tutorials/multi_agent/hierarchical_agent_teams.ipynb # - Planning Agents: # - Planning Agents: tutorials#planning-agents # - tutorials/plan-and-execute/plan-and-execute.ipynb # - tutorials/rewoo/rewoo.ipynb # - tutorials/llm-compiler/LLMCompiler.ipynb # - Reflection & Critique: # - Reflection & Critique: tutorials#reflection-critique # - tutorials/reflection/reflection.ipynb # - tutorials/reflexion/reflexion.ipynb # - tutorials/tot/tot.ipynb # - tutorials/lats/lats.ipynb # - tutorials/self-discover/self-discover.ipynb # - Evaluation & Analysis: # - Evaluation & Analysis: tutorials#evaluation # - tutorials/chatbot-simulation-evaluation/agent-simulation-evaluation.ipynb # - tutorials/chatbot-simulation-evaluation/langsmith-agent-simulation-evaluation.ipynb # - Experimental: # - Experimental: tutorials#experimental # - tutorials/storm/storm.ipynb # - tutorials/tnt-llm/tnt-llm.ipynb # - tutorials/web-navigation/web_voyager.ipynb # - tutorials/usaco/usaco.ipynb # - tutorials/extraction/retries.ipynb # - LangGraph Platform: # - LangGraph Platform: concepts#langgraph-platform # - tutorials/auth/getting_started.md # - tutorials/auth/resource_auth.md # - tutorials/auth/add_auth_server.md # # - How-to Guides: # - how-tos/index.md # - LangGraph: # - LangGraph: how-tos#langgraph # - Controllability: # - Controllability: how-tos#controllability # - how-tos/branching.ipynb # - how-tos/map-reduce.ipynb # - how-tos/recursion-limit.ipynb # - how-tos/command.ipynb # - Persistence: # - Persistence: how-tos#persistence # - how-tos/persistence.ipynb # - how-tos/subgraph-persistence.ipynb # - how-tos/cross-thread-persistence.ipynb # - how-tos/persistence_postgres.ipynb # - how-tos/persistence_mongodb.ipynb # - how-tos/persistence_redis.ipynb # - Memory: # - Memory: how-tos#memory # - how-tos/memory/manage-conversation-history.ipynb # - how-tos/memory/delete-messages.ipynb # - how-tos/memory/add-summary-conversation-history.ipynb # - how-tos/memory/semantic-search.ipynb # - Human-in-the-loop: # - Human-in-the-loop: how-tos#human-in-the-loop # - how-tos/human_in_the_loop/breakpoints.ipynb # - how-tos/human_in_the_loop/dynamic_breakpoints.ipynb # - how-tos/human_in_the_loop/edit-graph-state.ipynb # - how-tos/human_in_the_loop/wait-user-input.ipynb # - how-tos/human_in_the_loop/time-travel.ipynb # - how-tos/human_in_the_loop/review-tool-calls.ipynb # - Streaming: # - Streaming: how-tos#streaming # - how-tos/stream-values.ipynb # - how-tos/stream-updates.ipynb # - how-tos/streaming-tokens.ipynb # - how-tos/streaming-tokens-without-langchain.ipynb # - how-tos/streaming-content.ipynb # - how-tos/stream-multiple.ipynb # - how-tos/streaming-events-from-within-tools.ipynb # - how-tos/streaming-events-from-within-tools-without-langchain.ipynb # - how-tos/streaming-from-final-node.ipynb # - how-tos/streaming-subgraphs.ipynb # - how-tos/disable-streaming.ipynb # - Tool calling: # - Tool calling: how-tos#tool-calling # - how-tos/tool-calling.ipynb # - how-tos/tool-calling-errors.ipynb # - how-tos/pass-run-time-values-to-tools.ipynb # - how-tos/update-state-from-tools.ipynb # - how-tos/pass-config-to-tools.ipynb # - how-tos/many-tools.ipynb # - Subgraphs: # - Subgraphs: how-tos#subgraphs # - how-tos/subgraph.ipynb # - how-tos/subgraphs-manage-state.ipynb # - how-tos/subgraph-transform-state.ipynb # - Multi-agent: # - Multi-agent: how-tos#multi-agent # - how-tos/agent-handoffs.ipynb # - how-tos/multi-agent-network.ipynb # - how-tos/multi-agent-multi-turn-convo.ipynb # - State Management: # - State Management: how-tos#state-management # - how-tos/state-model.ipynb # - how-tos/input_output_schema.ipynb # - how-tos/pass_private_state.ipynb # - Other: # - Other: how-tos#other # - how-tos/async.ipynb # - how-tos/visualization.ipynb # - how-tos/configuration.ipynb # - how-tos/node-retries.ipynb # - how-tos/react-agent-structured-output.ipynb # - how-tos/run-id-langsmith.ipynb # - how-tos/return-when-recursion-limit-hits.ipynb # - Prebuilt ReAct Agent: # - Prebuilt ReAct Agent: how-tos#prebuilt-react-agent # - how-tos/create-react-agent.ipynb # - how-tos/create-react-agent-memory.ipynb # - how-tos/create-react-agent-system-prompt.ipynb # - how-tos/create-react-agent-hitl.ipynb # - how-tos/react-agent-from-scratch.ipynb # - LangGraph Platform: # - LangGraph Platform: how-tos#langgraph-platform # - Application Structure: # - Application Structure: how-tos#application-structure # - cloud/deployment/setup.md # - cloud/deployment/setup_pyproject.md # - cloud/deployment/setup_javascript.md # - cloud/deployment/semantic_search.md # - cloud/deployment/custom_docker.md # - cloud/deployment/test_locally.md # - cloud/deployment/graph_rebuild.md # - Deployment: # - Deployment: how-tos#deployment # - cloud/deployment/cloud.md # - how-tos/deploy-self-hosted.md # - how-tos/use-remote-graph.md # - Authentication & Access Control: # - Authentication & Access Control: how-tos#authentication-access-control # - cloud/how-tos/auth/custom_auth_new.md # - cloud/how-tos/auth/openapi_security_new.md # - Assistants: # - Assistants: how-tos#assistants # - cloud/how-tos/configuration_cloud.md # - cloud/how-tos/assistant_versioning.md # - Threads: # - Threads: how-tos#threads # - cloud/how-tos/copy_threads.md # - cloud/how-tos/check_thread_status.md # - Runs: # - Runs: how-tos#runs # - cloud/how-tos/background_run.md # - cloud/how-tos/same-thread.md # - cloud/how-tos/cron_jobs.md # - cloud/how-tos/stateless_runs.md # - Streaming: # - Streaming: how-tos#streaming_1 # - cloud/how-tos/stream_values.md # - cloud/how-tos/stream_updates.md # - cloud/how-tos/stream_messages.md # - cloud/how-tos/stream_events.md # - cloud/how-tos/stream_debug.md # - cloud/how-tos/stream_multiple.md # - Human-in-the-loop: # - Human-in-the-loop: how-tos#human-in-the-loop_1 # - cloud/how-tos/human_in_the_loop_breakpoint.md # - cloud/how-tos/human_in_the_loop_user_input.md # - cloud/how-tos/human_in_the_loop_edit_state.md # - cloud/how-tos/human_in_the_loop_time_travel.md # - cloud/how-tos/human_in_the_loop_review_tool_calls.md # - Double-texting: # - Double-texting: how-tos#double-texting # - cloud/how-tos/interrupt_concurrent.md # - cloud/how-tos/rollback_concurrent.md # - cloud/how-tos/reject_concurrent.md # - cloud/how-tos/enqueue_concurrent.md # - Webhooks: # - cloud/how-tos/webhooks.md # - Cron Jobs: # - cloud/how-tos/cron_jobs.md # - LangGraph Studio: # - LangGraph Studio: how-tos#langgraph-studio # - cloud/how-tos/test_deployment.md # - cloud/how-tos/test_local_deployment.md # - cloud/how-tos/invoke_studio.md # - cloud/how-tos/threads_studio.md # - cloud/how-tos/datasets_studio.md # - Troubleshooting: # - Troubleshooting: how-tos#troubleshooting # - troubleshooting/errors/index.md # - troubleshooting/errors/GRAPH_RECURSION_LIMIT.md # - troubleshooting/errors/INVALID_CONCURRENT_GRAPH_UPDATE.md # - troubleshooting/errors/INVALID_GRAPH_NODE_RETURN_VALUE.md # - troubleshooting/errors/MULTIPLE_SUBGRAPHS.md # # - Conceptual Guides: # - concepts/index.md # - LangGraph: # - LangGraph: concepts#langgraph # - concepts/high_level.md # - concepts/low_level.md # - concepts/agentic_concepts.md # - concepts/multi_agent.md # - concepts/human_in_the_loop.md # - concepts/persistence.md # - concepts/memory.md # - concepts/streaming.md # - concepts/faq.md # - LangGraph Platform: # - LangGraph Platform: concepts#langgraph-platform # - High Level: # - High Level: concepts#high-level # - concepts/langgraph_platform.md # - concepts/deployment_options.md # - concepts/plans.md # - concepts/template_applications.md # - Components: # - Components: concepts#components # - concepts/langgraph_server.md # - concepts/langgraph_studio.md # - concepts/langgraph_cli.md # - concepts/sdk.md # - how-tos/use-remote-graph.md # - LangGraph Server: # - LangGraph Server: concepts#langgraph-server # - concepts/application_structure.md # - concepts/assistants.md # - concepts/double_texting.md # - Deployment Options: # - Deployment Options: concepts#deployment-options # - concepts/self_hosted.md # - concepts/langgraph_cloud.md # - concepts/bring_your_own_cloud.md # markdown_extensions: - abbr - admonition - pymdownx.details - attr_list - def_list - footnotes - md_in_html - pymdownx.superfences - pymdownx.tabbed: alternate_style: true - toc: permalink: true - pymdownx.arithmatex: generic: true - pymdownx.betterem: smart_enable: all - pymdownx.caret - pymdownx.details - pymdownx.emoji: emoji_generator: !!python/name:material.extensions.emoji.to_svg emoji_index: !!python/name:material.extensions.emoji.twemoji - pymdownx.highlight: anchor_linenums: true line_spans: __span use_pygments: true pygments_lang_class: true - pymdownx.inlinehilite - pymdownx.keys - pymdownx.magiclink: normalize_issue_symbols: true repo_url_shorthand: true user: langchain-ai repo: langgraph - pymdownx.mark - pymdownx.smartsymbols - pymdownx.snippets: auto_append: - includes/mkdocs.md - pymdownx.superfences: custom_fences: - name: mermaid class: mermaid format: !!python/name:pymdownx.superfences.fence_code_format - pymdownx.tabbed: alternate_style: true combine_header_slug: true - pymdownx.tasklist: custom_checkbox: true - markdown_include.include: base_path: ./ - github-callouts hooks: - _scripts/notebook_hooks.py extra: social: - icon: fontawesome/brands/js link: https://langchain-ai.github.io/langgraphjs/ - icon: fontawesome/brands/github link: https://github.com/langchain-ai/langgraph - icon: fontawesome/brands/twitter link: https://twitter.com/LangChainAI analytics: - provider: google - property: G-G8X6ELZYE0 - feedback: title: Was this page helpful? ratings: - icon: material/emoticon-happy-outline name: This page was helpful data: 1 note: >- Thanks for your feedback! - icon: material/emoticon-sad-outline name: This page could be improved data: 0 note: >- Thanks for your feedback! Please help us improve this page by adding to the discussion below. validation: # https://www.mkdocs.org/user-guide/configuration/ # We're `ignoring` nav.omitted_files because we are going to rely # on files being properly links to from the index pages of: # - tutorials # - concepts # - how-tos # - reference omitted_files: ignore absolute_links: warn unrecognized_links: warn # TODO: figure out how to enable 'warn' for this # it's only an issue for tutorials/storm/storm.ipynb # because it creates anchors in the generated report # and those anchors are not available in the actual doc anchors: info # this is needed to handle headers with anchors for nav not_found: info