From 735352ba87d6fc2cde052663d7da1a694adab3cc Mon Sep 17 00:00:00 2001 From: "github-merge-queue[bot]" Date: Thu, 10 Jul 2025 18:43:27 +0000 Subject: [PATCH] deploy: 76fbcf4d5530f5a6cfb55e46fe8726f755f33c26 --- 404.html | 2 +- agents-tools.html | 2 +- agents.html | 2 +- api-build.html | 2 +- api-files.html | 2 +- api-flows-run.html | 2 +- api-flows.html | 2 +- api-logs.html | 2 +- api-monitor.html | 2 +- api-projects.html | 2 +- api-reference-api-examples.html | 2 +- api-users.html | 2 +- api.html | 2 +- api/add-user.html | 2 +- api/auto-login.html | 2 +- api/build-flow.html | 2 +- api/build-public-tmp.html | 2 +- api/build-vertex-stream.html | 2 +- api/build-vertex.html | 2 +- api/cancel-build.html | 2 +- api/check-if-store-has-api-key.html | 2 +- api/check-if-store-is-enabled.html | 2 +- api/create-api-key-route.html | 2 +- api/create-flow.html | 2 +- api/create-flows.html | 2 +- api/create-folder-redirect.html | 2 +- api/create-project.html | 2 +- api/create-upload-file.html | 2 +- api/create-variable.html | 2 +- api/custom-component-update.html | 2 +- api/custom-component.html | 2 +- api/delete-all-files-1.html | 2 +- api/delete-all-files.html | 2 +- api/delete-api-key-route.html | 2 +- api/delete-file-1.html | 2 +- api/delete-file.html | 2 +- api/delete-files-batch.html | 2 +- api/delete-flow.html | 2 +- api/delete-folder-redirect.html | 2 +- api/delete-messages-session.html | 2 +- api/delete-messages.html | 2 +- api/delete-multiple-flows.html | 2 +- api/delete-project.html | 2 +- api/delete-user.html | 2 +- api/delete-variable.html | 2 +- api/delete-vertex-builds.html | 2 +- api/download-component.html | 2 +- api/download-file-1.html | 2 +- api/download-file-2.html | 2 +- api/download-file-redirect.html | 2 +- api/download-file.html | 2 +- api/download-files-batch.html | 2 +- api/download-image.html | 2 +- api/download-multiple-file.html | 2 +- api/download-profile-picture.html | 2 +- api/edit-file-name.html | 2 +- api/experimental-run-flow.html | 2 +- api/get-all.html | 2 +- api/get-api-keys-route.html | 2 +- api/get-build-events.html | 2 +- api/get-components.html | 2 +- api/get-config.html | 2 +- api/get-elevenlabs-voice-ids.html | 2 +- api/get-list-of-components-liked-by-user.html | 2 +- api/get-messages.html | 2 +- api/get-starter-projects.html | 2 +- api/get-tags.html | 2 +- api/get-task-status.html | 2 +- api/get-transactions.html | 2 +- api/get-version.html | 2 +- api/get-vertex-builds.html | 2 +- api/handle-messages-1.html | 2 +- api/handle-messages.html | 2 +- api/handle-project-messages-with-slash.html | 2 +- api/handle-project-messages.html | 2 +- api/handle-project-sse.html | 2 +- api/handle-sse-1.html | 2 +- api/handle-sse.html | 2 +- api/health-check.html | 2 +- api/health.html | 2 +- api/like-component.html | 2 +- api/list-files-1.html | 2 +- api/list-files-2.html | 2 +- api/list-files.html | 2 +- api/list-profile-pictures.html | 2 +- api/list-project-tools.html | 2 +- api/login-to-get-access-token.html | 2 +- api/logout.html | 2 +- api/logs.html | 2 +- api/patch-user.html | 2 +- api/post-validate-code.html | 2 +- api/post-validate-prompt.html | 2 +- api/process-1.html | 2 +- api/process.html | 2 +- api/read-all-users.html | 2 +- api/read-basic-examples.html | 2 +- api/read-current-user.html | 2 +- api/read-flow.html | 2 +- api/read-flows.html | 2 +- api/read-folder-redirect.html | 2 +- api/read-folders-redirect.html | 2 +- api/read-project.html | 2 +- api/read-projects.html | 2 +- api/read-public-flow.html | 2 +- api/read-variables.html | 2 +- api/refresh-token.html | 2 +- api/reset-password.html | 2 +- api/retrieve-vertices-order.html | 2 +- api/save-store-api-key.html | 2 +- api/share-component.html | 2 +- api/simplified-run-flow.html | 2 +- api/stream-logs.html | 2 +- api/update-flow.html | 2 +- api/update-folder-redirect.html | 2 +- api/update-message.html | 2 +- api/update-project-mcp-settings.html | 2 +- api/update-project.html | 2 +- api/update-session-id.html | 2 +- api/update-shared-component.html | 2 +- api/update-variable.html | 2 +- api/upload-file-1.html | 2 +- api/upload-file-2.html | 2 +- api/upload-file-redirect.html | 2 +- api/upload-file.html | 2 +- api/upload-user-file-1.html | 2 +- api/upload-user-file.html | 2 +- api/webhook-run-flow.html | 2 +- ...0d4f5.980ee380.js => 2ab0d4f5.944b027f.js} | 2 +- assets/js/74e1dc40.a30771cb.js | 1 - assets/js/74e1dc40.ee1692f8.js | 1 + assets/js/b7251463.35fee080.js | 1 + assets/js/b7251463.c0c3f280.js | 1 - ...6a4d2.0c8a333a.js => e6c6a4d2.d88639fa.js} | 2 +- ...n.08986d27.js => runtime~main.acec53da.js} | 2 +- basic-prompting.html | 2 +- blog-writer.html | 2 +- chat-with-files.html | 2 +- chat-with-rag.html | 2 +- components-agents.html | 2 +- components-bundle-components.html | 2 +- components-custom-components.html | 2 +- components-data.html | 2 +- components-embedding-models.html | 2 +- components-helpers.html | 2 +- components-io.html | 2 +- components-logic.html | 2 +- components-memories.html | 2 +- components-models.html | 2 +- components-processing.html | 2 +- components-prompts.html | 2 +- components-tools.html | 2 +- components-vector-stores.html | 2 +- concepts-components.html | 2 +- concepts-file-management.html | 2 +- concepts-flows.html | 2 +- concepts-objects.html | 2 +- concepts-overview.html | 2 +- concepts-playground.html | 2 +- concepts-publish.html | 2 +- concepts-voice-mode.html | 2 +- configuration-api-keys.html | 2 +- configuration-authentication.html | 2 +- configuration-cli.html | 2 +- configuration-custom-database.html | 2 +- configuration-global-variables.html | 2 +- contributing-bundles.html | 2 +- contributing-community.html | 2 +- contributing-component-tests.html | 2 +- contributing-components.html | 2 +- contributing-github-issues.html | 2 +- contributing-how-to-contribute.html | 2 +- contributing-telemetry.html | 2 +- contributing-templates.html | 2 +- deployment-caddyfile.html | 2 +- deployment-docker.html | 2 +- deployment-gcp.html | 2 +- deployment-hugging-face-spaces.html | 2 +- deployment-kubernetes-dev.html | 2 +- deployment-kubernetes-prod.html | 2 +- deployment-overview.html | 2 +- deployment-prod-best-practices.html | 2 +- deployment-public-server.html | 2 +- deployment-railway.html | 2 +- deployment-render.html | 2 +- develop-application.html | 2 +- develop-overview.html | 2 +- document-qa.html | 2 +- embedded-chat-widget.html | 2 +- environment-variables.html | 45 ++++++++++++++++++- financial-report-parser.html | 2 +- get-started-installation.html | 2 +- get-started-quickstart.html | 2 +- index.html | 2 +- install-custom-dependencies.html | 2 +- integrations-apify.html | 2 +- integrations-arize.html | 2 +- integrations-assemblyai.html | 2 +- integrations-cleanlab.html | 2 +- integrations-composio.html | 2 +- integrations-docling.html | 2 +- integrations-google-big-query.html | 2 +- integrations-langfuse.html | 2 +- integrations-langsmith.html | 2 +- integrations-langwatch.html | 2 +- integrations-nvidia-g-assist.html | 2 +- integrations-nvidia-ingest-wsl2.html | 2 +- integrations-nvidia-ingest.html | 2 +- integrations-opik.html | 2 +- ...setup-google-cloud-vertex-ai-langflow.html | 2 +- integrations-setup-google-oauth-langflow.html | 2 +- .../notion/notion-agent-conversational.html | 2 +- .../notion/notion-agent-meeting-notes.html | 2 +- integrations/notion/setup.html | 2 +- logging.html | 2 +- luna-for-langflow.html | 2 +- mcp-client.html | 2 +- mcp-component-astra.html | 2 +- mcp-server.html | 2 +- memory-chatbot.html | 2 +- memory.html | 2 +- release-notes.html | 2 +- search.html | 2 +- sequential-agent.html | 2 +- session-id.html | 2 +- simple-agent.html | 2 +- sitemap.xml | 2 +- travel-planning-agent.html | 2 +- troubleshoot.html | 7 ++- typescript-client.html | 2 +- vector-store-rag.html | 2 +- webhook.html | 2 +- 231 files changed, 275 insertions(+), 231 deletions(-) rename assets/js/{2ab0d4f5.980ee380.js => 2ab0d4f5.944b027f.js} (50%) delete mode 100644 assets/js/74e1dc40.a30771cb.js create mode 100644 assets/js/74e1dc40.ee1692f8.js create mode 100644 assets/js/b7251463.35fee080.js delete mode 100644 assets/js/b7251463.c0c3f280.js rename assets/js/{e6c6a4d2.0c8a333a.js => e6c6a4d2.d88639fa.js} (55%) rename assets/js/{runtime~main.08986d27.js => runtime~main.acec53da.js} (98%) diff --git a/404.html b/404.html index 79c2b22a07..eb38de312a 100644 --- a/404.html +++ b/404.html @@ -21,7 +21,7 @@ - + diff --git a/agents-tools.html b/agents-tools.html index 864b66a4ba..8bf42262ce 100644 --- a/agents-tools.html +++ b/agents-tools.html @@ -21,7 +21,7 @@ - + diff --git a/agents.html b/agents.html index d7fe4bc677..a589d0d6b8 100644 --- a/agents.html +++ b/agents.html @@ -21,7 +21,7 @@ - + diff --git a/api-build.html b/api-build.html index 7e60be0da0..ed2b8d8725 100644 --- a/api-build.html +++ b/api-build.html @@ -21,7 +21,7 @@ - + diff --git a/api-files.html b/api-files.html index 3af3cc13a6..efd04439b2 100644 --- a/api-files.html +++ b/api-files.html @@ -21,7 +21,7 @@ - + diff --git a/api-flows-run.html b/api-flows-run.html index b3e2307ace..8308dd9f6d 100644 --- a/api-flows-run.html +++ b/api-flows-run.html @@ -21,7 +21,7 @@ - + diff --git a/api-flows.html b/api-flows.html index f42602bf4c..ebb788ba49 100644 --- a/api-flows.html +++ b/api-flows.html @@ -21,7 +21,7 @@ - + diff --git a/api-logs.html b/api-logs.html index c34cc120aa..e348b8a0b4 100644 --- a/api-logs.html +++ b/api-logs.html @@ -21,7 +21,7 @@ - + diff --git a/api-monitor.html b/api-monitor.html index d7cedb0b54..5b52a8be52 100644 --- a/api-monitor.html +++ b/api-monitor.html @@ -21,7 +21,7 @@ - + diff --git a/api-projects.html b/api-projects.html index 9ca3b79d24..cba668623a 100644 --- a/api-projects.html +++ b/api-projects.html @@ -21,7 +21,7 @@ - + diff --git a/api-reference-api-examples.html b/api-reference-api-examples.html index dfbf38fdb5..5e959b102b 100644 --- a/api-reference-api-examples.html +++ b/api-reference-api-examples.html @@ -21,7 +21,7 @@ - + diff --git a/api-users.html b/api-users.html index a8c05e45cc..ed5785534c 100644 --- a/api-users.html +++ b/api-users.html @@ -21,7 +21,7 @@ - + diff --git a/api.html b/api.html index 5e0c672227..c0cc77a1fc 100644 --- a/api.html +++ b/api.html @@ -21,7 +21,7 @@ - + diff --git a/api/add-user.html b/api/add-user.html index b98d819ffd..c87e24f0fd 100644 --- a/api/add-user.html +++ b/api/add-user.html @@ -21,7 +21,7 @@ - + diff --git a/api/auto-login.html b/api/auto-login.html index e7f47a0408..94de494647 100644 --- a/api/auto-login.html +++ b/api/auto-login.html @@ -21,7 +21,7 @@ - + diff --git a/api/build-flow.html b/api/build-flow.html index aa93cfd129..ef2e7280b3 100644 --- a/api/build-flow.html +++ b/api/build-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/build-public-tmp.html b/api/build-public-tmp.html index 7631f957a0..2bf477f971 100644 --- a/api/build-public-tmp.html +++ b/api/build-public-tmp.html @@ -21,7 +21,7 @@ - + diff --git a/api/build-vertex-stream.html b/api/build-vertex-stream.html index 061b25aec1..e671cd187e 100644 --- a/api/build-vertex-stream.html +++ b/api/build-vertex-stream.html @@ -21,7 +21,7 @@ - + diff --git a/api/build-vertex.html b/api/build-vertex.html index 004d6edfba..2c23e3f699 100644 --- a/api/build-vertex.html +++ b/api/build-vertex.html @@ -21,7 +21,7 @@ - + diff --git a/api/cancel-build.html b/api/cancel-build.html index 79647424f1..3081d92703 100644 --- a/api/cancel-build.html +++ b/api/cancel-build.html @@ -21,7 +21,7 @@ - + diff --git a/api/check-if-store-has-api-key.html b/api/check-if-store-has-api-key.html index f973e39cb1..cc1d4cb3e9 100644 --- a/api/check-if-store-has-api-key.html +++ b/api/check-if-store-has-api-key.html @@ -21,7 +21,7 @@ - + diff --git a/api/check-if-store-is-enabled.html b/api/check-if-store-is-enabled.html index 9d8c78b7da..f570c3f149 100644 --- a/api/check-if-store-is-enabled.html +++ b/api/check-if-store-is-enabled.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-api-key-route.html b/api/create-api-key-route.html index 1d237916db..3213370270 100644 --- a/api/create-api-key-route.html +++ b/api/create-api-key-route.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-flow.html b/api/create-flow.html index 636009b485..1578b1fc79 100644 --- a/api/create-flow.html +++ b/api/create-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-flows.html b/api/create-flows.html index 695fa04fbc..e2705f5a26 100644 --- a/api/create-flows.html +++ b/api/create-flows.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-folder-redirect.html b/api/create-folder-redirect.html index de57fc9e01..d4bacf0ff9 100644 --- a/api/create-folder-redirect.html +++ b/api/create-folder-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-project.html b/api/create-project.html index d04ad9f68f..c055ddbce9 100644 --- a/api/create-project.html +++ b/api/create-project.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-upload-file.html b/api/create-upload-file.html index ffa6a11404..84d3db53df 100644 --- a/api/create-upload-file.html +++ b/api/create-upload-file.html @@ -21,7 +21,7 @@ - + diff --git a/api/create-variable.html b/api/create-variable.html index 6f16cfabf2..504a6ee28c 100644 --- a/api/create-variable.html +++ b/api/create-variable.html @@ -21,7 +21,7 @@ - + diff --git a/api/custom-component-update.html b/api/custom-component-update.html index c54fe3f74f..6bdde0a477 100644 --- a/api/custom-component-update.html +++ b/api/custom-component-update.html @@ -21,7 +21,7 @@ - + diff --git a/api/custom-component.html b/api/custom-component.html index 19162f40d3..6cb29638c9 100644 --- a/api/custom-component.html +++ b/api/custom-component.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-all-files-1.html b/api/delete-all-files-1.html index 8f43850d10..8d3b6a4274 100644 --- a/api/delete-all-files-1.html +++ b/api/delete-all-files-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-all-files.html b/api/delete-all-files.html index c7046653da..bc739d3981 100644 --- a/api/delete-all-files.html +++ b/api/delete-all-files.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-api-key-route.html b/api/delete-api-key-route.html index 77334cbbbd..2b0cb79efa 100644 --- a/api/delete-api-key-route.html +++ b/api/delete-api-key-route.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-file-1.html b/api/delete-file-1.html index 5007b11923..4fe979c6c7 100644 --- a/api/delete-file-1.html +++ b/api/delete-file-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-file.html b/api/delete-file.html index 34fb0f0ddb..29a226b8b8 100644 --- a/api/delete-file.html +++ b/api/delete-file.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-files-batch.html b/api/delete-files-batch.html index 83ace50b7e..be0eb14e00 100644 --- a/api/delete-files-batch.html +++ b/api/delete-files-batch.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-flow.html b/api/delete-flow.html index ad2365cf8d..0c089912e3 100644 --- a/api/delete-flow.html +++ b/api/delete-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-folder-redirect.html b/api/delete-folder-redirect.html index 5c873485a9..2a598609a0 100644 --- a/api/delete-folder-redirect.html +++ b/api/delete-folder-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-messages-session.html b/api/delete-messages-session.html index 7452e70eb2..9bf4d142b1 100644 --- a/api/delete-messages-session.html +++ b/api/delete-messages-session.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-messages.html b/api/delete-messages.html index f589f35499..760dbe8629 100644 --- a/api/delete-messages.html +++ b/api/delete-messages.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-multiple-flows.html b/api/delete-multiple-flows.html index 2212e96907..1cf229ccc9 100644 --- a/api/delete-multiple-flows.html +++ b/api/delete-multiple-flows.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-project.html b/api/delete-project.html index b16d967022..53869a3d01 100644 --- a/api/delete-project.html +++ b/api/delete-project.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-user.html b/api/delete-user.html index 07af24085d..87076389bf 100644 --- a/api/delete-user.html +++ b/api/delete-user.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-variable.html b/api/delete-variable.html index 6714229d5b..30eba720ca 100644 --- a/api/delete-variable.html +++ b/api/delete-variable.html @@ -21,7 +21,7 @@ - + diff --git a/api/delete-vertex-builds.html b/api/delete-vertex-builds.html index 61cf492a4a..e79f039628 100644 --- a/api/delete-vertex-builds.html +++ b/api/delete-vertex-builds.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-component.html b/api/download-component.html index feead912c3..fa48398c6c 100644 --- a/api/download-component.html +++ b/api/download-component.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-file-1.html b/api/download-file-1.html index 4c036072fb..f19a4a4da7 100644 --- a/api/download-file-1.html +++ b/api/download-file-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-file-2.html b/api/download-file-2.html index 5c9eae33af..d49367e457 100644 --- a/api/download-file-2.html +++ b/api/download-file-2.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-file-redirect.html b/api/download-file-redirect.html index 069132fe42..c238ecf6bd 100644 --- a/api/download-file-redirect.html +++ b/api/download-file-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-file.html b/api/download-file.html index 314656d586..05e78cfc18 100644 --- a/api/download-file.html +++ b/api/download-file.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-files-batch.html b/api/download-files-batch.html index 1b0f774837..fdea3069fc 100644 --- a/api/download-files-batch.html +++ b/api/download-files-batch.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-image.html b/api/download-image.html index b21f93b0f0..a203f53abd 100644 --- a/api/download-image.html +++ b/api/download-image.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-multiple-file.html b/api/download-multiple-file.html index 1614a5b439..b6484c5d76 100644 --- a/api/download-multiple-file.html +++ b/api/download-multiple-file.html @@ -21,7 +21,7 @@ - + diff --git a/api/download-profile-picture.html b/api/download-profile-picture.html index 3f2e54e144..55a22c1459 100644 --- a/api/download-profile-picture.html +++ b/api/download-profile-picture.html @@ -21,7 +21,7 @@ - + diff --git a/api/edit-file-name.html b/api/edit-file-name.html index fd4be683fd..b26d81580d 100644 --- a/api/edit-file-name.html +++ b/api/edit-file-name.html @@ -21,7 +21,7 @@ - + diff --git a/api/experimental-run-flow.html b/api/experimental-run-flow.html index a9be272401..5619e62f2f 100644 --- a/api/experimental-run-flow.html +++ b/api/experimental-run-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-all.html b/api/get-all.html index 491e174c7c..2e565b4e79 100644 --- a/api/get-all.html +++ b/api/get-all.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-api-keys-route.html b/api/get-api-keys-route.html index 7ffa616b4a..675e03ee0b 100644 --- a/api/get-api-keys-route.html +++ b/api/get-api-keys-route.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-build-events.html b/api/get-build-events.html index 8ba39493a2..d444539050 100644 --- a/api/get-build-events.html +++ b/api/get-build-events.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-components.html b/api/get-components.html index 7cdb520b7f..69d9c11edb 100644 --- a/api/get-components.html +++ b/api/get-components.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-config.html b/api/get-config.html index 7b32147343..c21b93bbe6 100644 --- a/api/get-config.html +++ b/api/get-config.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-elevenlabs-voice-ids.html b/api/get-elevenlabs-voice-ids.html index 0dc46a363b..a844a4e0e2 100644 --- a/api/get-elevenlabs-voice-ids.html +++ b/api/get-elevenlabs-voice-ids.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-list-of-components-liked-by-user.html b/api/get-list-of-components-liked-by-user.html index 7e0a17ca67..98af03cbd6 100644 --- a/api/get-list-of-components-liked-by-user.html +++ b/api/get-list-of-components-liked-by-user.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-messages.html b/api/get-messages.html index 5edb0bcf1d..e02a7e2678 100644 --- a/api/get-messages.html +++ b/api/get-messages.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-starter-projects.html b/api/get-starter-projects.html index ac598cc84d..dc5ee7e182 100644 --- a/api/get-starter-projects.html +++ b/api/get-starter-projects.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-tags.html b/api/get-tags.html index 4a15fab28e..1eb0bf3356 100644 --- a/api/get-tags.html +++ b/api/get-tags.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-task-status.html b/api/get-task-status.html index d8f157dfb0..264a1aa28b 100644 --- a/api/get-task-status.html +++ b/api/get-task-status.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-transactions.html b/api/get-transactions.html index 0201cd0053..68bf81d7ea 100644 --- a/api/get-transactions.html +++ b/api/get-transactions.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-version.html b/api/get-version.html index c8d7f820ad..66ae6ecc73 100644 --- a/api/get-version.html +++ b/api/get-version.html @@ -21,7 +21,7 @@ - + diff --git a/api/get-vertex-builds.html b/api/get-vertex-builds.html index 4cee7e40d5..047244bd99 100644 --- a/api/get-vertex-builds.html +++ b/api/get-vertex-builds.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-messages-1.html b/api/handle-messages-1.html index 213f3de164..4a29a994b0 100644 --- a/api/handle-messages-1.html +++ b/api/handle-messages-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-messages.html b/api/handle-messages.html index d641232401..f01d1a9284 100644 --- a/api/handle-messages.html +++ b/api/handle-messages.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-project-messages-with-slash.html b/api/handle-project-messages-with-slash.html index 91d7e82f14..19cc946900 100644 --- a/api/handle-project-messages-with-slash.html +++ b/api/handle-project-messages-with-slash.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-project-messages.html b/api/handle-project-messages.html index 4f60643997..fc82f2f8c3 100644 --- a/api/handle-project-messages.html +++ b/api/handle-project-messages.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-project-sse.html b/api/handle-project-sse.html index 7592939288..9efb05123a 100644 --- a/api/handle-project-sse.html +++ b/api/handle-project-sse.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-sse-1.html b/api/handle-sse-1.html index f5cef85e97..5ff814e5a6 100644 --- a/api/handle-sse-1.html +++ b/api/handle-sse-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/handle-sse.html b/api/handle-sse.html index 61da463332..72ef1fa9c3 100644 --- a/api/handle-sse.html +++ b/api/handle-sse.html @@ -21,7 +21,7 @@ - + diff --git a/api/health-check.html b/api/health-check.html index 359d0f8bcf..f79a944dce 100644 --- a/api/health-check.html +++ b/api/health-check.html @@ -21,7 +21,7 @@ - + diff --git a/api/health.html b/api/health.html index cf911b4308..d42505927a 100644 --- a/api/health.html +++ b/api/health.html @@ -21,7 +21,7 @@ - + diff --git a/api/like-component.html b/api/like-component.html index abd05552ee..a4dc3d2bd8 100644 --- a/api/like-component.html +++ b/api/like-component.html @@ -21,7 +21,7 @@ - + diff --git a/api/list-files-1.html b/api/list-files-1.html index d2ee8e2e31..c4b4c89485 100644 --- a/api/list-files-1.html +++ b/api/list-files-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/list-files-2.html b/api/list-files-2.html index 2f165fc6eb..8d432a268b 100644 --- a/api/list-files-2.html +++ b/api/list-files-2.html @@ -21,7 +21,7 @@ - + diff --git a/api/list-files.html b/api/list-files.html index 0bb20982c0..e2cc9f5555 100644 --- a/api/list-files.html +++ b/api/list-files.html @@ -21,7 +21,7 @@ - + diff --git a/api/list-profile-pictures.html b/api/list-profile-pictures.html index 056c596eeb..9f64655760 100644 --- a/api/list-profile-pictures.html +++ b/api/list-profile-pictures.html @@ -21,7 +21,7 @@ - + diff --git a/api/list-project-tools.html b/api/list-project-tools.html index 09b7a60014..38dff60c14 100644 --- a/api/list-project-tools.html +++ b/api/list-project-tools.html @@ -21,7 +21,7 @@ - + diff --git a/api/login-to-get-access-token.html b/api/login-to-get-access-token.html index f7ed0b9c0a..2739f8de13 100644 --- a/api/login-to-get-access-token.html +++ b/api/login-to-get-access-token.html @@ -21,7 +21,7 @@ - + diff --git a/api/logout.html b/api/logout.html index 0496915d6a..2634c424c6 100644 --- a/api/logout.html +++ b/api/logout.html @@ -21,7 +21,7 @@ - + diff --git a/api/logs.html b/api/logs.html index 33de5c70b4..0b993b452c 100644 --- a/api/logs.html +++ b/api/logs.html @@ -21,7 +21,7 @@ - + diff --git a/api/patch-user.html b/api/patch-user.html index 61d7d364f0..437bc8ca65 100644 --- a/api/patch-user.html +++ b/api/patch-user.html @@ -21,7 +21,7 @@ - + diff --git a/api/post-validate-code.html b/api/post-validate-code.html index 1e0d2ea550..76e34a852f 100644 --- a/api/post-validate-code.html +++ b/api/post-validate-code.html @@ -21,7 +21,7 @@ - + diff --git a/api/post-validate-prompt.html b/api/post-validate-prompt.html index 238d56e544..708f707e48 100644 --- a/api/post-validate-prompt.html +++ b/api/post-validate-prompt.html @@ -21,7 +21,7 @@ - + diff --git a/api/process-1.html b/api/process-1.html index 1ce77c3173..959196b42c 100644 --- a/api/process-1.html +++ b/api/process-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/process.html b/api/process.html index 525c690736..4ba16b6cbd 100644 --- a/api/process.html +++ b/api/process.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-all-users.html b/api/read-all-users.html index 57c986a4d7..51f854b75b 100644 --- a/api/read-all-users.html +++ b/api/read-all-users.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-basic-examples.html b/api/read-basic-examples.html index 6609815676..0e24184a9a 100644 --- a/api/read-basic-examples.html +++ b/api/read-basic-examples.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-current-user.html b/api/read-current-user.html index 3cc437695d..66b06ef0eb 100644 --- a/api/read-current-user.html +++ b/api/read-current-user.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-flow.html b/api/read-flow.html index 58cb4c4ced..9043fb04a0 100644 --- a/api/read-flow.html +++ b/api/read-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-flows.html b/api/read-flows.html index 790919e564..94b4a2e388 100644 --- a/api/read-flows.html +++ b/api/read-flows.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-folder-redirect.html b/api/read-folder-redirect.html index 160216b64d..45ff697396 100644 --- a/api/read-folder-redirect.html +++ b/api/read-folder-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-folders-redirect.html b/api/read-folders-redirect.html index fb4a34b6a5..d880d08fd2 100644 --- a/api/read-folders-redirect.html +++ b/api/read-folders-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-project.html b/api/read-project.html index 37b956aa9a..6eb60a85a4 100644 --- a/api/read-project.html +++ b/api/read-project.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-projects.html b/api/read-projects.html index 0a5b8168fa..74c35cc416 100644 --- a/api/read-projects.html +++ b/api/read-projects.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-public-flow.html b/api/read-public-flow.html index fbe8ca4925..a029a4a492 100644 --- a/api/read-public-flow.html +++ b/api/read-public-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/read-variables.html b/api/read-variables.html index 9c31a4c278..481b18f4f9 100644 --- a/api/read-variables.html +++ b/api/read-variables.html @@ -21,7 +21,7 @@ - + diff --git a/api/refresh-token.html b/api/refresh-token.html index 0736b9a23b..bfd8f2d68f 100644 --- a/api/refresh-token.html +++ b/api/refresh-token.html @@ -21,7 +21,7 @@ - + diff --git a/api/reset-password.html b/api/reset-password.html index 22c281eabd..3e6d8de90c 100644 --- a/api/reset-password.html +++ b/api/reset-password.html @@ -21,7 +21,7 @@ - + diff --git a/api/retrieve-vertices-order.html b/api/retrieve-vertices-order.html index 00d5151359..d26d1515d1 100644 --- a/api/retrieve-vertices-order.html +++ b/api/retrieve-vertices-order.html @@ -21,7 +21,7 @@ - + diff --git a/api/save-store-api-key.html b/api/save-store-api-key.html index 7bfded92e2..c5eb8822f7 100644 --- a/api/save-store-api-key.html +++ b/api/save-store-api-key.html @@ -21,7 +21,7 @@ - + diff --git a/api/share-component.html b/api/share-component.html index db49a36ba2..01b695c929 100644 --- a/api/share-component.html +++ b/api/share-component.html @@ -21,7 +21,7 @@ - + diff --git a/api/simplified-run-flow.html b/api/simplified-run-flow.html index 36aa58275a..762a2cc7bb 100644 --- a/api/simplified-run-flow.html +++ b/api/simplified-run-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/stream-logs.html b/api/stream-logs.html index 53b1d83d56..bb9087367f 100644 --- a/api/stream-logs.html +++ b/api/stream-logs.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-flow.html b/api/update-flow.html index 7c866dca5d..385826f63a 100644 --- a/api/update-flow.html +++ b/api/update-flow.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-folder-redirect.html b/api/update-folder-redirect.html index 4e331f122e..2db0a8a952 100644 --- a/api/update-folder-redirect.html +++ b/api/update-folder-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-message.html b/api/update-message.html index b82ae26e7a..f95ebe7f0b 100644 --- a/api/update-message.html +++ b/api/update-message.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-project-mcp-settings.html b/api/update-project-mcp-settings.html index 92853943b2..e562a9ff9f 100644 --- a/api/update-project-mcp-settings.html +++ b/api/update-project-mcp-settings.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-project.html b/api/update-project.html index 36668a2e5a..f7fb2d176f 100644 --- a/api/update-project.html +++ b/api/update-project.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-session-id.html b/api/update-session-id.html index 1dcf4ba5df..1131af6700 100644 --- a/api/update-session-id.html +++ b/api/update-session-id.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-shared-component.html b/api/update-shared-component.html index e982a3e67e..4a949cb35e 100644 --- a/api/update-shared-component.html +++ b/api/update-shared-component.html @@ -21,7 +21,7 @@ - + diff --git a/api/update-variable.html b/api/update-variable.html index da8dfc445a..be367fc74d 100644 --- a/api/update-variable.html +++ b/api/update-variable.html @@ -21,7 +21,7 @@ - + diff --git a/api/upload-file-1.html b/api/upload-file-1.html index c8e678d6c0..bdb36c5660 100644 --- a/api/upload-file-1.html +++ b/api/upload-file-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/upload-file-2.html b/api/upload-file-2.html index 8a6d3707eb..f4a477c3ac 100644 --- a/api/upload-file-2.html +++ b/api/upload-file-2.html @@ -21,7 +21,7 @@ - + diff --git a/api/upload-file-redirect.html b/api/upload-file-redirect.html index 1554a5bf91..f545227f40 100644 --- a/api/upload-file-redirect.html +++ b/api/upload-file-redirect.html @@ -21,7 +21,7 @@ - + diff --git a/api/upload-file.html b/api/upload-file.html index ba717b615d..f0cf5b03aa 100644 --- a/api/upload-file.html +++ b/api/upload-file.html @@ -21,7 +21,7 @@ - + diff --git a/api/upload-user-file-1.html b/api/upload-user-file-1.html index 6b18739f3c..384493d07c 100644 --- a/api/upload-user-file-1.html +++ b/api/upload-user-file-1.html @@ -21,7 +21,7 @@ - + diff --git a/api/upload-user-file.html b/api/upload-user-file.html index bd40f8e2c4..88cbc25f85 100644 --- a/api/upload-user-file.html +++ b/api/upload-user-file.html @@ -21,7 +21,7 @@ - + diff --git a/api/webhook-run-flow.html b/api/webhook-run-flow.html index 6cd0af45f8..2da68879b7 100644 --- a/api/webhook-run-flow.html +++ b/api/webhook-run-flow.html @@ -21,7 +21,7 @@ - + diff --git a/assets/js/2ab0d4f5.980ee380.js b/assets/js/2ab0d4f5.944b027f.js similarity index 50% rename from assets/js/2ab0d4f5.980ee380.js rename to assets/js/2ab0d4f5.944b027f.js index 2e868a174e..87464aad5f 100644 --- a/assets/js/2ab0d4f5.980ee380.js +++ b/assets/js/2ab0d4f5.944b027f.js @@ -1 +1 @@ -"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[1845],{28453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(96540);const s={},r=i.createContext(s);function a(e){const n=i.useContext(r);return i.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:a(e.components),i.createElement(r.Provider,{value:n},e.children)}},83640:(e,n,t)=>{t.r(n),t.d(n,{contentTitle:()=>o,default:()=>c,frontMatter:()=>a,metadata:()=>i,toc:()=>l});const i=JSON.parse('{"type":"api","id":"simplified-run-flow","title":"Simplified Run Flow","description":"","slug":"/simplified-run-flow","frontMatter":{},"api":{"tags":["Base"],"description":"Executes a specified flow by ID with support for streaming and telemetry.\\n\\nThis endpoint executes a flow identified by ID or name, with options for streaming the response\\nand tracking execution metrics. It handles both streaming and non-streaming execution modes.\\n\\nArgs:\\n background_tasks (BackgroundTasks): FastAPI background task manager\\n flow (FlowRead | None): The flow to execute, loaded via dependency\\n input_request (SimplifiedAPIRequest | None): Input parameters for the flow\\n stream (bool): Whether to stream the response\\n api_key_user (UserRead): Authenticated user from API key\\n request (Request): The incoming HTTP request\\n\\nReturns:\\n Union[StreamingResponse, RunResponse]: Either a streaming response for real-time results\\n or a RunResponse with the complete execution results\\n\\nRaises:\\n HTTPException: For flow not found (404) or invalid input (400)\\n APIException: For internal execution errors (500)\\n\\nNotes:\\n - Supports both streaming and non-streaming execution modes\\n - Tracks execution time and success/failure via telemetry\\n - Handles graceful client disconnection in streaming mode\\n - Provides detailed error handling with appropriate HTTP status codes\\n - In streaming mode, uses EventManager to handle events:\\n - \\"add_message\\": New messages during execution\\n - \\"token\\": Individual tokens during streaming\\n - \\"end\\": Final execution result","operationId":"simplified_run_flow_api_v1_run__flow_id_or_name__post","security":[{"API key query":[]},{"API key header":[]}],"parameters":[{"name":"flow_id_or_name","in":"path","required":true,"schema":{"type":"string","title":"Flow Id Or Name"}},{"name":"stream","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Stream"}},{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"string","format":"uuid"},{"type":"null"}],"title":"User Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"properties":{"input_value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Input Value","description":"The input value"},"input_type":{"anyOf":[{"type":"string","enum":["chat","text","any"]},{"type":"null"}],"title":"Input Type","description":"The input type","default":"chat"},"output_type":{"anyOf":[{"type":"string","enum":["chat","text","any","debug"]},{"type":"null"}],"title":"Output Type","description":"The output type","default":"chat"},"output_component":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Output Component","description":"If there are multiple output components, you can specify the component to get the output from.","default":""},"tweaks":{"anyOf":[{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"object"}]},"type":"object","title":"Tweaks","description":"A dictionary of tweaks to adjust the flow\'s execution. Allows customizing flow behavior dynamically. All tweaks are overridden by the input values.","examples":[{"Component Name":{"parameter_name":"value"},"component_id":{"parameter_name":"value"},"parameter_name":"value"}]},{"type":"null"}],"description":"The tweaks"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"The session id"}},"type":"object","title":"SimplifiedAPIRequest"},{"type":"null"}],"title":"Input Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"method":"post","path":"/api/v1/run/{flow_id_or_name}","securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"api/v1/login"}}},"API key query":{"type":"apiKey","in":"query","name":"x-api-key"},"API key header":{"type":"apiKey","in":"header","name":"x-api-key"}},"info":{"title":"Langflow","version":"1.4.3"},"postman":{"name":"Simplified Run Flow","description":{"content":"Executes a specified flow by ID with support for streaming and telemetry.\\n\\nThis endpoint executes a flow identified by ID or name, with options for streaming the response\\nand tracking execution metrics. It handles both streaming and non-streaming execution modes.\\n\\nArgs:\\n background_tasks (BackgroundTasks): FastAPI background task manager\\n flow (FlowRead | None): The flow to execute, loaded via dependency\\n input_request (SimplifiedAPIRequest | None): Input parameters for the flow\\n stream (bool): Whether to stream the response\\n api_key_user (UserRead): Authenticated user from API key\\n request (Request): The incoming HTTP request\\n\\nReturns:\\n Union[StreamingResponse, RunResponse]: Either a streaming response for real-time results\\n or a RunResponse with the complete execution results\\n\\nRaises:\\n HTTPException: For flow not found (404) or invalid input (400)\\n APIException: For internal execution errors (500)\\n\\nNotes:\\n - Supports both streaming and non-streaming execution modes\\n - Tracks execution time and success/failure via telemetry\\n - Handles graceful client disconnection in streaming mode\\n - Provides detailed error handling with appropriate HTTP status codes\\n - In streaming mode, uses EventManager to handle events:\\n - \\"add_message\\": New messages during execution\\n - \\"token\\": Individual tokens during streaming\\n - \\"end\\": Final execution result","type":"text/plain"},"url":{"path":["api","v1","run",":flow_id_or_name"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"stream","value":"false"},{"disabled":false,"key":"user_id","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) ","type":"text/plain"},"type":"any","value":"","key":"flow_id_or_name"}]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"{\\n \\"input_value\\": \\"\\",\\n \\"input_type\\": \\"\\",\\n \\"output_type\\": \\"\\",\\n \\"output_component\\": \\"\\",\\n \\"tweaks\\": {\\n \\"utd34\\": \\"\\"\\n },\\n \\"session_id\\": \\"\\"\\n}","options":{"raw":{"language":"json"}}},"auth":{"type":"apikey","apikey":[{"type":"any","value":"x-api-key","key":"key"},{"type":"any","value":"{{apiKey}}","key":"value"},{"type":"any","value":"query","key":"in"}]}}},"source":"@site/openapi.json","sourceDirName":".","permalink":"/api/simplified-run-flow","previous":{"title":"Get All","permalink":"/api/get-all"},"next":{"title":"Webhook Run Flow","permalink":"/api/webhook-run-flow"}}');var s=t(74848),r=t(28453);const a={},o="Simplified Run Flow",l=[];function d(e){const n={h1:"h1",header:"header",li:"li",p:"p",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.header,{children:(0,s.jsx)(n.h1,{id:"simplified-run-flow",children:"Simplified Run Flow"})}),"\n",(0,s.jsx)(n.p,{children:"Executes a specified flow by ID with support for streaming and telemetry."}),"\n",(0,s.jsx)(n.p,{children:"This endpoint executes a flow identified by ID or name, with options for streaming the response\nand tracking execution metrics. It handles both streaming and non-streaming execution modes."}),"\n",(0,s.jsx)(n.p,{children:"Args:\nbackground_tasks (BackgroundTasks): FastAPI background task manager\nflow (FlowRead | None): The flow to execute, loaded via dependency\ninput_request (SimplifiedAPIRequest | None): Input parameters for the flow\nstream (bool): Whether to stream the response\napi_key_user (UserRead): Authenticated user from API key\nrequest (Request): The incoming HTTP request"}),"\n",(0,s.jsx)(n.p,{children:"Returns:\nUnion[StreamingResponse, RunResponse]: Either a streaming response for real-time results\nor a RunResponse with the complete execution results"}),"\n",(0,s.jsx)(n.p,{children:"Raises:\nHTTPException: For flow not found (404) or invalid input (400)\nAPIException: For internal execution errors (500)"}),"\n",(0,s.jsx)(n.p,{children:"Notes:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Supports both streaming and non-streaming execution modes"}),"\n",(0,s.jsx)(n.li,{children:"Tracks execution time and success/failure via telemetry"}),"\n",(0,s.jsx)(n.li,{children:"Handles graceful client disconnection in streaming mode"}),"\n",(0,s.jsx)(n.li,{children:"Provides detailed error handling with appropriate HTTP status codes"}),"\n",(0,s.jsxs)(n.li,{children:["In streaming mode, uses EventManager to handle events:","\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:'"add_message": New messages during execution'}),"\n",(0,s.jsx)(n.li,{children:'"token": Individual tokens during streaming'}),"\n",(0,s.jsx)(n.li,{children:'"end": Final execution result'}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("th",{style:{textAlign:"left"},children:"Path Parameters"})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"flow_id_or_name"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Flow Id Or Name"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-required)"},children:" REQUIRED"})]})})})]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("th",{style:{textAlign:"left"},children:"Query Parameters"})})}),(0,s.jsxs)("tbody",{children:[(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"stream"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Stream"})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"user_id"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" User Id"})]})})]})]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("th",{style:{textAlign:"left"},children:[(0,s.jsx)("span",{children:"Request Body "}),(0,s.jsx)("div",{})]})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("td",{children:(0,s.jsx)("span",{style:{opacity:"0.6"},children:" undefined"})})})})]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("th",{style:{textAlign:"left"},children:"Responses"})})}),(0,s.jsxs)("tbody",{children:[(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsxs)("div",{style:{display:"flex"},children:[(0,s.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,s.jsx)("code",{children:"200"})}),(0,s.jsx)("div",{children:(0,s.jsx)(n.p,{children:"Successful Response"})})]}),(0,s.jsx)("div",{children:(0,s.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("th",{style:{textAlign:"left"},children:[(0,s.jsx)("span",{children:"Schema "}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,s.jsx)("div",{})]})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("td",{children:(0,s.jsx)("span",{style:{opacity:"0.6"},children:" undefined"})})})})]})})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsxs)("div",{style:{display:"flex"},children:[(0,s.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,s.jsx)("code",{children:"422"})}),(0,s.jsx)("div",{children:(0,s.jsx)(n.p,{children:"Validation Error"})})]}),(0,s.jsx)("div",{children:(0,s.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("th",{style:{textAlign:"left"},children:[(0,s.jsx)("span",{children:"Schema "}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,s.jsx)("div",{})]})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"detail"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" object[]"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,s.jsx)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:(0,s.jsxs)("tbody",{children:[(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"loc"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" undefined[]"})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"msg"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Message"})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"type"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Error Type"})]})})]})})]})})})]})})]})})]})]})]})}function c(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}}}]); \ No newline at end of file +"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[1845],{28453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(96540);const s={},r=i.createContext(s);function a(e){const n=i.useContext(r);return i.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:a(e.components),i.createElement(r.Provider,{value:n},e.children)}},83640:(e,n,t)=>{t.r(n),t.d(n,{contentTitle:()=>o,default:()=>c,frontMatter:()=>a,metadata:()=>i,toc:()=>l});const i=JSON.parse('{"type":"api","id":"simplified-run-flow","title":"Simplified Run Flow","description":"","slug":"/simplified-run-flow","frontMatter":{},"api":{"tags":["Base"],"description":"Executes a specified flow by ID with support for streaming and telemetry.\\n\\nThis endpoint executes a flow identified by ID or name, with options for streaming the response\\nand tracking execution metrics. It handles both streaming and non-streaming execution modes.\\n\\nArgs:\\n background_tasks (BackgroundTasks): FastAPI background task manager\\n flow (FlowRead | None): The flow to execute, loaded via dependency\\n input_request (SimplifiedAPIRequest | None): Input parameters for the flow\\n stream (bool): Whether to stream the response\\n api_key_user (UserRead): Authenticated user from API key\\n request (Request): The incoming HTTP request\\n\\nReturns:\\n Union[StreamingResponse, RunResponse]: Either a streaming response for real-time results\\n or a RunResponse with the complete execution results\\n\\nRaises:\\n HTTPException: For flow not found (404) or invalid input (400)\\n APIException: For internal execution errors (500)\\n\\nNotes:\\n - Supports both streaming and non-streaming execution modes\\n - Tracks execution time and success/failure via telemetry\\n - Handles graceful client disconnection in streaming mode\\n - Provides detailed error handling with appropriate HTTP status codes\\n - In streaming mode, uses EventManager to handle events:\\n - \\"add_message\\": New messages during execution\\n - \\"token\\": Individual tokens during streaming\\n - \\"end\\": Final execution result","operationId":"simplified_run_flow_api_v1_run__flow_id_or_name__post","security":[{"API key query":[]},{"API key header":[]}],"parameters":[{"name":"flow_id_or_name","in":"path","required":true,"schema":{"type":"string","title":"Flow Id Or Name"}},{"name":"stream","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Stream"}},{"name":"user_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"string","format":"uuid"},{"type":"null"}],"title":"User Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"properties":{"input_value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Input Value","description":"The input value"},"input_type":{"anyOf":[{"type":"string","enum":["chat","text","any"]},{"type":"null"}],"title":"Input Type","description":"The input type","default":"chat"},"output_type":{"anyOf":[{"type":"string","enum":["chat","text","any","debug"]},{"type":"null"}],"title":"Output Type","description":"The output type","default":"chat"},"output_component":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Output Component","description":"If there are multiple output components, you can specify the component to get the output from.","default":""},"tweaks":{"anyOf":[{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"object"}]},"type":"object","title":"Tweaks","description":"A dictionary of tweaks to adjust the flow\'s execution. Allows customizing flow behavior dynamically. All tweaks are overridden by the input values.","examples":[{"Component Name":{"parameter_name":"value"},"component_id":{"parameter_name":"value"},"parameter_name":"value"}]},{"type":"null"}],"description":"The tweaks"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"The session id"}},"type":"object","title":"SimplifiedAPIRequest"},{"type":"null"}],"title":"Input Request"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"method":"post","path":"/api/v1/run/{flow_id_or_name}","securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"api/v1/login"}}},"API key query":{"type":"apiKey","in":"query","name":"x-api-key"},"API key header":{"type":"apiKey","in":"header","name":"x-api-key"}},"info":{"title":"Langflow","version":"1.4.3"},"postman":{"name":"Simplified Run Flow","description":{"content":"Executes a specified flow by ID with support for streaming and telemetry.\\n\\nThis endpoint executes a flow identified by ID or name, with options for streaming the response\\nand tracking execution metrics. It handles both streaming and non-streaming execution modes.\\n\\nArgs:\\n background_tasks (BackgroundTasks): FastAPI background task manager\\n flow (FlowRead | None): The flow to execute, loaded via dependency\\n input_request (SimplifiedAPIRequest | None): Input parameters for the flow\\n stream (bool): Whether to stream the response\\n api_key_user (UserRead): Authenticated user from API key\\n request (Request): The incoming HTTP request\\n\\nReturns:\\n Union[StreamingResponse, RunResponse]: Either a streaming response for real-time results\\n or a RunResponse with the complete execution results\\n\\nRaises:\\n HTTPException: For flow not found (404) or invalid input (400)\\n APIException: For internal execution errors (500)\\n\\nNotes:\\n - Supports both streaming and non-streaming execution modes\\n - Tracks execution time and success/failure via telemetry\\n - Handles graceful client disconnection in streaming mode\\n - Provides detailed error handling with appropriate HTTP status codes\\n - In streaming mode, uses EventManager to handle events:\\n - \\"add_message\\": New messages during execution\\n - \\"token\\": Individual tokens during streaming\\n - \\"end\\": Final execution result","type":"text/plain"},"url":{"path":["api","v1","run",":flow_id_or_name"],"host":["{{baseUrl}}"],"query":[{"disabled":false,"key":"stream","value":"false"},{"disabled":false,"key":"user_id","value":""}],"variable":[{"disabled":false,"description":{"content":"(Required) ","type":"text/plain"},"type":"any","value":"","key":"flow_id_or_name"}]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"{\\n \\"input_value\\": \\"\\",\\n \\"input_type\\": \\"\\",\\n \\"output_type\\": \\"\\",\\n \\"output_component\\": \\"\\",\\n \\"tweaks\\": {\\n \\"cupidatat_730\\": \\"\\"\\n },\\n \\"session_id\\": \\"\\"\\n}","options":{"raw":{"language":"json"}}},"auth":{"type":"apikey","apikey":[{"type":"any","value":"x-api-key","key":"key"},{"type":"any","value":"{{apiKey}}","key":"value"},{"type":"any","value":"query","key":"in"}]}}},"source":"@site/openapi.json","sourceDirName":".","permalink":"/api/simplified-run-flow","previous":{"title":"Get All","permalink":"/api/get-all"},"next":{"title":"Webhook Run Flow","permalink":"/api/webhook-run-flow"}}');var s=t(74848),r=t(28453);const a={},o="Simplified Run Flow",l=[];function d(e){const n={h1:"h1",header:"header",li:"li",p:"p",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.header,{children:(0,s.jsx)(n.h1,{id:"simplified-run-flow",children:"Simplified Run Flow"})}),"\n",(0,s.jsx)(n.p,{children:"Executes a specified flow by ID with support for streaming and telemetry."}),"\n",(0,s.jsx)(n.p,{children:"This endpoint executes a flow identified by ID or name, with options for streaming the response\nand tracking execution metrics. It handles both streaming and non-streaming execution modes."}),"\n",(0,s.jsx)(n.p,{children:"Args:\nbackground_tasks (BackgroundTasks): FastAPI background task manager\nflow (FlowRead | None): The flow to execute, loaded via dependency\ninput_request (SimplifiedAPIRequest | None): Input parameters for the flow\nstream (bool): Whether to stream the response\napi_key_user (UserRead): Authenticated user from API key\nrequest (Request): The incoming HTTP request"}),"\n",(0,s.jsx)(n.p,{children:"Returns:\nUnion[StreamingResponse, RunResponse]: Either a streaming response for real-time results\nor a RunResponse with the complete execution results"}),"\n",(0,s.jsx)(n.p,{children:"Raises:\nHTTPException: For flow not found (404) or invalid input (400)\nAPIException: For internal execution errors (500)"}),"\n",(0,s.jsx)(n.p,{children:"Notes:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Supports both streaming and non-streaming execution modes"}),"\n",(0,s.jsx)(n.li,{children:"Tracks execution time and success/failure via telemetry"}),"\n",(0,s.jsx)(n.li,{children:"Handles graceful client disconnection in streaming mode"}),"\n",(0,s.jsx)(n.li,{children:"Provides detailed error handling with appropriate HTTP status codes"}),"\n",(0,s.jsxs)(n.li,{children:["In streaming mode, uses EventManager to handle events:","\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:'"add_message": New messages during execution'}),"\n",(0,s.jsx)(n.li,{children:'"token": Individual tokens during streaming'}),"\n",(0,s.jsx)(n.li,{children:'"end": Final execution result'}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("th",{style:{textAlign:"left"},children:"Path Parameters"})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"flow_id_or_name"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Flow Id Or Name"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-required)"},children:" REQUIRED"})]})})})]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("th",{style:{textAlign:"left"},children:"Query Parameters"})})}),(0,s.jsxs)("tbody",{children:[(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"stream"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Stream"})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"user_id"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" User Id"})]})})]})]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("th",{style:{textAlign:"left"},children:[(0,s.jsx)("span",{children:"Request Body "}),(0,s.jsx)("div",{})]})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("td",{children:(0,s.jsx)("span",{style:{opacity:"0.6"},children:" undefined"})})})})]}),"\n",(0,s.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("th",{style:{textAlign:"left"},children:"Responses"})})}),(0,s.jsxs)("tbody",{children:[(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsxs)("div",{style:{display:"flex"},children:[(0,s.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,s.jsx)("code",{children:"200"})}),(0,s.jsx)("div",{children:(0,s.jsx)(n.p,{children:"Successful Response"})})]}),(0,s.jsx)("div",{children:(0,s.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("th",{style:{textAlign:"left"},children:[(0,s.jsx)("span",{children:"Schema "}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,s.jsx)("div",{})]})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsx)("td",{children:(0,s.jsx)("span",{style:{opacity:"0.6"},children:" undefined"})})})})]})})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsxs)("div",{style:{display:"flex"},children:[(0,s.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,s.jsx)("code",{children:"422"})}),(0,s.jsx)("div",{children:(0,s.jsx)(n.p,{children:"Validation Error"})})]}),(0,s.jsx)("div",{children:(0,s.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("th",{style:{textAlign:"left"},children:[(0,s.jsx)("span",{children:"Schema "}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,s.jsx)("div",{})]})})}),(0,s.jsx)("tbody",{children:(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"detail"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" object[]"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,s.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,s.jsx)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:(0,s.jsxs)("tbody",{children:[(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"loc"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" undefined[]"})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"msg"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Message"})]})}),(0,s.jsx)("tr",{children:(0,s.jsxs)("td",{children:[(0,s.jsx)("code",{children:"type"}),(0,s.jsx)("span",{style:{opacity:"0.6"},children:" Error Type"})]})})]})})]})})})]})})]})})]})]})]})}function c(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}}}]); \ No newline at end of file diff --git a/assets/js/74e1dc40.a30771cb.js b/assets/js/74e1dc40.a30771cb.js deleted file mode 100644 index 0c37ec3670..0000000000 --- a/assets/js/74e1dc40.a30771cb.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[187],{93886:(e,n,o)=>{o.r(n),o.d(n,{CH:()=>d,assets:()=>c,chCodeConfig:()=>h,contentTitle:()=>a,default:()=>p,frontMatter:()=>r,metadata:()=>t,toc:()=>u});const t=JSON.parse('{"id":"Support/troubleshooting","title":"Troubleshoot Langflow","description":"This page provides troubleshooting advice for issues you might encounter when using Langflow or contributing to Langflow.","source":"@site/docs/Support/troubleshooting.md","sourceDirName":"Support","slug":"/troubleshoot","permalink":"/troubleshoot","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"Troubleshoot Langflow","slug":"/troubleshoot"},"sidebar":"docs","previous":{"title":"Release notes","permalink":"/release-notes"},"next":{"title":"Get help and request enhancements","permalink":"/contributing-github-issues"}}');var s=o(74848),l=o(28453),i=o(24754);const r={title:"Troubleshoot Langflow",slug:"/troubleshoot"},a=void 0,c={},d={annotations:i.hk,Code:i.Cy},h={staticMediaQuery:"not screen, (max-width: 768px)",lineNumbers:!0,showCopyButton:!0,themeName:"github-dark"},u=[{value:"Missing components",id:"missing-components",level:2},{value:"No input in the Playground",id:"no-input-in-the-playground",level:2},{value:"Missing key, no key found, or invalid API key",id:"missing-key-no-key-found-or-invalid-api-key",level:2},{value:"Langflow installation issues",id:"langflow-installation-issues",level:2},{value:"Langflow installation freezes at pip dependency resolution",id:"langflow-installation-freezes-at-pip-dependency-resolution",level:3},{value:"Linux installation fails to build required package",id:"linux-installation-fails-to-build-required-package",level:3},{value:"Installation failure from webrtcvad package",id:"installation-failure-from-webrtcvad-package",level:3},{value:"C++ build tools required for Langflow Desktop on Windows",id:"c-build-tools-required-for-langflow-desktop-on-windows",level:3},{value:"Langflow startup issues",id:"langflow-startup-issues",level:2},{value:"No langflow.__main__ module",id:"no-langflow__main__-module",level:3},{value:"Langflow runTraceback",id:"langflow-runtraceback",level:3},{value:"Package is not installed",id:"package-is-not-installed",level:3},{value:"Langflow upgrade issues",id:"langflow-upgrade-issues",level:2},{value:"Something went wrong running migrations",id:"something-went-wrong-running-migrations",level:3},{value:"Langflow uninstall issues",id:"langflow-uninstall-issues",level:2},{value:"Dot directory isn't deleted when uninstalling Langflow Desktop on macOS",id:"dot-directory-isnt-deleted-when-uninstalling-langflow-desktop-on-macos",level:3},{value:"MCP server issues",id:"mcp-server-issues",level:2},{value:"Custom components and integrations issues",id:"custom-components-and-integrations-issues",level:2},{value:"See also",id:"see-also",level:2}];function g(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,l.R)(),...e.components};return d||f("CH",!1),d.Code||f("CH.Code",!0),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("style",{dangerouslySetInnerHTML:{__html:'[data-ch-theme="github-dark"] { --ch-t-colorScheme: dark;--ch-t-foreground: #c9d1d9;--ch-t-background: #0d1117;--ch-t-lighter-inlineBackground: #0d1117e6;--ch-t-editor-background: #0d1117;--ch-t-editor-foreground: #c9d1d9;--ch-t-editor-lineHighlightBackground: #6e76811a;--ch-t-editor-rangeHighlightBackground: #ffffff0b;--ch-t-editor-infoForeground: #3794FF;--ch-t-editor-selectionBackground: #264F78;--ch-t-focusBorder: #1f6feb;--ch-t-tab-activeBackground: #0d1117;--ch-t-tab-activeForeground: #c9d1d9;--ch-t-tab-inactiveBackground: #010409;--ch-t-tab-inactiveForeground: #8b949e;--ch-t-tab-border: #30363d;--ch-t-tab-activeBorder: #0d1117;--ch-t-editorGroup-border: #30363d;--ch-t-editorGroupHeader-tabsBackground: #010409;--ch-t-editorLineNumber-foreground: #6e7681;--ch-t-input-background: #0d1117;--ch-t-input-foreground: #c9d1d9;--ch-t-input-border: #30363d;--ch-t-icon-foreground: #8b949e;--ch-t-sideBar-background: #010409;--ch-t-sideBar-foreground: #c9d1d9;--ch-t-sideBar-border: #30363d;--ch-t-list-activeSelectionBackground: #6e768166;--ch-t-list-activeSelectionForeground: #c9d1d9;--ch-t-list-hoverBackground: #6e76811a;--ch-t-list-hoverForeground: #c9d1d9; }'}}),"\n",(0,s.jsx)(n.p,{children:"This page provides troubleshooting advice for issues you might encounter when using Langflow or contributing to Langflow."}),"\n",(0,s.jsx)(n.h2,{id:"missing-components",children:"Missing components"}),"\n",(0,s.jsx)(n.p,{children:"As Langflow development continues, components are often recategorized or deprecated for better alignment or to prepare for new components."}),"\n",(0,s.jsxs)(n.p,{children:["If a component appears to be missing from the expected location on the ",(0,s.jsx)(n.strong,{children:"Components"})," menu, try the following:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Search for the component or check other component categories, including ",(0,s.jsx)(n.a,{href:"/components-bundle-components",children:"Bundles"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/concepts-components#component-menus",children:"Expose legacy components"}),", which are hidden by default."]}),"\n",(0,s.jsxs)(n.li,{children:["Check the ",(0,s.jsx)(n.a,{href:"https://github.com/langflow-ai/langflow/releases/latest",children:"Changelog"})," for component changes in recent releases."]}),"\n",(0,s.jsx)(n.li,{children:"Make sure the component isn't already present in your flow if it is a single-use component."}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["If you still cannot locate the component, see ",(0,s.jsx)(n.a,{href:"/contributing-github-issues",children:"Langflow GitHub Issues and Discussions"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"no-input-in-the-playground",children:"No input in the Playground"}),"\n",(0,s.jsxs)(n.p,{children:["If there is no text box for input in the Playground, make sure your flow has a ",(0,s.jsx)(n.a,{href:"/components-io",children:"Input component"})," that is connected to the ",(0,s.jsx)(n.strong,{children:"Input"})," port of another component."]}),"\n",(0,s.jsx)(n.h2,{id:"missing-key-no-key-found-or-invalid-api-key",children:"Missing key, no key found, or invalid API key"}),"\n",(0,s.jsx)(n.p,{children:"If you get an API key error when running a flow, try the following:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["For all components that require credentials, make sure those components have a valid credential in the component's settings, such as the ",(0,s.jsx)(n.strong,{children:"API key"})," field."]}),"\n",(0,s.jsxs)(n.li,{children:["If you store your credentials in ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"Langflow global variables"}),", make sure you selected the correct global variable and that the variable contains a valid credential."]}),"\n",(0,s.jsx)(n.li,{children:"Make sure the provided credentials are active, have the required permissions, and, if applicable, have sufficient funds in the account to execute the required action. For example, model providers require credits to use their LLMs."}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-installation-issues",children:"Langflow installation issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when installing Langflow."}),"\n",(0,s.jsx)(n.h3,{id:"langflow-installation-freezes-at-pip-dependency-resolution",children:"Langflow installation freezes at pip dependency resolution"}),"\n",(0,s.jsxs)(n.p,{children:["Installing Langflow OSS with ",(0,s.jsx)(n.code,{children:"pip install langflow"})," slowly fails with this error message:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"pip is looking at multiple versions of <> to determine which version is compatible with other requirements. This could take a while.",props:{}}]}],lang:"text"},annotations:[]}]}),"\n",(0,s.jsxs)(n.p,{children:["To work around this issue, install Langflow with ",(0,s.jsx)(n.code,{children:"uv"})," instead of ",(0,s.jsx)(n.code,{children:"pip"}),", as explained in ",(0,s.jsx)(n.a,{href:"/get-started-installation#install-and-run-the-langflow-oss-python-package",children:"Install and run the Langflow OSS Python package"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"linux-installation-fails-to-build-required-package",children:"Linux installation fails to build required package"}),"\n",(0,s.jsx)(n.p,{children:"When you try to install Langflow OSS on Linux, installation fails because of outdated or missing packages:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"Resolved ",props:{style:{color:"#FFA657"}}},{content:"455 ",props:{style:{color:"#79C0FF"}}},{content:"packages in ",props:{style:{color:"#A5D6FF"}}},{content:"18.92s",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" \xd7 ",props:{style:{color:"#FFA657"}}},{content:"Failed to build `",props:{style:{color:"#A5D6FF"}}},{content:"webrtcvad",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#A5D6FF"}}},{content:"2.0.10",props:{style:{color:"#79C0FF"}}},{content:"`",props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" \u251c\u2500\u25b6",props:{style:{color:"#FFA657"}}},{content:" The build backend returned an error",props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" \u2570\u2500\u25b6",props:{style:{color:"#FFA657"}}},{content:" Call to `setuptools.build_meta:__legacy__.build_wheel` ",props:{style:{color:"#A5D6FF"}}},{content:"failed",props:{style:{color:"#FFA657"}}},{content:" (exit status: ",props:{style:{color:"#A5D6FF"}}},{content:"1",props:{style:{color:"#79C0FF"}}},{content:")",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To resolve this error, install the required build dependencies, and then retry the Langflow installation:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"sudo ",props:{style:{color:"#FFA657"}}},{content:"apt-get update",props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"sudo ",props:{style:{color:"#FFA657"}}},{content:"apt-get install build-essential python3-dev",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsxs)(n.p,{children:["If upgrading your packages doesn't fix the issue, install ",(0,s.jsx)(n.code,{children:"gcc"})," separately, and then retry the Langflow installation:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"sudo ",props:{style:{color:"#FFA657"}}},{content:"apt-get install gcc",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsxs)(n.h3,{id:"installation-failure-from-webrtcvad-package",children:["Installation failure from ",(0,s.jsx)(n.code,{children:"webrtcvad"})," package"]}),"\n",(0,s.jsxs)(n.p,{children:["If you experience an error from the ",(0,s.jsx)(n.code,{children:"webrtcvad"})," package, run ",(0,s.jsx)(n.code,{children:"uv pip install webrtcvad-wheels"})," in your virtual environment, and then retry the Langflow installation."]}),"\n",(0,s.jsx)(n.h3,{id:"c-build-tools-required-for-langflow-desktop-on-windows",children:"C++ build tools required for Langflow Desktop on Windows"}),"\n",(0,s.jsxs)(n.p,{children:["Microsoft Windows installations of Langflow Desktop require a C++ compiler that may not be present on your system. If you receive a ",(0,s.jsx)(n.code,{children:"C++ Build Tools Required!"})," error, follow the on-screen prompt to install Microsoft C++ Build Tools, or ",(0,s.jsx)(n.a,{href:"https://visualstudio.microsoft.com/downloads/",children:"install Microsoft Visual Studio"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-startup-issues",children:"Langflow startup issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when attempting to start Langflow."}),"\n",(0,s.jsxs)(n.h3,{id:"no-langflow__main__-module",children:["No ",(0,s.jsx)(n.code,{children:"langflow.__main__"})," module"]}),"\n",(0,s.jsxs)(n.p,{children:["When you try to run Langflow with the command ",(0,s.jsx)(n.code,{children:"langflow run"}),", you encounter the following error:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:">",props:{style:{color:"#FF7B72"}}},{content:" No module named ",props:{style:{color:"#C9D1D9"}}},{content:"'langflow.__main__'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To resolve this issue, try the following:"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["Run ",(0,s.jsx)(n.code,{children:"uv run langflow run"})," instead of ",(0,s.jsx)(n.code,{children:"langflow run"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["If that doesn't work, reinstall the latest Langflow version with ",(0,s.jsx)(n.code,{children:"uv pip install langflow -U"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["If that doesn't work, reinstall Langflow and its dependencies with ",(0,s.jsx)(n.code,{children:"uv pip install langflow --pre -U --force-reinstall"}),"."]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"langflow-runtraceback",children:"Langflow runTraceback"}),"\n",(0,s.jsxs)(n.p,{children:["When you try to run Langflow using the command ",(0,s.jsx)(n.code,{children:"langflow run"}),", you encounter the following error:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:">",props:{style:{color:"#FF7B72"}}},{content:" langflow runTraceback (",props:{style:{color:"#C9D1D9"}}},{content:"most ",props:{style:{color:"#FFA657"}}},{content:"recent call last",props:{style:{color:"#A5D6FF"}}},{content:"): File ",props:{style:{color:"#C9D1D9"}}},{content:'".../langflow"',props:{style:{color:"#A5D6FF"}}},{content:", line 5, ",props:{style:{color:"#C9D1D9"}}},{content:"in <",props:{style:{color:"#FF7B72"}}},{content:"module",props:{style:{color:"#C9D1D9"}}},{content:">",props:{style:{color:"#FF7B72"}}},{content:" from langflow.__main__ import mainModuleNotFoundError: No module named ",props:{style:{color:"#C9D1D9"}}},{content:"'langflow.__main__'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"There are two possible reasons for this error:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Multiple Langflow installations"}),": You installed Langflow using ",(0,s.jsx)(n.code,{children:"pip install langflow"})," but you already had a previous version of Langflow installed in your system. In this case, you might be running the wrong executable."]}),"\n",(0,s.jsxs)(n.p,{children:["To solve this issue, run the correct executable by running ",(0,s.jsx)(n.code,{children:"python -m langflow run"})," instead of ",(0,s.jsx)(n.code,{children:"langflow run"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:["If that doesn't work, try uninstalling and reinstalling Langflow with ",(0,s.jsx)(n.code,{children:"uv pip install langflow --pre -U"}),"."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Version conflict during installation"}),": Some version conflicts might have occurred during the installation process. To resolve this issue, reinstall Langflow and its dependencies by running ",(0,s.jsx)(n.code,{children:"python -m pip install langflow --pre -U --force-reinstall"}),"."]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"package-is-not-installed",children:"Package is not installed"}),"\n",(0,s.jsx)(n.p,{children:"In Langflow OSS, you can follow the error message's instructions to install the missing dependency."}),"\n",(0,s.jsxs)(n.p,{children:["To manage dependencies in Langflow Desktop, see ",(0,s.jsx)(n.a,{href:"/install-custom-dependencies#langflow-desktop",children:"Install custom dependencies in Langflow Desktop"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-upgrade-issues",children:"Langflow upgrade issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when upgrading your Langflow version."}),"\n",(0,s.jsxs)(n.p,{children:["For information about managing Langflow versions, see ",(0,s.jsx)(n.a,{href:"/get-started-installation",children:"Install Langflow"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"something-went-wrong-running-migrations",children:"Something went wrong running migrations"}),"\n",(0,s.jsxs)(n.p,{children:["The following error can occur during Langflow upgrades when the new version can't override ",(0,s.jsx)(n.code,{children:"langflow-pre.db"})," in the Langflow cache folder:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:">",props:{style:{color:"#FF7B72"}}},{content:" Something went wrong running migrations. Please, run ",props:{style:{color:"#C9D1D9"}}},{content:"'langflow migration --fix'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To resolve this error, clear the cache by deleting the contents of the Langflow cache folder."}),"\n",(0,s.jsx)(n.admonition,{type:"important",children:(0,s.jsx)(n.p,{children:"Clearing the cache erases your settings.\nIf you want to retain your settings files, create a backup of those files before clearing the cache folder."})}),"\n",(0,s.jsx)(n.p,{children:"The cache folder location depends on your OS:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Linux"}),": ",(0,s.jsx)(n.code,{children:"home//.cache/langflow/"})]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"WSL2 on Windows"}),": ",(0,s.jsx)(n.code,{children:"home//.cache/langflow/"})]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"macOS"}),": ",(0,s.jsx)(n.code,{children:"/Users//Library/Caches/langflow/"})]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-uninstall-issues",children:"Langflow uninstall issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when uninstalling Langflow."}),"\n",(0,s.jsx)(n.h3,{id:"dot-directory-isnt-deleted-when-uninstalling-langflow-desktop-on-macos",children:"Dot directory isn't deleted when uninstalling Langflow Desktop on macOS"}),"\n",(0,s.jsxs)(n.p,{children:["On macOS, uninstalling Langflow Desktop deletes the ",(0,s.jsx)(n.code,{children:".app"})," file but doesn't delete files in ",(0,s.jsx)(n.code,{children:"~/.langflow"}),", which includes files generated during usage like cache and settings."]}),"\n",(0,s.jsx)(n.p,{children:"If you reinstall Langflow Desktop, it starts with the existing data from the previous installation."}),"\n",(0,s.jsxs)(n.p,{children:["To fully remove a Langflow Desktop macOS installation, you must also delete ",(0,s.jsx)(n.code,{children:"~/.langflow"}),":"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"rm ",props:{style:{color:"#FFA657"}}},{content:"-rf ",props:{style:{color:"#79C0FF"}}},{content:".langflow",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.h2,{id:"mcp-server-issues",children:"MCP server issues"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/mcp-server#test-and-debug-flows",children:"Use MCP Inspector to test and debug flows"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/mcp-server#troubleshooting-mcp-server",children:"Troubleshooting MCP server"})}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"custom-components-and-integrations-issues",children:"Custom components and integrations issues"}),"\n",(0,s.jsx)(n.p,{children:"For troubleshooting advice for a third-party integration, see the information about that integration in the Langflow documentation and the provider's documentation."}),"\n",(0,s.jsxs)(n.p,{children:["If you are building a custom component, see ",(0,s.jsx)(n.a,{href:"/components-custom-components#error-handling-and-logging",children:"Error handling and logging for custom Python components"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"see-also",children:"See also"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/contributing-github-issues",children:"Langflow GitHub Issues and Discussions"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/contributing-telemetry",children:"Langflow telemetry"})}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(g,{...e})}):g(e)}function f(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}}}]); \ No newline at end of file diff --git a/assets/js/74e1dc40.ee1692f8.js b/assets/js/74e1dc40.ee1692f8.js new file mode 100644 index 0000000000..5b7560f2aa --- /dev/null +++ b/assets/js/74e1dc40.ee1692f8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[187],{93886:(e,n,o)=>{o.r(n),o.d(n,{CH:()=>d,assets:()=>c,chCodeConfig:()=>h,contentTitle:()=>a,default:()=>p,frontMatter:()=>r,metadata:()=>t,toc:()=>u});const t=JSON.parse('{"id":"Support/troubleshooting","title":"Troubleshoot Langflow","description":"This page provides troubleshooting advice for issues you might encounter when using Langflow or contributing to Langflow.","source":"@site/docs/Support/troubleshooting.md","sourceDirName":"Support","slug":"/troubleshoot","permalink":"/troubleshoot","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"Troubleshoot Langflow","slug":"/troubleshoot"},"sidebar":"docs","previous":{"title":"Release notes","permalink":"/release-notes"},"next":{"title":"Get help and request enhancements","permalink":"/contributing-github-issues"}}');var s=o(74848),l=o(28453),i=o(24754);const r={title:"Troubleshoot Langflow",slug:"/troubleshoot"},a=void 0,c={},d={annotations:i.hk,Code:i.Cy},h={staticMediaQuery:"not screen, (max-width: 768px)",lineNumbers:!0,showCopyButton:!0,themeName:"github-dark"},u=[{value:"Missing components",id:"missing-components",level:2},{value:"No input in the Playground",id:"no-input-in-the-playground",level:2},{value:"Missing key, no key found, or invalid API key",id:"missing-key-no-key-found-or-invalid-api-key",level:2},{value:"Langflow installation issues",id:"langflow-installation-issues",level:2},{value:"Langflow installation freezes at pip dependency resolution",id:"langflow-installation-freezes-at-pip-dependency-resolution",level:3},{value:"Linux installation fails to build required package",id:"linux-installation-fails-to-build-required-package",level:3},{value:"Installation failure from webrtcvad package",id:"installation-failure-from-webrtcvad-package",level:3},{value:"C++ build tools required for Langflow Desktop on Windows",id:"c-build-tools-required-for-langflow-desktop-on-windows",level:3},{value:"Langflow startup issues",id:"langflow-startup-issues",level:2},{value:"No langflow.__main__ module",id:"no-langflow__main__-module",level:3},{value:"Langflow runTraceback",id:"langflow-runtraceback",level:3},{value:"Environment variables not available from terminal",id:"environment-variables-not-available-from-terminal",level:3},{value:"Package is not installed",id:"package-is-not-installed",level:3},{value:"Langflow upgrade issues",id:"langflow-upgrade-issues",level:2},{value:"Something went wrong running migrations",id:"something-went-wrong-running-migrations",level:3},{value:"Langflow uninstall issues",id:"langflow-uninstall-issues",level:2},{value:"Dot directory isn't deleted when uninstalling Langflow Desktop on macOS",id:"dot-directory-isnt-deleted-when-uninstalling-langflow-desktop-on-macos",level:3},{value:"MCP server issues",id:"mcp-server-issues",level:2},{value:"Custom components and integrations issues",id:"custom-components-and-integrations-issues",level:2},{value:"See also",id:"see-also",level:2}];function g(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,l.R)(),...e.components};return d||f("CH",!1),d.Code||f("CH.Code",!0),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("style",{dangerouslySetInnerHTML:{__html:'[data-ch-theme="github-dark"] { --ch-t-colorScheme: dark;--ch-t-foreground: #c9d1d9;--ch-t-background: #0d1117;--ch-t-lighter-inlineBackground: #0d1117e6;--ch-t-editor-background: #0d1117;--ch-t-editor-foreground: #c9d1d9;--ch-t-editor-lineHighlightBackground: #6e76811a;--ch-t-editor-rangeHighlightBackground: #ffffff0b;--ch-t-editor-infoForeground: #3794FF;--ch-t-editor-selectionBackground: #264F78;--ch-t-focusBorder: #1f6feb;--ch-t-tab-activeBackground: #0d1117;--ch-t-tab-activeForeground: #c9d1d9;--ch-t-tab-inactiveBackground: #010409;--ch-t-tab-inactiveForeground: #8b949e;--ch-t-tab-border: #30363d;--ch-t-tab-activeBorder: #0d1117;--ch-t-editorGroup-border: #30363d;--ch-t-editorGroupHeader-tabsBackground: #010409;--ch-t-editorLineNumber-foreground: #6e7681;--ch-t-input-background: #0d1117;--ch-t-input-foreground: #c9d1d9;--ch-t-input-border: #30363d;--ch-t-icon-foreground: #8b949e;--ch-t-sideBar-background: #010409;--ch-t-sideBar-foreground: #c9d1d9;--ch-t-sideBar-border: #30363d;--ch-t-list-activeSelectionBackground: #6e768166;--ch-t-list-activeSelectionForeground: #c9d1d9;--ch-t-list-hoverBackground: #6e76811a;--ch-t-list-hoverForeground: #c9d1d9; }'}}),"\n",(0,s.jsx)(n.p,{children:"This page provides troubleshooting advice for issues you might encounter when using Langflow or contributing to Langflow."}),"\n",(0,s.jsx)(n.h2,{id:"missing-components",children:"Missing components"}),"\n",(0,s.jsx)(n.p,{children:"As Langflow development continues, components are often recategorized or deprecated for better alignment or to prepare for new components."}),"\n",(0,s.jsxs)(n.p,{children:["If a component appears to be missing from the expected location on the ",(0,s.jsx)(n.strong,{children:"Components"})," menu, try the following:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Search for the component or check other component categories, including ",(0,s.jsx)(n.a,{href:"/components-bundle-components",children:"Bundles"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/concepts-components#component-menus",children:"Expose legacy components"}),", which are hidden by default."]}),"\n",(0,s.jsxs)(n.li,{children:["Check the ",(0,s.jsx)(n.a,{href:"https://github.com/langflow-ai/langflow/releases/latest",children:"Changelog"})," for component changes in recent releases."]}),"\n",(0,s.jsx)(n.li,{children:"Make sure the component isn't already present in your flow if it is a single-use component."}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["If you still cannot locate the component, see ",(0,s.jsx)(n.a,{href:"/contributing-github-issues",children:"Langflow GitHub Issues and Discussions"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"no-input-in-the-playground",children:"No input in the Playground"}),"\n",(0,s.jsxs)(n.p,{children:["If there is no text box for input in the Playground, make sure your flow has a ",(0,s.jsx)(n.a,{href:"/components-io",children:"Input component"})," that is connected to the ",(0,s.jsx)(n.strong,{children:"Input"})," port of another component."]}),"\n",(0,s.jsx)(n.h2,{id:"missing-key-no-key-found-or-invalid-api-key",children:"Missing key, no key found, or invalid API key"}),"\n",(0,s.jsx)(n.p,{children:"If you get an API key error when running a flow, try the following:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["For all components that require credentials, make sure those components have a valid credential in the component's settings, such as the ",(0,s.jsx)(n.strong,{children:"API key"})," field."]}),"\n",(0,s.jsxs)(n.li,{children:["If you store your credentials in ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"Langflow global variables"}),", make sure you selected the correct global variable and that the variable contains a valid credential."]}),"\n",(0,s.jsx)(n.li,{children:"Make sure the provided credentials are active, have the required permissions, and, if applicable, have sufficient funds in the account to execute the required action. For example, model providers require credits to use their LLMs."}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-installation-issues",children:"Langflow installation issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when installing Langflow."}),"\n",(0,s.jsx)(n.h3,{id:"langflow-installation-freezes-at-pip-dependency-resolution",children:"Langflow installation freezes at pip dependency resolution"}),"\n",(0,s.jsxs)(n.p,{children:["Installing Langflow OSS with ",(0,s.jsx)(n.code,{children:"pip install langflow"})," slowly fails with this error message:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"pip is looking at multiple versions of <> to determine which version is compatible with other requirements. This could take a while.",props:{}}]}],lang:"text"},annotations:[]}]}),"\n",(0,s.jsxs)(n.p,{children:["To work around this issue, install Langflow with ",(0,s.jsx)(n.code,{children:"uv"})," instead of ",(0,s.jsx)(n.code,{children:"pip"}),", as explained in ",(0,s.jsx)(n.a,{href:"/get-started-installation#install-and-run-the-langflow-oss-python-package",children:"Install and run the Langflow OSS Python package"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"linux-installation-fails-to-build-required-package",children:"Linux installation fails to build required package"}),"\n",(0,s.jsx)(n.p,{children:"When you try to install Langflow OSS on Linux, installation fails because of outdated or missing packages:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"Resolved ",props:{style:{color:"#FFA657"}}},{content:"455 ",props:{style:{color:"#79C0FF"}}},{content:"packages in ",props:{style:{color:"#A5D6FF"}}},{content:"18.92s",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" \xd7 ",props:{style:{color:"#FFA657"}}},{content:"Failed to build `",props:{style:{color:"#A5D6FF"}}},{content:"webrtcvad",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#A5D6FF"}}},{content:"2.0.10",props:{style:{color:"#79C0FF"}}},{content:"`",props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" \u251c\u2500\u25b6",props:{style:{color:"#FFA657"}}},{content:" The build backend returned an error",props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" \u2570\u2500\u25b6",props:{style:{color:"#FFA657"}}},{content:" Call to `setuptools.build_meta:__legacy__.build_wheel` ",props:{style:{color:"#A5D6FF"}}},{content:"failed",props:{style:{color:"#FFA657"}}},{content:" (exit status: ",props:{style:{color:"#A5D6FF"}}},{content:"1",props:{style:{color:"#79C0FF"}}},{content:")",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To resolve this error, install the required build dependencies, and then retry the Langflow installation:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"sudo ",props:{style:{color:"#FFA657"}}},{content:"apt-get update",props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"sudo ",props:{style:{color:"#FFA657"}}},{content:"apt-get install build-essential python3-dev",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsxs)(n.p,{children:["If upgrading your packages doesn't fix the issue, install ",(0,s.jsx)(n.code,{children:"gcc"})," separately, and then retry the Langflow installation:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"sudo ",props:{style:{color:"#FFA657"}}},{content:"apt-get install gcc",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsxs)(n.h3,{id:"installation-failure-from-webrtcvad-package",children:["Installation failure from ",(0,s.jsx)(n.code,{children:"webrtcvad"})," package"]}),"\n",(0,s.jsxs)(n.p,{children:["If you experience an error from the ",(0,s.jsx)(n.code,{children:"webrtcvad"})," package, run ",(0,s.jsx)(n.code,{children:"uv pip install webrtcvad-wheels"})," in your virtual environment, and then retry the Langflow installation."]}),"\n",(0,s.jsx)(n.h3,{id:"c-build-tools-required-for-langflow-desktop-on-windows",children:"C++ build tools required for Langflow Desktop on Windows"}),"\n",(0,s.jsxs)(n.p,{children:["Microsoft Windows installations of Langflow Desktop require a C++ compiler that may not be present on your system. If you receive a ",(0,s.jsx)(n.code,{children:"C++ Build Tools Required!"})," error, follow the on-screen prompt to install Microsoft C++ Build Tools, or ",(0,s.jsx)(n.a,{href:"https://visualstudio.microsoft.com/downloads/",children:"install Microsoft Visual Studio"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-startup-issues",children:"Langflow startup issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when attempting to start Langflow."}),"\n",(0,s.jsxs)(n.h3,{id:"no-langflow__main__-module",children:["No ",(0,s.jsx)(n.code,{children:"langflow.__main__"})," module"]}),"\n",(0,s.jsxs)(n.p,{children:["When you try to run Langflow with the command ",(0,s.jsx)(n.code,{children:"langflow run"}),", you encounter the following error:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:">",props:{style:{color:"#FF7B72"}}},{content:" No module named ",props:{style:{color:"#C9D1D9"}}},{content:"'langflow.__main__'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To resolve this issue, try the following:"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["Run ",(0,s.jsx)(n.code,{children:"uv run langflow run"})," instead of ",(0,s.jsx)(n.code,{children:"langflow run"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["If that doesn't work, reinstall the latest Langflow version with ",(0,s.jsx)(n.code,{children:"uv pip install langflow -U"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["If that doesn't work, reinstall Langflow and its dependencies with ",(0,s.jsx)(n.code,{children:"uv pip install langflow --pre -U --force-reinstall"}),"."]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"langflow-runtraceback",children:"Langflow runTraceback"}),"\n",(0,s.jsxs)(n.p,{children:["When you try to run Langflow using the command ",(0,s.jsx)(n.code,{children:"langflow run"}),", you encounter the following error:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:">",props:{style:{color:"#FF7B72"}}},{content:" langflow runTraceback (",props:{style:{color:"#C9D1D9"}}},{content:"most ",props:{style:{color:"#FFA657"}}},{content:"recent call last",props:{style:{color:"#A5D6FF"}}},{content:"): File ",props:{style:{color:"#C9D1D9"}}},{content:'".../langflow"',props:{style:{color:"#A5D6FF"}}},{content:", line 5, ",props:{style:{color:"#C9D1D9"}}},{content:"in <",props:{style:{color:"#FF7B72"}}},{content:"module",props:{style:{color:"#C9D1D9"}}},{content:">",props:{style:{color:"#FF7B72"}}},{content:" from langflow.__main__ import mainModuleNotFoundError: No module named ",props:{style:{color:"#C9D1D9"}}},{content:"'langflow.__main__'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"There are two possible reasons for this error:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Multiple Langflow installations"}),": You installed Langflow using ",(0,s.jsx)(n.code,{children:"pip install langflow"})," but you already had a previous version of Langflow installed in your system. In this case, you might be running the wrong executable."]}),"\n",(0,s.jsxs)(n.p,{children:["To solve this issue, run the correct executable by running ",(0,s.jsx)(n.code,{children:"python -m langflow run"})," instead of ",(0,s.jsx)(n.code,{children:"langflow run"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:["If that doesn't work, try uninstalling and reinstalling Langflow with ",(0,s.jsx)(n.code,{children:"uv pip install langflow --pre -U"}),"."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Version conflict during installation"}),": Some version conflicts might have occurred during the installation process. To resolve this issue, reinstall Langflow and its dependencies by running ",(0,s.jsx)(n.code,{children:"python -m pip install langflow --pre -U --force-reinstall"}),"."]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"environment-variables-not-available-from-terminal",children:"Environment variables not available from terminal"}),"\n",(0,s.jsxs)(n.p,{children:["Environment variables set in your terminal are not automatically available to GUI-based applications like Langflow Desktop when launched through the Finder or the Start Menu.\nTo set environment variables for Langflow Desktop, see ",(0,s.jsx)(n.a,{href:"/environment-variables#set-environment-variables-for-langflow-desktop",children:"Set environment variables for Langflow Desktop"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"package-is-not-installed",children:"Package is not installed"}),"\n",(0,s.jsx)(n.p,{children:"In Langflow OSS, you can follow the error message's instructions to install the missing dependency."}),"\n",(0,s.jsxs)(n.p,{children:["To manage dependencies in Langflow Desktop, see ",(0,s.jsx)(n.a,{href:"/install-custom-dependencies#langflow-desktop",children:"Install custom dependencies in Langflow Desktop"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-upgrade-issues",children:"Langflow upgrade issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when upgrading your Langflow version."}),"\n",(0,s.jsxs)(n.p,{children:["For information about managing Langflow versions, see ",(0,s.jsx)(n.a,{href:"/get-started-installation",children:"Install Langflow"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"something-went-wrong-running-migrations",children:"Something went wrong running migrations"}),"\n",(0,s.jsxs)(n.p,{children:["The following error can occur during Langflow upgrades when the new version can't override ",(0,s.jsx)(n.code,{children:"langflow-pre.db"})," in the Langflow cache folder:"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:">",props:{style:{color:"#FF7B72"}}},{content:" Something went wrong running migrations. Please, run ",props:{style:{color:"#C9D1D9"}}},{content:"'langflow migration --fix'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To resolve this error, clear the cache by deleting the contents of the Langflow cache folder."}),"\n",(0,s.jsx)(n.admonition,{type:"important",children:(0,s.jsx)(n.p,{children:"Clearing the cache erases your settings.\nIf you want to retain your settings files, create a backup of those files before clearing the cache folder."})}),"\n",(0,s.jsx)(n.p,{children:"The cache folder location depends on your OS:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Linux"}),": ",(0,s.jsx)(n.code,{children:"home//.cache/langflow/"})]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"WSL2 on Windows"}),": ",(0,s.jsx)(n.code,{children:"home//.cache/langflow/"})]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"macOS"}),": ",(0,s.jsx)(n.code,{children:"/Users//Library/Caches/langflow/"})]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"langflow-uninstall-issues",children:"Langflow uninstall issues"}),"\n",(0,s.jsx)(n.p,{children:"The following issues can occur when uninstalling Langflow."}),"\n",(0,s.jsx)(n.h3,{id:"dot-directory-isnt-deleted-when-uninstalling-langflow-desktop-on-macos",children:"Dot directory isn't deleted when uninstalling Langflow Desktop on macOS"}),"\n",(0,s.jsxs)(n.p,{children:["On macOS, uninstalling Langflow Desktop deletes the ",(0,s.jsx)(n.code,{children:".app"})," file but doesn't delete files in ",(0,s.jsx)(n.code,{children:"~/.langflow"}),", which includes files generated during usage like cache and settings."]}),"\n",(0,s.jsx)(n.p,{children:"If you reinstall Langflow Desktop, it starts with the existing data from the previous installation."}),"\n",(0,s.jsxs)(n.p,{children:["To fully remove a Langflow Desktop macOS installation, you must also delete ",(0,s.jsx)(n.code,{children:"~/.langflow"}),":"]}),"\n",(0,s.jsx)(d.Code,{codeConfig:h,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"rm ",props:{style:{color:"#FFA657"}}},{content:"-rf ",props:{style:{color:"#79C0FF"}}},{content:".langflow",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),"\n",(0,s.jsx)(n.h2,{id:"mcp-server-issues",children:"MCP server issues"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/mcp-server#test-and-debug-flows",children:"Use MCP Inspector to test and debug flows"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/mcp-server#troubleshooting-mcp-server",children:"Troubleshooting MCP server"})}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"custom-components-and-integrations-issues",children:"Custom components and integrations issues"}),"\n",(0,s.jsx)(n.p,{children:"For troubleshooting advice for a third-party integration, see the information about that integration in the Langflow documentation and the provider's documentation."}),"\n",(0,s.jsxs)(n.p,{children:["If you are building a custom component, see ",(0,s.jsx)(n.a,{href:"/components-custom-components#error-handling-and-logging",children:"Error handling and logging for custom Python components"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"see-also",children:"See also"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/contributing-github-issues",children:"Langflow GitHub Issues and Discussions"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/contributing-telemetry",children:"Langflow telemetry"})}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(g,{...e})}):g(e)}function f(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}}}]); \ No newline at end of file diff --git a/assets/js/b7251463.35fee080.js b/assets/js/b7251463.35fee080.js new file mode 100644 index 0000000000..bb9a756472 --- /dev/null +++ b/assets/js/b7251463.35fee080.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[51],{11470:(e,n,o)=>{o.d(n,{A:()=>y});var t=o(96540),s=o(18215),r=o(23104),l=o(56347),c=o(205),i=o(57485),d=o(31682),a=o(70679);function p(e){return t.Children.toArray(e).filter(e=>"\n"!==e).map(e=>{if(!e||(0,t.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)})?.filter(Boolean)??[]}function h(e){const{values:n,children:o}=e;return(0,t.useMemo)(()=>{const e=n??function(e){return p(e).map(({props:{value:e,label:n,attributes:o,default:t}})=>({value:e,label:n,attributes:o,default:t}))}(o);return function(e){const n=(0,d.XI)(e,(e,n)=>e.value===n.value);if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map(e=>e.value).join(", ")}" found in . Every value needs to be unique.`)}(e),e},[n,o])}function x({value:e,tabValues:n}){return n.some(n=>n.value===e)}function L({queryString:e=!1,groupId:n}){const o=(0,l.W6)(),s=function({queryString:e=!1,groupId:n}){if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:e,groupId:n});return[(0,i.aZ)(s),(0,t.useCallback)(e=>{if(!s)return;const n=new URLSearchParams(o.location.search);n.set(s,e),o.replace({...o.location,search:n.toString()})},[s,o])]}function j(e){const{defaultValue:n,queryString:o=!1,groupId:s}=e,r=h(e),[l,i]=(0,t.useState)(()=>function({defaultValue:e,tabValues:n}){if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!x({value:e,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${n.map(e=>e.value).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const o=n.find(e=>e.default)??n[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:n,tabValues:r})),[d,p]=L({queryString:o,groupId:s}),[j,A]=function({groupId:e}){const n=function(e){return e?`docusaurus.tab.${e}`:null}(e),[o,s]=(0,a.Dv)(n);return[o,(0,t.useCallback)(e=>{n&&s.set(e)},[n,s])]}({groupId:s}),_=(()=>{const e=d??j;return x({value:e,tabValues:r})?e:null})();(0,c.A)(()=>{_&&i(_)},[_]);return{selectedValue:l,selectValue:(0,t.useCallback)(e=>{if(!x({value:e,tabValues:r}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),A(e)},[p,A,r]),tabValues:r}}var A=o(92303);const _={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var u=o(74848);function F({className:e,block:n,selectedValue:o,selectValue:t,tabValues:l}){const c=[],{blockElementScrollPositionUntilNextRender:i}=(0,r.a_)(),d=e=>{const n=e.currentTarget,s=c.indexOf(n),r=l[s].value;r!==o&&(i(n),t(r))},a=e=>{let n=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const o=c.indexOf(e.currentTarget)+1;n=c[o]??c[0];break}case"ArrowLeft":{const o=c.indexOf(e.currentTarget)-1;n=c[o]??c[c.length-1];break}}n?.focus()};return(0,u.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,s.A)("tabs",{"tabs--block":n},e),children:l.map(({value:e,label:n,attributes:t})=>(0,u.jsx)("li",{role:"tab",tabIndex:o===e?0:-1,"aria-selected":o===e,ref:e=>{c.push(e)},onKeyDown:a,onClick:d,...t,className:(0,s.A)("tabs__item",_.tabItem,t?.className,{"tabs__item--active":o===e}),children:n??e},e))})}function f({lazy:e,children:n,selectedValue:o}){const r=(Array.isArray(n)?n:[n]).filter(Boolean);if(e){const e=r.find(e=>e.props.value===o);return e?(0,t.cloneElement)(e,{className:(0,s.A)("margin-top--md",e.props.className)}):null}return(0,u.jsx)("div",{className:"margin-top--md",children:r.map((e,n)=>(0,t.cloneElement)(e,{key:n,hidden:e.props.value!==o}))})}function E(e){const n=j(e);return(0,u.jsxs)("div",{className:(0,s.A)("tabs-container",_.tabList),children:[(0,u.jsx)(F,{...n,...e}),(0,u.jsx)(f,{...n,...e})]})}function y(e){const n=(0,A.A)();return(0,u.jsx)(E,{...e,children:p(e.children)},String(n))}},19365:(e,n,o)=>{o.d(n,{A:()=>l});o(96540);var t=o(18215);const s={tabItem:"tabItem_Ymn6"};var r=o(74848);function l({children:e,hidden:n,className:o}){return(0,r.jsx)("div",{role:"tabpanel",className:(0,t.A)(s.tabItem,o),hidden:n,children:e})}},93158:(e,n,o)=>{o.r(n),o.d(n,{CH:()=>x,assets:()=>h,chCodeConfig:()=>L,contentTitle:()=>p,default:()=>_,frontMatter:()=>a,metadata:()=>t,toc:()=>j});const t=JSON.parse('{"id":"Configuration/environment-variables","title":"Environment variables","description":"Langflow lets you configure a number of settings using environment variables.","source":"@site/docs/Configuration/environment-variables.md","sourceDirName":"Configuration","slug":"/environment-variables","permalink":"/environment-variables","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"Environment variables","slug":"/environment-variables"},"sidebar":"docs","previous":{"title":"Global variables","permalink":"/configuration-global-variables"},"next":{"title":"Telemetry","permalink":"/contributing-telemetry"}}');var s=o(74848),r=o(28453),l=o(24754),c=o(11470),i=o(19365),d=o(28774);const a={title:"Environment variables",slug:"/environment-variables"},p=void 0,h={},x={annotations:l.hk,Code:l.Cy},L={staticMediaQuery:"not screen, (max-width: 768px)",lineNumbers:!0,showCopyButton:!0,themeName:"github-dark"},j=[{value:"Configure environment variables",id:"configure-environment-variables",level:2},{value:"Set environment variables in your terminal",id:"configure-variables-terminal",level:3},{value:"Import environment variables from a .env file",id:"configure-variables-env-file",level:3},{value:"Precedence",id:"precedence",level:2},{value:"Supported environment variables",id:"supported-variables",level:2},{value:"Configure .env, override.conf, and tasks.json files",id:"configure-env-overrideconf-and-tasksjson-files",level:2},{value:"Set environment variables for Langflow Desktop",id:"set-environment-variables-for-langflow-desktop",level:2}];function A(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return x||u("CH",!1),x.Code||u("CH.Code",!0),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("style",{dangerouslySetInnerHTML:{__html:'[data-ch-theme="github-dark"] { --ch-t-colorScheme: dark;--ch-t-foreground: #c9d1d9;--ch-t-background: #0d1117;--ch-t-lighter-inlineBackground: #0d1117e6;--ch-t-editor-background: #0d1117;--ch-t-editor-foreground: #c9d1d9;--ch-t-editor-lineHighlightBackground: #6e76811a;--ch-t-editor-rangeHighlightBackground: #ffffff0b;--ch-t-editor-infoForeground: #3794FF;--ch-t-editor-selectionBackground: #264F78;--ch-t-focusBorder: #1f6feb;--ch-t-tab-activeBackground: #0d1117;--ch-t-tab-activeForeground: #c9d1d9;--ch-t-tab-inactiveBackground: #010409;--ch-t-tab-inactiveForeground: #8b949e;--ch-t-tab-border: #30363d;--ch-t-tab-activeBorder: #0d1117;--ch-t-editorGroup-border: #30363d;--ch-t-editorGroupHeader-tabsBackground: #010409;--ch-t-editorLineNumber-foreground: #6e7681;--ch-t-input-background: #0d1117;--ch-t-input-foreground: #c9d1d9;--ch-t-input-border: #30363d;--ch-t-icon-foreground: #8b949e;--ch-t-sideBar-background: #010409;--ch-t-sideBar-foreground: #c9d1d9;--ch-t-sideBar-border: #30363d;--ch-t-list-activeSelectionBackground: #6e768166;--ch-t-list-activeSelectionForeground: #c9d1d9;--ch-t-list-hoverBackground: #6e76811a;--ch-t-list-hoverForeground: #c9d1d9; }'}}),"\n","\n",(0,s.jsx)(n.p,{children:"Langflow lets you configure a number of settings using environment variables."}),"\n",(0,s.jsx)(n.h2,{id:"configure-environment-variables",children:"Configure environment variables"}),"\n",(0,s.jsxs)(n.p,{children:["Langflow recognizes ",(0,s.jsx)(n.a,{href:"#supported-variables",children:"supported environment variables"})," from the following sources:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Environment variables that you've set in your terminal."}),"\n",(0,s.jsxs)(n.li,{children:["Environment variables that you've imported from a ",(0,s.jsx)(n.code,{children:".env"})," file using the ",(0,s.jsx)(n.code,{children:"--env-file"})," option in the Langflow CLI."]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["You can choose to use one source exclusively, or use both sources together.\nIf you choose to use both sources together, be aware that environment variables imported from a ",(0,s.jsx)(n.code,{children:".env"})," file take ",(0,s.jsx)(n.a,{href:"#precedence",children:"precedence"})," over those set in your terminal."]}),"\n",(0,s.jsx)(n.h3,{id:"configure-variables-terminal",children:"Set environment variables in your terminal"}),"\n",(0,s.jsx)(n.p,{children:"Run the following commands to set environment variables for your current terminal session:"}),"\n",(0,s.jsxs)(c.A,{children:[(0,s.jsx)(i.A,{value:"linux-macos",label:"Linux or macOS",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"export",props:{style:{color:"#FF7B72"}}},{content:" VARIABLE_NAME",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:"'VALUE'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})}),(0,s.jsx)(i.A,{value:"windows",label:"Windows",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"set VARIABLE_NAME='VALUE'",props:{}}]}],lang:"text"},annotations:[]}]})}),(0,s.jsx)(i.A,{value:"docker",label:"Docker",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"docker ",props:{style:{color:"#FFA657"}}},{content:"run ",props:{style:{color:"#A5D6FF"}}},{content:"-it --rm \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" -p ",props:{style:{color:"#79C0FF"}}},{content:"7860:",props:{style:{color:"#A5D6FF"}}},{content:"7860 \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" -e ",props:{style:{color:"#79C0FF"}}},{content:"VARIABLE_NAME='VALUE' ",props:{style:{color:"#A5D6FF"}}},{content:"\\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" langflowai/langflow:latest",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})})]}),"\n",(0,s.jsxs)(n.p,{children:["When you start Langflow, it looks for environment variables that you've set in your terminal.\nIf it detects a supported environment variable, then it automatically adopts the specified value, subject to ",(0,s.jsx)(n.a,{href:"#precedence",children:"precedence rules"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"configure-variables-env-file",children:"Import environment variables from a .env file"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["Create a ",(0,s.jsx)(n.code,{children:".env"})," file and open it in your preferred editor."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Add your environment variables to the file:"}),"\n",(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'".env"',focus:"",code:{lines:[{tokens:[{content:"DO_NOT_TRACK=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_LOGIN=false",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING_INTERVAL=1000",props:{}}]},{tokens:[{content:"LANGFLOW_BACKEND_ONLY=false",props:{}}]},{tokens:[{content:'LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]',props:{}}]},{tokens:[{content:"LANGFLOW_CACHE_TYPE=async",props:{}}]},{tokens:[{content:"LANGFLOW_COMPONENTS_PATH=/path/to/components/",props:{}}]},{tokens:[{content:"LANGFLOW_CONFIG_DIR=/path/to/config/",props:{}}]},{tokens:[{content:"LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow",props:{}}]},{tokens:[{content:"LANGFLOW_DEV=false",props:{}}]},{tokens:[{content:"LANGFLOW_FALLBACK_TO_ENV_VAR=false",props:{}}]},{tokens:[{content:"LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5",props:{}}]},{tokens:[{content:"LANGFLOW_HOST=localhost",props:{}}]},{tokens:[{content:"LANGFLOW_LANGCHAIN_CACHE=InMemoryCache",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_ITEMS_LENGTH=100",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_TEXT_LENGTH=1000",props:{}}]},{tokens:[{content:"LANGFLOW_LOG_LEVEL=error",props:{}}]},{tokens:[{content:"LANGFLOW_OPEN_BROWSER=false",props:{}}]},{tokens:[{content:"LANGFLOW_PORT=7860",props:{}}]},{tokens:[{content:"LANGFLOW_REMOVE_API_KEYS=false",props:{}}]},{tokens:[{content:"LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true",props:{}}]},{tokens:[{content:"LANGFLOW_SECRET_KEY=somesecretkey",props:{}}]},{tokens:[{content:"LANGFLOW_STORE=true",props:{}}]},{tokens:[{content:"LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER=adminuser",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER_PASSWORD=adminpass",props:{}}]},{tokens:[{content:"LANGFLOW_WORKER_TIMEOUT=60000",props:{}}]},{tokens:[{content:"LANGFLOW_WORKERS=3",props:{}}]}],lang:"text"},annotations:[]}]}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsxs)(n.p,{children:["The Langflow project includes a ",(0,s.jsx)(n.a,{href:"https://github.com/langflow-ai/langflow/blob/main/.env.example",children:(0,s.jsx)(n.code,{children:".env.example"})})," file to help you get started.\nYou can copy the contents of this file into your own ",(0,s.jsx)(n.code,{children:".env"})," file and replace the example values with your own preferred settings."]})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Save and close the file."}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["Start Langflow using the ",(0,s.jsx)(n.code,{children:"--env-file"})," option to define the path to your ",(0,s.jsx)(n.code,{children:".env"})," file:"]}),"\n",(0,s.jsxs)(c.A,{children:[(0,s.jsx)(i.A,{value:"local",label:"Local",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"python ",props:{style:{color:"#FFA657"}}},{content:"-m ",props:{style:{color:"#79C0FF"}}},{content:"langflow run ",props:{style:{color:"#A5D6FF"}}},{content:"--env-file ",props:{style:{color:"#79C0FF"}}},{content:".env",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})}),(0,s.jsx)(i.A,{value:"docker",label:"Docker",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"docker ",props:{style:{color:"#FFA657"}}},{content:"run ",props:{style:{color:"#A5D6FF"}}},{content:"-it --rm \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" -p ",props:{style:{color:"#79C0FF"}}},{content:"7860:",props:{style:{color:"#A5D6FF"}}},{content:"7860 \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" --env-file ",props:{style:{color:"#79C0FF"}}},{content:".env ",props:{style:{color:"#A5D6FF"}}},{content:"\\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" langflowai/langflow:latest",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})})]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["On startup, Langflow imports the environment variables from your ",(0,s.jsx)(n.code,{children:".env"})," file, as well as any that you ",(0,s.jsx)(n.a,{href:"#configure-variables-terminal",children:"set in your terminal"}),", and adopts their specified values."]}),"\n",(0,s.jsx)(n.h2,{id:"precedence",children:"Precedence"}),"\n",(0,s.jsxs)(n.p,{children:["Environment variables ",(0,s.jsx)(n.a,{href:"#configure-variables-env-file",children:"defined in the .env file"})," take precedence over those ",(0,s.jsx)(n.a,{href:"#configure-variables-terminal",children:"set in your terminal"}),".\nThat means, if you happen to set the same environment variable in both your terminal and your ",(0,s.jsx)(n.code,{children:".env"})," file, Langflow adopts the value from the the ",(0,s.jsx)(n.code,{children:".env"})," file."]}),"\n",(0,s.jsx)(n.admonition,{title:"CLI precedence",type:"info",children:(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.a,{href:"/configuration-cli",children:"Langflow CLI options"})," override the value of corresponding environment variables defined in the ",(0,s.jsx)(n.code,{children:".env"})," file as well as any environment variables set in your terminal."]})}),"\n",(0,s.jsx)(n.h2,{id:"supported-variables",children:"Supported environment variables"}),"\n",(0,s.jsx)(n.p,{children:"The following table lists the environment variables supported by Langflow."}),"\n",(0,s.jsx)("style",{children:"\n.env-table {\n width: 100%;\n max-width: 100%;\n table-layout: fixed;\n}\n.env-table td:first-child {\n width: 30%;\n font-family: var(--ifm-font-family-monospace);\n background: var(--prism-background);\n border-radius: 6px;\n padding: 8px;\n word-break: break-word;\n}\n.env-table td:nth-child(2) {\n width: 15%;\n}\n.env-table td:nth-child(3) {\n width: 15%;\n}\n.env-table td:nth-child(4) {\n width: 40%;\n}\n.env-table td {\n padding: 8px;\n vertical-align: top;\n}\n.env-prefix {\n opacity: 0.7;\n}\n.env-table tr {\n border-top: 1px solid var(--ifm-table-border-color);\n}\n.env-table code {\n white-space: nowrap;\n}\n"}),"\n",(0,s.jsx)("div",{class:"env-table",children:(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Variable"}),(0,s.jsx)(n.th,{children:"Format"}),(0,s.jsx)(n.th,{children:"Default"}),(0,s.jsx)(n.th,{children:"Description"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"DO_NOT_TRACK"}),"DO_NOT_TRACK"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"If this option is enabled, Langflow does not track telemetry."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_AUTO_LOGIN"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Enable automatic login for Langflow. Set to ",(0,s.jsx)(n.code,{children:"false"})," to disable automatic login and require the login form to log into the Langflow UI. Setting to ",(0,s.jsx)(n.code,{children:"false"})," requires ",(0,s.jsx)(n.a,{href:"#LANGFLOW_SUPERUSER",children:(0,s.jsx)(n.code,{children:"LANGFLOW_SUPERUSER"})})," and ",(0,s.jsx)(n.a,{href:"/environment-variables#LANGFLOW_SUPERUSER_PASSWORD",children:(0,s.jsx)(n.code,{children:"LANGFLOW_SUPERUSER_PASSWORD"})})," to be set. For more information, see ",(0,s.jsx)(n.a,{href:"/configuration-authentication",children:"Authentication"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_AUTO_SAVING"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_SAVING"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Enable flow auto-saving.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-auto-saving",children:[(0,s.jsx)(n.code,{children:"--auto-saving"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_AUTO_SAVING_INTERVAL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_SAVING_INTERVAL"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"1000"})}),(0,s.jsxs)(n.td,{children:["Set the interval for flow auto-saving in milliseconds.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-auto-saving-interval",children:[(0,s.jsx)(n.code,{children:"--auto-saving-interval"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_BACKEND_ONLY"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"BACKEND_ONLY"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Only run Langflow's backend server (no frontend).",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-backend-only",children:[(0,s.jsx)(n.code,{children:"--backend-only"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_BUNDLE_URLS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"BUNDLE_URLS"]}),(0,s.jsx)(n.td,{children:"List[String]"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"[]"})}),(0,s.jsxs)(n.td,{children:["A list of URLs from which to load component bundles and flows. Supports GitHub URLs. If ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is enabled, flows from these bundles are loaded into the database."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_CACHE_TYPE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"async"})}),(0,s.jsxs)(n.td,{children:["Set the cache type for Langflow. Possible values: ",(0,s.jsx)(n.code,{children:"async"}),", ",(0,s.jsx)(n.code,{children:"redis"}),", ",(0,s.jsx)(n.code,{children:"memory"}),", ",(0,s.jsx)(n.code,{children:"disk"}),".",(0,s.jsx)("br",{}),"If you set the type to ",(0,s.jsx)(n.code,{children:"redis"}),", then you must also set the following environment variables: ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_HOST"}),", ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_PORT"}),", ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_DB"}),", and ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_CACHE_EXPIRE"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_COMPONENTS_PATH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"COMPONENTS_PATH"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"langflow/components"})}),(0,s.jsxs)(n.td,{children:["Path to the directory containing custom components.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-components-path",children:[(0,s.jsx)(n.code,{children:"--components-path"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_CONFIG_DIR"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CONFIG_DIR"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"See description"}),(0,s.jsxs)(n.td,{children:["Set the Langflow configuration directory where files, logs, and the Langflow database are stored. Defaults: ",(0,s.jsx)(n.strong,{children:"Linux/WSL"}),": ",(0,s.jsx)(n.code,{children:"~/.cache/langflow/"}),(0,s.jsx)("br",{}),(0,s.jsx)(n.strong,{children:"macOS"}),": ",(0,s.jsx)(n.code,{children:"/Users//Library/Caches/langflow/"}),(0,s.jsx)("br",{}),(0,s.jsx)(n.strong,{children:"Windows"}),": ",(0,s.jsx)(n.code,{children:"%LOCALAPPDATA%\\langflow\\langflow\\Cache"})]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DATABASE_URL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DATABASE_URL"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Set the database URL for Langflow. If not provided, Langflow uses a SQLite database."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DATABASE_CONNECTION_RETRY"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DATABASE_CONNECTION_RETRY"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"If True, Langflow tries to connect to the database again if it fails."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_POOL_SIZE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_POOL_SIZE"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"10"})}),(0,s.jsxs)(n.td,{children:[(0,s.jsx)(n.strong,{children:"DEPRECATED:"})," Use ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECTION_SETTINGS instead. The number of connections to keep open in the connection pool."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_MAX_OVERFLOW"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_MAX_OVERFLOW"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"20"})}),(0,s.jsxs)(n.td,{children:[(0,s.jsx)(n.strong,{children:"DEPRECATED:"})," Use ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECTION_SETTINGS instead. The number of connections to allow that can be opened beyond the pool size."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_CONNECT_TIMEOUT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECT_TIMEOUT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"20"})}),(0,s.jsx)(n.td,{children:"The number of seconds to wait before giving up on a lock to be released or establishing a connection to the database."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_CONNECTION_SETTINGS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECTION_SETTINGS"]}),(0,s.jsx)(n.td,{children:"JSON"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsxs)(n.td,{children:["A JSON dictionary to centralize database connection parameters. Example: ",(0,s.jsx)(n.code,{children:'{"pool_size": 10, "max_overflow": 20}'})]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DISABLE_TRACK_APIKEY_USAGE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DISABLE_TRACK_APIKEY_USAGE"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["If set to ",(0,s.jsx)(n.code,{children:"true"}),", disables tracking of API key usage (",(0,s.jsx)(n.code,{children:"total_uses"})," and ",(0,s.jsx)(n.code,{children:"last_used_at"}),") to avoid database contention under high concurrency."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_ENABLE_LOG_RETRIEVAL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"ENABLE_LOG_RETRIEVAL"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"Enable log retrieval functionality."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_FALLBACK_TO_ENV_VAR"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"FALLBACK_TO_ENV_VAR"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["If enabled, ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"global variables"})," set in the Langflow UI fall back to an environment variable with the same name when Langflow fails to retrieve the variable value."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_FRONTEND_PATH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"FRONTEND_PATH"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"./frontend"})}),(0,s.jsxs)(n.td,{children:["Path to the frontend directory containing build files. This is for development purposes only.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-frontend-path",children:[(0,s.jsx)(n.code,{children:"--frontend-path"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_HEALTH_CHECK_MAX_RETRIES"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"HEALTH_CHECK_MAX_RETRIES"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"5"})}),(0,s.jsxs)(n.td,{children:["Set the maximum number of retries for the health check.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-health-check-max-retries",children:[(0,s.jsx)(n.code,{children:"--health-check-max-retries"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_HOST"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"HOST"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"localhost"})}),(0,s.jsxs)(n.td,{children:["The host on which the Langflow server will run.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-host",children:[(0,s.jsx)(n.code,{children:"--host"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LANGCHAIN_CACHE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LANGCHAIN_CACHE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"InMemoryCache"})}),(0,s.jsxs)(n.td,{children:["Type of cache to use. Possible values: ",(0,s.jsx)(n.code,{children:"InMemoryCache"}),", ",(0,s.jsx)(n.code,{children:"SQLiteCache"}),".",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-cache",children:[(0,s.jsx)(n.code,{children:"--cache"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOG_LEVEL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOG_LEVEL"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"INFO"})}),(0,s.jsxs)(n.td,{children:["Set the logging level for Langflow. Possible values: ",(0,s.jsx)(n.code,{children:"DEBUG"}),", ",(0,s.jsx)(n.code,{children:"INFO"}),", ",(0,s.jsx)(n.code,{children:"WARNING"}),", ",(0,s.jsx)(n.code,{children:"ERROR"}),", ",(0,s.jsx)(n.code,{children:"CRITICAL"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOG_FILE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOG_FILE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Path to the log file. If this option is not set, logs are written to stdout."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOG_RETRIEVER_BUFFER_SIZE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOG_RETRIEVER_BUFFER_SIZE"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"10000"})}),(0,s.jsxs)(n.td,{children:["Set the buffer size for log retrieval. Only used if ",(0,s.jsx)(n.code,{children:"LANGFLOW_ENABLE_LOG_RETRIEVAL"})," is enabled."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MAX_FILE_SIZE_UPLOAD"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MAX_FILE_SIZE_UPLOAD"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"100"})}),(0,s.jsxs)(n.td,{children:["Set the maximum file size for the upload in megabytes.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-max-file-size-upload",children:[(0,s.jsx)(n.code,{children:"--max-file-size-upload"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MAX_ITEMS_LENGTH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MAX_ITEMS_LENGTH"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"100"})}),(0,s.jsx)(n.td,{children:"Maximum number of items to store and display in the UI. Lists longer than this will be truncated when displayed in the UI. Does not affect data passed between components nor outputs."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MAX_TEXT_LENGTH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MAX_TEXT_LENGTH"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"1000"})}),(0,s.jsx)(n.td,{children:"Maximum number of characters to store and display in the UI. Responses longer than this will be truncated when displayed in the UI. Does not truncate responses between components nor outputs."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MCP_SERVER_ENABLED"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MCP_SERVER_ENABLED"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsx)(n.td,{children:"If this option is set to False, Langflow does not enable the MCP server."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"If this option is set to True, Langflow sends progress notifications in the MCP server."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_NEW_USER_IS_ACTIVE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"NEW_USER_IS_ACTIVE"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"When enabled, new users are automatically activated and can log in without requiring explicit activation by the superuser."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_OPEN_BROWSER"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"OPEN_BROWSER"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Open the system web browser on startup.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-open-browser",children:[(0,s.jsx)(n.code,{children:"--open-browser"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_PORT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"PORT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"7860"})}),(0,s.jsxs)(n.td,{children:["The port on which the Langflow server runs. The server automatically selects a free port if the specified port is in use.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-port",children:[(0,s.jsx)(n.code,{children:"--port"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_PROMETHEUS_ENABLED"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"PROMETHEUS_ENABLED"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"Expose Prometheus metrics."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_PROMETHEUS_PORT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"PROMETHEUS_PORT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"9090"})}),(0,s.jsx)(n.td,{children:"Set the port on which Langflow exposes Prometheus metrics."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_CACHE_EXPIRE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_CACHE_EXPIRE"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"3600"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_DB"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_DB"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"0"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_HOST"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_HOST"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"localhost"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_PORT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_PORT"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"6379"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_PASSWORD"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_PASSWORD"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Password for Redis authentication when using Redis cache type."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REMOVE_API_KEYS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REMOVE_API_KEYS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Remove API keys from the projects saved in the database.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-remove-api-keys",children:[(0,s.jsx)(n.code,{children:"--remove-api-keys"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SAVE_DB_IN_CONFIG_DIR"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SAVE_DB_IN_CONFIG_DIR"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Save the Langflow database in ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CONFIG_DIR instead of in the Langflow package directory. Note, when this variable is set to default (",(0,s.jsx)(n.code,{children:"false"}),"), the database isn't shared between different virtual environments and the database is deleted when you uninstall Langflow."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SECRET_KEY"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SECRET_KEY"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Auto-generated"}),(0,s.jsx)(n.td,{children:"Key used for encrypting sensitive data like API keys. If a key is not provided, a secure key is auto-generated. For production environments with multiple instances, you should explicitly set this to ensure consistent encryption across instances."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_STORE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"STORE"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Enable the Langflow Store.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-store",children:[(0,s.jsx)(n.code,{children:"--store"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_STORE_ENVIRONMENT_VARIABLES"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"STORE_ENVIRONMENT_VARIABLES"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Store environment variables as ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"global variables"})," in the database."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_CREATE_STARTER_PROJECTS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CREATE_STARTER_PROJECTS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["If this option is enabled, Langflow creates starter projects during initialization. Set to ",(0,s.jsx)(n.code,{children:"false"})," to skip all starter project creation and updates."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_UPDATE_STARTER_PROJECTS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"UPDATE_STARTER_PROJECTS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsx)(n.td,{children:"If this option is enabled, Langflow updates starter projects with the latest component versions when initializing."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SUPERUSER"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SUPERUSER"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"langflow"})}),(0,s.jsxs)(n.td,{children:["Set the name for the superuser. Required if ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is set to ",(0,s.jsx)(n.code,{children:"false"}),".",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#superuser-username",children:[(0,s.jsx)(n.code,{children:"superuser --username"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SUPERUSER_PASSWORD"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SUPERUSER_PASSWORD"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"langflow"})}),(0,s.jsxs)(n.td,{children:["Set the password for the superuser. Required if ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is set to ",(0,s.jsx)(n.code,{children:"false"}),".",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#superuser-password",children:[(0,s.jsx)(n.code,{children:"superuser --password"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_VARIABLES_TO_GET_FROM_ENVIRONMENT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"VARIABLES_TO_GET_FROM_ENVIRONMENT"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsxs)(n.td,{children:["Comma-separated list of environment variables to get from the environment and store as ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"global variables"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOAD_FLOWS_PATH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOAD_FLOWS_PATH"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsxs)(n.td,{children:["Path to a directory containing flow JSON files to be loaded on startup. Note that this feature only works if ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is enabled."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_WORKER_TIMEOUT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"WORKER_TIMEOUT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"300"})}),(0,s.jsxs)(n.td,{children:["Worker timeout in seconds.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-worker-timeout",children:[(0,s.jsx)(n.code,{children:"--worker-timeout"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_WORKERS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"WORKERS"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"1"})}),(0,s.jsxs)(n.td,{children:["Number of worker processes.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-workers",children:[(0,s.jsx)(n.code,{children:"--workers"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SSL_CERT_FILE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SSL_CERT_FILE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Path to the SSL certificate file on the local system."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SSL_KEY_FILE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SSL_KEY_FILE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Path to the SSL key file on the local system."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"SKIP_AUTH_AUTO_LOGIN"}),"SKIP_AUTH_AUTO_LOGIN"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["If set to ",(0,s.jsx)(n.code,{children:"true"}),", disables automatic login and enforces authentication, regardless of the value of ",(0,s.jsx)(n.code,{children:"LANGFLOW_AUTO_LOGIN"}),"."]})]})]})]})}),"\n",(0,s.jsx)(n.h2,{id:"configure-env-overrideconf-and-tasksjson-files",children:"Configure .env, override.conf, and tasks.json files"}),"\n",(0,s.jsx)(n.p,{children:"The following examples show how to configure Langflow using environment variables in different scenarios."}),"\n",(0,s.jsxs)(c.A,{children:[(0,s.jsxs)(i.A,{value:"env",label:".env File",default:!0,children:[(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:".env"})," file is a text file that contains key-value pairs of environment variables."]}),(0,s.jsxs)(n.p,{children:["Create or edit a file named ",(0,s.jsx)(n.code,{children:".env"})," in your project root directory and add your configuration:"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'".env"',focus:"",code:{lines:[{tokens:[{content:"DO_NOT_TRACK=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_LOGIN=false",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING_INTERVAL=1000",props:{}}]},{tokens:[{content:"LANGFLOW_BACKEND_ONLY=false",props:{}}]},{tokens:[{content:'LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]',props:{}}]},{tokens:[{content:"LANGFLOW_CACHE_TYPE=async",props:{}}]},{tokens:[{content:"LANGFLOW_COMPONENTS_PATH=/path/to/components/",props:{}}]},{tokens:[{content:"LANGFLOW_CONFIG_DIR=/path/to/config/",props:{}}]},{tokens:[{content:"LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow",props:{}}]},{tokens:[{content:"LANGFLOW_DEV=false",props:{}}]},{tokens:[{content:"LANGFLOW_FALLBACK_TO_ENV_VAR=false",props:{}}]},{tokens:[{content:"LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5",props:{}}]},{tokens:[{content:"LANGFLOW_HOST=localhost",props:{}}]},{tokens:[{content:"LANGFLOW_LANGCHAIN_CACHE=InMemoryCache",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_ITEMS_LENGTH=100",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_TEXT_LENGTH=1000",props:{}}]},{tokens:[{content:"LANGFLOW_LOG_LEVEL=error",props:{}}]},{tokens:[{content:"LANGFLOW_OPEN_BROWSER=false",props:{}}]},{tokens:[{content:"LANGFLOW_PORT=7860",props:{}}]},{tokens:[{content:"LANGFLOW_REMOVE_API_KEYS=false",props:{}}]},{tokens:[{content:"LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true",props:{}}]},{tokens:[{content:"LANGFLOW_SECRET_KEY=somesecretkey",props:{}}]},{tokens:[{content:"LANGFLOW_STORE=true",props:{}}]},{tokens:[{content:"LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER=adminuser",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER_PASSWORD=adminpass",props:{}}]},{tokens:[{content:"LANGFLOW_WORKER_TIMEOUT=60000",props:{}}]},{tokens:[{content:"LANGFLOW_WORKERS=3",props:{}}]}],lang:"text"},annotations:[]}]})]}),(0,s.jsxs)(i.A,{value:"systemd",label:"Systemd service",children:[(0,s.jsx)(n.p,{children:"A systemd service configuration file configures Linux system services."}),(0,s.jsxs)(n.p,{children:["To add environment variables, create or edit a service configuration file and add an ",(0,s.jsx)(n.code,{children:"override.conf"})," file. This file allows you to override the default environment variables for the service."]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'"override.conf"',focus:"",code:{lines:[{tokens:[{content:"[Service]",props:{style:{color:"#FFA657"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"DO_NOT_TRACK=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_AUTO_LOGIN=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_AUTO_SAVING=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_AUTO_SAVING_INTERVAL=1000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_BACKEND_ONLY=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_BUNDLE_URLS=[\\"',props:{style:{color:"#A5D6FF"}}},{content:"https://github.com/user/repo/commit/hash\\",props:{style:{color:"#C9D1D9"}}},{content:'"]"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_CACHE_TYPE=async"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_COMPONENTS_PATH=/path/to/components/"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_CONFIG_DIR=/path/to/config"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_DEV=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_FALLBACK_TO_ENV_VAR=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_HOST=localhost"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LANGCHAIN_CACHE=InMemoryCache"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_MAX_ITEMS_LENGTH=100"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_MAX_TEXT_LENGTH=1000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LOG_ENV=container_json"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LOG_FILE=logs/langflow.log"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LOG_LEVEL=error"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_OPEN_BROWSER=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_PORT=7860"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_REMOVE_API_KEYS=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SECRET_KEY=somesecretkey"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_STORE=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SUPERUSER=adminuser"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SUPERUSER_PASSWORD=adminpass"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_WORKER_TIMEOUT=60000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_WORKERS=3"',props:{style:{color:"#A5D6FF"}}}]}],lang:"ini"},annotations:[]}]}),(0,s.jsxs)(n.p,{children:["For more information on systemd, see the ",(0,s.jsx)(n.a,{href:"https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/using_systemd_unit_files_to_customize_and_optimize_your_system/assembly_working-with-systemd-unit-files_working-with-systemd",children:"Red Hat documentation"}),"."]})]}),(0,s.jsxs)(i.A,{value:"vscode",label:"VSCode tasks.json",children:[(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"tasks.json"})," file located in ",(0,s.jsx)(n.code,{children:".vscode/tasks.json"})," is a configuration file for development environments using Visual Studio Code."]}),(0,s.jsxs)(n.p,{children:["Create or edit the ",(0,s.jsx)(n.code,{children:".vscode/tasks.json"})," file in your project root:"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'".vscode/tasks.json"',focus:"",code:{lines:[{tokens:[{content:"{",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "version"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"2.0.0"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "options"',props:{style:{color:"#7EE787"}}},{content:": {",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "env"',props:{style:{color:"#7EE787"}}},{content:": {",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "DO_NOT_TRACK"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_AUTO_LOGIN"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_AUTO_SAVING"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_AUTO_SAVING_INTERVAL"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"1000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_BACKEND_ONLY"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_BUNDLE_URLS"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"[',props:{style:{color:"#A5D6FF"}}},{content:'\\"',props:{style:{color:"#79C0FF"}}},{content:"https://github.com/user/repo/commit/hash",props:{style:{color:"#A5D6FF"}}},{content:'\\"',props:{style:{color:"#79C0FF"}}},{content:']"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_CACHE_TYPE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"async"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_COMPONENTS_PATH"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"D:/path/to/components/"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_CONFIG_DIR"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"D:/path/to/config/"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_DATABASE_URL"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"postgresql://postgres:password@localhost:5432/langflow"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_DEV"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_FALLBACK_TO_ENV_VAR"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_HEALTH_CHECK_MAX_RETRIES"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"5"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_HOST"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"localhost"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LANGCHAIN_CACHE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"InMemoryCache"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_MAX_FILE_SIZE_UPLOAD"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"10000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_MAX_ITEMS_LENGTH"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"100"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_MAX_TEXT_LENGTH"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"1000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LOG_ENV"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"container_csv"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LOG_FILE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"langflow.log"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LOG_LEVEL"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"error"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_OPEN_BROWSER"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_PORT"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"7860"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_REMOVE_API_KEYS"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SAVE_DB_IN_CONFIG_DIR"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SECRET_KEY"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"somesecretkey"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_STORE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_STORE_ENVIRONMENT_VARIABLES"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SUPERUSER"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"adminuser"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SUPERUSER_PASSWORD"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"adminpass"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_WORKER_TIMEOUT"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"60000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_WORKERS"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"3"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" }",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" },",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "tasks"',props:{style:{color:"#7EE787"}}},{content:": [",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" {",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "label"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"langflow backend"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "type"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"shell"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "command"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'". ./langflownightly/Scripts/activate && langflow run"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "isBackground"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:"true",props:{style:{color:"#79C0FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "problemMatcher"',props:{style:{color:"#7EE787"}}},{content:": []",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" }",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" ]",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"}",props:{style:{color:"#C9D1D9"}}}]}],lang:"json"},annotations:[]}]}),(0,s.jsxs)(n.p,{children:["To run Langflow using the above VSCode ",(0,s.jsx)(n.code,{children:"tasks.json"})," file, in the VSCode command palette, select ",(0,s.jsx)(n.strong,{children:"Tasks: Run Task"})," > ",(0,s.jsx)(n.strong,{children:"langflow backend"}),"."]})]})]}),"\n",(0,s.jsx)(n.h2,{id:"set-environment-variables-for-langflow-desktop",children:"Set environment variables for Langflow Desktop"}),"\n",(0,s.jsx)(n.p,{children:"Environment variables set in your terminal aren't automatically available to GUI-based applications like Langflow Desktop when you launch them from the Windows or macOS GUI."}),"\n",(0,s.jsx)(n.p,{children:"For Windows, this means any GUI-based app launched from the Start menu, desktop shortcuts, or Windows Explorer."}),"\n",(0,s.jsx)(n.p,{children:"For macOS, this means any GUI-based app launched from Finder, Spotlight, Launchpad, or the Dock."}),"\n",(0,s.jsx)(n.p,{children:"To set environment variables for Langflow Desktop, you need to use specific commands or files, depending on your OS."}),"\n",(0,s.jsxs)(c.A,{groupId:"",children:[(0,s.jsxs)(i.A,{value:"macOS",label:"macOS",default:!0,children:[(0,s.jsxs)(n.p,{children:["Langflow Desktop for macOS cannot automatically use variables set in your terminal, such as those in",(0,s.jsx)(n.code,{children:".zshrc"})," or ",(0,s.jsx)(n.code,{children:".bash_profile"}),", when launched from the macOS GUI."]}),(0,s.jsxs)(n.p,{children:["To make environment variables available to GUI apps on macOS, you need to use ",(0,s.jsx)(n.code,{children:"launchctl"})," with a ",(0,s.jsx)(n.code,{children:"plist"})," file:"]}),(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["Create the ",(0,s.jsx)(n.code,{children:"LaunchAgents"})," directory if it doesn't exist:"]}),"\n"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"mkdir ",props:{style:{color:"#FFA657"}}},{content:"-p ",props:{style:{color:"#79C0FF"}}},{content:"~/Library/LaunchAgents",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]}),(0,s.jsxs)(n.ol,{start:"2",children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["In the ",(0,s.jsx)(n.code,{children:"LaunchAgents"})," directory, create a ",(0,s.jsx)(n.code,{children:".plist"})," file called ",(0,s.jsx)(n.code,{children:"dev.langflow.env"}),"."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["Add the following content to ",(0,s.jsx)(n.code,{children:"dev.langflow.env.plist"}),", and then add, change, or remove Langflow environment variables as needed for your configuration.\nThis example sets the ",(0,s.jsx)(n.code,{children:"LANGFLOW_CONFIG_DIR"})," environment variable for all GUI apps launched from the macOS GUI."]}),"\n"]}),"\n"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"',props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"<",props:{style:{color:"#C9D1D9"}}},{content:"plist ",props:{style:{color:"#7EE787"}}},{content:"version",props:{style:{color:"#79C0FF"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"1.0"',props:{style:{color:"#A5D6FF"}}},{content:">",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"dict",props:{style:{color:"#7EE787"}}},{content:">",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"key",props:{style:{color:"#7EE787"}}},{content:">Label",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"string",props:{style:{color:"#7EE787"}}},{content:">dev.langflow.env",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"key",props:{style:{color:"#7EE787"}}},{content:">ProgramArguments",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"array",props:{style:{color:"#7EE787"}}},{content:">",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"string",props:{style:{color:"#7EE787"}}},{content:">launchctl",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"string",props:{style:{color:"#7EE787"}}},{content:">setenv",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"string",props:{style:{color:"#7EE787"}}},{content:">LANGFLOW_CONFIG_DIR",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"string",props:{style:{color:"#7EE787"}}},{content:">/Users/your_user/custom/config",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" ",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"key",props:{style:{color:"#7EE787"}}},{content:">RunAtLoad",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" <",props:{style:{color:"#C9D1D9"}}},{content:"true",props:{style:{color:"#7EE787"}}},{content:"/>",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" ",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]}],lang:"xml"},annotations:[]}]}),(0,s.jsxs)(n.ol,{start:"4",children:["\n",(0,s.jsxs)(n.li,{children:["Load the file with ",(0,s.jsx)(n.code,{children:"launchctl"}),":"]}),"\n"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"launchctl ",props:{style:{color:"#FFA657"}}},{content:"load ~/Library/LaunchAgents/dev.langflow.env.plist",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})]}),(0,s.jsxs)(i.A,{value:"System Properties",label:"System Properties",children:[(0,s.jsxs)(n.p,{children:["Langflow Desktop for Windows cannot automatically use variables set in your terminal, such as those defined with ",(0,s.jsx)(n.code,{children:"set"})," in ",(0,s.jsx)(n.code,{children:"cmd"})," or ",(0,s.jsx)(n.code,{children:"$env:VAR=..."})," in PowerShell, when launched from the Windows GUI."]}),(0,s.jsxs)(n.p,{children:["To make environment variables available to the Langflow Desktop app, you must set them at the user or system level using the ",(0,s.jsx)(n.strong,{children:"System Properties"})," interface or the Terminal."]}),(0,s.jsx)(n.p,{children:"To set environment variables using the System Properties interface, do the following:"}),(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["Press ",(0,s.jsx)("kbd",{children:"Win + R"}),", enter ",(0,s.jsx)(n.code,{children:"SystemPropertiesAdvanced"}),", and then press ",(0,s.jsx)("kbd",{children:"Enter"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["Click ",(0,s.jsx)(n.strong,{children:"Environment Variables"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["Under ",(0,s.jsx)(n.strong,{children:"User variables"}),", click ",(0,s.jsx)(n.strong,{children:"New"}),"."]}),"\n"]}),(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsxs)(n.p,{children:["To apply the setting to all users, select ",(0,s.jsx)(n.strong,{children:"System variables"}),"."]})}),(0,s.jsxs)(n.ol,{start:"4",children:["\n",(0,s.jsxs)(n.li,{children:["Enter the name of the Langflow variable you want to set, such as ",(0,s.jsx)(n.code,{children:"LANGFLOW_CONFIG_DIR"}),", and the desired value, such as ",(0,s.jsx)(n.code,{children:"C:\\Users\\your_user\\.langflow_config"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["Click ",(0,s.jsx)(n.strong,{children:"OK"})," to save the variable."]}),"\n",(0,s.jsx)(n.li,{children:"Repeat until you have set all necessary Langflow environment variables."}),"\n",(0,s.jsx)(n.li,{children:"Launch or restart Langflow Desktop to apply the environment variables."}),"\n"]})]}),(0,s.jsxs)(i.A,{value:"Powershell",label:"Powershell",children:[(0,s.jsx)(n.p,{children:"To define environment variables for Windows using PowerShell, do the following:"}),(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["Enter the name of the Langflow variable you want to set, such as ",(0,s.jsx)(n.code,{children:"LANGFLOW_CONFIG_DIR"}),", and the desired value, such as ",(0,s.jsx)(n.code,{children:"C:\\Users\\your_user\\.langflow_config"}),"."]}),"\n",(0,s.jsx)(n.p,{children:"To set an environment variable for the current user:"}),"\n",(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"[",props:{style:{color:"#C9D1D9"}}},{content:"System.Environment",props:{style:{color:"#FF7B72"}}},{content:"]::SetEnvironmentVariable(",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_CONFIG_DIR"',props:{style:{color:"#A5D6FF"}}},{content:", ",props:{style:{color:"#FF7B72"}}},{content:'"C:\\Users\\your_user\\.langflow_config"',props:{style:{color:"#A5D6FF"}}},{content:", ",props:{style:{color:"#FF7B72"}}},{content:'"User"',props:{style:{color:"#A5D6FF"}}},{content:")",props:{style:{color:"#C9D1D9"}}}]}],lang:"powershell"},annotations:[]}]}),"\n",(0,s.jsx)(n.p,{children:"To set an environment variable for all users (you must have Administrator priveleges):"}),"\n",(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"[",props:{style:{color:"#C9D1D9"}}},{content:"System.Environment",props:{style:{color:"#FF7B72"}}},{content:"]::SetEnvironmentVariable(",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_CONFIG_DIR"',props:{style:{color:"#A5D6FF"}}},{content:", ",props:{style:{color:"#FF7B72"}}},{content:'"C:\\Langflow\\Config"',props:{style:{color:"#A5D6FF"}}},{content:", ",props:{style:{color:"#FF7B72"}}},{content:'"Machine"',props:{style:{color:"#A5D6FF"}}},{content:")",props:{style:{color:"#C9D1D9"}}}]}],lang:"powershell"},annotations:[]}]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Repeat until you have set all necessary Langflow environment variables."}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Launch or restart Langflow Desktop to apply the environment variables."}),"\n"]}),"\n"]})]})]})]})}function _(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(A,{...e})}):A(e)}function u(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}}}]); \ No newline at end of file diff --git a/assets/js/b7251463.c0c3f280.js b/assets/js/b7251463.c0c3f280.js deleted file mode 100644 index 322e88a54e..0000000000 --- a/assets/js/b7251463.c0c3f280.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[51],{11470:(e,n,o)=>{o.d(n,{A:()=>O});var t=o(96540),s=o(18215),r=o(23104),l=o(56347),c=o(205),i=o(57485),d=o(31682),a=o(70679);function p(e){return t.Children.toArray(e).filter(e=>"\n"!==e).map(e=>{if(!e||(0,t.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)})?.filter(Boolean)??[]}function h(e){const{values:n,children:o}=e;return(0,t.useMemo)(()=>{const e=n??function(e){return p(e).map(({props:{value:e,label:n,attributes:o,default:t}})=>({value:e,label:n,attributes:o,default:t}))}(o);return function(e){const n=(0,d.XI)(e,(e,n)=>e.value===n.value);if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map(e=>e.value).join(", ")}" found in . Every value needs to be unique.`)}(e),e},[n,o])}function x({value:e,tabValues:n}){return n.some(n=>n.value===e)}function L({queryString:e=!1,groupId:n}){const o=(0,l.W6)(),s=function({queryString:e=!1,groupId:n}){if("string"==typeof e)return e;if(!1===e)return null;if(!0===e&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:e,groupId:n});return[(0,i.aZ)(s),(0,t.useCallback)(e=>{if(!s)return;const n=new URLSearchParams(o.location.search);n.set(s,e),o.replace({...o.location,search:n.toString()})},[s,o])]}function A(e){const{defaultValue:n,queryString:o=!1,groupId:s}=e,r=h(e),[l,i]=(0,t.useState)(()=>function({defaultValue:e,tabValues:n}){if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(e){if(!x({value:e,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${e}" but none of its children has the corresponding value. Available values are: ${n.map(e=>e.value).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return e}const o=n.find(e=>e.default)??n[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:n,tabValues:r})),[d,p]=L({queryString:o,groupId:s}),[A,j]=function({groupId:e}){const n=function(e){return e?`docusaurus.tab.${e}`:null}(e),[o,s]=(0,a.Dv)(n);return[o,(0,t.useCallback)(e=>{n&&s.set(e)},[n,s])]}({groupId:s}),_=(()=>{const e=d??A;return x({value:e,tabValues:r})?e:null})();(0,c.A)(()=>{_&&i(_)},[_]);return{selectedValue:l,selectValue:(0,t.useCallback)(e=>{if(!x({value:e,tabValues:r}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),j(e)},[p,j,r]),tabValues:r}}var j=o(92303);const _={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var u=o(74848);function F({className:e,block:n,selectedValue:o,selectValue:t,tabValues:l}){const c=[],{blockElementScrollPositionUntilNextRender:i}=(0,r.a_)(),d=e=>{const n=e.currentTarget,s=c.indexOf(n),r=l[s].value;r!==o&&(i(n),t(r))},a=e=>{let n=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const o=c.indexOf(e.currentTarget)+1;n=c[o]??c[0];break}case"ArrowLeft":{const o=c.indexOf(e.currentTarget)-1;n=c[o]??c[c.length-1];break}}n?.focus()};return(0,u.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,s.A)("tabs",{"tabs--block":n},e),children:l.map(({value:e,label:n,attributes:t})=>(0,u.jsx)("li",{role:"tab",tabIndex:o===e?0:-1,"aria-selected":o===e,ref:e=>{c.push(e)},onKeyDown:a,onClick:d,...t,className:(0,s.A)("tabs__item",_.tabItem,t?.className,{"tabs__item--active":o===e}),children:n??e},e))})}function E({lazy:e,children:n,selectedValue:o}){const r=(Array.isArray(n)?n:[n]).filter(Boolean);if(e){const e=r.find(e=>e.props.value===o);return e?(0,t.cloneElement)(e,{className:(0,s.A)("margin-top--md",e.props.className)}):null}return(0,u.jsx)("div",{className:"margin-top--md",children:r.map((e,n)=>(0,t.cloneElement)(e,{key:n,hidden:e.props.value!==o}))})}function f(e){const n=A(e);return(0,u.jsxs)("div",{className:(0,s.A)("tabs-container",_.tabList),children:[(0,u.jsx)(F,{...n,...e}),(0,u.jsx)(E,{...n,...e})]})}function O(e){const n=(0,j.A)();return(0,u.jsx)(f,{...e,children:p(e.children)},String(n))}},19365:(e,n,o)=>{o.d(n,{A:()=>l});o(96540);var t=o(18215);const s={tabItem:"tabItem_Ymn6"};var r=o(74848);function l({children:e,hidden:n,className:o}){return(0,r.jsx)("div",{role:"tabpanel",className:(0,t.A)(s.tabItem,o),hidden:n,children:e})}},93158:(e,n,o)=>{o.r(n),o.d(n,{CH:()=>x,assets:()=>h,chCodeConfig:()=>L,contentTitle:()=>p,default:()=>_,frontMatter:()=>a,metadata:()=>t,toc:()=>A});const t=JSON.parse('{"id":"Configuration/environment-variables","title":"Environment variables","description":"Langflow lets you configure a number of settings using environment variables.","source":"@site/docs/Configuration/environment-variables.md","sourceDirName":"Configuration","slug":"/environment-variables","permalink":"/environment-variables","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"title":"Environment variables","slug":"/environment-variables"},"sidebar":"docs","previous":{"title":"Global variables","permalink":"/configuration-global-variables"},"next":{"title":"Telemetry","permalink":"/contributing-telemetry"}}');var s=o(74848),r=o(28453),l=o(24754),c=o(11470),i=o(19365),d=o(28774);const a={title:"Environment variables",slug:"/environment-variables"},p=void 0,h={},x={annotations:l.hk,Code:l.Cy},L={staticMediaQuery:"not screen, (max-width: 768px)",lineNumbers:!0,showCopyButton:!0,themeName:"github-dark"},A=[{value:"Configure environment variables",id:"configure-environment-variables",level:2},{value:"Set environment variables in your terminal",id:"configure-variables-terminal",level:3},{value:"Import environment variables from a .env file",id:"configure-variables-env-file",level:3},{value:"Precedence",id:"precedence",level:2},{value:"Supported environment variables",id:"supported-variables",level:2},{value:"Configure .env, override.conf, and tasks.json files",id:"configure-env-overrideconf-and-tasksjson-files",level:2}];function j(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return x||u("CH",!1),x.Code||u("CH.Code",!0),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("style",{dangerouslySetInnerHTML:{__html:'[data-ch-theme="github-dark"] { --ch-t-colorScheme: dark;--ch-t-foreground: #c9d1d9;--ch-t-background: #0d1117;--ch-t-lighter-inlineBackground: #0d1117e6;--ch-t-editor-background: #0d1117;--ch-t-editor-foreground: #c9d1d9;--ch-t-editor-lineHighlightBackground: #6e76811a;--ch-t-editor-rangeHighlightBackground: #ffffff0b;--ch-t-editor-infoForeground: #3794FF;--ch-t-editor-selectionBackground: #264F78;--ch-t-focusBorder: #1f6feb;--ch-t-tab-activeBackground: #0d1117;--ch-t-tab-activeForeground: #c9d1d9;--ch-t-tab-inactiveBackground: #010409;--ch-t-tab-inactiveForeground: #8b949e;--ch-t-tab-border: #30363d;--ch-t-tab-activeBorder: #0d1117;--ch-t-editorGroup-border: #30363d;--ch-t-editorGroupHeader-tabsBackground: #010409;--ch-t-editorLineNumber-foreground: #6e7681;--ch-t-input-background: #0d1117;--ch-t-input-foreground: #c9d1d9;--ch-t-input-border: #30363d;--ch-t-icon-foreground: #8b949e;--ch-t-sideBar-background: #010409;--ch-t-sideBar-foreground: #c9d1d9;--ch-t-sideBar-border: #30363d;--ch-t-list-activeSelectionBackground: #6e768166;--ch-t-list-activeSelectionForeground: #c9d1d9;--ch-t-list-hoverBackground: #6e76811a;--ch-t-list-hoverForeground: #c9d1d9; }'}}),"\n","\n",(0,s.jsx)(n.p,{children:"Langflow lets you configure a number of settings using environment variables."}),"\n",(0,s.jsx)(n.h2,{id:"configure-environment-variables",children:"Configure environment variables"}),"\n",(0,s.jsxs)(n.p,{children:["Langflow recognizes ",(0,s.jsx)(n.a,{href:"#supported-variables",children:"supported environment variables"})," from the following sources:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Environment variables that you've set in your terminal."}),"\n",(0,s.jsxs)(n.li,{children:["Environment variables that you've imported from a ",(0,s.jsx)(n.code,{children:".env"})," file using the ",(0,s.jsx)(n.code,{children:"--env-file"})," option in the Langflow CLI."]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["You can choose to use one source exclusively, or use both sources together.\nIf you choose to use both sources together, be aware that environment variables imported from a ",(0,s.jsx)(n.code,{children:".env"})," file take ",(0,s.jsx)(n.a,{href:"#precedence",children:"precedence"})," over those set in your terminal."]}),"\n",(0,s.jsx)(n.h3,{id:"configure-variables-terminal",children:"Set environment variables in your terminal"}),"\n",(0,s.jsx)(n.p,{children:"Run the following commands to set environment variables for your current terminal session:"}),"\n",(0,s.jsxs)(c.A,{children:[(0,s.jsx)(i.A,{value:"linux-macos",label:"Linux or macOS",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"export",props:{style:{color:"#FF7B72"}}},{content:" VARIABLE_NAME",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:"'VALUE'",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})}),(0,s.jsx)(i.A,{value:"windows",label:"Windows",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"set VARIABLE_NAME='VALUE'",props:{}}]}],lang:"text"},annotations:[]}]})}),(0,s.jsx)(i.A,{value:"docker",label:"Docker",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"docker ",props:{style:{color:"#FFA657"}}},{content:"run ",props:{style:{color:"#A5D6FF"}}},{content:"-it --rm \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" -p ",props:{style:{color:"#79C0FF"}}},{content:"7860:",props:{style:{color:"#A5D6FF"}}},{content:"7860 \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" -e ",props:{style:{color:"#79C0FF"}}},{content:"VARIABLE_NAME='VALUE' ",props:{style:{color:"#A5D6FF"}}},{content:"\\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" langflowai/langflow:latest",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})})]}),"\n",(0,s.jsxs)(n.p,{children:["When you start Langflow, it looks for environment variables that you've set in your terminal.\nIf it detects a supported environment variable, then it automatically adopts the specified value, subject to ",(0,s.jsx)(n.a,{href:"#precedence",children:"precedence rules"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"configure-variables-env-file",children:"Import environment variables from a .env file"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["Create a ",(0,s.jsx)(n.code,{children:".env"})," file and open it in your preferred editor."]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Add your environment variables to the file:"}),"\n",(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'".env"',focus:"",code:{lines:[{tokens:[{content:"DO_NOT_TRACK=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_LOGIN=false",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING_INTERVAL=1000",props:{}}]},{tokens:[{content:"LANGFLOW_BACKEND_ONLY=false",props:{}}]},{tokens:[{content:'LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]',props:{}}]},{tokens:[{content:"LANGFLOW_CACHE_TYPE=async",props:{}}]},{tokens:[{content:"LANGFLOW_COMPONENTS_PATH=/path/to/components/",props:{}}]},{tokens:[{content:"LANGFLOW_CONFIG_DIR=/path/to/config/",props:{}}]},{tokens:[{content:"LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow",props:{}}]},{tokens:[{content:"LANGFLOW_DEV=false",props:{}}]},{tokens:[{content:"LANGFLOW_FALLBACK_TO_ENV_VAR=false",props:{}}]},{tokens:[{content:"LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5",props:{}}]},{tokens:[{content:"LANGFLOW_HOST=localhost",props:{}}]},{tokens:[{content:"LANGFLOW_LANGCHAIN_CACHE=InMemoryCache",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_ITEMS_LENGTH=100",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_TEXT_LENGTH=1000",props:{}}]},{tokens:[{content:"LANGFLOW_LOG_LEVEL=error",props:{}}]},{tokens:[{content:"LANGFLOW_OPEN_BROWSER=false",props:{}}]},{tokens:[{content:"LANGFLOW_PORT=7860",props:{}}]},{tokens:[{content:"LANGFLOW_REMOVE_API_KEYS=false",props:{}}]},{tokens:[{content:"LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true",props:{}}]},{tokens:[{content:"LANGFLOW_SECRET_KEY=somesecretkey",props:{}}]},{tokens:[{content:"LANGFLOW_STORE=true",props:{}}]},{tokens:[{content:"LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER=adminuser",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER_PASSWORD=adminpass",props:{}}]},{tokens:[{content:"LANGFLOW_WORKER_TIMEOUT=60000",props:{}}]},{tokens:[{content:"LANGFLOW_WORKERS=3",props:{}}]}],lang:"text"},annotations:[]}]}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsxs)(n.p,{children:["The Langflow project includes a ",(0,s.jsx)(n.a,{href:"https://github.com/langflow-ai/langflow/blob/main/.env.example",children:(0,s.jsx)(n.code,{children:".env.example"})})," file to help you get started.\nYou can copy the contents of this file into your own ",(0,s.jsx)(n.code,{children:".env"})," file and replace the example values with your own preferred settings."]})}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Save and close the file."}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:["Start Langflow using the ",(0,s.jsx)(n.code,{children:"--env-file"})," option to define the path to your ",(0,s.jsx)(n.code,{children:".env"})," file:"]}),"\n",(0,s.jsxs)(c.A,{children:[(0,s.jsx)(i.A,{value:"local",label:"Local",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"python ",props:{style:{color:"#FFA657"}}},{content:"-m ",props:{style:{color:"#79C0FF"}}},{content:"langflow run ",props:{style:{color:"#A5D6FF"}}},{content:"--env-file ",props:{style:{color:"#79C0FF"}}},{content:".env",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})}),(0,s.jsx)(i.A,{value:"docker",label:"Docker",default:!0,children:(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"docker ",props:{style:{color:"#FFA657"}}},{content:"run ",props:{style:{color:"#A5D6FF"}}},{content:"-it --rm \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" -p ",props:{style:{color:"#79C0FF"}}},{content:"7860:",props:{style:{color:"#A5D6FF"}}},{content:"7860 \\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" --env-file ",props:{style:{color:"#79C0FF"}}},{content:".env ",props:{style:{color:"#A5D6FF"}}},{content:"\\",props:{style:{color:"#79C0FF"}}}]},{tokens:[{content:" langflowai/langflow:latest",props:{style:{color:"#A5D6FF"}}}]}],lang:"bash"},annotations:[]}]})})]}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["On startup, Langflow imports the environment variables from your ",(0,s.jsx)(n.code,{children:".env"})," file, as well as any that you ",(0,s.jsx)(n.a,{href:"#configure-variables-terminal",children:"set in your terminal"}),", and adopts their specified values."]}),"\n",(0,s.jsx)(n.h2,{id:"precedence",children:"Precedence"}),"\n",(0,s.jsxs)(n.p,{children:["Environment variables ",(0,s.jsx)(n.a,{href:"#configure-variables-env-file",children:"defined in the .env file"})," take precedence over those ",(0,s.jsx)(n.a,{href:"#configure-variables-terminal",children:"set in your terminal"}),".\nThat means, if you happen to set the same environment variable in both your terminal and your ",(0,s.jsx)(n.code,{children:".env"})," file, Langflow adopts the value from the the ",(0,s.jsx)(n.code,{children:".env"})," file."]}),"\n",(0,s.jsx)(n.admonition,{title:"CLI precedence",type:"info",children:(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.a,{href:"/configuration-cli",children:"Langflow CLI options"})," override the value of corresponding environment variables defined in the ",(0,s.jsx)(n.code,{children:".env"})," file as well as any environment variables set in your terminal."]})}),"\n",(0,s.jsx)(n.h2,{id:"supported-variables",children:"Supported environment variables"}),"\n",(0,s.jsx)(n.p,{children:"The following table lists the environment variables supported by Langflow."}),"\n",(0,s.jsx)("style",{children:"\n.env-table {\n width: 100%;\n max-width: 100%;\n table-layout: fixed;\n}\n.env-table td:first-child {\n width: 30%;\n font-family: var(--ifm-font-family-monospace);\n background: var(--prism-background);\n border-radius: 6px;\n padding: 8px;\n word-break: break-word;\n}\n.env-table td:nth-child(2) {\n width: 15%;\n}\n.env-table td:nth-child(3) {\n width: 15%;\n}\n.env-table td:nth-child(4) {\n width: 40%;\n}\n.env-table td {\n padding: 8px;\n vertical-align: top;\n}\n.env-prefix {\n opacity: 0.7;\n}\n.env-table tr {\n border-top: 1px solid var(--ifm-table-border-color);\n}\n.env-table code {\n white-space: nowrap;\n}\n"}),"\n",(0,s.jsx)("div",{class:"env-table",children:(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Variable"}),(0,s.jsx)(n.th,{children:"Format"}),(0,s.jsx)(n.th,{children:"Default"}),(0,s.jsx)(n.th,{children:"Description"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"DO_NOT_TRACK"}),"DO_NOT_TRACK"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"If this option is enabled, Langflow does not track telemetry."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_AUTO_LOGIN"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Enable automatic login for Langflow. Set to ",(0,s.jsx)(n.code,{children:"false"})," to disable automatic login and require the login form to log into the Langflow UI. Setting to ",(0,s.jsx)(n.code,{children:"false"})," requires ",(0,s.jsx)(n.a,{href:"#LANGFLOW_SUPERUSER",children:(0,s.jsx)(n.code,{children:"LANGFLOW_SUPERUSER"})})," and ",(0,s.jsx)(n.a,{href:"/environment-variables#LANGFLOW_SUPERUSER_PASSWORD",children:(0,s.jsx)(n.code,{children:"LANGFLOW_SUPERUSER_PASSWORD"})})," to be set. For more information, see ",(0,s.jsx)(n.a,{href:"/configuration-authentication",children:"Authentication"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_AUTO_SAVING"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_SAVING"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Enable flow auto-saving.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-auto-saving",children:[(0,s.jsx)(n.code,{children:"--auto-saving"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_AUTO_SAVING_INTERVAL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_SAVING_INTERVAL"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"1000"})}),(0,s.jsxs)(n.td,{children:["Set the interval for flow auto-saving in milliseconds.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-auto-saving-interval",children:[(0,s.jsx)(n.code,{children:"--auto-saving-interval"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_BACKEND_ONLY"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"BACKEND_ONLY"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Only run Langflow's backend server (no frontend).",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-backend-only",children:[(0,s.jsx)(n.code,{children:"--backend-only"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_BUNDLE_URLS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"BUNDLE_URLS"]}),(0,s.jsx)(n.td,{children:"List[String]"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"[]"})}),(0,s.jsxs)(n.td,{children:["A list of URLs from which to load component bundles and flows. Supports GitHub URLs. If ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is enabled, flows from these bundles are loaded into the database."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_CACHE_TYPE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"async"})}),(0,s.jsxs)(n.td,{children:["Set the cache type for Langflow. Possible values: ",(0,s.jsx)(n.code,{children:"async"}),", ",(0,s.jsx)(n.code,{children:"redis"}),", ",(0,s.jsx)(n.code,{children:"memory"}),", ",(0,s.jsx)(n.code,{children:"disk"}),".",(0,s.jsx)("br",{}),"If you set the type to ",(0,s.jsx)(n.code,{children:"redis"}),", then you must also set the following environment variables: ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_HOST"}),", ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_PORT"}),", ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_DB"}),", and ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_REDIS_CACHE_EXPIRE"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_COMPONENTS_PATH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"COMPONENTS_PATH"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"langflow/components"})}),(0,s.jsxs)(n.td,{children:["Path to the directory containing custom components.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-components-path",children:[(0,s.jsx)(n.code,{children:"--components-path"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_CONFIG_DIR"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CONFIG_DIR"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"See description"}),(0,s.jsxs)(n.td,{children:["Set the Langflow configuration directory where files, logs, and the Langflow database are stored. Defaults: ",(0,s.jsx)(n.strong,{children:"Linux/WSL"}),": ",(0,s.jsx)(n.code,{children:"~/.cache/langflow/"}),(0,s.jsx)("br",{}),(0,s.jsx)(n.strong,{children:"macOS"}),": ",(0,s.jsx)(n.code,{children:"/Users//Library/Caches/langflow/"}),(0,s.jsx)("br",{}),(0,s.jsx)(n.strong,{children:"Windows"}),": ",(0,s.jsx)(n.code,{children:"%LOCALAPPDATA%\\langflow\\langflow\\Cache"})]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DATABASE_URL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DATABASE_URL"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Set the database URL for Langflow. If not provided, Langflow uses a SQLite database."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DATABASE_CONNECTION_RETRY"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DATABASE_CONNECTION_RETRY"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"If True, Langflow tries to connect to the database again if it fails."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_POOL_SIZE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_POOL_SIZE"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"10"})}),(0,s.jsxs)(n.td,{children:[(0,s.jsx)(n.strong,{children:"DEPRECATED:"})," Use ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECTION_SETTINGS instead. The number of connections to keep open in the connection pool."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_MAX_OVERFLOW"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_MAX_OVERFLOW"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"20"})}),(0,s.jsxs)(n.td,{children:[(0,s.jsx)(n.strong,{children:"DEPRECATED:"})," Use ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECTION_SETTINGS instead. The number of connections to allow that can be opened beyond the pool size."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_CONNECT_TIMEOUT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECT_TIMEOUT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"20"})}),(0,s.jsx)(n.td,{children:"The number of seconds to wait before giving up on a lock to be released or establishing a connection to the database."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DB_CONNECTION_SETTINGS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DB_CONNECTION_SETTINGS"]}),(0,s.jsx)(n.td,{children:"JSON"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsxs)(n.td,{children:["A JSON dictionary to centralize database connection parameters. Example: ",(0,s.jsx)(n.code,{children:'{"pool_size": 10, "max_overflow": 20}'})]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_DISABLE_TRACK_APIKEY_USAGE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"DISABLE_TRACK_APIKEY_USAGE"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["If set to ",(0,s.jsx)(n.code,{children:"true"}),", disables tracking of API key usage (",(0,s.jsx)(n.code,{children:"total_uses"})," and ",(0,s.jsx)(n.code,{children:"last_used_at"}),") to avoid database contention under high concurrency."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_ENABLE_LOG_RETRIEVAL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"ENABLE_LOG_RETRIEVAL"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"Enable log retrieval functionality."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_FALLBACK_TO_ENV_VAR"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"FALLBACK_TO_ENV_VAR"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["If enabled, ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"global variables"})," set in the Langflow UI fall back to an environment variable with the same name when Langflow fails to retrieve the variable value."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_FRONTEND_PATH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"FRONTEND_PATH"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"./frontend"})}),(0,s.jsxs)(n.td,{children:["Path to the frontend directory containing build files. This is for development purposes only.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-frontend-path",children:[(0,s.jsx)(n.code,{children:"--frontend-path"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_HEALTH_CHECK_MAX_RETRIES"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"HEALTH_CHECK_MAX_RETRIES"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"5"})}),(0,s.jsxs)(n.td,{children:["Set the maximum number of retries for the health check.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-health-check-max-retries",children:[(0,s.jsx)(n.code,{children:"--health-check-max-retries"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_HOST"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"HOST"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"localhost"})}),(0,s.jsxs)(n.td,{children:["The host on which the Langflow server will run.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-host",children:[(0,s.jsx)(n.code,{children:"--host"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LANGCHAIN_CACHE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LANGCHAIN_CACHE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"InMemoryCache"})}),(0,s.jsxs)(n.td,{children:["Type of cache to use. Possible values: ",(0,s.jsx)(n.code,{children:"InMemoryCache"}),", ",(0,s.jsx)(n.code,{children:"SQLiteCache"}),".",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-cache",children:[(0,s.jsx)(n.code,{children:"--cache"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOG_LEVEL"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOG_LEVEL"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"INFO"})}),(0,s.jsxs)(n.td,{children:["Set the logging level for Langflow. Possible values: ",(0,s.jsx)(n.code,{children:"DEBUG"}),", ",(0,s.jsx)(n.code,{children:"INFO"}),", ",(0,s.jsx)(n.code,{children:"WARNING"}),", ",(0,s.jsx)(n.code,{children:"ERROR"}),", ",(0,s.jsx)(n.code,{children:"CRITICAL"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOG_FILE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOG_FILE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Path to the log file. If this option is not set, logs are written to stdout."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOG_RETRIEVER_BUFFER_SIZE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOG_RETRIEVER_BUFFER_SIZE"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"10000"})}),(0,s.jsxs)(n.td,{children:["Set the buffer size for log retrieval. Only used if ",(0,s.jsx)(n.code,{children:"LANGFLOW_ENABLE_LOG_RETRIEVAL"})," is enabled."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MAX_FILE_SIZE_UPLOAD"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MAX_FILE_SIZE_UPLOAD"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"100"})}),(0,s.jsxs)(n.td,{children:["Set the maximum file size for the upload in megabytes.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-max-file-size-upload",children:[(0,s.jsx)(n.code,{children:"--max-file-size-upload"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MAX_ITEMS_LENGTH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MAX_ITEMS_LENGTH"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"100"})}),(0,s.jsx)(n.td,{children:"Maximum number of items to store and display in the UI. Lists longer than this will be truncated when displayed in the UI. Does not affect data passed between components nor outputs."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MAX_TEXT_LENGTH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MAX_TEXT_LENGTH"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"1000"})}),(0,s.jsx)(n.td,{children:"Maximum number of characters to store and display in the UI. Responses longer than this will be truncated when displayed in the UI. Does not truncate responses between components nor outputs."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MCP_SERVER_ENABLED"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MCP_SERVER_ENABLED"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsx)(n.td,{children:"If this option is set to False, Langflow does not enable the MCP server."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"If this option is set to True, Langflow sends progress notifications in the MCP server."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_NEW_USER_IS_ACTIVE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"NEW_USER_IS_ACTIVE"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"When enabled, new users are automatically activated and can log in without requiring explicit activation by the superuser."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_OPEN_BROWSER"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"OPEN_BROWSER"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Open the system web browser on startup.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-open-browser",children:[(0,s.jsx)(n.code,{children:"--open-browser"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_PORT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"PORT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"7860"})}),(0,s.jsxs)(n.td,{children:["The port on which the Langflow server runs. The server automatically selects a free port if the specified port is in use.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-port",children:[(0,s.jsx)(n.code,{children:"--port"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_PROMETHEUS_ENABLED"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"PROMETHEUS_ENABLED"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsx)(n.td,{children:"Expose Prometheus metrics."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_PROMETHEUS_PORT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"PROMETHEUS_PORT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"9090"})}),(0,s.jsx)(n.td,{children:"Set the port on which Langflow exposes Prometheus metrics."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_CACHE_EXPIRE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_CACHE_EXPIRE"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"3600"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_DB"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_DB"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"0"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_HOST"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_HOST"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"localhost"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_PORT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_PORT"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"6379"})}),(0,s.jsxs)(n.td,{children:["See ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CACHE_TYPE."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REDIS_PASSWORD"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REDIS_PASSWORD"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Password for Redis authentication when using Redis cache type."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_REMOVE_API_KEYS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"REMOVE_API_KEYS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Remove API keys from the projects saved in the database.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-remove-api-keys",children:[(0,s.jsx)(n.code,{children:"--remove-api-keys"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SAVE_DB_IN_CONFIG_DIR"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SAVE_DB_IN_CONFIG_DIR"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["Save the Langflow database in ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CONFIG_DIR instead of in the Langflow package directory. Note, when this variable is set to default (",(0,s.jsx)(n.code,{children:"false"}),"), the database isn't shared between different virtual environments and the database is deleted when you uninstall Langflow."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SECRET_KEY"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SECRET_KEY"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Auto-generated"}),(0,s.jsx)(n.td,{children:"Key used for encrypting sensitive data like API keys. If a key is not provided, a secure key is auto-generated. For production environments with multiple instances, you should explicitly set this to ensure consistent encryption across instances."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_STORE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"STORE"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Enable the Langflow Store.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-store",children:[(0,s.jsx)(n.code,{children:"--store"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_STORE_ENVIRONMENT_VARIABLES"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"STORE_ENVIRONMENT_VARIABLES"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["Store environment variables as ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"global variables"})," in the database."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_CREATE_STARTER_PROJECTS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"CREATE_STARTER_PROJECTS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsxs)(n.td,{children:["If this option is enabled, Langflow creates starter projects during initialization. Set to ",(0,s.jsx)(n.code,{children:"false"})," to skip all starter project creation and updates."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_UPDATE_STARTER_PROJECTS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"UPDATE_STARTER_PROJECTS"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"true"})}),(0,s.jsx)(n.td,{children:"If this option is enabled, Langflow updates starter projects with the latest component versions when initializing."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SUPERUSER"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SUPERUSER"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"langflow"})}),(0,s.jsxs)(n.td,{children:["Set the name for the superuser. Required if ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is set to ",(0,s.jsx)(n.code,{children:"false"}),".",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#superuser-username",children:[(0,s.jsx)(n.code,{children:"superuser --username"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SUPERUSER_PASSWORD"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SUPERUSER_PASSWORD"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"langflow"})}),(0,s.jsxs)(n.td,{children:["Set the password for the superuser. Required if ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is set to ",(0,s.jsx)(n.code,{children:"false"}),".",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#superuser-password",children:[(0,s.jsx)(n.code,{children:"superuser --password"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_VARIABLES_TO_GET_FROM_ENVIRONMENT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"VARIABLES_TO_GET_FROM_ENVIRONMENT"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsxs)(n.td,{children:["Comma-separated list of environment variables to get from the environment and store as ",(0,s.jsx)(n.a,{href:"/configuration-global-variables",children:"global variables"}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_LOAD_FLOWS_PATH"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"LOAD_FLOWS_PATH"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsxs)(n.td,{children:["Path to a directory containing flow JSON files to be loaded on startup. Note that this feature only works if ",(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"AUTO_LOGIN is enabled."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_WORKER_TIMEOUT"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"WORKER_TIMEOUT"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"300"})}),(0,s.jsxs)(n.td,{children:["Worker timeout in seconds.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-worker-timeout",children:[(0,s.jsx)(n.code,{children:"--worker-timeout"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_WORKERS"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"WORKERS"]}),(0,s.jsx)(n.td,{children:"Integer"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"1"})}),(0,s.jsxs)(n.td,{children:["Number of worker processes.",(0,s.jsx)("br",{}),"See ",(0,s.jsxs)(n.a,{href:"/configuration-cli#run-workers",children:[(0,s.jsx)(n.code,{children:"--workers"})," option"]}),"."]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SSL_CERT_FILE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SSL_CERT_FILE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Path to the SSL certificate file on the local system."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"LANGFLOW_SSL_KEY_FILE"}),(0,s.jsx)("span",{class:"env-prefix",children:"LANGFLOW_"}),"SSL_KEY_FILE"]}),(0,s.jsx)(n.td,{children:"String"}),(0,s.jsx)(n.td,{children:"Not set"}),(0,s.jsx)(n.td,{children:"Path to the SSL key file on the local system."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsxs)(n.td,{children:[(0,s.jsx)(d.A,{id:"SKIP_AUTH_AUTO_LOGIN"}),"SKIP_AUTH_AUTO_LOGIN"]}),(0,s.jsx)(n.td,{children:"Boolean"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.code,{children:"false"})}),(0,s.jsxs)(n.td,{children:["If set to ",(0,s.jsx)(n.code,{children:"true"}),", disables automatic login and enforces authentication, regardless of the value of ",(0,s.jsx)(n.code,{children:"LANGFLOW_AUTO_LOGIN"}),"."]})]})]})]})}),"\n",(0,s.jsx)(n.h2,{id:"configure-env-overrideconf-and-tasksjson-files",children:"Configure .env, override.conf, and tasks.json files"}),"\n",(0,s.jsx)(n.p,{children:"The following examples show how to configure Langflow using environment variables in different scenarios."}),"\n",(0,s.jsxs)(c.A,{children:[(0,s.jsxs)(i.A,{value:"env",label:".env File",default:!0,children:[(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:".env"})," file is a text file that contains key-value pairs of environment variables."]}),(0,s.jsxs)(n.p,{children:["Create or edit a file named ",(0,s.jsx)(n.code,{children:".env"})," in your project root directory and add your configuration:"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'".env"',focus:"",code:{lines:[{tokens:[{content:"DO_NOT_TRACK=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_LOGIN=false",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING=true",props:{}}]},{tokens:[{content:"LANGFLOW_AUTO_SAVING_INTERVAL=1000",props:{}}]},{tokens:[{content:"LANGFLOW_BACKEND_ONLY=false",props:{}}]},{tokens:[{content:'LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]',props:{}}]},{tokens:[{content:"LANGFLOW_CACHE_TYPE=async",props:{}}]},{tokens:[{content:"LANGFLOW_COMPONENTS_PATH=/path/to/components/",props:{}}]},{tokens:[{content:"LANGFLOW_CONFIG_DIR=/path/to/config/",props:{}}]},{tokens:[{content:"LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow",props:{}}]},{tokens:[{content:"LANGFLOW_DEV=false",props:{}}]},{tokens:[{content:"LANGFLOW_FALLBACK_TO_ENV_VAR=false",props:{}}]},{tokens:[{content:"LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5",props:{}}]},{tokens:[{content:"LANGFLOW_HOST=localhost",props:{}}]},{tokens:[{content:"LANGFLOW_LANGCHAIN_CACHE=InMemoryCache",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_ITEMS_LENGTH=100",props:{}}]},{tokens:[{content:"LANGFLOW_MAX_TEXT_LENGTH=1000",props:{}}]},{tokens:[{content:"LANGFLOW_LOG_LEVEL=error",props:{}}]},{tokens:[{content:"LANGFLOW_OPEN_BROWSER=false",props:{}}]},{tokens:[{content:"LANGFLOW_PORT=7860",props:{}}]},{tokens:[{content:"LANGFLOW_REMOVE_API_KEYS=false",props:{}}]},{tokens:[{content:"LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true",props:{}}]},{tokens:[{content:"LANGFLOW_SECRET_KEY=somesecretkey",props:{}}]},{tokens:[{content:"LANGFLOW_STORE=true",props:{}}]},{tokens:[{content:"LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER=adminuser",props:{}}]},{tokens:[{content:"LANGFLOW_SUPERUSER_PASSWORD=adminpass",props:{}}]},{tokens:[{content:"LANGFLOW_WORKER_TIMEOUT=60000",props:{}}]},{tokens:[{content:"LANGFLOW_WORKERS=3",props:{}}]}],lang:"text"},annotations:[]}]})]}),(0,s.jsxs)(i.A,{value:"systemd",label:"Systemd service",children:[(0,s.jsx)(n.p,{children:"A systemd service configuration file configures Linux system services."}),(0,s.jsxs)(n.p,{children:["To add environment variables, create or edit a service configuration file and add an ",(0,s.jsx)(n.code,{children:"override.conf"})," file. This file allows you to override the default environment variables for the service."]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'"override.conf"',focus:"",code:{lines:[{tokens:[{content:"[Service]",props:{style:{color:"#FFA657"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"DO_NOT_TRACK=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_AUTO_LOGIN=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_AUTO_SAVING=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_AUTO_SAVING_INTERVAL=1000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_BACKEND_ONLY=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_BUNDLE_URLS=[\\"',props:{style:{color:"#A5D6FF"}}},{content:"https://github.com/user/repo/commit/hash\\",props:{style:{color:"#C9D1D9"}}},{content:'"]"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_CACHE_TYPE=async"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_COMPONENTS_PATH=/path/to/components/"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_CONFIG_DIR=/path/to/config"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_DEV=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_FALLBACK_TO_ENV_VAR=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_HOST=localhost"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LANGCHAIN_CACHE=InMemoryCache"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_MAX_ITEMS_LENGTH=100"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_MAX_TEXT_LENGTH=1000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LOG_ENV=container_json"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LOG_FILE=logs/langflow.log"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_LOG_LEVEL=error"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_OPEN_BROWSER=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_PORT=7860"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_REMOVE_API_KEYS=false"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SECRET_KEY=somesecretkey"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_STORE=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SUPERUSER=adminuser"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_SUPERUSER_PASSWORD=adminpass"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_WORKER_TIMEOUT=60000"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"Environment",props:{style:{color:"#FF7B72"}}},{content:"=",props:{style:{color:"#C9D1D9"}}},{content:'"LANGFLOW_WORKERS=3"',props:{style:{color:"#A5D6FF"}}}]}],lang:"ini"},annotations:[]}]}),(0,s.jsxs)(n.p,{children:["For more information on systemd, see the ",(0,s.jsx)(n.a,{href:"https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/using_systemd_unit_files_to_customize_and_optimize_your_system/assembly_working-with-systemd-unit-files_working-with-systemd",children:"Red Hat documentation"}),"."]})]}),(0,s.jsxs)(i.A,{value:"vscode",label:"VSCode tasks.json",children:[(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"tasks.json"})," file located in ",(0,s.jsx)(n.code,{children:".vscode/tasks.json"})," is a configuration file for development environments using Visual Studio Code."]}),(0,s.jsxs)(n.p,{children:["Create or edit the ",(0,s.jsx)(n.code,{children:".vscode/tasks.json"})," file in your project root:"]}),(0,s.jsx)(x.Code,{codeConfig:L,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",title:'".vscode/tasks.json"',focus:"",code:{lines:[{tokens:[{content:"{",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "version"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"2.0.0"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "options"',props:{style:{color:"#7EE787"}}},{content:": {",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "env"',props:{style:{color:"#7EE787"}}},{content:": {",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "DO_NOT_TRACK"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_AUTO_LOGIN"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_AUTO_SAVING"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_AUTO_SAVING_INTERVAL"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"1000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_BACKEND_ONLY"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_BUNDLE_URLS"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"[',props:{style:{color:"#A5D6FF"}}},{content:'\\"',props:{style:{color:"#79C0FF"}}},{content:"https://github.com/user/repo/commit/hash",props:{style:{color:"#A5D6FF"}}},{content:'\\"',props:{style:{color:"#79C0FF"}}},{content:']"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_CACHE_TYPE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"async"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_COMPONENTS_PATH"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"D:/path/to/components/"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_CONFIG_DIR"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"D:/path/to/config/"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_DATABASE_URL"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"postgresql://postgres:password@localhost:5432/langflow"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_DEV"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_FALLBACK_TO_ENV_VAR"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_HEALTH_CHECK_MAX_RETRIES"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"5"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_HOST"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"localhost"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LANGCHAIN_CACHE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"InMemoryCache"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_MAX_FILE_SIZE_UPLOAD"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"10000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_MAX_ITEMS_LENGTH"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"100"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_MAX_TEXT_LENGTH"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"1000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LOG_ENV"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"container_csv"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LOG_FILE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"langflow.log"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_LOG_LEVEL"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"error"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_OPEN_BROWSER"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_PORT"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"7860"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_REMOVE_API_KEYS"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SAVE_DB_IN_CONFIG_DIR"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"false"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SECRET_KEY"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"somesecretkey"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_STORE"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_STORE_ENVIRONMENT_VARIABLES"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"true"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SUPERUSER"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"adminuser"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_SUPERUSER_PASSWORD"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"adminpass"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_WORKER_TIMEOUT"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"60000"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "LANGFLOW_WORKERS"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"3"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" }",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" },",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "tasks"',props:{style:{color:"#7EE787"}}},{content:": [",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" {",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "label"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"langflow backend"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "type"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'"shell"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "command"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:'". ./langflownightly/Scripts/activate && langflow run"',props:{style:{color:"#A5D6FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "isBackground"',props:{style:{color:"#7EE787"}}},{content:": ",props:{style:{color:"#C9D1D9"}}},{content:"true",props:{style:{color:"#79C0FF"}}},{content:",",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:' "problemMatcher"',props:{style:{color:"#7EE787"}}},{content:": []",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" }",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" ]",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"}",props:{style:{color:"#C9D1D9"}}}]}],lang:"json"},annotations:[]}]}),(0,s.jsxs)(n.p,{children:["To run Langflow using the above VSCode ",(0,s.jsx)(n.code,{children:"tasks.json"})," file, in the VSCode command palette, select ",(0,s.jsx)(n.strong,{children:"Tasks: Run Task"})," > ",(0,s.jsx)(n.strong,{children:"langflow backend"}),"."]})]})]})]})}function _(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(j,{...e})}):j(e)}function u(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}}}]); \ No newline at end of file diff --git a/assets/js/e6c6a4d2.0c8a333a.js b/assets/js/e6c6a4d2.d88639fa.js similarity index 55% rename from assets/js/e6c6a4d2.0c8a333a.js rename to assets/js/e6c6a4d2.d88639fa.js index 7638ec68d0..123770e65b 100644 --- a/assets/js/e6c6a4d2.0c8a333a.js +++ b/assets/js/e6c6a4d2.d88639fa.js @@ -1 +1 @@ -"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[8504],{28453:(e,t,n)=>{n.d(t,{R:()=>a,x:()=>l});var s=n(96540);const i={},o=s.createContext(i);function a(e){const t=s.useContext(o);return s.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(o.Provider,{value:t},e.children)}},94910:(e,t,n)=>{n.r(t),n.d(t,{contentTitle:()=>l,default:()=>d,frontMatter:()=>a,metadata:()=>s,toc:()=>r});const s=JSON.parse('{"type":"api","id":"experimental-run-flow","title":"Experimental Run Flow","description":"","slug":"/experimental-run-flow","frontMatter":{},"api":{"tags":["Base"],"description":"Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability.\\n\\nThis endpoint supports running flows with caching to enhance performance and efficiency.\\n\\n### Parameters:\\n- `flow_id` (str): The unique identifier of the flow to be executed.\\n- `inputs` (List[InputValueRequest], optional): A list of inputs specifying the input values and components\\n for the flow. Each input can target specific components and provide custom values.\\n- `outputs` (List[str], optional): A list of output names to retrieve from the executed flow.\\n If not provided, all outputs are returned.\\n- `tweaks` (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.\\n The tweaks can be used to modify the flow\'s parameters and components.\\n Tweaks can be overridden by the input values.\\n- `stream` (bool, optional): Specifies whether the results should be streamed. Defaults to False.\\n- `session_id` (Union[None, str], optional): An optional session ID to utilize existing session data for the flow\\n execution.\\n- `api_key_user` (User): The user associated with the current API key. Automatically resolved from the API key.\\n\\n### Returns:\\nA `RunResponse` object containing the selected outputs (or all if not specified) of the executed flow\\nand the session ID.\\nThe structure of the response accommodates multiple inputs, providing a nested list of outputs for each input.\\n\\n### Raises:\\nHTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during\\nflow execution.\\n\\n### Example usage:\\n```json\\nPOST /run/flow_id\\nx-api-key: YOUR_API_KEY\\nPayload:\\n{\\n \\"inputs\\": [\\n {\\"components\\": [\\"component1\\"], \\"input_value\\": \\"value1\\"},\\n {\\"components\\": [\\"component3\\"], \\"input_value\\": \\"value2\\"}\\n ],\\n \\"outputs\\": [\\"Component Name\\", \\"component_id\\"],\\n \\"tweaks\\": {\\"parameter_name\\": \\"value\\", \\"Component Name\\": {\\"parameter_name\\": \\"value\\"}, \\"component_id\\": {\\"parameter_name\\": \\"value\\"}}\\n \\"stream\\": false\\n}\\n```\\n\\nThis endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,\\ncatering to diverse application requirements.","operationId":"experimental_run_flow_api_v1_run_advanced__flow_id__post","security":[{"API key query":[]},{"API key header":[]}],"parameters":[{"name":"flow_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Flow Id"}}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"inputs":{"anyOf":[{"items":{"properties":{"components":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Components","default":[]},"input_value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Input Value"},"session":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session"},"type":{"anyOf":[{"type":"string","enum":["chat","text","any"]},{"type":"null"}],"title":"Type","description":"Defines on which components the input value should be applied. \'any\' applies to all input components.","default":"any"}},"additionalProperties":false,"type":"object","title":"InputValueRequest","examples":[{"components":["components_id","Component Name"],"input_value":"input_value","session":"session_id"},{"components":["Component Name"],"input_value":"input_value"},{"input_value":"input_value"},{"components":["Component Name"],"input_value":"input_value","session":"session_id"},{"input_value":"input_value","session":"session_id"},{"input_value":"input_value","type":"chat"},{"input_value":"{\\"key\\": \\"value\\"}","type":"json"}]},"type":"array"},{"type":"null"}],"title":"Inputs"},"outputs":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Outputs"},"tweaks":{"anyOf":[{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"object"}]},"type":"object","title":"Tweaks","description":"A dictionary of tweaks to adjust the flow\'s execution. Allows customizing flow behavior dynamically. All tweaks are overridden by the input values.","examples":[{"Component Name":{"parameter_name":"value"},"component_id":{"parameter_name":"value"},"parameter_name":"value"}]},{"type":"null"}]},"stream":{"type":"boolean","title":"Stream","default":false},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},"type":"object","title":"Body_experimental_run_flow_api_v1_run_advanced__flow_id__post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"outputs":{"anyOf":[{"items":{"properties":{"inputs":{"type":"object","title":"Inputs"},"outputs":{"items":{"anyOf":[{"properties":{"results":{"anyOf":[{},{"type":"null"}],"title":"Results"},"artifacts":{"anyOf":[{},{"type":"null"}],"title":"Artifacts"},"outputs":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Outputs"},"logs":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Logs"},"messages":{"anyOf":[{"items":{"properties":{"message":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"type":"object"}]},"type":"array"}],"title":"Message"},"sender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender","default":"Machine"},"sender_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender Name","default":"AI"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"stream_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stream Url"},"component_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Component Id"},"files":{"items":{"properties":{"path":{"type":"string","title":"Path"},"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type"}},"type":"object","required":["path","name","type"],"title":"File","description":"File schema."},"type":"array","title":"Files","default":[]},"type":{"type":"string","title":"Type"}},"type":"object","required":["message","type"],"title":"ChatOutputResponse","description":"Chat output response schema."},"type":"array"},{"type":"null"}],"title":"Messages"},"timedelta":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Timedelta"},"duration":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Duration"},"component_display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Component Display Name"},"component_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Component Id"},"used_frozen_result":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Used Frozen Result","default":false}},"type":"object","title":"ResultData"},{"type":"null"}]},"type":"array","title":"Outputs"}},"type":"object","title":"RunOutputs"},"type":"array"},{"type":"null"}],"title":"Outputs","default":[]},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},"type":"object","title":"RunResponse","description":"Run response schema."}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"method":"post","path":"/api/v1/run/advanced/{flow_id}","securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"api/v1/login"}}},"API key query":{"type":"apiKey","in":"query","name":"x-api-key"},"API key header":{"type":"apiKey","in":"header","name":"x-api-key"}},"jsonRequestBodyExample":{"stream":false},"info":{"title":"Langflow","version":"1.4.3"},"postman":{"name":"Experimental Run Flow","description":{"content":"Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability.\\n\\nThis endpoint supports running flows with caching to enhance performance and efficiency.\\n\\n### Parameters:\\n- `flow_id` (str): The unique identifier of the flow to be executed.\\n- `inputs` (List[InputValueRequest], optional): A list of inputs specifying the input values and components\\n for the flow. Each input can target specific components and provide custom values.\\n- `outputs` (List[str], optional): A list of output names to retrieve from the executed flow.\\n If not provided, all outputs are returned.\\n- `tweaks` (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.\\n The tweaks can be used to modify the flow\'s parameters and components.\\n Tweaks can be overridden by the input values.\\n- `stream` (bool, optional): Specifies whether the results should be streamed. Defaults to False.\\n- `session_id` (Union[None, str], optional): An optional session ID to utilize existing session data for the flow\\n execution.\\n- `api_key_user` (User): The user associated with the current API key. Automatically resolved from the API key.\\n\\n### Returns:\\nA `RunResponse` object containing the selected outputs (or all if not specified) of the executed flow\\nand the session ID.\\nThe structure of the response accommodates multiple inputs, providing a nested list of outputs for each input.\\n\\n### Raises:\\nHTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during\\nflow execution.\\n\\n### Example usage:\\n```json\\nPOST /run/flow_id\\nx-api-key: YOUR_API_KEY\\nPayload:\\n{\\n \\"inputs\\": [\\n {\\"components\\": [\\"component1\\"], \\"input_value\\": \\"value1\\"},\\n {\\"components\\": [\\"component3\\"], \\"input_value\\": \\"value2\\"}\\n ],\\n \\"outputs\\": [\\"Component Name\\", \\"component_id\\"],\\n \\"tweaks\\": {\\"parameter_name\\": \\"value\\", \\"Component Name\\": {\\"parameter_name\\": \\"value\\"}, \\"component_id\\": {\\"parameter_name\\": \\"value\\"}}\\n \\"stream\\": false\\n}\\n```\\n\\nThis endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,\\ncatering to diverse application requirements.","type":"text/plain"},"url":{"path":["api","v1","run","advanced",":flow_id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) ","type":"text/plain"},"type":"any","value":"","key":"flow_id"}]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"{\\n \\"inputs\\": [\\n {\\n \\"components\\": [\\n \\"\\",\\n \\"\\"\\n ],\\n \\"input_value\\": \\"\\",\\n \\"session\\": \\"\\",\\n \\"type\\": \\"\\"\\n },\\n {\\n \\"components\\": [\\n \\"\\",\\n \\"\\"\\n ],\\n \\"input_value\\": \\"\\",\\n \\"session\\": \\"\\",\\n \\"type\\": \\"\\"\\n }\\n ],\\n \\"outputs\\": [\\n \\"\\",\\n \\"\\"\\n ],\\n \\"tweaks\\": {\\n \\"ad628\\": \\"\\"\\n },\\n \\"stream\\": false,\\n \\"session_id\\": \\"\\"\\n}","options":{"raw":{"language":"json"}}},"auth":{"type":"apikey","apikey":[{"type":"any","value":"x-api-key","key":"key"},{"type":"any","value":"{{apiKey}}","key":"value"},{"type":"any","value":"query","key":"in"}]}}},"source":"@site/openapi.json","sourceDirName":".","permalink":"/api/experimental-run-flow","previous":{"title":"Webhook Run Flow","permalink":"/api/webhook-run-flow"},"next":{"title":"Process","permalink":"/api/process"}}');var i=n(74848),o=n(28453);const a={},l="Experimental Run Flow",r=[{value:"Parameters:",id:"parameters",level:3},{value:"Returns:",id:"returns",level:3},{value:"Raises:",id:"raises",level:3},{value:"Example usage:",id:"example-usage",level:3}];function p(e){const t={code:"code",h1:"h1",h3:"h3",header:"header",li:"li",p:"p",pre:"pre",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"experimental-run-flow",children:"Experimental Run Flow"})}),"\n",(0,i.jsx)(t.p,{children:"Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability."}),"\n",(0,i.jsx)(t.p,{children:"This endpoint supports running flows with caching to enhance performance and efficiency."}),"\n",(0,i.jsx)(t.h3,{id:"parameters",children:"Parameters:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"flow_id"})," (str): The unique identifier of the flow to be executed."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"inputs"})," (List[InputValueRequest], optional): A list of inputs specifying the input values and components\nfor the flow. Each input can target specific components and provide custom values."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"outputs"})," (List[str], optional): A list of output names to retrieve from the executed flow.\nIf not provided, all outputs are returned."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"tweaks"})," (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.\nThe tweaks can be used to modify the flow's parameters and components.\nTweaks can be overridden by the input values."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"stream"})," (bool, optional): Specifies whether the results should be streamed. Defaults to False."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"session_id"})," (Union[None, str], optional): An optional session ID to utilize existing session data for the flow\nexecution."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"api_key_user"})," (User): The user associated with the current API key. Automatically resolved from the API key."]}),"\n"]}),"\n",(0,i.jsx)(t.h3,{id:"returns",children:"Returns:"}),"\n",(0,i.jsxs)(t.p,{children:["A ",(0,i.jsx)(t.code,{children:"RunResponse"})," object containing the selected outputs (or all if not specified) of the executed flow\nand the session ID.\nThe structure of the response accommodates multiple inputs, providing a nested list of outputs for each input."]}),"\n",(0,i.jsx)(t.h3,{id:"raises",children:"Raises:"}),"\n",(0,i.jsx)(t.p,{children:"HTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during\nflow execution."}),"\n",(0,i.jsx)(t.h3,{id:"example-usage",children:"Example usage:"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-json",children:'POST /run/flow_id\nx-api-key: YOUR_API_KEY\nPayload:\n{\n "inputs": [\n {"components": ["component1"], "input_value": "value1"},\n {"components": ["component3"], "input_value": "value2"}\n ],\n "outputs": ["Component Name", "component_id"],\n "tweaks": {"parameter_name": "value", "Component Name": {"parameter_name": "value"}, "component_id": {"parameter_name": "value"}}\n "stream": false\n}\n'})}),"\n",(0,i.jsx)(t.p,{children:"This endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,\ncatering to diverse application requirements."}),"\n",(0,i.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsx)("th",{style:{textAlign:"left"},children:"Path Parameters"})})}),(0,i.jsx)("tbody",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"flow_id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" uuid"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-required)"},children:" REQUIRED"})]})})})]}),"\n",(0,i.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("th",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{children:"Request Body "}),(0,i.jsx)("div",{})]})})}),(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"inputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Inputs"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"outputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Outputs"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"tweaks"}),(0,i.jsx)("span",{style:{opacity:"0.6"}})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"stream"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Stream"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"session_id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Session Id"})]})})]})]}),"\n",(0,i.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsx)("th",{style:{textAlign:"left"},children:"Responses"})})}),(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsxs)("div",{style:{display:"flex"},children:[(0,i.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,i.jsx)("code",{children:"200"})}),(0,i.jsx)("div",{children:(0,i.jsx)(t.p,{children:"Successful Response"})})]}),(0,i.jsx)("div",{children:(0,i.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("th",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{children:"Schema "}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,i.jsx)("div",{})]})})}),(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"outputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Outputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"session_id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Session Id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"})]})})]})]})})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsxs)("div",{style:{display:"flex"},children:[(0,i.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,i.jsx)("code",{children:"422"})}),(0,i.jsx)("div",{children:(0,i.jsx)(t.p,{children:"Validation Error"})})]}),(0,i.jsx)("div",{children:(0,i.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("th",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{children:"Schema "}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,i.jsx)("div",{})]})})}),(0,i.jsx)("tbody",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"detail"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" object[]"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,i.jsx)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"loc"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" undefined[]"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"msg"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Message"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"type"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Error Type"})]})})]})})]})})})]})})]})})]})]})]})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}}}]); \ No newline at end of file +"use strict";(self.webpackChunklangflow_docs=self.webpackChunklangflow_docs||[]).push([[8504],{28453:(e,t,n)=>{n.d(t,{R:()=>a,x:()=>l});var s=n(96540);const i={},o=s.createContext(i);function a(e){const t=s.useContext(o);return s.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(o.Provider,{value:t},e.children)}},94910:(e,t,n)=>{n.r(t),n.d(t,{contentTitle:()=>l,default:()=>d,frontMatter:()=>a,metadata:()=>s,toc:()=>r});const s=JSON.parse('{"type":"api","id":"experimental-run-flow","title":"Experimental Run Flow","description":"","slug":"/experimental-run-flow","frontMatter":{},"api":{"tags":["Base"],"description":"Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability.\\n\\nThis endpoint supports running flows with caching to enhance performance and efficiency.\\n\\n### Parameters:\\n- `flow_id` (str): The unique identifier of the flow to be executed.\\n- `inputs` (List[InputValueRequest], optional): A list of inputs specifying the input values and components\\n for the flow. Each input can target specific components and provide custom values.\\n- `outputs` (List[str], optional): A list of output names to retrieve from the executed flow.\\n If not provided, all outputs are returned.\\n- `tweaks` (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.\\n The tweaks can be used to modify the flow\'s parameters and components.\\n Tweaks can be overridden by the input values.\\n- `stream` (bool, optional): Specifies whether the results should be streamed. Defaults to False.\\n- `session_id` (Union[None, str], optional): An optional session ID to utilize existing session data for the flow\\n execution.\\n- `api_key_user` (User): The user associated with the current API key. Automatically resolved from the API key.\\n\\n### Returns:\\nA `RunResponse` object containing the selected outputs (or all if not specified) of the executed flow\\nand the session ID.\\nThe structure of the response accommodates multiple inputs, providing a nested list of outputs for each input.\\n\\n### Raises:\\nHTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during\\nflow execution.\\n\\n### Example usage:\\n```json\\nPOST /run/flow_id\\nx-api-key: YOUR_API_KEY\\nPayload:\\n{\\n \\"inputs\\": [\\n {\\"components\\": [\\"component1\\"], \\"input_value\\": \\"value1\\"},\\n {\\"components\\": [\\"component3\\"], \\"input_value\\": \\"value2\\"}\\n ],\\n \\"outputs\\": [\\"Component Name\\", \\"component_id\\"],\\n \\"tweaks\\": {\\"parameter_name\\": \\"value\\", \\"Component Name\\": {\\"parameter_name\\": \\"value\\"}, \\"component_id\\": {\\"parameter_name\\": \\"value\\"}}\\n \\"stream\\": false\\n}\\n```\\n\\nThis endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,\\ncatering to diverse application requirements.","operationId":"experimental_run_flow_api_v1_run_advanced__flow_id__post","security":[{"API key query":[]},{"API key header":[]}],"parameters":[{"name":"flow_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Flow Id"}}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"inputs":{"anyOf":[{"items":{"properties":{"components":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Components","default":[]},"input_value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Input Value"},"session":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session"},"type":{"anyOf":[{"type":"string","enum":["chat","text","any"]},{"type":"null"}],"title":"Type","description":"Defines on which components the input value should be applied. \'any\' applies to all input components.","default":"any"}},"additionalProperties":false,"type":"object","title":"InputValueRequest","examples":[{"components":["components_id","Component Name"],"input_value":"input_value","session":"session_id"},{"components":["Component Name"],"input_value":"input_value"},{"input_value":"input_value"},{"components":["Component Name"],"input_value":"input_value","session":"session_id"},{"input_value":"input_value","session":"session_id"},{"input_value":"input_value","type":"chat"},{"input_value":"{\\"key\\": \\"value\\"}","type":"json"}]},"type":"array"},{"type":"null"}],"title":"Inputs"},"outputs":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Outputs"},"tweaks":{"anyOf":[{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"object"}]},"type":"object","title":"Tweaks","description":"A dictionary of tweaks to adjust the flow\'s execution. Allows customizing flow behavior dynamically. All tweaks are overridden by the input values.","examples":[{"Component Name":{"parameter_name":"value"},"component_id":{"parameter_name":"value"},"parameter_name":"value"}]},{"type":"null"}]},"stream":{"type":"boolean","title":"Stream","default":false},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},"type":"object","title":"Body_experimental_run_flow_api_v1_run_advanced__flow_id__post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"outputs":{"anyOf":[{"items":{"properties":{"inputs":{"type":"object","title":"Inputs"},"outputs":{"items":{"anyOf":[{"properties":{"results":{"anyOf":[{},{"type":"null"}],"title":"Results"},"artifacts":{"anyOf":[{},{"type":"null"}],"title":"Artifacts"},"outputs":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Outputs"},"logs":{"anyOf":[{"type":"object"},{"type":"null"}],"title":"Logs"},"messages":{"anyOf":[{"items":{"properties":{"message":{"anyOf":[{"type":"string"},{"items":{"anyOf":[{"type":"string"},{"type":"object"}]},"type":"array"}],"title":"Message"},"sender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender","default":"Machine"},"sender_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sender Name","default":"AI"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"},"stream_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stream Url"},"component_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Component Id"},"files":{"items":{"properties":{"path":{"type":"string","title":"Path"},"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type"}},"type":"object","required":["path","name","type"],"title":"File","description":"File schema."},"type":"array","title":"Files","default":[]},"type":{"type":"string","title":"Type"}},"type":"object","required":["message","type"],"title":"ChatOutputResponse","description":"Chat output response schema."},"type":"array"},{"type":"null"}],"title":"Messages"},"timedelta":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Timedelta"},"duration":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Duration"},"component_display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Component Display Name"},"component_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Component Id"},"used_frozen_result":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Used Frozen Result","default":false}},"type":"object","title":"ResultData"},{"type":"null"}]},"type":"array","title":"Outputs"}},"type":"object","title":"RunOutputs"},"type":"array"},{"type":"null"}],"title":"Outputs","default":[]},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id"}},"type":"object","title":"RunResponse","description":"Run response schema."}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"method":"post","path":"/api/v1/run/advanced/{flow_id}","securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"api/v1/login"}}},"API key query":{"type":"apiKey","in":"query","name":"x-api-key"},"API key header":{"type":"apiKey","in":"header","name":"x-api-key"}},"jsonRequestBodyExample":{"stream":false},"info":{"title":"Langflow","version":"1.4.3"},"postman":{"name":"Experimental Run Flow","description":{"content":"Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability.\\n\\nThis endpoint supports running flows with caching to enhance performance and efficiency.\\n\\n### Parameters:\\n- `flow_id` (str): The unique identifier of the flow to be executed.\\n- `inputs` (List[InputValueRequest], optional): A list of inputs specifying the input values and components\\n for the flow. Each input can target specific components and provide custom values.\\n- `outputs` (List[str], optional): A list of output names to retrieve from the executed flow.\\n If not provided, all outputs are returned.\\n- `tweaks` (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.\\n The tweaks can be used to modify the flow\'s parameters and components.\\n Tweaks can be overridden by the input values.\\n- `stream` (bool, optional): Specifies whether the results should be streamed. Defaults to False.\\n- `session_id` (Union[None, str], optional): An optional session ID to utilize existing session data for the flow\\n execution.\\n- `api_key_user` (User): The user associated with the current API key. Automatically resolved from the API key.\\n\\n### Returns:\\nA `RunResponse` object containing the selected outputs (or all if not specified) of the executed flow\\nand the session ID.\\nThe structure of the response accommodates multiple inputs, providing a nested list of outputs for each input.\\n\\n### Raises:\\nHTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during\\nflow execution.\\n\\n### Example usage:\\n```json\\nPOST /run/flow_id\\nx-api-key: YOUR_API_KEY\\nPayload:\\n{\\n \\"inputs\\": [\\n {\\"components\\": [\\"component1\\"], \\"input_value\\": \\"value1\\"},\\n {\\"components\\": [\\"component3\\"], \\"input_value\\": \\"value2\\"}\\n ],\\n \\"outputs\\": [\\"Component Name\\", \\"component_id\\"],\\n \\"tweaks\\": {\\"parameter_name\\": \\"value\\", \\"Component Name\\": {\\"parameter_name\\": \\"value\\"}, \\"component_id\\": {\\"parameter_name\\": \\"value\\"}}\\n \\"stream\\": false\\n}\\n```\\n\\nThis endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,\\ncatering to diverse application requirements.","type":"text/plain"},"url":{"path":["api","v1","run","advanced",":flow_id"],"host":["{{baseUrl}}"],"query":[],"variable":[{"disabled":false,"description":{"content":"(Required) ","type":"text/plain"},"type":"any","value":"","key":"flow_id"}]},"header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"method":"POST","body":{"mode":"raw","raw":"{\\n \\"inputs\\": [\\n {\\n \\"components\\": [\\n \\"\\",\\n \\"\\"\\n ],\\n \\"input_value\\": \\"\\",\\n \\"session\\": \\"\\",\\n \\"type\\": \\"\\"\\n },\\n {\\n \\"components\\": [\\n \\"\\",\\n \\"\\"\\n ],\\n \\"input_value\\": \\"\\",\\n \\"session\\": \\"\\",\\n \\"type\\": \\"\\"\\n }\\n ],\\n \\"outputs\\": [\\n \\"\\",\\n \\"\\"\\n ],\\n \\"tweaks\\": {\\n \\"consequat_c9\\": \\"\\",\\n \\"aliquip_\\": \\"\\"\\n },\\n \\"stream\\": false,\\n \\"session_id\\": \\"\\"\\n}","options":{"raw":{"language":"json"}}},"auth":{"type":"apikey","apikey":[{"type":"any","value":"x-api-key","key":"key"},{"type":"any","value":"{{apiKey}}","key":"value"},{"type":"any","value":"query","key":"in"}]}}},"source":"@site/openapi.json","sourceDirName":".","permalink":"/api/experimental-run-flow","previous":{"title":"Webhook Run Flow","permalink":"/api/webhook-run-flow"},"next":{"title":"Process","permalink":"/api/process"}}');var i=n(74848),o=n(28453);const a={},l="Experimental Run Flow",r=[{value:"Parameters:",id:"parameters",level:3},{value:"Returns:",id:"returns",level:3},{value:"Raises:",id:"raises",level:3},{value:"Example usage:",id:"example-usage",level:3}];function p(e){const t={code:"code",h1:"h1",h3:"h3",header:"header",li:"li",p:"p",pre:"pre",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"experimental-run-flow",children:"Experimental Run Flow"})}),"\n",(0,i.jsx)(t.p,{children:"Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability."}),"\n",(0,i.jsx)(t.p,{children:"This endpoint supports running flows with caching to enhance performance and efficiency."}),"\n",(0,i.jsx)(t.h3,{id:"parameters",children:"Parameters:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"flow_id"})," (str): The unique identifier of the flow to be executed."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"inputs"})," (List[InputValueRequest], optional): A list of inputs specifying the input values and components\nfor the flow. Each input can target specific components and provide custom values."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"outputs"})," (List[str], optional): A list of output names to retrieve from the executed flow.\nIf not provided, all outputs are returned."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"tweaks"})," (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.\nThe tweaks can be used to modify the flow's parameters and components.\nTweaks can be overridden by the input values."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"stream"})," (bool, optional): Specifies whether the results should be streamed. Defaults to False."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"session_id"})," (Union[None, str], optional): An optional session ID to utilize existing session data for the flow\nexecution."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.code,{children:"api_key_user"})," (User): The user associated with the current API key. Automatically resolved from the API key."]}),"\n"]}),"\n",(0,i.jsx)(t.h3,{id:"returns",children:"Returns:"}),"\n",(0,i.jsxs)(t.p,{children:["A ",(0,i.jsx)(t.code,{children:"RunResponse"})," object containing the selected outputs (or all if not specified) of the executed flow\nand the session ID.\nThe structure of the response accommodates multiple inputs, providing a nested list of outputs for each input."]}),"\n",(0,i.jsx)(t.h3,{id:"raises",children:"Raises:"}),"\n",(0,i.jsx)(t.p,{children:"HTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during\nflow execution."}),"\n",(0,i.jsx)(t.h3,{id:"example-usage",children:"Example usage:"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-json",children:'POST /run/flow_id\nx-api-key: YOUR_API_KEY\nPayload:\n{\n "inputs": [\n {"components": ["component1"], "input_value": "value1"},\n {"components": ["component3"], "input_value": "value2"}\n ],\n "outputs": ["Component Name", "component_id"],\n "tweaks": {"parameter_name": "value", "Component Name": {"parameter_name": "value"}, "component_id": {"parameter_name": "value"}}\n "stream": false\n}\n'})}),"\n",(0,i.jsx)(t.p,{children:"This endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,\ncatering to diverse application requirements."}),"\n",(0,i.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsx)("th",{style:{textAlign:"left"},children:"Path Parameters"})})}),(0,i.jsx)("tbody",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"flow_id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" uuid"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-required)"},children:" REQUIRED"})]})})})]}),"\n",(0,i.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("th",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{children:"Request Body "}),(0,i.jsx)("div",{})]})})}),(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"inputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Inputs"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"outputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Outputs"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"tweaks"}),(0,i.jsx)("span",{style:{opacity:"0.6"}})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"stream"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Stream"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"session_id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Session Id"})]})})]})]}),"\n",(0,i.jsxs)("table",{style:{display:"table",width:"100%"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsx)("th",{style:{textAlign:"left"},children:"Responses"})})}),(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsxs)("div",{style:{display:"flex"},children:[(0,i.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,i.jsx)("code",{children:"200"})}),(0,i.jsx)("div",{children:(0,i.jsx)(t.p,{children:"Successful Response"})})]}),(0,i.jsx)("div",{children:(0,i.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("th",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{children:"Schema "}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,i.jsx)("div",{})]})})}),(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"outputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Outputs"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"session_id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Session Id"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"})]})})]})]})})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsxs)("div",{style:{display:"flex"},children:[(0,i.jsx)("div",{style:{marginRight:"var(--ifm-table-cell-padding)"},children:(0,i.jsx)("code",{children:"422"})}),(0,i.jsx)("div",{children:(0,i.jsx)(t.p,{children:"Validation Error"})})]}),(0,i.jsx)("div",{children:(0,i.jsxs)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:[(0,i.jsx)("thead",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("th",{style:{textAlign:"left"},children:[(0,i.jsx)("span",{children:"Schema "}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,i.jsx)("div",{})]})})}),(0,i.jsx)("tbody",{children:(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"detail"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" object[]"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" \u2014 "}),(0,i.jsx)("strong",{style:{fontSize:"var(--ifm-code-font-size)",color:"var(--openapi-optional)"},children:" OPTIONAL"}),(0,i.jsx)("table",{style:{display:"table",width:"100%",marginTop:"var(--ifm-table-cell-padding)",marginBottom:"0px"},children:(0,i.jsxs)("tbody",{children:[(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"loc"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" undefined[]"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"msg"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Message"})]})}),(0,i.jsx)("tr",{children:(0,i.jsxs)("td",{children:[(0,i.jsx)("code",{children:"type"}),(0,i.jsx)("span",{style:{opacity:"0.6"},children:" Error Type"})]})})]})})]})})})]})})]})})]})]})]})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.08986d27.js b/assets/js/runtime~main.acec53da.js similarity index 98% rename from assets/js/runtime~main.08986d27.js rename to assets/js/runtime~main.acec53da.js index 2f7589e8c0..e66ee0fe37 100644 --- a/assets/js/runtime~main.08986d27.js +++ b/assets/js/runtime~main.acec53da.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,f,c,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var f=t[e]={id:e,loaded:!1,exports:{}};return b[e].call(f.exports,f,f.exports,r),f.loaded=!0,f.exports}r.m=b,r.c=t,e=[],r.O=(a,f,c,d)=>{if(!f){var b=1/0;for(i=0;i=d)&&Object.keys(r.O).every(e=>r.O[e](f[o]))?f.splice(o--,1):(t=!1,d0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[f,c,d]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var d=Object.create(null);r.r(d);var b={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach(a=>b[a]=()=>e[a]);return b.default=()=>e,r.d(d,b),d},r.d=(e,a)=>{for(var f in a)r.o(a,f)&&!r.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((a,f)=>(r.f[f](e,a),a),[])),r.u=e=>"assets/js/"+({11:"d2df9b4e",31:"03e862ce",51:"b7251463",145:"0be1d5fe",187:"74e1dc40",191:"c643a6d5",202:"32c42bbe",230:"bc63ae25",265:"d3ca7a96",266:"eca2a4e0",299:"9b5a408c",321:"6e1a9721",338:"d9527026",368:"07c30ae4",417:"93e16042",444:"14f42f9e",730:"86b18dd0",762:"4af57a32",768:"6d684b63",787:"672a0eba",800:"a4c0ff01",837:"7bfb6f41",868:"dc7b1ef3",944:"d3600190",957:"c141421f",964:"05d835b4",982:"021496c4",1022:"8a61012d",1035:"24d32e91",1079:"f5818e36",1185:"c2de64b8",1227:"647965d5",1349:"beb998f3",1488:"ac3cc3f5",1500:"1e9025f7",1556:"264ffc80",1563:"3ef76b56",1567:"22dd74f7",1625:"92852ade",1690:"41a97a99",1765:"7b257a20",1845:"2ab0d4f5",1956:"fe6f9601",2073:"7b7db446",2097:"338a6f8e",2100:"9cc9f218",2138:"1a4e3797",2182:"051d841d",2192:"179311c0",2206:"64f4662c",2273:"e756fa26",2288:"faf7ef88",2341:"0123c128",2551:"394022bb",2624:"8ff68e6f",2657:"a3ab51d1",2777:"b3ba68b4",2818:"a9b73094",2841:"83998924",2935:"6923853f",3043:"89e8c924",3099:"8cea976c",3110:"6a2beaac",3225:"99a4401d",3266:"914b1bec",3327:"6aa941bb",3347:"b5257597",3391:"f66238ae",3576:"64045095",3694:"c2b1730c",3740:"f113d167",3795:"c85076de",3832:"c3d82421",3859:"7679ca6e",3917:"c8dad5f1",3964:"829ff4d2",3968:"0e5205b8",4046:"9ac856ad",4133:"5cf11f26",4237:"8abbbbe8",4242:"31ead0b1",4274:"b6bf934a",4526:"8311683c",4574:"bc0ebe55",4615:"6801371f",4645:"fef056e9",4778:"e189eece",4784:"438e4337",4806:"fba42286",4841:"8298c1cb",4867:"d73246f8",4891:"ca67d85f",4919:"6debce21",4930:"d2ad385b",4931:"a9b4f8aa",4954:"a71efd4a",4973:"2d2c4fcb",5107:"10156854",5109:"3542ed72",5138:"309383dc",5179:"41e3c105",5195:"b1ab2a41",5281:"a0511a5b",5284:"64ca91f1",5290:"fa10e583",5304:"7dbff1af",5339:"9447891f",5395:"98058046",5448:"5c480e8b",5457:"856a5d6e",5467:"40d13080",5474:"d175aa8b",5475:"18f3809a",5513:"20d49d07",5514:"02955c09",5562:"20e9af62",5572:"873ebc27",5628:"bd7ab245",5647:"885eb549",5673:"73af8c33",5716:"946d1cee",5718:"5ccf4833",5742:"aba21aa0",5772:"4e7126f8",5799:"364e949f",5824:"214b2cc2",5852:"38718c49",5865:"e1766139",5866:"3b577cbb",5883:"61cfab8e",5894:"f178e9b3",6003:"4d983c8e",6008:"445668ec",6010:"60c70af6",6053:"dfc50084",6079:"472dc73b",6080:"4d15791b",6147:"ab17fe15",6201:"9ab37888",6214:"b1220dbd",6281:"c96ce3ed",6332:"873508e7",6343:"7334cbc9",6350:"188ee668",6419:"96eb0e67",6445:"9fb9a766",6455:"340026fc",6473:"4c5e977b",6511:"320c2db0",6559:"6f13807a",6649:"02e43f39",6682:"5a6d6120",6688:"388c3769",6753:"ff349d2f",6757:"86bd0a2e",6890:"8b85e1d0",6920:"c817e236",6934:"d745f4e6",6949:"b36bb719",7088:"91282a5c",7098:"a7bd4aaa",7108:"688feaef",7118:"4ce9199e",7142:"d0c1f670",7159:"aecfdd3d",7165:"547df4a1",7211:"cacdc615",7338:"c39b795e",7339:"7a774ddf",7359:"738cd2f5",7408:"3ae94ad4",7443:"9f9a61a7",7453:"fdefa9a8",7462:"921b5fc1",7472:"744aaf8b",7507:"651ef245",7713:"3a82b27e",7847:"5362f2c1",7894:"0f44198a",8054:"85112c90",8064:"274fd934",8085:"cc44357e",8102:"019dbd1f",8184:"222029a9",8188:"ecd67556",8196:"75a9e1e0",8208:"216e3ed7",8245:"5e834a3c",8298:"153f2b62",8304:"73d1a090",8356:"c6a5eaec",8374:"261f8123",8401:"17896441",8504:"e6c6a4d2",8598:"44dfcf75",8601:"04ee7e22",8661:"8f774222",8679:"3705a9c0",8874:"f3d40299",8927:"ae68aa8b",8929:"172b3cfb",9004:"4f1ba371",9036:"850d3674",9048:"a94703ab",9099:"b1bc5ffe",9126:"169603ea",9141:"19136925",9195:"f450da80",9263:"5f3b2a41",9371:"991799c5",9431:"cd8dccb5",9453:"913561e8",9455:"54175a6c",9476:"57c9a2b8",9479:"4e038a6a",9483:"7823fa72",9509:"49311ca0",9555:"dedd5914",9619:"29b8e27a",9642:"eae80ce0",9647:"5e95c892",9681:"5ff9f4db",9705:"ee3b5967",9716:"01db5f27",9731:"52edee88",9751:"25255263",9752:"72d61395",9789:"537e1953",9857:"09f5326a",9888:"be76515e",9905:"43df3697",9914:"5217df3c"}[e]||e)+"."+{11:"ddffb539",31:"512a7dbc",51:"c0c3f280",145:"60138eeb",187:"a30771cb",191:"aadedcf6",202:"bb132cdf",230:"cbd60976",265:"5f5b1a33",266:"39dc0c8d",299:"6d646080",321:"f74fbff6",338:"f395d766",368:"b2f23bda",416:"3c613765",417:"4baee8ce",444:"953dc0ad",730:"76480870",762:"1cd15877",768:"26f203bb",787:"0a3c8357",800:"d5e09d54",837:"1e9ccf60",868:"fac64452",900:"7cc4aadf",944:"f9d5ae7d",957:"da9e1d2b",964:"33abc783",982:"6f7d4e8f",1022:"5a4439b8",1035:"0c86126e",1079:"7e76070c",1185:"78cdce51",1227:"b329461b",1349:"50b59517",1488:"feb8009a",1500:"0c85b4f3",1556:"65dbb0ec",1563:"d7436e55",1567:"b92516de",1625:"14cdddbe",1690:"caae242c",1765:"9ac49c19",1845:"980ee380",1956:"2eaf3c8d",2073:"00253b7e",2097:"1e4acafb",2100:"cfbd806e",2138:"f62f93d0",2182:"63c915d7",2192:"2e07119f",2206:"d385d276",2237:"8bc4ac99",2273:"8b568bd6",2288:"d0231214",2341:"17746ba9",2551:"4934cf0e",2624:"d7e5d2bd",2657:"cc88b22c",2777:"b39ea441",2818:"a6236419",2841:"2287d98f",2935:"514693c2",3043:"fc9945dd",3099:"9065d02d",3110:"420f6787",3225:"1cba44f1",3266:"f34898e5",3327:"01d044b3",3347:"077bbafe",3391:"74c719b2",3477:"a7eba177",3576:"a10399fd",3694:"7f775c03",3740:"6119c76b",3795:"22b68947",3832:"674f22af",3859:"3d23bed5",3917:"c084ff6a",3964:"892c7686",3968:"caa31680",4046:"f443938e",4058:"7658d33f",4133:"4fe6237e",4237:"1af7698d",4242:"824d41c9",4274:"113ac0d7",4526:"454b9226",4574:"65b2a36a",4615:"989976c1",4645:"eb87dccb",4778:"503413a7",4784:"19c2475e",4806:"34d08da9",4841:"0dbf7e7c",4867:"bd452b6d",4891:"a6f5d292",4919:"dd87b73a",4930:"be53ab7e",4931:"71355ddc",4954:"2089d195",4973:"71d36cbe",5107:"52134134",5109:"5fd03d0f",5138:"2974a363",5179:"f4718ef9",5195:"823211d9",5281:"894274ed",5284:"2d12589d",5290:"0ceea7db",5304:"44e87bea",5339:"8bb81d35",5395:"14c93a0a",5448:"6f3b8f90",5457:"dec11f42",5467:"52554cb1",5474:"cef6a3d8",5475:"611089ed",5513:"602f4848",5514:"c69cb535",5562:"f6fb643e",5572:"2de0db39",5628:"a412885c",5647:"bc295999",5673:"8aa7ed13",5716:"8e8510e2",5718:"022d2886",5742:"60b1d5b2",5772:"dcc60132",5799:"dec5550f",5824:"1ade0363",5852:"d48451cd",5865:"eb2ec8a3",5866:"45393cb5",5883:"a6deffa9",5894:"774bfc60",6003:"9fe3dd51",6008:"88d09f01",6010:"04a7b1a9",6053:"6f93aa26",6079:"dbae8d0d",6080:"cb777fbd",6147:"b6cb9ae3",6201:"d255f7c7",6214:"46fa6a6f",6281:"bdef7e30",6332:"7d86a66f",6343:"1bee2f59",6350:"a7f0a219",6419:"74aab13e",6445:"c07ef100",6455:"0c1d7679",6473:"b5e32ff9",6511:"4d80f4af",6559:"3ecd1117",6649:"e1c11ed5",6682:"bdd6c26a",6688:"d995a879",6753:"8f96b000",6757:"6ddd1dbf",6890:"691b1b4e",6920:"27ba1972",6934:"d2ceb12e",6949:"546cd061",7088:"74c7b212",7098:"fc1f6434",7108:"23d3e7f3",7118:"e3580a56",7142:"9d2974d8",7159:"a419917e",7165:"54e9a894",7211:"01bac9d6",7338:"4964bc4e",7339:"ad3f44bc",7359:"cf66bc41",7397:"385da999",7408:"2a8975c8",7443:"1fa83f60",7453:"d5896fd8",7462:"1f2fa7be",7472:"cc943b29",7507:"61a0217a",7713:"9a259485",7847:"93678ac2",7894:"9c6943d4",8054:"73b4f2dd",8064:"5e674ccc",8085:"f1b714c7",8102:"7430d61a",8158:"20de8b80",8184:"2b8756bf",8188:"89270f8a",8196:"35fc12e6",8208:"58fc3dea",8245:"1faee88f",8298:"38915481",8304:"85acf80a",8356:"3a9577e7",8374:"24ac5a03",8401:"c1ed24c3",8504:"0c8a333a",8598:"8db01706",8601:"a16ed106",8661:"fab77072",8679:"0435f16b",8874:"bda1d42c",8913:"47209f3b",8927:"42b0048b",8929:"b2960eff",9004:"e04ed25a",9036:"a1ce8500",9048:"bdc69ee3",9099:"447347d4",9126:"7b33fab3",9141:"e3c47d68",9195:"1692dfa7",9263:"5bd19599",9371:"57020972",9431:"52a520fc",9453:"236b431f",9455:"53fb31d3",9476:"b6b16752",9479:"42531913",9483:"7b8cea7a",9495:"49162ef8",9509:"455a3865",9555:"3e213e40",9619:"d8a80867",9642:"df9f2631",9647:"5cb928a1",9681:"d769829d",9705:"9211ef49",9716:"4537deb7",9731:"7627a688",9751:"57ea365f",9752:"54dc42e9",9789:"b26e7e84",9857:"2b246be5",9888:"92cb77be",9905:"07e10722",9914:"e775b627"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},d="langflow-docs:",r.l=(e,a,f,b)=>{if(c[e])c[e].push(a);else{var t,o;if(void 0!==f)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var d=c[e];if(delete c[e],t.parentNode&&t.parentNode.removeChild(t),d&&d.forEach(e=>e(f)),a)return a(f)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=u.bind(null,t.onerror),t.onload=u.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="/",r.gca=function(e){return e={10156854:"5107",17896441:"8401",19136925:"9141",25255263:"9751",64045095:"3576",83998924:"2841",98058046:"5395",d2df9b4e:"11","03e862ce":"31",b7251463:"51","0be1d5fe":"145","74e1dc40":"187",c643a6d5:"191","32c42bbe":"202",bc63ae25:"230",d3ca7a96:"265",eca2a4e0:"266","9b5a408c":"299","6e1a9721":"321",d9527026:"338","07c30ae4":"368","93e16042":"417","14f42f9e":"444","86b18dd0":"730","4af57a32":"762","6d684b63":"768","672a0eba":"787",a4c0ff01:"800","7bfb6f41":"837",dc7b1ef3:"868",d3600190:"944",c141421f:"957","05d835b4":"964","021496c4":"982","8a61012d":"1022","24d32e91":"1035",f5818e36:"1079",c2de64b8:"1185","647965d5":"1227",beb998f3:"1349",ac3cc3f5:"1488","1e9025f7":"1500","264ffc80":"1556","3ef76b56":"1563","22dd74f7":"1567","92852ade":"1625","41a97a99":"1690","7b257a20":"1765","2ab0d4f5":"1845",fe6f9601:"1956","7b7db446":"2073","338a6f8e":"2097","9cc9f218":"2100","1a4e3797":"2138","051d841d":"2182","179311c0":"2192","64f4662c":"2206",e756fa26:"2273",faf7ef88:"2288","0123c128":"2341","394022bb":"2551","8ff68e6f":"2624",a3ab51d1:"2657",b3ba68b4:"2777",a9b73094:"2818","6923853f":"2935","89e8c924":"3043","8cea976c":"3099","6a2beaac":"3110","99a4401d":"3225","914b1bec":"3266","6aa941bb":"3327",b5257597:"3347",f66238ae:"3391",c2b1730c:"3694",f113d167:"3740",c85076de:"3795",c3d82421:"3832","7679ca6e":"3859",c8dad5f1:"3917","829ff4d2":"3964","0e5205b8":"3968","9ac856ad":"4046","5cf11f26":"4133","8abbbbe8":"4237","31ead0b1":"4242",b6bf934a:"4274","8311683c":"4526",bc0ebe55:"4574","6801371f":"4615",fef056e9:"4645",e189eece:"4778","438e4337":"4784",fba42286:"4806","8298c1cb":"4841",d73246f8:"4867",ca67d85f:"4891","6debce21":"4919",d2ad385b:"4930",a9b4f8aa:"4931",a71efd4a:"4954","2d2c4fcb":"4973","3542ed72":"5109","309383dc":"5138","41e3c105":"5179",b1ab2a41:"5195",a0511a5b:"5281","64ca91f1":"5284",fa10e583:"5290","7dbff1af":"5304","9447891f":"5339","5c480e8b":"5448","856a5d6e":"5457","40d13080":"5467",d175aa8b:"5474","18f3809a":"5475","20d49d07":"5513","02955c09":"5514","20e9af62":"5562","873ebc27":"5572",bd7ab245:"5628","885eb549":"5647","73af8c33":"5673","946d1cee":"5716","5ccf4833":"5718",aba21aa0:"5742","4e7126f8":"5772","364e949f":"5799","214b2cc2":"5824","38718c49":"5852",e1766139:"5865","3b577cbb":"5866","61cfab8e":"5883",f178e9b3:"5894","4d983c8e":"6003","445668ec":"6008","60c70af6":"6010",dfc50084:"6053","472dc73b":"6079","4d15791b":"6080",ab17fe15:"6147","9ab37888":"6201",b1220dbd:"6214",c96ce3ed:"6281","873508e7":"6332","7334cbc9":"6343","188ee668":"6350","96eb0e67":"6419","9fb9a766":"6445","340026fc":"6455","4c5e977b":"6473","320c2db0":"6511","6f13807a":"6559","02e43f39":"6649","5a6d6120":"6682","388c3769":"6688",ff349d2f:"6753","86bd0a2e":"6757","8b85e1d0":"6890",c817e236:"6920",d745f4e6:"6934",b36bb719:"6949","91282a5c":"7088",a7bd4aaa:"7098","688feaef":"7108","4ce9199e":"7118",d0c1f670:"7142",aecfdd3d:"7159","547df4a1":"7165",cacdc615:"7211",c39b795e:"7338","7a774ddf":"7339","738cd2f5":"7359","3ae94ad4":"7408","9f9a61a7":"7443",fdefa9a8:"7453","921b5fc1":"7462","744aaf8b":"7472","651ef245":"7507","3a82b27e":"7713","5362f2c1":"7847","0f44198a":"7894","85112c90":"8054","274fd934":"8064",cc44357e:"8085","019dbd1f":"8102","222029a9":"8184",ecd67556:"8188","75a9e1e0":"8196","216e3ed7":"8208","5e834a3c":"8245","153f2b62":"8298","73d1a090":"8304",c6a5eaec:"8356","261f8123":"8374",e6c6a4d2:"8504","44dfcf75":"8598","04ee7e22":"8601","8f774222":"8661","3705a9c0":"8679",f3d40299:"8874",ae68aa8b:"8927","172b3cfb":"8929","4f1ba371":"9004","850d3674":"9036",a94703ab:"9048",b1bc5ffe:"9099","169603ea":"9126",f450da80:"9195","5f3b2a41":"9263","991799c5":"9371",cd8dccb5:"9431","913561e8":"9453","54175a6c":"9455","57c9a2b8":"9476","4e038a6a":"9479","7823fa72":"9483","49311ca0":"9509",dedd5914:"9555","29b8e27a":"9619",eae80ce0:"9642","5e95c892":"9647","5ff9f4db":"9681",ee3b5967:"9705","01db5f27":"9716","52edee88":"9731","72d61395":"9752","537e1953":"9789","09f5326a":"9857",be76515e:"9888","43df3697":"9905","5217df3c":"9914"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,f)=>{var c=r.o(e,a)?e[a]:void 0;if(0!==c)if(c)f.push(c[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var d=new Promise((f,d)=>c=e[a]=[f,d]);f.push(c[2]=d);var b=r.p+r.u(a),t=new Error;r.l(b,f=>{if(r.o(e,a)&&(0!==(c=e[a])&&(e[a]=void 0),c)){var d=f&&("load"===f.type?"missing":f.type),b=f&&f.target&&f.target.src;t.message="Loading chunk "+a+" failed.\n("+d+": "+b+")",t.name="ChunkLoadError",t.type=d,t.request=b,c[1](t)}},"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,f)=>{var c,d,b=f[0],t=f[1],o=f[2],n=0;if(b.some(a=>0!==e[a])){for(c in t)r.o(t,c)&&(r.m[c]=t[c]);if(o)var i=o(r)}for(a&&a(f);n{"use strict";var e,a,f,c,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var f=t[e]={id:e,loaded:!1,exports:{}};return b[e].call(f.exports,f,f.exports,r),f.loaded=!0,f.exports}r.m=b,r.c=t,e=[],r.O=(a,f,c,d)=>{if(!f){var b=1/0;for(i=0;i=d)&&Object.keys(r.O).every(e=>r.O[e](f[o]))?f.splice(o--,1):(t=!1,d0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[f,c,d]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var d=Object.create(null);r.r(d);var b={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach(a=>b[a]=()=>e[a]);return b.default=()=>e,r.d(d,b),d},r.d=(e,a)=>{for(var f in a)r.o(a,f)&&!r.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((a,f)=>(r.f[f](e,a),a),[])),r.u=e=>"assets/js/"+({11:"d2df9b4e",31:"03e862ce",51:"b7251463",145:"0be1d5fe",187:"74e1dc40",191:"c643a6d5",202:"32c42bbe",230:"bc63ae25",265:"d3ca7a96",266:"eca2a4e0",299:"9b5a408c",321:"6e1a9721",338:"d9527026",368:"07c30ae4",417:"93e16042",444:"14f42f9e",730:"86b18dd0",762:"4af57a32",768:"6d684b63",787:"672a0eba",800:"a4c0ff01",837:"7bfb6f41",868:"dc7b1ef3",944:"d3600190",957:"c141421f",964:"05d835b4",982:"021496c4",1022:"8a61012d",1035:"24d32e91",1079:"f5818e36",1185:"c2de64b8",1227:"647965d5",1349:"beb998f3",1488:"ac3cc3f5",1500:"1e9025f7",1556:"264ffc80",1563:"3ef76b56",1567:"22dd74f7",1625:"92852ade",1690:"41a97a99",1765:"7b257a20",1845:"2ab0d4f5",1956:"fe6f9601",2073:"7b7db446",2097:"338a6f8e",2100:"9cc9f218",2138:"1a4e3797",2182:"051d841d",2192:"179311c0",2206:"64f4662c",2273:"e756fa26",2288:"faf7ef88",2341:"0123c128",2551:"394022bb",2624:"8ff68e6f",2657:"a3ab51d1",2777:"b3ba68b4",2818:"a9b73094",2841:"83998924",2935:"6923853f",3043:"89e8c924",3099:"8cea976c",3110:"6a2beaac",3225:"99a4401d",3266:"914b1bec",3327:"6aa941bb",3347:"b5257597",3391:"f66238ae",3576:"64045095",3694:"c2b1730c",3740:"f113d167",3795:"c85076de",3832:"c3d82421",3859:"7679ca6e",3917:"c8dad5f1",3964:"829ff4d2",3968:"0e5205b8",4046:"9ac856ad",4133:"5cf11f26",4237:"8abbbbe8",4242:"31ead0b1",4274:"b6bf934a",4526:"8311683c",4574:"bc0ebe55",4615:"6801371f",4645:"fef056e9",4778:"e189eece",4784:"438e4337",4806:"fba42286",4841:"8298c1cb",4867:"d73246f8",4891:"ca67d85f",4919:"6debce21",4930:"d2ad385b",4931:"a9b4f8aa",4954:"a71efd4a",4973:"2d2c4fcb",5107:"10156854",5109:"3542ed72",5138:"309383dc",5179:"41e3c105",5195:"b1ab2a41",5281:"a0511a5b",5284:"64ca91f1",5290:"fa10e583",5304:"7dbff1af",5339:"9447891f",5395:"98058046",5448:"5c480e8b",5457:"856a5d6e",5467:"40d13080",5474:"d175aa8b",5475:"18f3809a",5513:"20d49d07",5514:"02955c09",5562:"20e9af62",5572:"873ebc27",5628:"bd7ab245",5647:"885eb549",5673:"73af8c33",5716:"946d1cee",5718:"5ccf4833",5742:"aba21aa0",5772:"4e7126f8",5799:"364e949f",5824:"214b2cc2",5852:"38718c49",5865:"e1766139",5866:"3b577cbb",5883:"61cfab8e",5894:"f178e9b3",6003:"4d983c8e",6008:"445668ec",6010:"60c70af6",6053:"dfc50084",6079:"472dc73b",6080:"4d15791b",6147:"ab17fe15",6201:"9ab37888",6214:"b1220dbd",6281:"c96ce3ed",6332:"873508e7",6343:"7334cbc9",6350:"188ee668",6419:"96eb0e67",6445:"9fb9a766",6455:"340026fc",6473:"4c5e977b",6511:"320c2db0",6559:"6f13807a",6649:"02e43f39",6682:"5a6d6120",6688:"388c3769",6753:"ff349d2f",6757:"86bd0a2e",6890:"8b85e1d0",6920:"c817e236",6934:"d745f4e6",6949:"b36bb719",7088:"91282a5c",7098:"a7bd4aaa",7108:"688feaef",7118:"4ce9199e",7142:"d0c1f670",7159:"aecfdd3d",7165:"547df4a1",7211:"cacdc615",7338:"c39b795e",7339:"7a774ddf",7359:"738cd2f5",7408:"3ae94ad4",7443:"9f9a61a7",7453:"fdefa9a8",7462:"921b5fc1",7472:"744aaf8b",7507:"651ef245",7713:"3a82b27e",7847:"5362f2c1",7894:"0f44198a",8054:"85112c90",8064:"274fd934",8085:"cc44357e",8102:"019dbd1f",8184:"222029a9",8188:"ecd67556",8196:"75a9e1e0",8208:"216e3ed7",8245:"5e834a3c",8298:"153f2b62",8304:"73d1a090",8356:"c6a5eaec",8374:"261f8123",8401:"17896441",8504:"e6c6a4d2",8598:"44dfcf75",8601:"04ee7e22",8661:"8f774222",8679:"3705a9c0",8874:"f3d40299",8927:"ae68aa8b",8929:"172b3cfb",9004:"4f1ba371",9036:"850d3674",9048:"a94703ab",9099:"b1bc5ffe",9126:"169603ea",9141:"19136925",9195:"f450da80",9263:"5f3b2a41",9371:"991799c5",9431:"cd8dccb5",9453:"913561e8",9455:"54175a6c",9476:"57c9a2b8",9479:"4e038a6a",9483:"7823fa72",9509:"49311ca0",9555:"dedd5914",9619:"29b8e27a",9642:"eae80ce0",9647:"5e95c892",9681:"5ff9f4db",9705:"ee3b5967",9716:"01db5f27",9731:"52edee88",9751:"25255263",9752:"72d61395",9789:"537e1953",9857:"09f5326a",9888:"be76515e",9905:"43df3697",9914:"5217df3c"}[e]||e)+"."+{11:"ddffb539",31:"512a7dbc",51:"35fee080",145:"60138eeb",187:"ee1692f8",191:"aadedcf6",202:"bb132cdf",230:"cbd60976",265:"5f5b1a33",266:"39dc0c8d",299:"6d646080",321:"f74fbff6",338:"f395d766",368:"b2f23bda",416:"3c613765",417:"4baee8ce",444:"953dc0ad",730:"76480870",762:"1cd15877",768:"26f203bb",787:"0a3c8357",800:"d5e09d54",837:"1e9ccf60",868:"fac64452",900:"7cc4aadf",944:"f9d5ae7d",957:"da9e1d2b",964:"33abc783",982:"6f7d4e8f",1022:"5a4439b8",1035:"0c86126e",1079:"7e76070c",1185:"78cdce51",1227:"b329461b",1349:"50b59517",1488:"feb8009a",1500:"0c85b4f3",1556:"65dbb0ec",1563:"d7436e55",1567:"b92516de",1625:"14cdddbe",1690:"caae242c",1765:"9ac49c19",1845:"944b027f",1956:"2eaf3c8d",2073:"00253b7e",2097:"1e4acafb",2100:"cfbd806e",2138:"f62f93d0",2182:"63c915d7",2192:"2e07119f",2206:"d385d276",2237:"8bc4ac99",2273:"8b568bd6",2288:"d0231214",2341:"17746ba9",2551:"4934cf0e",2624:"d7e5d2bd",2657:"cc88b22c",2777:"b39ea441",2818:"a6236419",2841:"2287d98f",2935:"514693c2",3043:"fc9945dd",3099:"9065d02d",3110:"420f6787",3225:"1cba44f1",3266:"f34898e5",3327:"01d044b3",3347:"077bbafe",3391:"74c719b2",3477:"a7eba177",3576:"a10399fd",3694:"7f775c03",3740:"6119c76b",3795:"22b68947",3832:"674f22af",3859:"3d23bed5",3917:"c084ff6a",3964:"892c7686",3968:"caa31680",4046:"f443938e",4058:"7658d33f",4133:"4fe6237e",4237:"1af7698d",4242:"824d41c9",4274:"113ac0d7",4526:"454b9226",4574:"65b2a36a",4615:"989976c1",4645:"eb87dccb",4778:"503413a7",4784:"19c2475e",4806:"34d08da9",4841:"0dbf7e7c",4867:"bd452b6d",4891:"a6f5d292",4919:"dd87b73a",4930:"be53ab7e",4931:"71355ddc",4954:"2089d195",4973:"71d36cbe",5107:"52134134",5109:"5fd03d0f",5138:"2974a363",5179:"f4718ef9",5195:"823211d9",5281:"894274ed",5284:"2d12589d",5290:"0ceea7db",5304:"44e87bea",5339:"8bb81d35",5395:"14c93a0a",5448:"6f3b8f90",5457:"dec11f42",5467:"52554cb1",5474:"cef6a3d8",5475:"611089ed",5513:"602f4848",5514:"c69cb535",5562:"f6fb643e",5572:"2de0db39",5628:"a412885c",5647:"bc295999",5673:"8aa7ed13",5716:"8e8510e2",5718:"022d2886",5742:"60b1d5b2",5772:"dcc60132",5799:"dec5550f",5824:"1ade0363",5852:"d48451cd",5865:"eb2ec8a3",5866:"45393cb5",5883:"a6deffa9",5894:"774bfc60",6003:"9fe3dd51",6008:"88d09f01",6010:"04a7b1a9",6053:"6f93aa26",6079:"dbae8d0d",6080:"cb777fbd",6147:"b6cb9ae3",6201:"d255f7c7",6214:"46fa6a6f",6281:"bdef7e30",6332:"7d86a66f",6343:"1bee2f59",6350:"a7f0a219",6419:"74aab13e",6445:"c07ef100",6455:"0c1d7679",6473:"b5e32ff9",6511:"4d80f4af",6559:"3ecd1117",6649:"e1c11ed5",6682:"bdd6c26a",6688:"d995a879",6753:"8f96b000",6757:"6ddd1dbf",6890:"691b1b4e",6920:"27ba1972",6934:"d2ceb12e",6949:"546cd061",7088:"74c7b212",7098:"fc1f6434",7108:"23d3e7f3",7118:"e3580a56",7142:"9d2974d8",7159:"a419917e",7165:"54e9a894",7211:"01bac9d6",7338:"4964bc4e",7339:"ad3f44bc",7359:"cf66bc41",7397:"385da999",7408:"2a8975c8",7443:"1fa83f60",7453:"d5896fd8",7462:"1f2fa7be",7472:"cc943b29",7507:"61a0217a",7713:"9a259485",7847:"93678ac2",7894:"9c6943d4",8054:"73b4f2dd",8064:"5e674ccc",8085:"f1b714c7",8102:"7430d61a",8158:"20de8b80",8184:"2b8756bf",8188:"89270f8a",8196:"35fc12e6",8208:"58fc3dea",8245:"1faee88f",8298:"38915481",8304:"85acf80a",8356:"3a9577e7",8374:"24ac5a03",8401:"c1ed24c3",8504:"d88639fa",8598:"8db01706",8601:"a16ed106",8661:"fab77072",8679:"0435f16b",8874:"bda1d42c",8913:"47209f3b",8927:"42b0048b",8929:"b2960eff",9004:"e04ed25a",9036:"a1ce8500",9048:"bdc69ee3",9099:"447347d4",9126:"7b33fab3",9141:"e3c47d68",9195:"1692dfa7",9263:"5bd19599",9371:"57020972",9431:"52a520fc",9453:"236b431f",9455:"53fb31d3",9476:"b6b16752",9479:"42531913",9483:"7b8cea7a",9495:"49162ef8",9509:"455a3865",9555:"3e213e40",9619:"d8a80867",9642:"df9f2631",9647:"5cb928a1",9681:"d769829d",9705:"9211ef49",9716:"4537deb7",9731:"7627a688",9751:"57ea365f",9752:"54dc42e9",9789:"b26e7e84",9857:"2b246be5",9888:"92cb77be",9905:"07e10722",9914:"e775b627"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},d="langflow-docs:",r.l=(e,a,f,b)=>{if(c[e])c[e].push(a);else{var t,o;if(void 0!==f)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var d=c[e];if(delete c[e],t.parentNode&&t.parentNode.removeChild(t),d&&d.forEach(e=>e(f)),a)return a(f)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=u.bind(null,t.onerror),t.onload=u.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="/",r.gca=function(e){return e={10156854:"5107",17896441:"8401",19136925:"9141",25255263:"9751",64045095:"3576",83998924:"2841",98058046:"5395",d2df9b4e:"11","03e862ce":"31",b7251463:"51","0be1d5fe":"145","74e1dc40":"187",c643a6d5:"191","32c42bbe":"202",bc63ae25:"230",d3ca7a96:"265",eca2a4e0:"266","9b5a408c":"299","6e1a9721":"321",d9527026:"338","07c30ae4":"368","93e16042":"417","14f42f9e":"444","86b18dd0":"730","4af57a32":"762","6d684b63":"768","672a0eba":"787",a4c0ff01:"800","7bfb6f41":"837",dc7b1ef3:"868",d3600190:"944",c141421f:"957","05d835b4":"964","021496c4":"982","8a61012d":"1022","24d32e91":"1035",f5818e36:"1079",c2de64b8:"1185","647965d5":"1227",beb998f3:"1349",ac3cc3f5:"1488","1e9025f7":"1500","264ffc80":"1556","3ef76b56":"1563","22dd74f7":"1567","92852ade":"1625","41a97a99":"1690","7b257a20":"1765","2ab0d4f5":"1845",fe6f9601:"1956","7b7db446":"2073","338a6f8e":"2097","9cc9f218":"2100","1a4e3797":"2138","051d841d":"2182","179311c0":"2192","64f4662c":"2206",e756fa26:"2273",faf7ef88:"2288","0123c128":"2341","394022bb":"2551","8ff68e6f":"2624",a3ab51d1:"2657",b3ba68b4:"2777",a9b73094:"2818","6923853f":"2935","89e8c924":"3043","8cea976c":"3099","6a2beaac":"3110","99a4401d":"3225","914b1bec":"3266","6aa941bb":"3327",b5257597:"3347",f66238ae:"3391",c2b1730c:"3694",f113d167:"3740",c85076de:"3795",c3d82421:"3832","7679ca6e":"3859",c8dad5f1:"3917","829ff4d2":"3964","0e5205b8":"3968","9ac856ad":"4046","5cf11f26":"4133","8abbbbe8":"4237","31ead0b1":"4242",b6bf934a:"4274","8311683c":"4526",bc0ebe55:"4574","6801371f":"4615",fef056e9:"4645",e189eece:"4778","438e4337":"4784",fba42286:"4806","8298c1cb":"4841",d73246f8:"4867",ca67d85f:"4891","6debce21":"4919",d2ad385b:"4930",a9b4f8aa:"4931",a71efd4a:"4954","2d2c4fcb":"4973","3542ed72":"5109","309383dc":"5138","41e3c105":"5179",b1ab2a41:"5195",a0511a5b:"5281","64ca91f1":"5284",fa10e583:"5290","7dbff1af":"5304","9447891f":"5339","5c480e8b":"5448","856a5d6e":"5457","40d13080":"5467",d175aa8b:"5474","18f3809a":"5475","20d49d07":"5513","02955c09":"5514","20e9af62":"5562","873ebc27":"5572",bd7ab245:"5628","885eb549":"5647","73af8c33":"5673","946d1cee":"5716","5ccf4833":"5718",aba21aa0:"5742","4e7126f8":"5772","364e949f":"5799","214b2cc2":"5824","38718c49":"5852",e1766139:"5865","3b577cbb":"5866","61cfab8e":"5883",f178e9b3:"5894","4d983c8e":"6003","445668ec":"6008","60c70af6":"6010",dfc50084:"6053","472dc73b":"6079","4d15791b":"6080",ab17fe15:"6147","9ab37888":"6201",b1220dbd:"6214",c96ce3ed:"6281","873508e7":"6332","7334cbc9":"6343","188ee668":"6350","96eb0e67":"6419","9fb9a766":"6445","340026fc":"6455","4c5e977b":"6473","320c2db0":"6511","6f13807a":"6559","02e43f39":"6649","5a6d6120":"6682","388c3769":"6688",ff349d2f:"6753","86bd0a2e":"6757","8b85e1d0":"6890",c817e236:"6920",d745f4e6:"6934",b36bb719:"6949","91282a5c":"7088",a7bd4aaa:"7098","688feaef":"7108","4ce9199e":"7118",d0c1f670:"7142",aecfdd3d:"7159","547df4a1":"7165",cacdc615:"7211",c39b795e:"7338","7a774ddf":"7339","738cd2f5":"7359","3ae94ad4":"7408","9f9a61a7":"7443",fdefa9a8:"7453","921b5fc1":"7462","744aaf8b":"7472","651ef245":"7507","3a82b27e":"7713","5362f2c1":"7847","0f44198a":"7894","85112c90":"8054","274fd934":"8064",cc44357e:"8085","019dbd1f":"8102","222029a9":"8184",ecd67556:"8188","75a9e1e0":"8196","216e3ed7":"8208","5e834a3c":"8245","153f2b62":"8298","73d1a090":"8304",c6a5eaec:"8356","261f8123":"8374",e6c6a4d2:"8504","44dfcf75":"8598","04ee7e22":"8601","8f774222":"8661","3705a9c0":"8679",f3d40299:"8874",ae68aa8b:"8927","172b3cfb":"8929","4f1ba371":"9004","850d3674":"9036",a94703ab:"9048",b1bc5ffe:"9099","169603ea":"9126",f450da80:"9195","5f3b2a41":"9263","991799c5":"9371",cd8dccb5:"9431","913561e8":"9453","54175a6c":"9455","57c9a2b8":"9476","4e038a6a":"9479","7823fa72":"9483","49311ca0":"9509",dedd5914:"9555","29b8e27a":"9619",eae80ce0:"9642","5e95c892":"9647","5ff9f4db":"9681",ee3b5967:"9705","01db5f27":"9716","52edee88":"9731","72d61395":"9752","537e1953":"9789","09f5326a":"9857",be76515e:"9888","43df3697":"9905","5217df3c":"9914"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,f)=>{var c=r.o(e,a)?e[a]:void 0;if(0!==c)if(c)f.push(c[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var d=new Promise((f,d)=>c=e[a]=[f,d]);f.push(c[2]=d);var b=r.p+r.u(a),t=new Error;r.l(b,f=>{if(r.o(e,a)&&(0!==(c=e[a])&&(e[a]=void 0),c)){var d=f&&("load"===f.type?"missing":f.type),b=f&&f.target&&f.target.src;t.message="Loading chunk "+a+" failed.\n("+d+": "+b+")",t.name="ChunkLoadError",t.type=d,t.request=b,c[1](t)}},"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,f)=>{var c,d,b=f[0],t=f[1],o=f[2],n=0;if(b.some(a=>0!==e[a])){for(c in t)r.o(t,c)&&(r.m[c]=t[c]);if(o)var i=o(r)}for(a&&a(f);n - + diff --git a/blog-writer.html b/blog-writer.html index f2c617e818..9a8b74611a 100644 --- a/blog-writer.html +++ b/blog-writer.html @@ -21,7 +21,7 @@ - + diff --git a/chat-with-files.html b/chat-with-files.html index 75eeaa2f0c..bb8a0cfa0b 100644 --- a/chat-with-files.html +++ b/chat-with-files.html @@ -21,7 +21,7 @@ - + diff --git a/chat-with-rag.html b/chat-with-rag.html index c85e0e6514..9534b94a0b 100644 --- a/chat-with-rag.html +++ b/chat-with-rag.html @@ -21,7 +21,7 @@ - + diff --git a/components-agents.html b/components-agents.html index 66aa36d980..82c38a01c1 100644 --- a/components-agents.html +++ b/components-agents.html @@ -21,7 +21,7 @@ - + diff --git a/components-bundle-components.html b/components-bundle-components.html index 3b3d317a1b..a5aad93258 100644 --- a/components-bundle-components.html +++ b/components-bundle-components.html @@ -21,7 +21,7 @@ - + diff --git a/components-custom-components.html b/components-custom-components.html index b421981beb..66ff8cc82e 100644 --- a/components-custom-components.html +++ b/components-custom-components.html @@ -21,7 +21,7 @@ - + diff --git a/components-data.html b/components-data.html index c78f004392..8d5647e2f9 100644 --- a/components-data.html +++ b/components-data.html @@ -21,7 +21,7 @@ - + diff --git a/components-embedding-models.html b/components-embedding-models.html index 4f619170ae..fc8125557a 100644 --- a/components-embedding-models.html +++ b/components-embedding-models.html @@ -21,7 +21,7 @@ - + diff --git a/components-helpers.html b/components-helpers.html index 0837c8d5eb..e53e21e42d 100644 --- a/components-helpers.html +++ b/components-helpers.html @@ -21,7 +21,7 @@ - + diff --git a/components-io.html b/components-io.html index 9cb935105d..51dffd5eda 100644 --- a/components-io.html +++ b/components-io.html @@ -21,7 +21,7 @@ - + diff --git a/components-logic.html b/components-logic.html index 1ee26cbabf..15794c536a 100644 --- a/components-logic.html +++ b/components-logic.html @@ -21,7 +21,7 @@ - + diff --git a/components-memories.html b/components-memories.html index 63609ef80e..780ecea9ea 100644 --- a/components-memories.html +++ b/components-memories.html @@ -21,7 +21,7 @@ - + diff --git a/components-models.html b/components-models.html index 6cbefd79c1..7473767923 100644 --- a/components-models.html +++ b/components-models.html @@ -21,7 +21,7 @@ - + diff --git a/components-processing.html b/components-processing.html index c27198f547..b7bb98049d 100644 --- a/components-processing.html +++ b/components-processing.html @@ -21,7 +21,7 @@ - + diff --git a/components-prompts.html b/components-prompts.html index e9479cf37a..5e2efe04aa 100644 --- a/components-prompts.html +++ b/components-prompts.html @@ -21,7 +21,7 @@ - + diff --git a/components-tools.html b/components-tools.html index 579f4c35b5..b6b3b98f96 100644 --- a/components-tools.html +++ b/components-tools.html @@ -21,7 +21,7 @@ - + diff --git a/components-vector-stores.html b/components-vector-stores.html index d964f3048b..5607a64412 100644 --- a/components-vector-stores.html +++ b/components-vector-stores.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-components.html b/concepts-components.html index e67cfaa743..e48d7a4d15 100644 --- a/concepts-components.html +++ b/concepts-components.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-file-management.html b/concepts-file-management.html index 7938ac2bd3..c25ef4cf47 100644 --- a/concepts-file-management.html +++ b/concepts-file-management.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-flows.html b/concepts-flows.html index 6beb12e3f8..f470ba3fa2 100644 --- a/concepts-flows.html +++ b/concepts-flows.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-objects.html b/concepts-objects.html index f74ef1a5d9..acf00ca140 100644 --- a/concepts-objects.html +++ b/concepts-objects.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-overview.html b/concepts-overview.html index 0f2efcfe6f..17b06a903c 100644 --- a/concepts-overview.html +++ b/concepts-overview.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-playground.html b/concepts-playground.html index 2463e34e80..732a7cf17e 100644 --- a/concepts-playground.html +++ b/concepts-playground.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-publish.html b/concepts-publish.html index 1655ec0128..1371b77cfc 100644 --- a/concepts-publish.html +++ b/concepts-publish.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-voice-mode.html b/concepts-voice-mode.html index 1b06a2b7f3..86ff467b10 100644 --- a/concepts-voice-mode.html +++ b/concepts-voice-mode.html @@ -21,7 +21,7 @@ - + diff --git a/configuration-api-keys.html b/configuration-api-keys.html index c478053440..f0881ee03b 100644 --- a/configuration-api-keys.html +++ b/configuration-api-keys.html @@ -21,7 +21,7 @@ - + diff --git a/configuration-authentication.html b/configuration-authentication.html index 361f7fc7c6..3014870ded 100644 --- a/configuration-authentication.html +++ b/configuration-authentication.html @@ -21,7 +21,7 @@ - + diff --git a/configuration-cli.html b/configuration-cli.html index 1536b34ab3..9e9e6eee31 100644 --- a/configuration-cli.html +++ b/configuration-cli.html @@ -21,7 +21,7 @@ - + diff --git a/configuration-custom-database.html b/configuration-custom-database.html index d503a51d39..44ca30d9eb 100644 --- a/configuration-custom-database.html +++ b/configuration-custom-database.html @@ -21,7 +21,7 @@ - + diff --git a/configuration-global-variables.html b/configuration-global-variables.html index 15b836ff00..f5adcb64ce 100644 --- a/configuration-global-variables.html +++ b/configuration-global-variables.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-bundles.html b/contributing-bundles.html index ebf26ffe24..287059c594 100644 --- a/contributing-bundles.html +++ b/contributing-bundles.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-community.html b/contributing-community.html index 0378601bce..8129154409 100644 --- a/contributing-community.html +++ b/contributing-community.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-component-tests.html b/contributing-component-tests.html index e7be9d0a3f..8e513f43b3 100644 --- a/contributing-component-tests.html +++ b/contributing-component-tests.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-components.html b/contributing-components.html index 2518d0d6b4..4af1b9c9cc 100644 --- a/contributing-components.html +++ b/contributing-components.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-github-issues.html b/contributing-github-issues.html index 60b8ae6005..a33db3b615 100644 --- a/contributing-github-issues.html +++ b/contributing-github-issues.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-how-to-contribute.html b/contributing-how-to-contribute.html index b4049048cf..ea7d74df02 100644 --- a/contributing-how-to-contribute.html +++ b/contributing-how-to-contribute.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-telemetry.html b/contributing-telemetry.html index c877ea25ce..027ce45d4f 100644 --- a/contributing-telemetry.html +++ b/contributing-telemetry.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-templates.html b/contributing-templates.html index bc9119c62a..7488129d7f 100644 --- a/contributing-templates.html +++ b/contributing-templates.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-caddyfile.html b/deployment-caddyfile.html index 3c1de62a06..5484c72583 100644 --- a/deployment-caddyfile.html +++ b/deployment-caddyfile.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-docker.html b/deployment-docker.html index 20f15993c8..61cfdd2ed9 100644 --- a/deployment-docker.html +++ b/deployment-docker.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-gcp.html b/deployment-gcp.html index 62cc7b32ba..cc86bcbb6a 100644 --- a/deployment-gcp.html +++ b/deployment-gcp.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-hugging-face-spaces.html b/deployment-hugging-face-spaces.html index a51a9c0fcb..8d5b5d7e6c 100644 --- a/deployment-hugging-face-spaces.html +++ b/deployment-hugging-face-spaces.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-kubernetes-dev.html b/deployment-kubernetes-dev.html index db16a5ef48..f304b479d4 100644 --- a/deployment-kubernetes-dev.html +++ b/deployment-kubernetes-dev.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-kubernetes-prod.html b/deployment-kubernetes-prod.html index 4eda681621..b8b52d0249 100644 --- a/deployment-kubernetes-prod.html +++ b/deployment-kubernetes-prod.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-overview.html b/deployment-overview.html index 71ffbed2ff..c4f2226193 100644 --- a/deployment-overview.html +++ b/deployment-overview.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-prod-best-practices.html b/deployment-prod-best-practices.html index 694c06a6b7..8d09c84bb3 100644 --- a/deployment-prod-best-practices.html +++ b/deployment-prod-best-practices.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-public-server.html b/deployment-public-server.html index 55b4f63302..2de0109b2b 100644 --- a/deployment-public-server.html +++ b/deployment-public-server.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-railway.html b/deployment-railway.html index f271ab1191..09c5007536 100644 --- a/deployment-railway.html +++ b/deployment-railway.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-render.html b/deployment-render.html index 72b2e16ee0..5520c8ede5 100644 --- a/deployment-render.html +++ b/deployment-render.html @@ -21,7 +21,7 @@ - + diff --git a/develop-application.html b/develop-application.html index 773eb9afa7..afb5dcbb97 100644 --- a/develop-application.html +++ b/develop-application.html @@ -21,7 +21,7 @@ - + diff --git a/develop-overview.html b/develop-overview.html index 8c8721991c..c3432df726 100644 --- a/develop-overview.html +++ b/develop-overview.html @@ -21,7 +21,7 @@ - + diff --git a/document-qa.html b/document-qa.html index cb76a4fe9b..6b5febe270 100644 --- a/document-qa.html +++ b/document-qa.html @@ -21,7 +21,7 @@ - + diff --git a/embedded-chat-widget.html b/embedded-chat-widget.html index 8474460ee1..9cba328253 100644 --- a/embedded-chat-widget.html +++ b/embedded-chat-widget.html @@ -21,7 +21,7 @@ - + diff --git a/environment-variables.html b/environment-variables.html index d5b98b6caf..45a745e694 100644 --- a/environment-variables.html +++ b/environment-variables.html @@ -21,7 +21,7 @@ - + @@ -118,7 +118,48 @@ That means, if you happen to set the same environment variable in both your term
VariableFormatDefaultDescription
DO_NOT_TRACKBooleanfalseIf this option is enabled, Langflow does not track telemetry.
LANGFLOW_AUTO_LOGINBooleantrueEnable automatic login for Langflow. Set to false to disable automatic login and require the login form to log into the Langflow UI. Setting to false requires LANGFLOW_SUPERUSER and LANGFLOW_SUPERUSER_PASSWORD to be set. For more information, see Authentication.
LANGFLOW_AUTO_SAVINGBooleantrueEnable flow auto-saving.
See --auto-saving option.
LANGFLOW_AUTO_SAVING_INTERVALInteger1000Set the interval for flow auto-saving in milliseconds.
See --auto-saving-interval option.
LANGFLOW_BACKEND_ONLYBooleanfalseOnly run Langflow's backend server (no frontend).
See --backend-only option.
LANGFLOW_BUNDLE_URLSList[String][]A list of URLs from which to load component bundles and flows. Supports GitHub URLs. If LANGFLOW_AUTO_LOGIN is enabled, flows from these bundles are loaded into the database.
LANGFLOW_CACHE_TYPEStringasyncSet the cache type for Langflow. Possible values: async, redis, memory, disk.
If you set the type to redis, then you must also set the following environment variables: LANGFLOW_REDIS_HOST, LANGFLOW_REDIS_PORT, LANGFLOW_REDIS_DB, and LANGFLOW_REDIS_CACHE_EXPIRE.
LANGFLOW_COMPONENTS_PATHStringlangflow/componentsPath to the directory containing custom components.
See --components-path option.
LANGFLOW_CONFIG_DIRStringSee descriptionSet the Langflow configuration directory where files, logs, and the Langflow database are stored. Defaults: Linux/WSL: ~/.cache/langflow/
macOS: /Users/<username>/Library/Caches/langflow/
Windows: %LOCALAPPDATA%\langflow\langflow\Cache
LANGFLOW_DATABASE_URLStringNot setSet the database URL for Langflow. If not provided, Langflow uses a SQLite database.
LANGFLOW_DATABASE_CONNECTION_RETRYBooleanfalseIf True, Langflow tries to connect to the database again if it fails.
LANGFLOW_DB_POOL_SIZEInteger10DEPRECATED: Use LANGFLOW_DB_CONNECTION_SETTINGS instead. The number of connections to keep open in the connection pool.
LANGFLOW_DB_MAX_OVERFLOWInteger20DEPRECATED: Use LANGFLOW_DB_CONNECTION_SETTINGS instead. The number of connections to allow that can be opened beyond the pool size.
LANGFLOW_DB_CONNECT_TIMEOUTInteger20The number of seconds to wait before giving up on a lock to be released or establishing a connection to the database.
LANGFLOW_DB_CONNECTION_SETTINGSJSONNot setA JSON dictionary to centralize database connection parameters. Example: {"pool_size": 10, "max_overflow": 20}
LANGFLOW_DISABLE_TRACK_APIKEY_USAGEBooleanfalseIf set to true, disables tracking of API key usage (total_uses and last_used_at) to avoid database contention under high concurrency.
LANGFLOW_ENABLE_LOG_RETRIEVALBooleanfalseEnable log retrieval functionality.
LANGFLOW_FALLBACK_TO_ENV_VARBooleantrueIf enabled, global variables set in the Langflow UI fall back to an environment variable with the same name when Langflow fails to retrieve the variable value.
LANGFLOW_FRONTEND_PATHString./frontendPath to the frontend directory containing build files. This is for development purposes only.
See --frontend-path option.
LANGFLOW_HEALTH_CHECK_MAX_RETRIESInteger5Set the maximum number of retries for the health check.
See --health-check-max-retries option.
LANGFLOW_HOSTStringlocalhostThe host on which the Langflow server will run.
See --host option.
LANGFLOW_LANGCHAIN_CACHEStringInMemoryCacheType of cache to use. Possible values: InMemoryCache, SQLiteCache.
See --cache option.
LANGFLOW_LOG_LEVELStringINFOSet the logging level for Langflow. Possible values: DEBUG, INFO, WARNING, ERROR, CRITICAL.
LANGFLOW_LOG_FILEStringNot setPath to the log file. If this option is not set, logs are written to stdout.
LANGFLOW_LOG_RETRIEVER_BUFFER_SIZEInteger10000Set the buffer size for log retrieval. Only used if LANGFLOW_ENABLE_LOG_RETRIEVAL is enabled.
LANGFLOW_MAX_FILE_SIZE_UPLOADInteger100Set the maximum file size for the upload in megabytes.
See --max-file-size-upload option.
LANGFLOW_MAX_ITEMS_LENGTHInteger100Maximum number of items to store and display in the UI. Lists longer than this will be truncated when displayed in the UI. Does not affect data passed between components nor outputs.
LANGFLOW_MAX_TEXT_LENGTHInteger1000Maximum number of characters to store and display in the UI. Responses longer than this will be truncated when displayed in the UI. Does not truncate responses between components nor outputs.
LANGFLOW_MCP_SERVER_ENABLEDBooleantrueIf this option is set to False, Langflow does not enable the MCP server.
LANGFLOW_MCP_SERVER_ENABLE_PROGRESS_NOTIFICATIONSBooleanfalseIf this option is set to True, Langflow sends progress notifications in the MCP server.
LANGFLOW_NEW_USER_IS_ACTIVEBooleanfalseWhen enabled, new users are automatically activated and can log in without requiring explicit activation by the superuser.
LANGFLOW_OPEN_BROWSERBooleanfalseOpen the system web browser on startup.
See --open-browser option.
LANGFLOW_PORTInteger7860The port on which the Langflow server runs. The server automatically selects a free port if the specified port is in use.
See --port option.
LANGFLOW_PROMETHEUS_ENABLEDBooleanfalseExpose Prometheus metrics.
LANGFLOW_PROMETHEUS_PORTInteger9090Set the port on which Langflow exposes Prometheus metrics.
LANGFLOW_REDIS_CACHE_EXPIREInteger3600See LANGFLOW_CACHE_TYPE.
LANGFLOW_REDIS_DBInteger0See LANGFLOW_CACHE_TYPE.
LANGFLOW_REDIS_HOSTStringlocalhostSee LANGFLOW_CACHE_TYPE.
LANGFLOW_REDIS_PORTString6379See LANGFLOW_CACHE_TYPE.
LANGFLOW_REDIS_PASSWORDStringNot setPassword for Redis authentication when using Redis cache type.
LANGFLOW_REMOVE_API_KEYSBooleanfalseRemove API keys from the projects saved in the database.
See --remove-api-keys option.
LANGFLOW_SAVE_DB_IN_CONFIG_DIRBooleanfalseSave the Langflow database in LANGFLOW_CONFIG_DIR instead of in the Langflow package directory. Note, when this variable is set to default (false), the database isn't shared between different virtual environments and the database is deleted when you uninstall Langflow.
LANGFLOW_SECRET_KEYStringAuto-generatedKey used for encrypting sensitive data like API keys. If a key is not provided, a secure key is auto-generated. For production environments with multiple instances, you should explicitly set this to ensure consistent encryption across instances.
LANGFLOW_STOREBooleantrueEnable the Langflow Store.
See --store option.
LANGFLOW_STORE_ENVIRONMENT_VARIABLESBooleantrueStore environment variables as global variables in the database.
LANGFLOW_CREATE_STARTER_PROJECTSBooleantrueIf this option is enabled, Langflow creates starter projects during initialization. Set to false to skip all starter project creation and updates.
LANGFLOW_UPDATE_STARTER_PROJECTSBooleantrueIf this option is enabled, Langflow updates starter projects with the latest component versions when initializing.
LANGFLOW_SUPERUSERStringlangflowSet the name for the superuser. Required if LANGFLOW_AUTO_LOGIN is set to false.
See superuser --username option.
LANGFLOW_SUPERUSER_PASSWORDStringlangflowSet the password for the superuser. Required if LANGFLOW_AUTO_LOGIN is set to false.
See superuser --password option.
LANGFLOW_VARIABLES_TO_GET_FROM_ENVIRONMENTStringNot setComma-separated list of environment variables to get from the environment and store as global variables.
LANGFLOW_LOAD_FLOWS_PATHStringNot setPath to a directory containing flow JSON files to be loaded on startup. Note that this feature only works if LANGFLOW_AUTO_LOGIN is enabled.
LANGFLOW_WORKER_TIMEOUTInteger300Worker timeout in seconds.
See --worker-timeout option.
LANGFLOW_WORKERSInteger1Number of worker processes.
See --workers option.
LANGFLOW_SSL_CERT_FILEStringNot setPath to the SSL certificate file on the local system.
LANGFLOW_SSL_KEY_FILEStringNot setPath to the SSL key file on the local system.
SKIP_AUTH_AUTO_LOGINBooleanfalseIf set to true, disables automatic login and enforces authentication, regardless of the value of LANGFLOW_AUTO_LOGIN.

Configure .env, override.conf, and tasks.json files

The following examples show how to configure Langflow using environment variables in different scenarios.

-

The .env file is a text file that contains key-value pairs of environment variables.

Create or edit a file named .env in your project root directory and add your configuration:


_30
DO_NOT_TRACK=true
_30
LANGFLOW_AUTO_LOGIN=false
_30
LANGFLOW_AUTO_SAVING=true
_30
LANGFLOW_AUTO_SAVING_INTERVAL=1000
_30
LANGFLOW_BACKEND_ONLY=false
_30
LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]
_30
LANGFLOW_CACHE_TYPE=async
_30
LANGFLOW_COMPONENTS_PATH=/path/to/components/
_30
LANGFLOW_CONFIG_DIR=/path/to/config/
_30
LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow
_30
LANGFLOW_DEV=false
_30
LANGFLOW_FALLBACK_TO_ENV_VAR=false
_30
LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5
_30
LANGFLOW_HOST=localhost
_30
LANGFLOW_LANGCHAIN_CACHE=InMemoryCache
_30
LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000
_30
LANGFLOW_MAX_ITEMS_LENGTH=100
_30
LANGFLOW_MAX_TEXT_LENGTH=1000
_30
LANGFLOW_LOG_LEVEL=error
_30
LANGFLOW_OPEN_BROWSER=false
_30
LANGFLOW_PORT=7860
_30
LANGFLOW_REMOVE_API_KEYS=false
_30
LANGFLOW_SAVE_DB_IN_CONFIG_DIR=true
_30
LANGFLOW_SECRET_KEY=somesecretkey
_30
LANGFLOW_STORE=true
_30
LANGFLOW_STORE_ENVIRONMENT_VARIABLES=true
_30
LANGFLOW_SUPERUSER=adminuser
_30
LANGFLOW_SUPERUSER_PASSWORD=adminpass
_30
LANGFLOW_WORKER_TIMEOUT=60000
_30
LANGFLOW_WORKERS=3