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.footer - navigation.instant - navigation.sections - navigation.instant.prefetch - navigation.instant.progress - navigation.path - navigation.prune - navigation.tabs - 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: - Home: - Introduction: index.md - Get started: - Learn the basics: tutorials/introduction.ipynb - Deployment: - tutorials/deployment.md - Local Deploy: tutorials/langgraph-platform/local-server.md - Template Applications: concepts/template_applications.md # TODO: make tutorial - Cloud Deploy: cloud/quick_start.md - Guides: - 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 - Concepts: - concepts/index.md - LangGraph: - LangGraph: concepts#langgraph - concepts/high_level.md - concepts/low_level.md - concepts/agentic_concepts.md - concepts/multi_agent.md - concepts/breakpoints - concepts/human_in_the_loop.md - concepts/time-travel.md - concepts/persistence.md - concepts/memory.md - concepts/streaming.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 - concepts/auth.md - Deployment Options: - Deployment Options: concepts#deployment-options - concepts/self_hosted.md - concepts/langgraph_cloud.md - concepts/bring_your_own_cloud.md - Tutorials: - 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 - Resources: - FAQ: concepts/faq.md - Troubleshooting: - Troubleshooting: troubleshooting/errors/index.md - 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 - troubleshooting/errors/INVALID_CHAT_HISTORY.md - LangGraph Academy Course: https://academy.langchain.com/courses/intro-to-langgraph - API reference: - Library: - 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: - 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" 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