diff --git a/404.html b/404.html index 3e70d874d2..79685585c7 100644 --- a/404.html +++ b/404.html @@ -21,7 +21,7 @@ - +
diff --git a/agents-overview.html b/agents-overview.html index 71dea714fe..34408b3950 100644 --- a/agents-overview.html +++ b/agents-overview.html @@ -21,7 +21,7 @@ - + diff --git a/agents-tool-calling-agent-component.html b/agents-tool-calling-agent-component.html index e86c0cad0b..d34bd95b9f 100644 --- a/agents-tool-calling-agent-component.html +++ b/agents-tool-calling-agent-component.html @@ -21,7 +21,7 @@ - + diff --git a/api-reference-api-examples.html b/api-reference-api-examples.html index 3431d69f6d..d5585553f6 100644 --- a/api-reference-api-examples.html +++ b/api-reference-api-examples.html @@ -21,7 +21,7 @@ - + diff --git a/api.html b/api.html index 85b869b450..58f5f7711a 100644 --- a/api.html +++ b/api.html @@ -21,7 +21,7 @@ - + diff --git a/api/add-user.html b/api/add-user.html index 85673ec9e8..d94500fbee 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 7252fe5d2c..71f14a82d7 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 f6d58eb47e..bce562b390 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 11dfb13c63..9f49b90045 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 36ea9da635..53148cf3de 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 65536b7ebb..312ffcdbe2 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 a061a908d5..6192715ffe 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 52a8054047..78e39b3032 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 5db01d3ab9..854ea20d23 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 2e2bd97b88..693928bb4a 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 8914513c55..788d316c79 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 0f6c570496..e5ce2f74d4 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 d969ed8280..531231c8f4 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 3a6a08246b..7e80b7595b 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 18437995ee..1f9a409f56 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 3504848215..e2a79f4f64 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 8bb81e64c0..5ed4ada617 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 678622c0b1..8cdfa76050 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 b31cbed421..0bd3bae2c6 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 9e2906d679..78b5ab374e 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 3f52e11117..481d10b48a 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 05919a3946..1817175210 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 b7147f4864..1b8698449f 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 e7bed0a51a..c80cfc70f6 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 bae8cb29f1..76039c9b56 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 31f547a6b1..666b379127 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 8a29b393a9..865f35b5d9 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 1ff704b781..0ff44cb13d 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 c0be0c2ace..16f277f988 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 1db40f21ba..fa76b63259 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 f4bf52b4a5..429bdad373 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 6b7dee89da..e049dfa366 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 cb517234fe..ca6c59351a 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 70225fb5b6..785e869f5e 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 fbe9ecc428..5909ac937c 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 8e057de368..b5d402e936 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 4283d75b4b..92206b854b 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 7740735d74..ee6953fd15 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 3659c18c22..ae506ee1ef 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 fd2d575674..ce3bc0dbf3 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 5d8b55eb01..ae0eb6d301 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 b1926a3750..d9d685f587 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 9e3937720a..8e24d606ff 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 45c68077f3..2671d54442 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 a262881619..c8ed933f5d 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 218f52e483..407e540ab2 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 8447975e34..9240de7322 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 a5e4f5d1e1..b39d24e86b 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 7768146b0d..afa12c121a 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 3e9a7d6fc6..69e5e77dce 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 c5ac32b910..b045bf10d0 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 68f65b1a23..765953fad5 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 c22fa430fc..bf59be3263 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 5451e32da2..e207bec238 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 1067ef6787..bb9782fd4e 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 be8c6136ea..eccad06d4c 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 7e5faf5498..47b911768c 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 1cae0e3c0c..e9d614705a 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 704cd5cfb9..4a7f28a1fe 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 d2e0814523..93896160e5 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 886f3a6e96..594fba9efb 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 5a8d506d70..821273ffec 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 1627cb6910..9733cf96c7 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 aad2349d35..1dc6e33032 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 9f99106094..e6a42d3c47 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 ecabad5921..40d8335a82 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 76365ff592..1f3cb5a2f3 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 d6d2a967ec..81bb263543 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 5d73d9cbaf..d44a183643 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 2c187ee867..d64863d367 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 ef65dfa56a..bd92eba2f7 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 c785218876..443507d8e0 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 4c4c38f2a7..511bb5e336 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 1845c94035..600e5f3b70 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 66d6bdf8c2..c7b92b809f 100644 --- a/api/logout.html +++ b/api/logout.html @@ -21,7 +21,7 @@ - + diff --git a/api/logs.html b/api/logs.html index 0438045f80..9d10794ed7 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 0c11d3cbbf..c78cc3cce6 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 1ed26c03a8..80509776e2 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 51bae2c4cd..ffe469fa58 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 fce15617f2..f18cfc3be6 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 8f8c7f2eba..e9d68205b3 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 cb399241c9..e7d0510c8e 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 c55efd3083..aad172000e 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 ae803fb16e..e01317ea42 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 0922c19549..8ea0ec6dd6 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 c1f2b59b51..4b2bad3d92 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 0a94e5c5a2..dcd8335658 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 9150eef50b..660e23f3d3 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 477894b6ae..6dd0aeaba2 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 d049aac1ed..9b43c682d6 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 3cd8bb4508..84951c1080 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 5c15c11668..e8265346f7 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 fa6a6147f7..d53fc92672 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 d8de08ab3b..863fc4e3d2 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 dad7adb445..5508453d57 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 deba513b1e..a5f2a6ec8f 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 b161798886..402f9f68b6 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 8ca3b2283c..aa299dde29 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 1fc3e64b80..de1a3231e4 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 a742de7a46..446d671df6 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 2428bb423b..d8f8eac74a 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 dd1794f54f..88b7c44f5f 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 436cd28fc4..95d9714aa4 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 1b320182a4..ce8f9750eb 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 a5ef1df36d..64f8fb6fa6 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 5ee096946f..44204df781 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 faff65429e..3bf318ac8e 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 1b572dfdc2..4f8d18020e 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 5438e1a8e7..26594109d2 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 44b80e90d1..cee53caf6b 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 1902e8536b..39a23d5630 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 119aa41dde..786a752116 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 7b040fb447..a96f25509c 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 c2a5bf356a..7507d775d2 100644 --- a/api/webhook-run-flow.html +++ b/api/webhook-run-flow.html @@ -21,7 +21,7 @@ - + diff --git a/assets/js/2ab0d4f5.1c222a59.js b/assets/js/2ab0d4f5.1c222a59.js new file mode 100644 index 0000000000..83febf7f0e --- /dev/null +++ b/assets/js/2ab0d4f5.1c222a59.js @@ -0,0 +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.2"},"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":"_pre_run_setup()",id:"_pre_run_setup",level:4},{value:"Override run or _run",id:"override-run-or-_run",level:4},{value:"Store data in self.ctx",id:"store-data-in-selfctx",level:4},{value:"Directory structure requirements",id:"directory-structure-requirements",level:2},{value:"Custom component inputs and outputs",id:"custom-component-inputs-and-outputs",level:2},{value:"Inputs",id:"inputs",level:3},{value:"Outputs",id:"outputs",level:3},{value:"Tool mode",id:"tool-mode",level:3},{value:"Typed annotations",id:"typed-annotations",level:2},{value:"Common Return Types",id:"common-return-types",level:3},{value:"Tips for typed annotations",id:"tips-for-typed-annotations",level:3},{value:"Enable dynamic fields",id:"enable-dynamic-fields",level:2},{value:"Implement update_build_config",id:"implement-update_build_config",level:3},{value:"Additional Dynamic Field Controls",id:"additional-dynamic-field-controls",level:3},{value:"Tips for Managing Dynamic Fields",id:"tips-for-managing-dynamic-fields",level:3},{value:"Error handling and logging",id:"error-handling-and-logging",level:2},{value:"Error handling techniques",id:"error-handling-techniques",level:3},{value:"Improve debugging and flow management",id:"improve-debugging-and-flow-management",level:3},{value:"Tips for error handling and logging",id:"tips-for-error-handling-and-logging",level:3},{value:"Contribute custom components to Langflow",id:"contribute-custom-components-to-langflow",level:2}];function y(o){const e={a:"a",code:"code",em:"em",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...o.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.jsxs)(e.p,{children:["Custom components extend Langflow's functionality through Python classes that inherit from ",(0,s.jsx)(e.code,{children:"Component"}),". This enables integration of new features, data manipulation, external services, and specialized tools."]}),"\n",(0,s.jsx)(e.p,{children:'In Langflow\'s node-based environment, each node is a "component" that performs discrete functions. Custom components are Python classes which define:'}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Inputs"})," \u2014 Data or parameters your component requires."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Outputs"})," \u2014 Data your component provides to downstream nodes."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Logic"})," \u2014 How you process inputs to produce outputs."]}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"The benefits of creating custom components include unlimited extensibility, reusability, automatic UI field generation based on inputs, and type-safe connections between nodes."}),"\n",(0,s.jsx)(e.p,{children:"Create custom components for performing specialized tasks, calling APIs, or adding advanced logic."}),"\n",(0,s.jsx)(e.p,{children:"Custom components in Langflow are built upon:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:["The Python class that inherits from ",(0,s.jsx)(e.code,{children:"Component"}),"."]}),"\n",(0,s.jsx)(e.li,{children:"Class-level attributes that identify and describe the component."}),"\n",(0,s.jsx)(e.li,{children:"Input and output lists that determine data flow."}),"\n",(0,s.jsx)(e.li,{children:"Internal variables for logging and advanced logic."}),"\n"]}),"\n",(0,s.jsx)(e.h2,{id:"class-level-attributes",children:"Class-level attributes"}),"\n",(0,s.jsx)(e.p,{children:"Define these attributes to control a custom component's appearance and behavior:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:a,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"class ",props:{style:{color:"#FF7B72"}}},{content:"MyCsvReader",props:{style:{color:"#FFA657"}}},{content:"(",props:{style:{color:"#C9D1D9"}}},{content:"Component",props:{style:{color:"#79C0FF"}}},{content:"):",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" display_name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"CSV Reader" ',props:{style:{color:"#A5D6FF"}}},{content:"# Shown in node header",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" description ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"Reads CSV files" ',props:{style:{color:"#A5D6FF"}}},{content:"# Tooltip text",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" icon ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"file-text" ',props:{style:{color:"#A5D6FF"}}},{content:"# Visual identifier",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"CSVReader" ',props:{style:{color:"#A5D6FF"}}},{content:"# Unique internal ID",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" documentation ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"http://docs.example.com/csv_reader" ',props:{style:{color:"#A5D6FF"}}},{content:"# Optional",props:{style:{color:"#8B949E"}}}]}],lang:"python"},annotations:[]}]}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"display_name"}),": A user-friendly label in the node header."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"description"}),": A brief summary shown in tooltips."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"icon"}),": A visual identifier from Langflow's icon library."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"name"}),": A unique internal identifier."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"documentation"}),": An optional link to external docs."]}),"\n"]}),"\n",(0,s.jsx)(e.h3,{id:"structure-of-a-custom-component",children:"Structure of a custom component"}),"\n",(0,s.jsxs)(e.p,{children:["A ",(0,s.jsx)(e.strong,{children:"Langflow custom component"})," goes beyond a simple class with inputs and outputs. It includes an internal structure with optional lifecycle steps, output generation, front-end interaction, and logic organization."]}),"\n",(0,s.jsx)(e.p,{children:"A basic component:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:["Inherits from ",(0,s.jsx)(e.code,{children:"langflow.custom.Component"}),"."]}),"\n",(0,s.jsxs)(e.li,{children:["Declares metadata like ",(0,s.jsx)(e.code,{children:"display_name"}),", ",(0,s.jsx)(e.code,{children:"description"}),", ",(0,s.jsx)(e.code,{children:"icon"}),", and more."]}),"\n",(0,s.jsxs)(e.li,{children:["Defines ",(0,s.jsx)(e.code,{children:"inputs"})," and ",(0,s.jsx)(e.code,{children:"outputs"})," lists."]}),"\n",(0,s.jsx)(e.li,{children:"Implements methods matching output specifications."}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"A minimal custom component skeleton contains the following:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:a,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"from",props:{style:{color:"#FF7B72"}}},{content:" langflow.custom ",props:{style:{color:"#C9D1D9"}}},{content:"import",props:{style:{color:"#FF7B72"}}},{content:" Component",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"from",props:{style:{color:"#FF7B72"}}},{content:" langflow.template ",props:{style:{color:"#C9D1D9"}}},{content:"import",props:{style:{color:"#FF7B72"}}},{content:" Output",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"class ",props:{style:{color:"#FF7B72"}}},{content:"MyComponent",props:{style:{color:"#FFA657"}}},{content:"(",props:{style:{color:"#C9D1D9"}}},{content:"Component",props:{style:{color:"#79C0FF"}}},{content:"):",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" display_name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"My Component"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" description ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"A short summary."',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" icon ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"sparkles"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"MyComponent"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" inputs ",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:" []",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" outputs ",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:" []",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" def ",props:{style:{color:"#FF7B72"}}},{content:"some_output_method",props:{style:{color:"#D2A8FF"}}},{content:"(self):",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" return ",props:{style:{color:"#FF7B72"}}},{content:"...",props:{style:{color:"#79C0FF"}}}]}],lang:"python"},annotations:[]}]}),"\n",(0,s.jsx)(e.h3,{id:"internal-lifecycle-and-execution-flow",children:"Internal Lifecycle and Execution Flow"}),"\n",(0,s.jsx)(e.p,{children:"Langflow's engine manages:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Instantiation"}),": A component is created and internal structures are initialized."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Assigning Inputs"}),": Values from the UI or connections are assigned to component fields."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Validation and Setup"}),": Optional hooks like ",(0,s.jsx)(e.code,{children:"_pre_run_setup"}),"."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Outputs Generation"}),": ",(0,s.jsx)(e.code,{children:"run()"})," or ",(0,s.jsx)(e.code,{children:"build_results()"})," triggers output methods."]}),"\n"]}),"\n",(0,s.jsxs)(e.p,{children:[(0,s.jsx)(e.strong,{children:"Optional Hooks"}),":"]}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"initialize_data"})," or ",(0,s.jsx)(e.code,{children:"_pre_run_setup"})," can run setup logic before the component's main execution."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"__call__"}),", ",(0,s.jsx)(e.code,{children:"run()"}),", or ",(0,s.jsx)(e.code,{children:"_run()"})," can be overridden to customize how the component is called or to define custom execution logic."]}),"\n"]}),"\n",(0,s.jsx)(e.h3,{id:"inputs-and-outputs",children:"Inputs and outputs"}),"\n",(0,s.jsx)(e.p,{children:"Custom component inputs are defined with properties like:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"name"}),", ",(0,s.jsx)(e.code,{children:"display_name"})]}),"\n",(0,s.jsxs)(e.li,{children:["Optional: ",(0,s.jsx)(e.code,{children:"info"}),", ",(0,s.jsx)(e.code,{children:"value"}),", ",(0,s.jsx)(e.code,{children:"advanced"}),", ",(0,s.jsx)(e.code,{children:"is_list"}),", ",(0,s.jsx)(e.code,{children:"tool_mode"}),", ",(0,s.jsx)(e.code,{children:"real_time_refresh"})]}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"For example:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"StrInput"}),": simple text input."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"DropdownInput"}),": selectable options."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"HandleInput"}),": specialized connections."]}),"\n"]}),"\n",(0,s.jsxs)(e.p,{children:["Custom component ",(0,s.jsx)(e.code,{children:"Output"})," properties define:"]}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"name"}),", ",(0,s.jsx)(e.code,{children:"display_name"}),", ",(0,s.jsx)(e.code,{children:"method"})]}),"\n",(0,s.jsxs)(e.li,{children:["Optional: ",(0,s.jsx)(e.code,{children:"info"})]}),"\n"]}),"\n",(0,s.jsxs)(e.p,{children:["For more information, see ",(0,s.jsx)(e.a,{href:"/components-custom-components#custom-component-inputs-and-outputs",children:"Custom component inputs and outputs"}),"."]}),"\n",(0,s.jsx)(e.h3,{id:"associated-methods",children:"Associated Methods"}),"\n",(0,s.jsx)(e.p,{children:"Each output is linked to a method:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsx)(e.li,{children:"The output method name must match the method name."}),"\n",(0,s.jsx)(e.li,{children:"The method typically returns objects like Message, Data, or DataFrame."}),"\n",(0,s.jsxs)(e.li,{children:["The method can use inputs with ",(0,s.jsx)(e.code,{children:"self._pre_run_setup()",id:"_pre_run_setup",level:4},{value:"Override run or _run",id:"override-run-or-_run",level:4},{value:"Store data in self.ctx",id:"store-data-in-selfctx",level:4},{value:"Directory structure requirements",id:"directory-structure-requirements",level:2},{value:"Custom component inputs and outputs",id:"custom-component-inputs-and-outputs",level:2},{value:"Inputs",id:"inputs",level:3},{value:"Outputs",id:"outputs",level:3},{value:"Tool mode",id:"tool-mode",level:3},{value:"Typed annotations",id:"typed-annotations",level:2},{value:"Common Return Types",id:"common-return-types",level:3},{value:"Tips for typed annotations",id:"tips-for-typed-annotations",level:3},{value:"Enable dynamic fields",id:"enable-dynamic-fields",level:2},{value:"Implement update_build_config",id:"implement-update_build_config",level:3},{value:"Additional Dynamic Field Controls",id:"additional-dynamic-field-controls",level:3},{value:"Tips for Managing Dynamic Fields",id:"tips-for-managing-dynamic-fields",level:3},{value:"Error handling and logging",id:"error-handling-and-logging",level:2},{value:"Error handling techniques",id:"error-handling-techniques",level:3},{value:"Improve debugging and flow management",id:"improve-debugging-and-flow-management",level:3},{value:"Tips for error handling and logging",id:"tips-for-error-handling-and-logging",level:3},{value:"Contribute custom components to Langflow",id:"contribute-custom-components-to-langflow",level:2}];function y(o){const e={a:"a",admonition:"admonition",code:"code",em:"em",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...o.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.jsxs)(e.p,{children:["Custom components extend Langflow's functionality through Python classes that inherit from ",(0,s.jsx)(e.code,{children:"Component"}),". This enables integration of new features, data manipulation, external services, and specialized tools."]}),"\n",(0,s.jsx)(e.p,{children:'In Langflow\'s node-based environment, each node is a "component" that performs discrete functions. Custom components are Python classes which define:'}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Inputs"})," \u2014 Data or parameters your component requires."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Outputs"})," \u2014 Data your component provides to downstream nodes."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Logic"})," \u2014 How you process inputs to produce outputs."]}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"The benefits of creating custom components include unlimited extensibility, reusability, automatic UI field generation based on inputs, and type-safe connections between nodes."}),"\n",(0,s.jsx)(e.p,{children:"Create custom components for performing specialized tasks, calling APIs, or adding advanced logic."}),"\n",(0,s.jsx)(e.p,{children:"Custom components in Langflow are built upon:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:["The Python class that inherits from ",(0,s.jsx)(e.code,{children:"Component"}),"."]}),"\n",(0,s.jsx)(e.li,{children:"Class-level attributes that identify and describe the component."}),"\n",(0,s.jsx)(e.li,{children:"Input and output lists that determine data flow."}),"\n",(0,s.jsx)(e.li,{children:"Internal variables for logging and advanced logic."}),"\n"]}),"\n",(0,s.jsx)(e.h2,{id:"class-level-attributes",children:"Class-level attributes"}),"\n",(0,s.jsx)(e.p,{children:"Define these attributes to control a custom component's appearance and behavior:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:a,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"class ",props:{style:{color:"#FF7B72"}}},{content:"MyCsvReader",props:{style:{color:"#FFA657"}}},{content:"(",props:{style:{color:"#C9D1D9"}}},{content:"Component",props:{style:{color:"#79C0FF"}}},{content:"):",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" display_name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"CSV Reader" ',props:{style:{color:"#A5D6FF"}}},{content:"# Shown in node header",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" description ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"Reads CSV files" ',props:{style:{color:"#A5D6FF"}}},{content:"# Tooltip text",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" icon ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"file-text" ',props:{style:{color:"#A5D6FF"}}},{content:"# Visual identifier",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"CSVReader" ',props:{style:{color:"#A5D6FF"}}},{content:"# Unique internal ID",props:{style:{color:"#8B949E"}}}]},{tokens:[{content:" documentation ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"http://docs.example.com/csv_reader" ',props:{style:{color:"#A5D6FF"}}},{content:"# Optional",props:{style:{color:"#8B949E"}}}]}],lang:"python"},annotations:[]}]}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"display_name"}),": A user-friendly label in the node header."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"description"}),": A brief summary shown in tooltips."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"icon"}),": A visual identifier from Langflow's icon library."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"name"}),": A unique internal identifier."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"documentation"}),": An optional link to external docs."]}),"\n"]}),"\n",(0,s.jsx)(e.admonition,{title:"Icon usage",type:"tip",children:(0,s.jsxs)(e.p,{children:["Langflow uses ",(0,s.jsx)(e.a,{href:"https://lucide.dev/icons",children:"Lucide"})," for icons. To assign an icon to your component, set the icon attribute to the name of a Lucide icon as a string, such as ",(0,s.jsx)(e.code,{children:'icon = "file-text"'}),". Langflow renders icons from the Lucide library automatically."]})}),"\n",(0,s.jsx)(e.h3,{id:"structure-of-a-custom-component",children:"Structure of a custom component"}),"\n",(0,s.jsxs)(e.p,{children:["A ",(0,s.jsx)(e.strong,{children:"Langflow custom component"})," goes beyond a simple class with inputs and outputs. It includes an internal structure with optional lifecycle steps, output generation, front-end interaction, and logic organization."]}),"\n",(0,s.jsx)(e.p,{children:"A basic component:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:["Inherits from ",(0,s.jsx)(e.code,{children:"langflow.custom.Component"}),"."]}),"\n",(0,s.jsxs)(e.li,{children:["Declares metadata like ",(0,s.jsx)(e.code,{children:"display_name"}),", ",(0,s.jsx)(e.code,{children:"description"}),", ",(0,s.jsx)(e.code,{children:"icon"}),", and more."]}),"\n",(0,s.jsxs)(e.li,{children:["Defines ",(0,s.jsx)(e.code,{children:"inputs"})," and ",(0,s.jsx)(e.code,{children:"outputs"})," lists."]}),"\n",(0,s.jsx)(e.li,{children:"Implements methods matching output specifications."}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"A minimal custom component skeleton contains the following:"}),"\n",(0,s.jsx)(d.Code,{codeConfig:a,northPanel:{tabs:[""],active:"",heightRatio:1},files:[{name:"",focus:"",code:{lines:[{tokens:[{content:"from",props:{style:{color:"#FF7B72"}}},{content:" langflow.custom ",props:{style:{color:"#C9D1D9"}}},{content:"import",props:{style:{color:"#FF7B72"}}},{content:" Component",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"from",props:{style:{color:"#FF7B72"}}},{content:" langflow.template ",props:{style:{color:"#C9D1D9"}}},{content:"import",props:{style:{color:"#FF7B72"}}},{content:" Output",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"class ",props:{style:{color:"#FF7B72"}}},{content:"MyComponent",props:{style:{color:"#FFA657"}}},{content:"(",props:{style:{color:"#C9D1D9"}}},{content:"Component",props:{style:{color:"#79C0FF"}}},{content:"):",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" display_name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"My Component"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" description ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"A short summary."',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" icon ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"sparkles"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:" name ",props:{style:{color:"#C9D1D9"}}},{content:"= ",props:{style:{color:"#FF7B72"}}},{content:'"MyComponent"',props:{style:{color:"#A5D6FF"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" inputs ",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:" []",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" outputs ",props:{style:{color:"#C9D1D9"}}},{content:"=",props:{style:{color:"#FF7B72"}}},{content:" []",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:"",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" def ",props:{style:{color:"#FF7B72"}}},{content:"some_output_method",props:{style:{color:"#D2A8FF"}}},{content:"(self):",props:{style:{color:"#C9D1D9"}}}]},{tokens:[{content:" return ",props:{style:{color:"#FF7B72"}}},{content:"...",props:{style:{color:"#79C0FF"}}}]}],lang:"python"},annotations:[]}]}),"\n",(0,s.jsx)(e.h3,{id:"internal-lifecycle-and-execution-flow",children:"Internal Lifecycle and Execution Flow"}),"\n",(0,s.jsx)(e.p,{children:"Langflow's engine manages:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Instantiation"}),": A component is created and internal structures are initialized."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Assigning Inputs"}),": Values from the UI or connections are assigned to component fields."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Validation and Setup"}),": Optional hooks like ",(0,s.jsx)(e.code,{children:"_pre_run_setup"}),"."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.strong,{children:"Outputs Generation"}),": ",(0,s.jsx)(e.code,{children:"run()"})," or ",(0,s.jsx)(e.code,{children:"build_results()"})," triggers output methods."]}),"\n"]}),"\n",(0,s.jsxs)(e.p,{children:[(0,s.jsx)(e.strong,{children:"Optional Hooks"}),":"]}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"initialize_data"})," or ",(0,s.jsx)(e.code,{children:"_pre_run_setup"})," can run setup logic before the component's main execution."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"__call__"}),", ",(0,s.jsx)(e.code,{children:"run()"}),", or ",(0,s.jsx)(e.code,{children:"_run()"})," can be overridden to customize how the component is called or to define custom execution logic."]}),"\n"]}),"\n",(0,s.jsx)(e.h3,{id:"inputs-and-outputs",children:"Inputs and outputs"}),"\n",(0,s.jsx)(e.p,{children:"Custom component inputs are defined with properties like:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"name"}),", ",(0,s.jsx)(e.code,{children:"display_name"})]}),"\n",(0,s.jsxs)(e.li,{children:["Optional: ",(0,s.jsx)(e.code,{children:"info"}),", ",(0,s.jsx)(e.code,{children:"value"}),", ",(0,s.jsx)(e.code,{children:"advanced"}),", ",(0,s.jsx)(e.code,{children:"is_list"}),", ",(0,s.jsx)(e.code,{children:"tool_mode"}),", ",(0,s.jsx)(e.code,{children:"real_time_refresh"})]}),"\n"]}),"\n",(0,s.jsx)(e.p,{children:"For example:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"StrInput"}),": simple text input."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"DropdownInput"}),": selectable options."]}),"\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"HandleInput"}),": specialized connections."]}),"\n"]}),"\n",(0,s.jsxs)(e.p,{children:["Custom component ",(0,s.jsx)(e.code,{children:"Output"})," properties define:"]}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsxs)(e.li,{children:[(0,s.jsx)(e.code,{children:"name"}),", ",(0,s.jsx)(e.code,{children:"display_name"}),", ",(0,s.jsx)(e.code,{children:"method"})]}),"\n",(0,s.jsxs)(e.li,{children:["Optional: ",(0,s.jsx)(e.code,{children:"info"})]}),"\n"]}),"\n",(0,s.jsxs)(e.p,{children:["For more information, see ",(0,s.jsx)(e.a,{href:"/components-custom-components#custom-component-inputs-and-outputs",children:"Custom component inputs and outputs"}),"."]}),"\n",(0,s.jsx)(e.h3,{id:"associated-methods",children:"Associated Methods"}),"\n",(0,s.jsx)(e.p,{children:"Each output is linked to a method:"}),"\n",(0,s.jsxs)(e.ul,{children:["\n",(0,s.jsx)(e.li,{children:"The output method name must match the method name."}),"\n",(0,s.jsx)(e.li,{children:"The method typically returns objects like Message, Data, or DataFrame."}),"\n",(0,s.jsxs)(e.li,{children:["The method can use inputs with ",(0,s.jsx)(e.code,{children:"self.Langflow uses Lucide for icons. To assign an icon to your component, set the icon attribute to the name of a Lucide icon as a string, such as icon = "file-text". Langflow renders icons from the Lucide library automatically.
A Langflow custom component goes beyond a simple class with inputs and outputs. It includes an internal structure with optional lifecycle steps, output generation, front-end interaction, and logic organization.
A basic component:
diff --git a/components-data.html b/components-data.html index 212d672e67..5d67f1219f 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 88f0da36bc..345fe99c3c 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 05c9c3a41b..f74040f150 100644 --- a/components-helpers.html +++ b/components-helpers.html @@ -21,7 +21,7 @@ - + diff --git a/components-io.html b/components-io.html index 79b0b1e981..706f8c41b8 100644 --- a/components-io.html +++ b/components-io.html @@ -21,7 +21,7 @@ - + diff --git a/components-logic.html b/components-logic.html index e634644674..d034da40b5 100644 --- a/components-logic.html +++ b/components-logic.html @@ -21,7 +21,7 @@ - + diff --git a/components-memories.html b/components-memories.html index 669017ebb1..da2b1df418 100644 --- a/components-memories.html +++ b/components-memories.html @@ -21,7 +21,7 @@ - + diff --git a/components-models.html b/components-models.html index a294e080b0..e2bbf68def 100644 --- a/components-models.html +++ b/components-models.html @@ -21,7 +21,7 @@ - + diff --git a/components-processing.html b/components-processing.html index e7324a4853..b13209c5dc 100644 --- a/components-processing.html +++ b/components-processing.html @@ -21,7 +21,7 @@ - + diff --git a/components-prompts.html b/components-prompts.html index b89427bf75..49c506cc65 100644 --- a/components-prompts.html +++ b/components-prompts.html @@ -21,7 +21,7 @@ - + diff --git a/components-tools.html b/components-tools.html index c8265cba97..f2ccb34e94 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 e2b300b050..d59e9cec37 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 6dfd2d3f90..18cfeb02f5 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 a05770d63a..6b2e0829af 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 08c61cbcc8..e1dfd74067 100644 --- a/concepts-flows.html +++ b/concepts-flows.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-objects.html b/concepts-objects.html index e88a65391b..c65c711780 100644 --- a/concepts-objects.html +++ b/concepts-objects.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-overview.html b/concepts-overview.html index 1919a207ec..2d03bb0611 100644 --- a/concepts-overview.html +++ b/concepts-overview.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-playground.html b/concepts-playground.html index f35b598cc4..11d51d4dd1 100644 --- a/concepts-playground.html +++ b/concepts-playground.html @@ -21,7 +21,7 @@ - + diff --git a/concepts-publish.html b/concepts-publish.html index e9f6c99443..a9f70bc03b 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 b3dd709a6f..50edbeb54c 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 91c7a3d6aa..f8b84eb1e1 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 8898ef5be2..6676671797 100644 --- a/configuration-authentication.html +++ b/configuration-authentication.html @@ -21,7 +21,7 @@ - + diff --git a/configuration-cli.html b/configuration-cli.html index f46e53f334..a8368efdc2 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 fbc4433e69..ddb511173c 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 b2945c6ab8..358e1e45dd 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 0a4f50f111..7fb40c1c43 100644 --- a/contributing-bundles.html +++ b/contributing-bundles.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-community.html b/contributing-community.html index 7431a684d8..78a2668bdf 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 79d6b3dc2b..22a121d15f 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 7bde7fdf06..7e83b9459e 100644 --- a/contributing-components.html +++ b/contributing-components.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-github-discussions.html b/contributing-github-discussions.html index 8eb57c8b73..7d27b1d778 100644 --- a/contributing-github-discussions.html +++ b/contributing-github-discussions.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-github-issues.html b/contributing-github-issues.html index d5fcef50f7..e72fd88067 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 023d010830..9596f0bc7f 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 1357bace3f..93614062b8 100644 --- a/contributing-telemetry.html +++ b/contributing-telemetry.html @@ -21,7 +21,7 @@ - + diff --git a/contributing-templates.html b/contributing-templates.html index c9d0b9fbdd..4d848f7222 100644 --- a/contributing-templates.html +++ b/contributing-templates.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-caddyfile.html b/deployment-caddyfile.html index 2161b32cc2..3f47675e8d 100644 --- a/deployment-caddyfile.html +++ b/deployment-caddyfile.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-docker.html b/deployment-docker.html index 069cf40c18..bffe5d258a 100644 --- a/deployment-docker.html +++ b/deployment-docker.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-gcp.html b/deployment-gcp.html index 93704f030c..d0715f9d3f 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 dcd493a8e8..e8af318807 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 09d6a9eb8e..6a260b4816 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 06dd5f72bf..002c31f324 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 6c4deff064..f25c14415a 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 10a5c793be..352b52c8ad 100644 --- a/deployment-prod-best-practices.html +++ b/deployment-prod-best-practices.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-railway.html b/deployment-railway.html index 950314effa..669d8465cb 100644 --- a/deployment-railway.html +++ b/deployment-railway.html @@ -21,7 +21,7 @@ - + diff --git a/deployment-render.html b/deployment-render.html index 1123a80010..037a1b9335 100644 --- a/deployment-render.html +++ b/deployment-render.html @@ -21,7 +21,7 @@ - + diff --git a/develop-application.html b/develop-application.html index eb51d5b8be..51016a30d7 100644 --- a/develop-application.html +++ b/develop-application.html @@ -21,7 +21,7 @@ - + diff --git a/develop-overview.html b/develop-overview.html index dccd18d06d..b6ec2bc5c3 100644 --- a/develop-overview.html +++ b/develop-overview.html @@ -21,7 +21,7 @@ - + diff --git a/document-qa.html b/document-qa.html index cb202d5b04..0a9aef4159 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 3879f4af1b..538f5dd5bf 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 d369bb32ff..c666b0983d 100644 --- a/environment-variables.html +++ b/environment-variables.html @@ -21,7 +21,7 @@ - + diff --git a/financial-report-parser.html b/financial-report-parser.html index 68b35126a6..3e803c8487 100644 --- a/financial-report-parser.html +++ b/financial-report-parser.html @@ -21,7 +21,7 @@ - + diff --git a/get-started-installation.html b/get-started-installation.html index 43eabf8fd2..aac1b7a38d 100644 --- a/get-started-installation.html +++ b/get-started-installation.html @@ -21,7 +21,7 @@ - + diff --git a/get-started-quickstart.html b/get-started-quickstart.html index 9b946c21a3..c04b1b6c97 100644 --- a/get-started-quickstart.html +++ b/get-started-quickstart.html @@ -21,7 +21,7 @@ - + diff --git a/index.html b/index.html index 1e92b6c3fe..798762a476 100644 --- a/index.html +++ b/index.html @@ -21,7 +21,7 @@ - + diff --git a/install-custom-dependencies.html b/install-custom-dependencies.html index 3f1ec7a724..cf60f93073 100644 --- a/install-custom-dependencies.html +++ b/install-custom-dependencies.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-apify.html b/integrations-apify.html index 2b41feafd1..0557f68058 100644 --- a/integrations-apify.html +++ b/integrations-apify.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-arize.html b/integrations-arize.html index b2a2db338a..698bc5c09a 100644 --- a/integrations-arize.html +++ b/integrations-arize.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-assemblyai.html b/integrations-assemblyai.html index 97f0f375ac..56f34b713a 100644 --- a/integrations-assemblyai.html +++ b/integrations-assemblyai.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-cleanlab.html b/integrations-cleanlab.html index 3b2d49ccb8..47ef2c0189 100644 --- a/integrations-cleanlab.html +++ b/integrations-cleanlab.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-composio.html b/integrations-composio.html index a3ac6f3831..ceb4a32e50 100644 --- a/integrations-composio.html +++ b/integrations-composio.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-google-big-query.html b/integrations-google-big-query.html index a3d6bf9a69..e42304e6a4 100644 --- a/integrations-google-big-query.html +++ b/integrations-google-big-query.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-langfuse.html b/integrations-langfuse.html index 7b421f75fd..abe541c79e 100644 --- a/integrations-langfuse.html +++ b/integrations-langfuse.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-langsmith.html b/integrations-langsmith.html index c7de297706..b4d9dace37 100644 --- a/integrations-langsmith.html +++ b/integrations-langsmith.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-langwatch.html b/integrations-langwatch.html index a4cb8506fa..6e624aafde 100644 --- a/integrations-langwatch.html +++ b/integrations-langwatch.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-nvidia-g-assist.html b/integrations-nvidia-g-assist.html index aca9df19f8..10ab14997d 100644 --- a/integrations-nvidia-g-assist.html +++ b/integrations-nvidia-g-assist.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-nvidia-ingest-wsl2.html b/integrations-nvidia-ingest-wsl2.html index 4d5f9b16ad..c3926e1979 100644 --- a/integrations-nvidia-ingest-wsl2.html +++ b/integrations-nvidia-ingest-wsl2.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-nvidia-ingest.html b/integrations-nvidia-ingest.html index d9f8312346..f44d36d04b 100644 --- a/integrations-nvidia-ingest.html +++ b/integrations-nvidia-ingest.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-opik.html b/integrations-opik.html index a2345cd7a8..b289baf944 100644 --- a/integrations-opik.html +++ b/integrations-opik.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-setup-google-cloud-vertex-ai-langflow.html b/integrations-setup-google-cloud-vertex-ai-langflow.html index 896414ea40..eb4d4d5767 100644 --- a/integrations-setup-google-cloud-vertex-ai-langflow.html +++ b/integrations-setup-google-cloud-vertex-ai-langflow.html @@ -21,7 +21,7 @@ - + diff --git a/integrations-setup-google-oauth-langflow.html b/integrations-setup-google-oauth-langflow.html index 32f3710c97..0d95a43cf5 100644 --- a/integrations-setup-google-oauth-langflow.html +++ b/integrations-setup-google-oauth-langflow.html @@ -21,7 +21,7 @@ - + diff --git a/integrations/notion/notion-agent-conversational.html b/integrations/notion/notion-agent-conversational.html index 3f3aee307c..1b2ca9a5dc 100644 --- a/integrations/notion/notion-agent-conversational.html +++ b/integrations/notion/notion-agent-conversational.html @@ -21,7 +21,7 @@ - + diff --git a/integrations/notion/notion-agent-meeting-notes.html b/integrations/notion/notion-agent-meeting-notes.html index 2fec4e11bb..832b2de12d 100644 --- a/integrations/notion/notion-agent-meeting-notes.html +++ b/integrations/notion/notion-agent-meeting-notes.html @@ -21,7 +21,7 @@ - + diff --git a/integrations/notion/setup.html b/integrations/notion/setup.html index be65b4d08b..555adadb15 100644 --- a/integrations/notion/setup.html +++ b/integrations/notion/setup.html @@ -21,7 +21,7 @@ - + diff --git a/logging.html b/logging.html index bddf2ead38..81610aaf20 100644 --- a/logging.html +++ b/logging.html @@ -21,7 +21,7 @@ - + diff --git a/luna-for-langflow.html b/luna-for-langflow.html index 2e492b2668..2677304667 100644 --- a/luna-for-langflow.html +++ b/luna-for-langflow.html @@ -21,7 +21,7 @@ - + diff --git a/mcp-client.html b/mcp-client.html index ba5b58944e..5a99609eb5 100644 --- a/mcp-client.html +++ b/mcp-client.html @@ -21,7 +21,7 @@ - + diff --git a/mcp-component-astra.html b/mcp-component-astra.html index 7826690e75..90dc205ea4 100644 --- a/mcp-component-astra.html +++ b/mcp-component-astra.html @@ -21,7 +21,7 @@ - + diff --git a/mcp-server.html b/mcp-server.html index 5a35e98b60..91723f6aeb 100644 --- a/mcp-server.html +++ b/mcp-server.html @@ -21,7 +21,7 @@ - + diff --git a/memory-chatbot.html b/memory-chatbot.html index bf156b7bc4..dc25cf92ff 100644 --- a/memory-chatbot.html +++ b/memory-chatbot.html @@ -21,7 +21,7 @@ - + diff --git a/memory.html b/memory.html index 40caa99d78..f6e59956d8 100644 --- a/memory.html +++ b/memory.html @@ -21,7 +21,7 @@ - + diff --git a/search.html b/search.html index b4b66b4c01..297ebd93dd 100644 --- a/search.html +++ b/search.html @@ -21,7 +21,7 @@ - + diff --git a/sequential-agent.html b/sequential-agent.html index 46309b7aa1..ebad3391ff 100644 --- a/sequential-agent.html +++ b/sequential-agent.html @@ -21,7 +21,7 @@ - + diff --git a/session-id.html b/session-id.html index 723bb6463c..d3813d6a4c 100644 --- a/session-id.html +++ b/session-id.html @@ -21,7 +21,7 @@ - + diff --git a/sitemap.xml b/sitemap.xml index c98a68ec89..d4f5a888f9 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -