langflow-base-nightly 0.5.0.dev37__py3-none-any.whl → 0.5.0.dev39__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. langflow/__main__.py +1 -1
  2. langflow/alembic/versions/0882f9657f22_encrypt_existing_mcp_auth_settings_.py +122 -0
  3. langflow/alembic/versions/4e5980a44eaa_fix_date_times_again.py +24 -30
  4. langflow/alembic/versions/58b28437a398_modify_nullable.py +6 -6
  5. langflow/alembic/versions/79e675cb6752_change_datetime_type.py +24 -30
  6. langflow/alembic/versions/b2fa308044b5_add_unique_constraints.py +12 -13
  7. langflow/api/build.py +21 -26
  8. langflow/api/health_check_router.py +3 -3
  9. langflow/api/utils.py +3 -3
  10. langflow/api/v1/callback.py +2 -2
  11. langflow/api/v1/chat.py +19 -31
  12. langflow/api/v1/endpoints.py +10 -10
  13. langflow/api/v1/flows.py +1 -1
  14. langflow/api/v1/knowledge_bases.py +3 -3
  15. langflow/api/v1/mcp.py +12 -12
  16. langflow/api/v1/mcp_projects.py +405 -120
  17. langflow/api/v1/mcp_utils.py +8 -8
  18. langflow/api/v1/schemas.py +2 -7
  19. langflow/api/v1/store.py +1 -1
  20. langflow/api/v1/validate.py +2 -2
  21. langflow/api/v1/voice_mode.py +58 -62
  22. langflow/api/v2/files.py +2 -2
  23. langflow/api/v2/mcp.py +10 -9
  24. langflow/base/composio/composio_base.py +21 -2
  25. langflow/base/data/docling_utils.py +194 -0
  26. langflow/base/embeddings/aiml_embeddings.py +1 -1
  27. langflow/base/flow_processing/utils.py +1 -2
  28. langflow/base/io/__init__.py +0 -1
  29. langflow/base/langwatch/utils.py +2 -1
  30. langflow/base/mcp/util.py +49 -47
  31. langflow/base/prompts/api_utils.py +1 -1
  32. langflow/base/tools/flow_tool.py +2 -2
  33. langflow/base/tools/run_flow.py +2 -6
  34. langflow/components/FAISS/__init__.py +34 -0
  35. langflow/components/Notion/add_content_to_page.py +2 -2
  36. langflow/components/Notion/list_database_properties.py +2 -2
  37. langflow/components/Notion/list_pages.py +2 -2
  38. langflow/components/Notion/page_content_viewer.py +2 -2
  39. langflow/components/Notion/update_page_property.py +1 -1
  40. langflow/components/agentql/agentql_api.py +2 -10
  41. langflow/components/agents/agent.py +249 -55
  42. langflow/components/agents/mcp_component.py +14 -14
  43. langflow/components/anthropic/anthropic.py +5 -4
  44. langflow/components/assemblyai/assemblyai_get_subtitles.py +2 -2
  45. langflow/components/assemblyai/assemblyai_lemur.py +2 -2
  46. langflow/components/assemblyai/assemblyai_list_transcripts.py +2 -2
  47. langflow/components/assemblyai/assemblyai_poll_transcript.py +2 -2
  48. langflow/components/assemblyai/assemblyai_start_transcript.py +2 -2
  49. langflow/components/cassandra/__init__.py +40 -0
  50. langflow/components/chroma/__init__.py +34 -0
  51. langflow/components/clickhouse/__init__.py +34 -0
  52. langflow/components/couchbase/__init__.py +34 -0
  53. langflow/components/data/file.py +575 -55
  54. langflow/components/data/url.py +1 -1
  55. langflow/components/datastax/__init__.py +3 -3
  56. langflow/components/datastax/astra_assistant_manager.py +3 -3
  57. langflow/components/datastax/create_assistant.py +1 -2
  58. langflow/components/deactivated/merge_data.py +1 -2
  59. langflow/components/deactivated/sub_flow.py +6 -7
  60. langflow/components/deactivated/vectara_self_query.py +3 -3
  61. langflow/components/docling/__init__.py +0 -198
  62. langflow/components/docling/docling_inline.py +1 -1
  63. langflow/components/elastic/__init__.py +37 -0
  64. langflow/components/embeddings/text_embedder.py +3 -3
  65. langflow/components/firecrawl/firecrawl_extract_api.py +2 -9
  66. langflow/components/google/gmail.py +1 -1
  67. langflow/components/google/google_generative_ai.py +5 -11
  68. langflow/components/groq/groq.py +4 -3
  69. langflow/components/helpers/current_date.py +2 -3
  70. langflow/components/helpers/memory.py +1 -1
  71. langflow/components/ibm/watsonx.py +1 -1
  72. langflow/components/ibm/watsonx_embeddings.py +1 -1
  73. langflow/components/langwatch/langwatch.py +3 -3
  74. langflow/components/logic/flow_tool.py +2 -2
  75. langflow/components/logic/notify.py +1 -1
  76. langflow/components/logic/run_flow.py +2 -3
  77. langflow/components/logic/sub_flow.py +4 -5
  78. langflow/components/mem0/mem0_chat_memory.py +2 -8
  79. langflow/components/milvus/__init__.py +34 -0
  80. langflow/components/mongodb/__init__.py +34 -0
  81. langflow/components/nvidia/nvidia.py +3 -3
  82. langflow/components/olivya/olivya.py +7 -7
  83. langflow/components/ollama/ollama.py +9 -6
  84. langflow/components/perplexity/perplexity.py +3 -13
  85. langflow/components/pgvector/__init__.py +34 -0
  86. langflow/components/pinecone/__init__.py +34 -0
  87. langflow/components/processing/batch_run.py +8 -8
  88. langflow/components/processing/data_operations.py +2 -2
  89. langflow/components/processing/merge_data.py +1 -2
  90. langflow/components/processing/message_to_data.py +2 -3
  91. langflow/components/processing/parse_json_data.py +1 -1
  92. langflow/components/prototypes/python_function.py +2 -3
  93. langflow/components/qdrant/__init__.py +34 -0
  94. langflow/components/redis/__init__.py +36 -2
  95. langflow/components/redis/redis.py +75 -29
  96. langflow/components/redis/redis_chat.py +43 -0
  97. langflow/components/serpapi/serp.py +1 -1
  98. langflow/components/supabase/__init__.py +37 -0
  99. langflow/components/tavily/tavily_extract.py +1 -1
  100. langflow/components/tavily/tavily_search.py +1 -1
  101. langflow/components/tools/calculator.py +2 -2
  102. langflow/components/tools/python_code_structured_tool.py +3 -10
  103. langflow/components/tools/python_repl.py +2 -2
  104. langflow/components/tools/searxng.py +3 -3
  105. langflow/components/tools/serp_api.py +2 -2
  106. langflow/components/tools/tavily_search_tool.py +2 -2
  107. langflow/components/tools/yahoo_finance.py +1 -1
  108. langflow/components/twelvelabs/video_embeddings.py +4 -4
  109. langflow/components/upstash/__init__.py +34 -0
  110. langflow/components/vectara/__init__.py +37 -0
  111. langflow/components/vectorstores/__init__.py +0 -69
  112. langflow/components/vectorstores/local_db.py +2 -1
  113. langflow/components/weaviate/__init__.py +34 -0
  114. langflow/components/yahoosearch/yahoo.py +1 -1
  115. langflow/components/youtube/trending.py +3 -4
  116. langflow/custom/attributes.py +2 -1
  117. langflow/custom/code_parser/code_parser.py +1 -1
  118. langflow/custom/custom_component/base_component.py +1 -1
  119. langflow/custom/custom_component/component.py +16 -2
  120. langflow/custom/dependency_analyzer.py +165 -0
  121. langflow/custom/directory_reader/directory_reader.py +7 -7
  122. langflow/custom/directory_reader/utils.py +1 -2
  123. langflow/custom/utils.py +63 -45
  124. langflow/events/event_manager.py +1 -1
  125. langflow/frontend/assets/{SlackIcon-CnvyOamQ.js → SlackIcon-Cr3Q15Px.js} +1 -1
  126. langflow/frontend/assets/{Wikipedia-nyTEXdr2.js → Wikipedia-GxM5sPdM.js} +1 -1
  127. langflow/frontend/assets/{Wolfram-BYMQkNSq.js → Wolfram-BN3-VOCA.js} +1 -1
  128. langflow/frontend/assets/{index-DZTC5pdT.js → index-28oOcafk.js} +1 -1
  129. langflow/frontend/assets/{index-ChXJpBz4.js → index-2wSXqBtB.js} +1 -1
  130. langflow/frontend/assets/{index-BB15_iOb.js → index-3wW7BClE.js} +1 -1
  131. langflow/frontend/assets/{index-DKHNourL.js → index-6pyH3ZJB.js} +1 -1
  132. langflow/frontend/assets/{index-BvwZfF2i.js → index-AWCSdofD.js} +1 -1
  133. langflow/frontend/assets/{index-Bvxg4_ux.js → index-B2Zgv_xv.js} +1 -1
  134. langflow/frontend/assets/{index-Bd6WtbKA.js → index-B2ptVQGM.js} +1 -1
  135. langflow/frontend/assets/{index-C7QWbnLK.js → index-B3TANVes.js} +1 -1
  136. langflow/frontend/assets/{index-CpvYQ0ug.js → index-B4yCvZKV.js} +1 -1
  137. langflow/frontend/assets/{index-Dg-63Si_.js → index-BC65VuWx.js} +1 -1
  138. langflow/frontend/assets/{index-C6jri9Wm.js → index-BCDSei1q.js} +1 -1
  139. langflow/frontend/assets/{index-OazXJdEl.js → index-BJy50PvP.js} +1 -1
  140. langflow/frontend/assets/{index-CWdkbVsd.js → index-BKseQQ2I.js} +1 -1
  141. langflow/frontend/assets/{index-CaQ_H9ww.js → index-BLTxEeTi.js} +1 -1
  142. langflow/frontend/assets/{index-DGRMNe9n.js → index-BRg1f4Mu.js} +1 -1
  143. langflow/frontend/assets/{index-D8lOi1GI.js → index-BS8Vo8nc.js} +1 -1
  144. langflow/frontend/assets/{index-B748uLP1.js → index-BTKOU4xC.js} +1 -1
  145. langflow/frontend/assets/{index-Dqd4RjYA.js → index-BVwJDmw-.js} +1 -1
  146. langflow/frontend/assets/{index-DbMFlnHE.js → index-BWYuQ2Sj.js} +1 -1
  147. langflow/frontend/assets/{index-BEMw2Np8.js → index-BWdLILDG.js} +1 -1
  148. langflow/frontend/assets/{index-BmX5CoED.js → index-BZcw4827.js} +1 -1
  149. langflow/frontend/assets/{index-CyPvTB63.js → index-Bbi87Ve4.js} +1 -1
  150. langflow/frontend/assets/{index-BTEW9e8P.js → index-Bf0IYKLd.js} +1 -1
  151. langflow/frontend/assets/{index-BZgXW854.js → index-Bg5nrMRh.js} +1 -1
  152. langflow/frontend/assets/{index-BBxAPk1y.js → index-BiC280Nx.js} +1 -1
  153. langflow/frontend/assets/{index-BR0bkVqX.js → index-BiKKN6FR.js} +1 -1
  154. langflow/frontend/assets/{index-CTrt1Q_j.js → index-Bief6eyJ.js} +1 -1
  155. langflow/frontend/assets/{index-D5_DsUJc.js → index-BkXec1Yf.js} +1 -1
  156. langflow/frontend/assets/{index-CZQ9rXNa.js → index-Bnl6QHtP.js} +1 -1
  157. langflow/frontend/assets/{index-BChjg6Az.js → index-BpxbUiZD.js} +1979 -1979
  158. langflow/frontend/assets/{index-BOeo01QB.js → index-BrJV8psX.js} +1 -1
  159. langflow/frontend/assets/{index-DysKpOuj.js → index-BwLWcUXL.js} +1 -1
  160. langflow/frontend/assets/{index-Bnqod3vk.js → index-Bx7dBY26.js} +1 -1
  161. langflow/frontend/assets/{index-D3DDfngy.js → index-C-EdnFdA.js} +1 -1
  162. langflow/frontend/assets/{index-Bsa0xZyL.js → index-C-Xfg4cD.js} +1 -1
  163. langflow/frontend/assets/{index-BTrsh9LS.js → index-C1f2wMat.js} +1 -1
  164. langflow/frontend/assets/index-C1xroOlH.css +1 -0
  165. langflow/frontend/assets/{index-B1YN7oMV.js → index-C3KequvP.js} +1 -1
  166. langflow/frontend/assets/{index-DzW2mfkK.js → index-C3ZjKdCD.js} +1 -1
  167. langflow/frontend/assets/{index-ajRge-Mg.js → index-C3l0zYn0.js} +1 -1
  168. langflow/frontend/assets/{index-cvZdgWHQ.js → index-C3yvArUT.js} +1 -1
  169. langflow/frontend/assets/{index-C-2hghRJ.js → index-C9Cxnkl8.js} +1 -1
  170. langflow/frontend/assets/{index-BhIOhlCH.js → index-CBc8fEAE.js} +1 -1
  171. langflow/frontend/assets/{index-B3Sur4Z3.js → index-CBvrGgID.js} +1 -1
  172. langflow/frontend/assets/{index-CCePCqkT.js → index-CD-PqGCY.js} +1 -1
  173. langflow/frontend/assets/{index-8yMsjVV2.js → index-CGO1CiUr.js} +1 -1
  174. langflow/frontend/assets/{index-DF5VwgU6.js → index-CH5UVA9b.js} +1 -1
  175. langflow/frontend/assets/{index-dcnYpT9N.js → index-CLJeJYjH.js} +1 -1
  176. langflow/frontend/assets/{index-DfxYyS3M.js → index-CMZ79X-Y.js} +1 -1
  177. langflow/frontend/assets/{index-ya2uXE8v.js → index-CMzfJKiW.js} +1 -1
  178. langflow/frontend/assets/{index-DkelbYy7.js → index-CNw1H-Wc.js} +1 -1
  179. langflow/frontend/assets/{index-DytJENYD.js → index-CPHEscq9.js} +1 -1
  180. langflow/frontend/assets/{index-Bv8h2Z-q.js → index-CRPKJZw9.js} +1 -1
  181. langflow/frontend/assets/{index-D-9TI74R.js → index-CRPyCfYy.js} +1 -1
  182. langflow/frontend/assets/{index-BLGYN-9b.js → index-CRcMqCIj.js} +1 -1
  183. langflow/frontend/assets/{index-tVYiABdp.js → index-CUVDws8F.js} +1 -1
  184. langflow/frontend/assets/{index-CpcbQZIF.js → index-CVWQfRYZ.js} +1 -1
  185. langflow/frontend/assets/{index-DPCzHdsC.js → index-CVl6MbaM.js} +1 -1
  186. langflow/frontend/assets/{index-DkXy1WFo.js → index-CVwWoX99.js} +1 -1
  187. langflow/frontend/assets/{index-DK1Ptcc4.js → index-CWPzZtSx.js} +1 -1
  188. langflow/frontend/assets/{index-DHq8TQPB.js → index-CZqRL9DE.js} +1 -1
  189. langflow/frontend/assets/{index-DnEGCgih.js → index-CdIf07Rw.js} +1 -1
  190. langflow/frontend/assets/{index-BIQQCMvz.js → index-Cewy7JZE.js} +1 -1
  191. langflow/frontend/assets/{index-D8GJngXa.js → index-CfwLpbMM.js} +1 -1
  192. langflow/frontend/assets/{index-C_TdzfAn.js → index-CiR1dxI4.js} +1 -1
  193. langflow/frontend/assets/{index-BzL_EoKd.js → index-CiixOzDG.js} +1 -1
  194. langflow/frontend/assets/{index-Boso-xEw.js → index-ClsuDmR6.js} +1 -1
  195. langflow/frontend/assets/{index-8WdfSTTz.js → index-CmEYYRN1.js} +1 -1
  196. langflow/frontend/assets/{index-FUxmznS-.js → index-Co20d-eQ.js} +1 -1
  197. langflow/frontend/assets/{index-C82JjCPD.js → index-CpzXS6md.js} +1 -1
  198. langflow/frontend/assets/{index-DIDDfmlJ.js → index-Cqpzl1J4.js} +1 -1
  199. langflow/frontend/assets/{index-_UcqeEjm.js → index-CtVIONP2.js} +1 -1
  200. langflow/frontend/assets/{index-Gkrq-vzm.js → index-CuFXdTx4.js} +1 -1
  201. langflow/frontend/assets/{index-WPFivmdQ.js → index-Cyd2HtHK.js} +1 -1
  202. langflow/frontend/assets/{index-BFp_O-c9.js → index-D-1tA8Dt.js} +1 -1
  203. langflow/frontend/assets/{index-BqPpO6KG.js → index-D-KY3kkq.js} +1 -1
  204. langflow/frontend/assets/{index-Db71w3lq.js → index-D-_B1a8v.js} +1 -1
  205. langflow/frontend/assets/{index-BIzTEqFh.js → index-D14EWPyZ.js} +1 -1
  206. langflow/frontend/assets/{index-BbJjt5m4.js → index-D2N3l-cw.js} +1 -1
  207. langflow/frontend/assets/{index-DCRk27Tp.js → index-D5ETnvJa.js} +1 -1
  208. langflow/frontend/assets/{index-CvcEzq4x.js → index-D7kquVv2.js} +1 -1
  209. langflow/frontend/assets/{index-Q9vDw0Xl.js → index-DA6-bvgN.js} +1 -1
  210. langflow/frontend/assets/{index-l7bzB8Ex.js → index-DDWBeudF.js} +1 -1
  211. langflow/frontend/assets/{index-BCCGvqay.js → index-DDcMAaG4.js} +1 -1
  212. langflow/frontend/assets/{index-pCQ_yw8m.js → index-DHgomBdh.js} +1 -1
  213. langflow/frontend/assets/{index-BxEuHa76.js → index-DJP-ss47.js} +1 -1
  214. langflow/frontend/assets/{index-BbRm7beF.js → index-DQ7VYqQc.js} +1 -1
  215. langflow/frontend/assets/{index-Car-zdor.js → index-DTqbvGC0.js} +1 -1
  216. langflow/frontend/assets/{index-BRxvproo.js → index-DUpri6zF.js} +1 -1
  217. langflow/frontend/assets/{index-BQ6NUdMY.js → index-DV3utZDZ.js} +1 -1
  218. langflow/frontend/assets/{index-DjQETUy8.js → index-DXRfN4HV.js} +1 -1
  219. langflow/frontend/assets/{index-DfngcQxO.js → index-Db9dYSzy.js} +1 -1
  220. langflow/frontend/assets/{index-rXV1G1aB.js → index-DdtMEn6I.js} +1 -1
  221. langflow/frontend/assets/{index-DmMDPoi0.js → index-DfDhMHgQ.js} +1 -1
  222. langflow/frontend/assets/{index-DJB12jIC.js → index-Dfe7qfvf.js} +1 -1
  223. langflow/frontend/assets/{index-C_veJlEb.js → index-DhtZ5hx8.js} +1 -1
  224. langflow/frontend/assets/{index-CQMoqLAu.js → index-DiB3CTo8.js} +1 -1
  225. langflow/frontend/assets/{index-DVlceYFD.js → index-DiGWASY5.js} +1 -1
  226. langflow/frontend/assets/{index-Du_18NCU.js → index-Dl5amdBz.js} +1 -1
  227. langflow/frontend/assets/{index-CYDAYm-i.js → index-DlD4dXlZ.js} +1 -1
  228. langflow/frontend/assets/{index-CLPdN-q6.js → index-DmeiHnfl.js} +1 -1
  229. langflow/frontend/assets/index-Dmu-X5-4.js +1 -0
  230. langflow/frontend/assets/{index-BzEUlaw_.js → index-DpVWih90.js} +1 -1
  231. langflow/frontend/assets/{index-D6PSjHxP.js → index-DrDrcajG.js} +1 -1
  232. langflow/frontend/assets/{index-Dq5ilsem.js → index-Du-pc0KE.js} +1 -1
  233. langflow/frontend/assets/{index-CYe8Ipef.js → index-DwPkMTaY.js} +1 -1
  234. langflow/frontend/assets/{index-BVEZDXxS.js → index-DwQEZe3C.js} +1 -1
  235. langflow/frontend/assets/{index-BvT7L317.js → index-DyJFTK24.js} +1 -1
  236. langflow/frontend/assets/{index-HK3bVMYA.js → index-J38wh62w.js} +1 -1
  237. langflow/frontend/assets/{index-CCxGSSTT.js → index-Kwdl-e29.js} +1 -1
  238. langflow/frontend/assets/{index-BOB_zsjl.js → index-OwPvCmpW.js} +1 -1
  239. langflow/frontend/assets/{index-Dsps-jKu.js → index-Tw3Os-DN.js} +1 -1
  240. langflow/frontend/assets/{index-CFDvOtKC.js → index-X0guhYF8.js} +1 -1
  241. langflow/frontend/assets/{index-BX5D-USa.js → index-dJWNxIRH.js} +1 -1
  242. langflow/frontend/assets/{index-BRYjyhAd.js → index-dcJ8-agu.js} +1 -1
  243. langflow/frontend/assets/{index-Ui4xUImO.js → index-eo2mAtL-.js} +1 -1
  244. langflow/frontend/assets/{index-CxvP91st.js → index-hG24k5xJ.js} +1 -1
  245. langflow/frontend/assets/{index-CVQmT7ZL.js → index-h_aSZHf3.js} +1 -1
  246. langflow/frontend/assets/{index-BIXaW2aY.js → index-hbndqB9B.js} +1 -1
  247. langflow/frontend/assets/{index-DIkNW9Cd.js → index-iJngutFo.js} +1 -1
  248. langflow/frontend/assets/{index-BWmPX4iQ.js → index-lTpteg8t.js} +1 -1
  249. langflow/frontend/assets/{index-xuIrH2Dq.js → index-lZX9AvZW.js} +1 -1
  250. langflow/frontend/assets/{index-yCHsaqs8.js → index-m8QA6VNM.js} +1 -1
  251. langflow/frontend/assets/{index-BkPYpfgw.js → index-o0D2S7xW.js} +1 -1
  252. langflow/frontend/assets/{index-DpClkXIV.js → index-ovFJ_0J6.js} +1 -1
  253. langflow/frontend/assets/{index-CmplyEaa.js → index-pYJJOcma.js} +1 -1
  254. langflow/frontend/assets/{index-CJo_cyWW.js → index-sI75DsdM.js} +1 -1
  255. langflow/frontend/assets/{index-nVwHLjuV.js → index-xvFOmxx4.js} +1 -1
  256. langflow/frontend/assets/{index-LbYjHKkn.js → index-z3SRY-mX.js} +1 -1
  257. langflow/frontend/assets/lazyIconImports-D97HEZkE.js +2 -0
  258. langflow/frontend/assets/{use-post-add-user-BrBYH9eR.js → use-post-add-user-C0MdTpQ5.js} +1 -1
  259. langflow/frontend/index.html +2 -2
  260. langflow/graph/edge/base.py +2 -3
  261. langflow/graph/graph/base.py +15 -13
  262. langflow/graph/graph/constants.py +3 -0
  263. langflow/graph/utils.py +6 -6
  264. langflow/graph/vertex/base.py +4 -5
  265. langflow/graph/vertex/param_handler.py +1 -1
  266. langflow/graph/vertex/vertex_types.py +2 -2
  267. langflow/helpers/flow.py +1 -1
  268. langflow/initial_setup/setup.py +32 -30
  269. langflow/initial_setup/starter_projects/Basic Prompt Chaining.json +26 -0
  270. langflow/initial_setup/starter_projects/Basic Prompting.json +26 -0
  271. langflow/initial_setup/starter_projects/Blog Writer.json +58 -2
  272. langflow/initial_setup/starter_projects/Custom Component Generator.json +37 -2
  273. langflow/initial_setup/starter_projects/Document Q&A.json +27 -1
  274. langflow/initial_setup/starter_projects/Financial Report Parser.json +43 -0
  275. langflow/initial_setup/starter_projects/Hybrid Search RAG.json +83 -1
  276. langflow/initial_setup/starter_projects/Image Sentiment Analysis.json +43 -0
  277. langflow/initial_setup/starter_projects/Instagram Copywriter.json +51 -3
  278. langflow/initial_setup/starter_projects/Invoice Summarizer.json +40 -1
  279. langflow/initial_setup/starter_projects/Knowledge Ingestion.json +73 -2
  280. langflow/initial_setup/starter_projects/Knowledge Retrieval.json +63 -0
  281. langflow/initial_setup/starter_projects/Market Research.json +59 -3
  282. langflow/initial_setup/starter_projects/Meeting Summary.json +101 -6
  283. langflow/initial_setup/starter_projects/Memory Chatbot.json +37 -2
  284. langflow/initial_setup/starter_projects/News Aggregator.json +63 -3
  285. langflow/initial_setup/starter_projects/Nvidia Remix.json +69 -4
  286. langflow/initial_setup/starter_projects/Pok/303/251dex Agent.json" +48 -1
  287. langflow/initial_setup/starter_projects/Portfolio Website Code Generator.json +44 -1
  288. langflow/initial_setup/starter_projects/Price Deal Finder.json +57 -5
  289. langflow/initial_setup/starter_projects/Research Agent.json +42 -3
  290. langflow/initial_setup/starter_projects/Research Translation Loop.json +66 -0
  291. langflow/initial_setup/starter_projects/SEO Keyword Generator.json +17 -0
  292. langflow/initial_setup/starter_projects/SaaS Pricing.json +27 -1
  293. langflow/initial_setup/starter_projects/Search agent.json +40 -1
  294. langflow/initial_setup/starter_projects/Sequential Tasks Agents.json +76 -7
  295. langflow/initial_setup/starter_projects/Simple Agent.json +59 -3
  296. langflow/initial_setup/starter_projects/Social Media Agent.json +77 -1
  297. langflow/initial_setup/starter_projects/Text Sentiment Analysis.json +35 -1
  298. langflow/initial_setup/starter_projects/Travel Planning Agents.json +51 -3
  299. langflow/initial_setup/starter_projects/Twitter Thread Generator.json +80 -0
  300. langflow/initial_setup/starter_projects/Vector Store RAG.json +110 -3
  301. langflow/initial_setup/starter_projects/Youtube Analysis.json +84 -3
  302. langflow/initial_setup/starter_projects/vector_store_rag.py +1 -1
  303. langflow/interface/components.py +23 -22
  304. langflow/interface/initialize/loading.py +5 -5
  305. langflow/interface/run.py +1 -1
  306. langflow/interface/utils.py +1 -1
  307. langflow/io/__init__.py +0 -1
  308. langflow/langflow_launcher.py +1 -1
  309. langflow/load/load.py +2 -7
  310. langflow/logging/__init__.py +0 -1
  311. langflow/logging/logger.py +191 -115
  312. langflow/logging/setup.py +1 -1
  313. langflow/main.py +37 -52
  314. langflow/memory.py +7 -7
  315. langflow/middleware.py +1 -1
  316. langflow/processing/process.py +6 -3
  317. langflow/schema/artifact.py +2 -2
  318. langflow/schema/data.py +10 -2
  319. langflow/schema/dataframe.py +1 -1
  320. langflow/schema/message.py +1 -1
  321. langflow/serialization/serialization.py +1 -1
  322. langflow/services/auth/mcp_encryption.py +104 -0
  323. langflow/services/auth/utils.py +2 -2
  324. langflow/services/cache/disk.py +1 -1
  325. langflow/services/cache/service.py +3 -3
  326. langflow/services/database/models/flow/model.py +2 -7
  327. langflow/services/database/models/transactions/crud.py +2 -2
  328. langflow/services/database/models/user/crud.py +2 -2
  329. langflow/services/database/service.py +8 -8
  330. langflow/services/database/utils.py +6 -5
  331. langflow/services/deps.py +2 -3
  332. langflow/services/factory.py +1 -1
  333. langflow/services/flow/flow_runner.py +7 -12
  334. langflow/services/job_queue/service.py +16 -15
  335. langflow/services/manager.py +3 -4
  336. langflow/services/settings/auth.py +1 -1
  337. langflow/services/settings/base.py +3 -8
  338. langflow/services/settings/feature_flags.py +1 -1
  339. langflow/services/settings/manager.py +1 -1
  340. langflow/services/settings/utils.py +1 -1
  341. langflow/services/socket/__init__.py +0 -1
  342. langflow/services/socket/service.py +3 -3
  343. langflow/services/socket/utils.py +4 -4
  344. langflow/services/state/service.py +1 -2
  345. langflow/services/storage/factory.py +1 -1
  346. langflow/services/storage/local.py +9 -8
  347. langflow/services/storage/s3.py +11 -10
  348. langflow/services/store/service.py +3 -3
  349. langflow/services/store/utils.py +3 -2
  350. langflow/services/task/temp_flow_cleanup.py +7 -7
  351. langflow/services/telemetry/service.py +10 -10
  352. langflow/services/tracing/arize_phoenix.py +2 -2
  353. langflow/services/tracing/langfuse.py +1 -1
  354. langflow/services/tracing/langsmith.py +1 -1
  355. langflow/services/tracing/langwatch.py +1 -1
  356. langflow/services/tracing/opik.py +1 -1
  357. langflow/services/tracing/service.py +25 -6
  358. langflow/services/tracing/traceloop.py +245 -0
  359. langflow/services/utils.py +7 -7
  360. langflow/services/variable/kubernetes.py +3 -3
  361. langflow/services/variable/kubernetes_secrets.py +2 -1
  362. langflow/services/variable/service.py +5 -5
  363. langflow/utils/component_utils.py +9 -6
  364. langflow/utils/util.py +5 -5
  365. langflow/utils/validate.py +3 -3
  366. langflow/utils/voice_utils.py +2 -2
  367. {langflow_base_nightly-0.5.0.dev37.dist-info → langflow_base_nightly-0.5.0.dev39.dist-info}/METADATA +2 -1
  368. {langflow_base_nightly-0.5.0.dev37.dist-info → langflow_base_nightly-0.5.0.dev39.dist-info}/RECORD +393 -374
  369. langflow/components/vectorstores/redis.py +0 -89
  370. langflow/frontend/assets/index-C26RqKWL.js +0 -1
  371. langflow/frontend/assets/index-CqS7zir1.css +0 -1
  372. langflow/frontend/assets/lazyIconImports-t6wEndt1.js +0 -2
  373. /langflow/components/{vectorstores → FAISS}/faiss.py +0 -0
  374. /langflow/components/{vectorstores → cassandra}/cassandra.py +0 -0
  375. /langflow/components/{datastax/cassandra.py → cassandra/cassandra_chat.py} +0 -0
  376. /langflow/components/{vectorstores → cassandra}/cassandra_graph.py +0 -0
  377. /langflow/components/{vectorstores → chroma}/chroma.py +0 -0
  378. /langflow/components/{vectorstores → clickhouse}/clickhouse.py +0 -0
  379. /langflow/components/{vectorstores → couchbase}/couchbase.py +0 -0
  380. /langflow/components/{vectorstores → datastax}/astradb.py +0 -0
  381. /langflow/components/{vectorstores → datastax}/astradb_graph.py +0 -0
  382. /langflow/components/{vectorstores → datastax}/graph_rag.py +0 -0
  383. /langflow/components/{vectorstores → datastax}/hcd.py +0 -0
  384. /langflow/components/{vectorstores → elastic}/elasticsearch.py +0 -0
  385. /langflow/components/{vectorstores → elastic}/opensearch.py +0 -0
  386. /langflow/components/{vectorstores → milvus}/milvus.py +0 -0
  387. /langflow/components/{vectorstores → mongodb}/mongodb_atlas.py +0 -0
  388. /langflow/components/{vectorstores → pgvector}/pgvector.py +0 -0
  389. /langflow/components/{vectorstores → pinecone}/pinecone.py +0 -0
  390. /langflow/components/{vectorstores → qdrant}/qdrant.py +0 -0
  391. /langflow/components/{vectorstores → supabase}/supabase.py +0 -0
  392. /langflow/components/{vectorstores → upstash}/upstash.py +0 -0
  393. /langflow/components/{vectorstores → vectara}/vectara.py +0 -0
  394. /langflow/components/{vectorstores → vectara}/vectara_rag.py +0 -0
  395. /langflow/components/{vectorstores → weaviate}/weaviate.py +0 -0
  396. {langflow_base_nightly-0.5.0.dev37.dist-info → langflow_base_nightly-0.5.0.dev39.dist-info}/WHEEL +0 -0
  397. {langflow_base_nightly-0.5.0.dev37.dist-info → langflow_base_nightly-0.5.0.dev39.dist-info}/entry_points.txt +0 -0
@@ -1,7 +1,6 @@
1
1
  from typing import Any, cast
2
2
 
3
3
  import requests
4
- from loguru import logger
5
4
  from pydantic import ValidationError
6
5
 
7
6
  from langflow.base.models.anthropic_constants import (
@@ -14,6 +13,7 @@ from langflow.base.models.model import LCModelComponent
14
13
  from langflow.field_typing import LanguageModel
15
14
  from langflow.field_typing.range_spec import RangeSpec
16
15
  from langflow.io import BoolInput, DropdownInput, IntInput, MessageTextInput, SecretStrInput, SliderInput
16
+ from langflow.logging.logger import logger
17
17
  from langflow.schema.dotdict import dotdict
18
18
 
19
19
 
@@ -101,7 +101,7 @@ class AnthropicModelComponent(LCModelComponent):
101
101
 
102
102
  return output
103
103
 
104
- def get_models(self, tool_model_enabled: bool | None = None) -> list[str]:
104
+ def get_models(self, *, tool_model_enabled: bool | None = None) -> list[str]:
105
105
  try:
106
106
  import anthropic
107
107
 
@@ -129,7 +129,7 @@ class AnthropicModelComponent(LCModelComponent):
129
129
  model_with_tool = ChatAnthropic(
130
130
  model=model, # Use the current model being checked
131
131
  anthropic_api_key=self.api_key,
132
- anthropic_api_url=cast(str, self.base_url) or DEFAULT_ANTHROPIC_API_URL,
132
+ anthropic_api_url=cast("str", self.base_url) or DEFAULT_ANTHROPIC_API_URL,
133
133
  )
134
134
 
135
135
  if (
@@ -177,8 +177,9 @@ class AnthropicModelComponent(LCModelComponent):
177
177
  except (ImportError, ValueError, requests.exceptions.RequestException) as e:
178
178
  logger.exception(f"Error getting model names: {e}")
179
179
  ids = ANTHROPIC_MODELS
180
+ build_config.setdefault("model_name", {})
180
181
  build_config["model_name"]["options"] = ids
181
- build_config["model_name"]["value"] = ids[0]
182
+ build_config["model_name"].setdefault("value", ids[0])
182
183
  build_config["model_name"]["combobox"] = True
183
184
  except Exception as e:
184
185
  msg = f"Error getting model names: {e}"
@@ -1,8 +1,8 @@
1
1
  import assemblyai as aai
2
- from loguru import logger
3
2
 
4
3
  from langflow.custom.custom_component.component import Component
5
4
  from langflow.io import DataInput, DropdownInput, IntInput, Output, SecretStrInput
5
+ from langflow.logging.logger import logger
6
6
  from langflow.schema.data import Data
7
7
 
8
8
 
@@ -58,7 +58,7 @@ class AssemblyAIGetSubtitles(Component):
58
58
  transcript = aai.Transcript.get_by_id(transcript_id)
59
59
  except Exception as e: # noqa: BLE001
60
60
  error = f"Getting transcription failed: {e}"
61
- logger.opt(exception=True).debug(error)
61
+ logger.debug(error, exc_info=True)
62
62
  self.status = error
63
63
  return Data(data={"error": error})
64
64
 
@@ -1,8 +1,8 @@
1
1
  import assemblyai as aai
2
- from loguru import logger
3
2
 
4
3
  from langflow.custom.custom_component.component import Component
5
4
  from langflow.io import DataInput, DropdownInput, FloatInput, IntInput, MultilineInput, Output, SecretStrInput
5
+ from langflow.logging.logger import logger
6
6
  from langflow.schema.data import Data
7
7
 
8
8
 
@@ -131,7 +131,7 @@ class AssemblyAILeMUR(Component):
131
131
  try:
132
132
  response = self.perform_lemur_action(transcript_group, self.endpoint)
133
133
  except Exception as e: # noqa: BLE001
134
- logger.opt(exception=True).debug("Error running LeMUR")
134
+ logger.debug("Error running LeMUR", exc_info=True)
135
135
  error = f"An Error happened: {e}"
136
136
  self.status = error
137
137
  return Data(data={"error": error})
@@ -1,8 +1,8 @@
1
1
  import assemblyai as aai
2
- from loguru import logger
3
2
 
4
3
  from langflow.custom.custom_component.component import Component
5
4
  from langflow.io import BoolInput, DropdownInput, IntInput, MessageTextInput, Output, SecretStrInput
5
+ from langflow.logging.logger import logger
6
6
  from langflow.schema.data import Data
7
7
 
8
8
 
@@ -86,7 +86,7 @@ class AssemblyAIListTranscripts(Component):
86
86
  transcripts = convert_page_to_data_list(page)
87
87
 
88
88
  except Exception as e: # noqa: BLE001
89
- logger.opt(exception=True).debug("Error listing transcripts")
89
+ logger.debug("Error listing transcripts", exc_info=True)
90
90
  error_data = Data(data={"error": f"An error occurred: {e}"})
91
91
  self.status = [error_data]
92
92
  return [error_data]
@@ -1,9 +1,9 @@
1
1
  import assemblyai as aai
2
- from loguru import logger
3
2
 
4
3
  from langflow.custom.custom_component.component import Component
5
4
  from langflow.field_typing.range_spec import RangeSpec
6
5
  from langflow.io import DataInput, FloatInput, Output, SecretStrInput
6
+ from langflow.logging.logger import logger
7
7
  from langflow.schema.data import Data
8
8
 
9
9
 
@@ -54,7 +54,7 @@ class AssemblyAITranscriptionJobPoller(Component):
54
54
  transcript = aai.Transcript.get_by_id(self.transcript_id.data["transcript_id"])
55
55
  except Exception as e: # noqa: BLE001
56
56
  error = f"Getting transcription failed: {e}"
57
- logger.opt(exception=True).debug(error)
57
+ logger.debug(error, exc_info=True)
58
58
  self.status = error
59
59
  return Data(data={"error": error})
60
60
 
@@ -1,10 +1,10 @@
1
1
  from pathlib import Path
2
2
 
3
3
  import assemblyai as aai
4
- from loguru import logger
5
4
 
6
5
  from langflow.custom.custom_component.component import Component
7
6
  from langflow.io import BoolInput, DropdownInput, FileInput, MessageTextInput, Output, SecretStrInput
7
+ from langflow.logging.logger import logger
8
8
  from langflow.schema.data import Data
9
9
 
10
10
 
@@ -176,7 +176,7 @@ class AssemblyAITranscriptionJobCreator(Component):
176
176
  try:
177
177
  transcript = aai.Transcriber().submit(audio, config=config)
178
178
  except Exception as e: # noqa: BLE001
179
- logger.opt(exception=True).debug("Error submitting transcription job")
179
+ logger.debug("Error submitting transcription job", exc_info=True)
180
180
  self.status = f"An error occurred: {e}"
181
181
  return Data(data={"error": f"An error occurred: {e}"})
182
182
 
@@ -0,0 +1,40 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, Any
4
+
5
+ from langflow.components._importing import import_mod
6
+
7
+ if TYPE_CHECKING:
8
+ from .cassandra import CassandraVectorStoreComponent
9
+ from .cassandra_chat import CassandraChatMemory
10
+ from .cassandra_graph import CassandraGraphVectorStoreComponent
11
+
12
+ _dynamic_imports = {
13
+ "CassandraVectorStoreComponent": "cassandra",
14
+ "CassandraGraphVectorStoreComponent": "cassandra_graph",
15
+ "CassandraChatMemory": "cassandra_chat",
16
+ }
17
+
18
+ __all__ = [
19
+ "CassandraChatMemory",
20
+ "CassandraGraphVectorStoreComponent",
21
+ "CassandraVectorStoreComponent",
22
+ ]
23
+
24
+
25
+ def __getattr__(attr_name: str) -> Any:
26
+ """Lazily import Cassandra components on attribute access."""
27
+ if attr_name not in _dynamic_imports:
28
+ msg = f"module '{__name__}' has no attribute '{attr_name}'"
29
+ raise AttributeError(msg)
30
+ try:
31
+ result = import_mod(attr_name, _dynamic_imports[attr_name], __spec__.parent)
32
+ except (ModuleNotFoundError, ImportError, AttributeError) as e:
33
+ msg = f"Could not import '{attr_name}' from '{__name__}': {e}"
34
+ raise AttributeError(msg) from e
35
+ globals()[attr_name] = result
36
+ return result
37
+
38
+
39
+ def __dir__() -> list[str]:
40
+ return list(__all__)
@@ -0,0 +1,34 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, Any
4
+
5
+ from langflow.components._importing import import_mod
6
+
7
+ if TYPE_CHECKING:
8
+ from .chroma import ChromaVectorStoreComponent
9
+
10
+ _dynamic_imports = {
11
+ "ChromaVectorStoreComponent": "chroma",
12
+ }
13
+
14
+ __all__ = [
15
+ "ChromaVectorStoreComponent",
16
+ ]
17
+
18
+
19
+ def __getattr__(attr_name: str) -> Any:
20
+ """Lazily import Chroma components on attribute access."""
21
+ if attr_name not in _dynamic_imports:
22
+ msg = f"module '{__name__}' has no attribute '{attr_name}'"
23
+ raise AttributeError(msg)
24
+ try:
25
+ result = import_mod(attr_name, _dynamic_imports[attr_name], __spec__.parent)
26
+ except (ModuleNotFoundError, ImportError, AttributeError) as e:
27
+ msg = f"Could not import '{attr_name}' from '{__name__}': {e}"
28
+ raise AttributeError(msg) from e
29
+ globals()[attr_name] = result
30
+ return result
31
+
32
+
33
+ def __dir__() -> list[str]:
34
+ return list(__all__)
@@ -0,0 +1,34 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, Any
4
+
5
+ from langflow.components._importing import import_mod
6
+
7
+ if TYPE_CHECKING:
8
+ from .clickhouse import ClickhouseVectorStoreComponent
9
+
10
+ _dynamic_imports = {
11
+ "ClickhouseVectorStoreComponent": "clickhouse",
12
+ }
13
+
14
+ __all__ = [
15
+ "ClickhouseVectorStoreComponent",
16
+ ]
17
+
18
+
19
+ def __getattr__(attr_name: str) -> Any:
20
+ """Lazily import ClickHouse components on attribute access."""
21
+ if attr_name not in _dynamic_imports:
22
+ msg = f"module '{__name__}' has no attribute '{attr_name}'"
23
+ raise AttributeError(msg)
24
+ try:
25
+ result = import_mod(attr_name, _dynamic_imports[attr_name], __spec__.parent)
26
+ except (ModuleNotFoundError, ImportError, AttributeError) as e:
27
+ msg = f"Could not import '{attr_name}' from '{__name__}': {e}"
28
+ raise AttributeError(msg) from e
29
+ globals()[attr_name] = result
30
+ return result
31
+
32
+
33
+ def __dir__() -> list[str]:
34
+ return list(__all__)
@@ -0,0 +1,34 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, Any
4
+
5
+ from langflow.components._importing import import_mod
6
+
7
+ if TYPE_CHECKING:
8
+ from .couchbase import CouchbaseVectorStoreComponent
9
+
10
+ _dynamic_imports = {
11
+ "CouchbaseVectorStoreComponent": "couchbase",
12
+ }
13
+
14
+ __all__ = [
15
+ "CouchbaseVectorStoreComponent",
16
+ ]
17
+
18
+
19
+ def __getattr__(attr_name: str) -> Any:
20
+ """Lazily import Couchbase components on attribute access."""
21
+ if attr_name not in _dynamic_imports:
22
+ msg = f"module '{__name__}' has no attribute '{attr_name}'"
23
+ raise AttributeError(msg)
24
+ try:
25
+ result = import_mod(attr_name, _dynamic_imports[attr_name], __spec__.parent)
26
+ except (ModuleNotFoundError, ImportError, AttributeError) as e:
27
+ msg = f"Could not import '{attr_name}' from '{__name__}': {e}"
28
+ raise AttributeError(msg) from e
29
+ globals()[attr_name] = result
30
+ return result
31
+
32
+
33
+ def __dir__() -> list[str]:
34
+ return list(__all__)