lfx-nightly 0.2.0.dev25__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.
Potentially problematic release.
This version of lfx-nightly might be problematic. Click here for more details.
- lfx/__init__.py +0 -0
- lfx/__main__.py +25 -0
- lfx/_assets/component_index.json +1 -0
- lfx/base/__init__.py +0 -0
- lfx/base/agents/__init__.py +0 -0
- lfx/base/agents/agent.py +375 -0
- lfx/base/agents/altk_base_agent.py +380 -0
- lfx/base/agents/altk_tool_wrappers.py +565 -0
- lfx/base/agents/callback.py +130 -0
- lfx/base/agents/context.py +109 -0
- lfx/base/agents/crewai/__init__.py +0 -0
- lfx/base/agents/crewai/crew.py +231 -0
- lfx/base/agents/crewai/tasks.py +12 -0
- lfx/base/agents/default_prompts.py +23 -0
- lfx/base/agents/errors.py +15 -0
- lfx/base/agents/events.py +430 -0
- lfx/base/agents/utils.py +237 -0
- lfx/base/astra_assistants/__init__.py +0 -0
- lfx/base/astra_assistants/util.py +171 -0
- lfx/base/chains/__init__.py +0 -0
- lfx/base/chains/model.py +19 -0
- lfx/base/composio/__init__.py +0 -0
- lfx/base/composio/composio_base.py +2584 -0
- lfx/base/compressors/__init__.py +0 -0
- lfx/base/compressors/model.py +60 -0
- lfx/base/constants.py +46 -0
- lfx/base/curl/__init__.py +0 -0
- lfx/base/curl/parse.py +188 -0
- lfx/base/data/__init__.py +5 -0
- lfx/base/data/base_file.py +810 -0
- lfx/base/data/docling_utils.py +338 -0
- lfx/base/data/storage_utils.py +192 -0
- lfx/base/data/utils.py +362 -0
- lfx/base/datastax/__init__.py +5 -0
- lfx/base/datastax/astradb_base.py +896 -0
- lfx/base/document_transformers/__init__.py +0 -0
- lfx/base/document_transformers/model.py +43 -0
- lfx/base/embeddings/__init__.py +0 -0
- lfx/base/embeddings/aiml_embeddings.py +62 -0
- lfx/base/embeddings/embeddings_class.py +113 -0
- lfx/base/embeddings/model.py +26 -0
- lfx/base/flow_processing/__init__.py +0 -0
- lfx/base/flow_processing/utils.py +86 -0
- lfx/base/huggingface/__init__.py +0 -0
- lfx/base/huggingface/model_bridge.py +133 -0
- lfx/base/io/__init__.py +0 -0
- lfx/base/io/chat.py +21 -0
- lfx/base/io/text.py +22 -0
- lfx/base/knowledge_bases/__init__.py +3 -0
- lfx/base/knowledge_bases/knowledge_base_utils.py +137 -0
- lfx/base/langchain_utilities/__init__.py +0 -0
- lfx/base/langchain_utilities/model.py +35 -0
- lfx/base/langchain_utilities/spider_constants.py +1 -0
- lfx/base/langwatch/__init__.py +0 -0
- lfx/base/langwatch/utils.py +18 -0
- lfx/base/mcp/__init__.py +0 -0
- lfx/base/mcp/constants.py +2 -0
- lfx/base/mcp/util.py +1659 -0
- lfx/base/memory/__init__.py +0 -0
- lfx/base/memory/memory.py +49 -0
- lfx/base/memory/model.py +38 -0
- lfx/base/models/__init__.py +3 -0
- lfx/base/models/aiml_constants.py +51 -0
- lfx/base/models/anthropic_constants.py +51 -0
- lfx/base/models/aws_constants.py +151 -0
- lfx/base/models/chat_result.py +76 -0
- lfx/base/models/cometapi_constants.py +54 -0
- lfx/base/models/google_generative_ai_constants.py +70 -0
- lfx/base/models/google_generative_ai_model.py +38 -0
- lfx/base/models/groq_constants.py +150 -0
- lfx/base/models/groq_model_discovery.py +265 -0
- lfx/base/models/model.py +375 -0
- lfx/base/models/model_input_constants.py +378 -0
- lfx/base/models/model_metadata.py +41 -0
- lfx/base/models/model_utils.py +108 -0
- lfx/base/models/novita_constants.py +35 -0
- lfx/base/models/ollama_constants.py +52 -0
- lfx/base/models/openai_constants.py +129 -0
- lfx/base/models/sambanova_constants.py +18 -0
- lfx/base/models/watsonx_constants.py +36 -0
- lfx/base/processing/__init__.py +0 -0
- lfx/base/prompts/__init__.py +0 -0
- lfx/base/prompts/api_utils.py +224 -0
- lfx/base/prompts/utils.py +61 -0
- lfx/base/textsplitters/__init__.py +0 -0
- lfx/base/textsplitters/model.py +28 -0
- lfx/base/tools/__init__.py +0 -0
- lfx/base/tools/base.py +26 -0
- lfx/base/tools/component_tool.py +325 -0
- lfx/base/tools/constants.py +49 -0
- lfx/base/tools/flow_tool.py +132 -0
- lfx/base/tools/run_flow.py +698 -0
- lfx/base/vectorstores/__init__.py +0 -0
- lfx/base/vectorstores/model.py +193 -0
- lfx/base/vectorstores/utils.py +22 -0
- lfx/base/vectorstores/vector_store_connection_decorator.py +52 -0
- lfx/cli/__init__.py +5 -0
- lfx/cli/commands.py +327 -0
- lfx/cli/common.py +650 -0
- lfx/cli/run.py +506 -0
- lfx/cli/script_loader.py +289 -0
- lfx/cli/serve_app.py +546 -0
- lfx/cli/validation.py +69 -0
- lfx/components/FAISS/__init__.py +34 -0
- lfx/components/FAISS/faiss.py +111 -0
- lfx/components/Notion/__init__.py +19 -0
- lfx/components/Notion/add_content_to_page.py +269 -0
- lfx/components/Notion/create_page.py +94 -0
- lfx/components/Notion/list_database_properties.py +68 -0
- lfx/components/Notion/list_pages.py +122 -0
- lfx/components/Notion/list_users.py +77 -0
- lfx/components/Notion/page_content_viewer.py +93 -0
- lfx/components/Notion/search.py +111 -0
- lfx/components/Notion/update_page_property.py +114 -0
- lfx/components/__init__.py +428 -0
- lfx/components/_importing.py +42 -0
- lfx/components/agentql/__init__.py +3 -0
- lfx/components/agentql/agentql_api.py +151 -0
- lfx/components/aiml/__init__.py +37 -0
- lfx/components/aiml/aiml.py +115 -0
- lfx/components/aiml/aiml_embeddings.py +37 -0
- lfx/components/altk/__init__.py +34 -0
- lfx/components/altk/altk_agent.py +193 -0
- lfx/components/amazon/__init__.py +36 -0
- lfx/components/amazon/amazon_bedrock_converse.py +195 -0
- lfx/components/amazon/amazon_bedrock_embedding.py +109 -0
- lfx/components/amazon/amazon_bedrock_model.py +130 -0
- lfx/components/amazon/s3_bucket_uploader.py +211 -0
- lfx/components/anthropic/__init__.py +34 -0
- lfx/components/anthropic/anthropic.py +187 -0
- lfx/components/apify/__init__.py +5 -0
- lfx/components/apify/apify_actor.py +325 -0
- lfx/components/arxiv/__init__.py +3 -0
- lfx/components/arxiv/arxiv.py +169 -0
- lfx/components/assemblyai/__init__.py +46 -0
- lfx/components/assemblyai/assemblyai_get_subtitles.py +83 -0
- lfx/components/assemblyai/assemblyai_lemur.py +183 -0
- lfx/components/assemblyai/assemblyai_list_transcripts.py +95 -0
- lfx/components/assemblyai/assemblyai_poll_transcript.py +72 -0
- lfx/components/assemblyai/assemblyai_start_transcript.py +188 -0
- lfx/components/azure/__init__.py +37 -0
- lfx/components/azure/azure_openai.py +95 -0
- lfx/components/azure/azure_openai_embeddings.py +83 -0
- lfx/components/baidu/__init__.py +32 -0
- lfx/components/baidu/baidu_qianfan_chat.py +113 -0
- lfx/components/bing/__init__.py +3 -0
- lfx/components/bing/bing_search_api.py +61 -0
- lfx/components/cassandra/__init__.py +40 -0
- lfx/components/cassandra/cassandra.py +264 -0
- lfx/components/cassandra/cassandra_chat.py +92 -0
- lfx/components/cassandra/cassandra_graph.py +238 -0
- lfx/components/chains/__init__.py +3 -0
- lfx/components/chroma/__init__.py +34 -0
- lfx/components/chroma/chroma.py +169 -0
- lfx/components/cleanlab/__init__.py +40 -0
- lfx/components/cleanlab/cleanlab_evaluator.py +155 -0
- lfx/components/cleanlab/cleanlab_rag_evaluator.py +254 -0
- lfx/components/cleanlab/cleanlab_remediator.py +131 -0
- lfx/components/clickhouse/__init__.py +34 -0
- lfx/components/clickhouse/clickhouse.py +135 -0
- lfx/components/cloudflare/__init__.py +32 -0
- lfx/components/cloudflare/cloudflare.py +81 -0
- lfx/components/cohere/__init__.py +40 -0
- lfx/components/cohere/cohere_embeddings.py +81 -0
- lfx/components/cohere/cohere_models.py +46 -0
- lfx/components/cohere/cohere_rerank.py +51 -0
- lfx/components/cometapi/__init__.py +32 -0
- lfx/components/cometapi/cometapi.py +166 -0
- lfx/components/composio/__init__.py +222 -0
- lfx/components/composio/agentql_composio.py +11 -0
- lfx/components/composio/agiled_composio.py +11 -0
- lfx/components/composio/airtable_composio.py +11 -0
- lfx/components/composio/apollo_composio.py +11 -0
- lfx/components/composio/asana_composio.py +11 -0
- lfx/components/composio/attio_composio.py +11 -0
- lfx/components/composio/bitbucket_composio.py +11 -0
- lfx/components/composio/bolna_composio.py +11 -0
- lfx/components/composio/brightdata_composio.py +11 -0
- lfx/components/composio/calendly_composio.py +11 -0
- lfx/components/composio/canva_composio.py +11 -0
- lfx/components/composio/canvas_composio.py +11 -0
- lfx/components/composio/coda_composio.py +11 -0
- lfx/components/composio/composio_api.py +278 -0
- lfx/components/composio/contentful_composio.py +11 -0
- lfx/components/composio/digicert_composio.py +11 -0
- lfx/components/composio/discord_composio.py +11 -0
- lfx/components/composio/dropbox_compnent.py +11 -0
- lfx/components/composio/elevenlabs_composio.py +11 -0
- lfx/components/composio/exa_composio.py +11 -0
- lfx/components/composio/figma_composio.py +11 -0
- lfx/components/composio/finage_composio.py +11 -0
- lfx/components/composio/firecrawl_composio.py +11 -0
- lfx/components/composio/fireflies_composio.py +11 -0
- lfx/components/composio/fixer_composio.py +11 -0
- lfx/components/composio/flexisign_composio.py +11 -0
- lfx/components/composio/freshdesk_composio.py +11 -0
- lfx/components/composio/github_composio.py +11 -0
- lfx/components/composio/gmail_composio.py +38 -0
- lfx/components/composio/googlebigquery_composio.py +11 -0
- lfx/components/composio/googlecalendar_composio.py +11 -0
- lfx/components/composio/googleclassroom_composio.py +11 -0
- lfx/components/composio/googledocs_composio.py +11 -0
- lfx/components/composio/googlemeet_composio.py +11 -0
- lfx/components/composio/googlesheets_composio.py +11 -0
- lfx/components/composio/googletasks_composio.py +8 -0
- lfx/components/composio/heygen_composio.py +11 -0
- lfx/components/composio/instagram_composio.py +11 -0
- lfx/components/composio/jira_composio.py +11 -0
- lfx/components/composio/jotform_composio.py +11 -0
- lfx/components/composio/klaviyo_composio.py +11 -0
- lfx/components/composio/linear_composio.py +11 -0
- lfx/components/composio/listennotes_composio.py +11 -0
- lfx/components/composio/mem0_composio.py +11 -0
- lfx/components/composio/miro_composio.py +11 -0
- lfx/components/composio/missive_composio.py +11 -0
- lfx/components/composio/notion_composio.py +11 -0
- lfx/components/composio/onedrive_composio.py +11 -0
- lfx/components/composio/outlook_composio.py +11 -0
- lfx/components/composio/pandadoc_composio.py +11 -0
- lfx/components/composio/peopledatalabs_composio.py +11 -0
- lfx/components/composio/perplexityai_composio.py +11 -0
- lfx/components/composio/reddit_composio.py +11 -0
- lfx/components/composio/serpapi_composio.py +11 -0
- lfx/components/composio/slack_composio.py +11 -0
- lfx/components/composio/slackbot_composio.py +11 -0
- lfx/components/composio/snowflake_composio.py +11 -0
- lfx/components/composio/supabase_composio.py +11 -0
- lfx/components/composio/tavily_composio.py +11 -0
- lfx/components/composio/timelinesai_composio.py +11 -0
- lfx/components/composio/todoist_composio.py +11 -0
- lfx/components/composio/wrike_composio.py +11 -0
- lfx/components/composio/youtube_composio.py +11 -0
- lfx/components/confluence/__init__.py +3 -0
- lfx/components/confluence/confluence.py +84 -0
- lfx/components/couchbase/__init__.py +34 -0
- lfx/components/couchbase/couchbase.py +102 -0
- lfx/components/crewai/__init__.py +49 -0
- lfx/components/crewai/crewai.py +108 -0
- lfx/components/crewai/hierarchical_crew.py +47 -0
- lfx/components/crewai/hierarchical_task.py +45 -0
- lfx/components/crewai/sequential_crew.py +53 -0
- lfx/components/crewai/sequential_task.py +74 -0
- lfx/components/crewai/sequential_task_agent.py +144 -0
- lfx/components/cuga/__init__.py +34 -0
- lfx/components/cuga/cuga_agent.py +730 -0
- lfx/components/custom_component/__init__.py +34 -0
- lfx/components/custom_component/custom_component.py +31 -0
- lfx/components/data/__init__.py +114 -0
- lfx/components/data_source/__init__.py +58 -0
- lfx/components/data_source/api_request.py +577 -0
- lfx/components/data_source/csv_to_data.py +101 -0
- lfx/components/data_source/json_to_data.py +106 -0
- lfx/components/data_source/mock_data.py +398 -0
- lfx/components/data_source/news_search.py +166 -0
- lfx/components/data_source/rss.py +71 -0
- lfx/components/data_source/sql_executor.py +101 -0
- lfx/components/data_source/url.py +311 -0
- lfx/components/data_source/web_search.py +326 -0
- lfx/components/datastax/__init__.py +76 -0
- lfx/components/datastax/astradb_assistant_manager.py +307 -0
- lfx/components/datastax/astradb_chatmemory.py +40 -0
- lfx/components/datastax/astradb_cql.py +288 -0
- lfx/components/datastax/astradb_graph.py +217 -0
- lfx/components/datastax/astradb_tool.py +378 -0
- lfx/components/datastax/astradb_vectorize.py +122 -0
- lfx/components/datastax/astradb_vectorstore.py +449 -0
- lfx/components/datastax/create_assistant.py +59 -0
- lfx/components/datastax/create_thread.py +33 -0
- lfx/components/datastax/dotenv.py +36 -0
- lfx/components/datastax/get_assistant.py +38 -0
- lfx/components/datastax/getenvvar.py +31 -0
- lfx/components/datastax/graph_rag.py +141 -0
- lfx/components/datastax/hcd.py +315 -0
- lfx/components/datastax/list_assistants.py +26 -0
- lfx/components/datastax/run.py +90 -0
- lfx/components/deactivated/__init__.py +15 -0
- lfx/components/deactivated/amazon_kendra.py +66 -0
- lfx/components/deactivated/chat_litellm_model.py +158 -0
- lfx/components/deactivated/code_block_extractor.py +26 -0
- lfx/components/deactivated/documents_to_data.py +22 -0
- lfx/components/deactivated/embed.py +16 -0
- lfx/components/deactivated/extract_key_from_data.py +46 -0
- lfx/components/deactivated/json_document_builder.py +57 -0
- lfx/components/deactivated/list_flows.py +20 -0
- lfx/components/deactivated/mcp_sse.py +61 -0
- lfx/components/deactivated/mcp_stdio.py +62 -0
- lfx/components/deactivated/merge_data.py +93 -0
- lfx/components/deactivated/message.py +37 -0
- lfx/components/deactivated/metal.py +54 -0
- lfx/components/deactivated/multi_query.py +59 -0
- lfx/components/deactivated/retriever.py +43 -0
- lfx/components/deactivated/selective_passthrough.py +77 -0
- lfx/components/deactivated/should_run_next.py +40 -0
- lfx/components/deactivated/split_text.py +63 -0
- lfx/components/deactivated/store_message.py +24 -0
- lfx/components/deactivated/sub_flow.py +124 -0
- lfx/components/deactivated/vectara_self_query.py +76 -0
- lfx/components/deactivated/vector_store.py +24 -0
- lfx/components/deepseek/__init__.py +34 -0
- lfx/components/deepseek/deepseek.py +136 -0
- lfx/components/docling/__init__.py +43 -0
- lfx/components/docling/chunk_docling_document.py +186 -0
- lfx/components/docling/docling_inline.py +238 -0
- lfx/components/docling/docling_remote.py +195 -0
- lfx/components/docling/export_docling_document.py +117 -0
- lfx/components/documentloaders/__init__.py +3 -0
- lfx/components/duckduckgo/__init__.py +3 -0
- lfx/components/duckduckgo/duck_duck_go_search_run.py +92 -0
- lfx/components/elastic/__init__.py +37 -0
- lfx/components/elastic/elasticsearch.py +267 -0
- lfx/components/elastic/opensearch.py +789 -0
- lfx/components/elastic/opensearch_multimodal.py +1575 -0
- lfx/components/embeddings/__init__.py +37 -0
- lfx/components/embeddings/similarity.py +77 -0
- lfx/components/embeddings/text_embedder.py +65 -0
- lfx/components/exa/__init__.py +3 -0
- lfx/components/exa/exa_search.py +68 -0
- lfx/components/files_and_knowledge/__init__.py +47 -0
- lfx/components/files_and_knowledge/directory.py +113 -0
- lfx/components/files_and_knowledge/file.py +841 -0
- lfx/components/files_and_knowledge/ingestion.py +694 -0
- lfx/components/files_and_knowledge/retrieval.py +264 -0
- lfx/components/files_and_knowledge/save_file.py +746 -0
- lfx/components/firecrawl/__init__.py +43 -0
- lfx/components/firecrawl/firecrawl_crawl_api.py +88 -0
- lfx/components/firecrawl/firecrawl_extract_api.py +136 -0
- lfx/components/firecrawl/firecrawl_map_api.py +89 -0
- lfx/components/firecrawl/firecrawl_scrape_api.py +73 -0
- lfx/components/flow_controls/__init__.py +58 -0
- lfx/components/flow_controls/conditional_router.py +208 -0
- lfx/components/flow_controls/data_conditional_router.py +126 -0
- lfx/components/flow_controls/flow_tool.py +111 -0
- lfx/components/flow_controls/listen.py +29 -0
- lfx/components/flow_controls/loop.py +163 -0
- lfx/components/flow_controls/notify.py +88 -0
- lfx/components/flow_controls/pass_message.py +36 -0
- lfx/components/flow_controls/run_flow.py +108 -0
- lfx/components/flow_controls/sub_flow.py +115 -0
- lfx/components/git/__init__.py +4 -0
- lfx/components/git/git.py +262 -0
- lfx/components/git/gitextractor.py +196 -0
- lfx/components/glean/__init__.py +3 -0
- lfx/components/glean/glean_search_api.py +173 -0
- lfx/components/google/__init__.py +17 -0
- lfx/components/google/gmail.py +193 -0
- lfx/components/google/google_bq_sql_executor.py +157 -0
- lfx/components/google/google_drive.py +92 -0
- lfx/components/google/google_drive_search.py +152 -0
- lfx/components/google/google_generative_ai.py +144 -0
- lfx/components/google/google_generative_ai_embeddings.py +141 -0
- lfx/components/google/google_oauth_token.py +89 -0
- lfx/components/google/google_search_api_core.py +68 -0
- lfx/components/google/google_serper_api_core.py +74 -0
- lfx/components/groq/__init__.py +34 -0
- lfx/components/groq/groq.py +143 -0
- lfx/components/helpers/__init__.py +154 -0
- lfx/components/homeassistant/__init__.py +7 -0
- lfx/components/homeassistant/home_assistant_control.py +152 -0
- lfx/components/homeassistant/list_home_assistant_states.py +137 -0
- lfx/components/huggingface/__init__.py +37 -0
- lfx/components/huggingface/huggingface.py +199 -0
- lfx/components/huggingface/huggingface_inference_api.py +106 -0
- lfx/components/ibm/__init__.py +34 -0
- lfx/components/ibm/watsonx.py +207 -0
- lfx/components/ibm/watsonx_embeddings.py +135 -0
- lfx/components/icosacomputing/__init__.py +5 -0
- lfx/components/icosacomputing/combinatorial_reasoner.py +84 -0
- lfx/components/input_output/__init__.py +40 -0
- lfx/components/input_output/chat.py +109 -0
- lfx/components/input_output/chat_output.py +184 -0
- lfx/components/input_output/text.py +27 -0
- lfx/components/input_output/text_output.py +29 -0
- lfx/components/input_output/webhook.py +56 -0
- lfx/components/jigsawstack/__init__.py +23 -0
- lfx/components/jigsawstack/ai_scrape.py +126 -0
- lfx/components/jigsawstack/ai_web_search.py +136 -0
- lfx/components/jigsawstack/file_read.py +115 -0
- lfx/components/jigsawstack/file_upload.py +94 -0
- lfx/components/jigsawstack/image_generation.py +205 -0
- lfx/components/jigsawstack/nsfw.py +60 -0
- lfx/components/jigsawstack/object_detection.py +124 -0
- lfx/components/jigsawstack/sentiment.py +112 -0
- lfx/components/jigsawstack/text_to_sql.py +90 -0
- lfx/components/jigsawstack/text_translate.py +77 -0
- lfx/components/jigsawstack/vocr.py +107 -0
- lfx/components/knowledge_bases/__init__.py +89 -0
- lfx/components/langchain_utilities/__init__.py +109 -0
- lfx/components/langchain_utilities/character.py +53 -0
- lfx/components/langchain_utilities/conversation.py +59 -0
- lfx/components/langchain_utilities/csv_agent.py +175 -0
- lfx/components/langchain_utilities/fake_embeddings.py +26 -0
- lfx/components/langchain_utilities/html_link_extractor.py +35 -0
- lfx/components/langchain_utilities/json_agent.py +100 -0
- lfx/components/langchain_utilities/langchain_hub.py +126 -0
- lfx/components/langchain_utilities/language_recursive.py +49 -0
- lfx/components/langchain_utilities/language_semantic.py +138 -0
- lfx/components/langchain_utilities/llm_checker.py +39 -0
- lfx/components/langchain_utilities/llm_math.py +42 -0
- lfx/components/langchain_utilities/natural_language.py +61 -0
- lfx/components/langchain_utilities/openai_tools.py +53 -0
- lfx/components/langchain_utilities/openapi.py +48 -0
- lfx/components/langchain_utilities/recursive_character.py +60 -0
- lfx/components/langchain_utilities/retrieval_qa.py +83 -0
- lfx/components/langchain_utilities/runnable_executor.py +137 -0
- lfx/components/langchain_utilities/self_query.py +80 -0
- lfx/components/langchain_utilities/spider.py +142 -0
- lfx/components/langchain_utilities/sql.py +40 -0
- lfx/components/langchain_utilities/sql_database.py +35 -0
- lfx/components/langchain_utilities/sql_generator.py +78 -0
- lfx/components/langchain_utilities/tool_calling.py +59 -0
- lfx/components/langchain_utilities/vector_store_info.py +49 -0
- lfx/components/langchain_utilities/vector_store_router.py +33 -0
- lfx/components/langchain_utilities/xml_agent.py +71 -0
- lfx/components/langwatch/__init__.py +3 -0
- lfx/components/langwatch/langwatch.py +278 -0
- lfx/components/link_extractors/__init__.py +3 -0
- lfx/components/llm_operations/__init__.py +46 -0
- lfx/components/llm_operations/batch_run.py +205 -0
- lfx/components/llm_operations/lambda_filter.py +218 -0
- lfx/components/llm_operations/llm_conditional_router.py +421 -0
- lfx/components/llm_operations/llm_selector.py +499 -0
- lfx/components/llm_operations/structured_output.py +244 -0
- lfx/components/lmstudio/__init__.py +34 -0
- lfx/components/lmstudio/lmstudioembeddings.py +89 -0
- lfx/components/lmstudio/lmstudiomodel.py +133 -0
- lfx/components/logic/__init__.py +181 -0
- lfx/components/maritalk/__init__.py +32 -0
- lfx/components/maritalk/maritalk.py +52 -0
- lfx/components/mem0/__init__.py +3 -0
- lfx/components/mem0/mem0_chat_memory.py +147 -0
- lfx/components/milvus/__init__.py +34 -0
- lfx/components/milvus/milvus.py +115 -0
- lfx/components/mistral/__init__.py +37 -0
- lfx/components/mistral/mistral.py +114 -0
- lfx/components/mistral/mistral_embeddings.py +58 -0
- lfx/components/models/__init__.py +89 -0
- lfx/components/models_and_agents/__init__.py +49 -0
- lfx/components/models_and_agents/agent.py +644 -0
- lfx/components/models_and_agents/embedding_model.py +423 -0
- lfx/components/models_and_agents/language_model.py +398 -0
- lfx/components/models_and_agents/mcp_component.py +594 -0
- lfx/components/models_and_agents/memory.py +268 -0
- lfx/components/models_and_agents/prompt.py +67 -0
- lfx/components/mongodb/__init__.py +34 -0
- lfx/components/mongodb/mongodb_atlas.py +213 -0
- lfx/components/needle/__init__.py +3 -0
- lfx/components/needle/needle.py +104 -0
- lfx/components/notdiamond/__init__.py +34 -0
- lfx/components/notdiamond/notdiamond.py +228 -0
- lfx/components/novita/__init__.py +32 -0
- lfx/components/novita/novita.py +130 -0
- lfx/components/nvidia/__init__.py +57 -0
- lfx/components/nvidia/nvidia.py +151 -0
- lfx/components/nvidia/nvidia_embedding.py +77 -0
- lfx/components/nvidia/nvidia_ingest.py +317 -0
- lfx/components/nvidia/nvidia_rerank.py +63 -0
- lfx/components/nvidia/system_assist.py +65 -0
- lfx/components/olivya/__init__.py +3 -0
- lfx/components/olivya/olivya.py +116 -0
- lfx/components/ollama/__init__.py +37 -0
- lfx/components/ollama/ollama.py +548 -0
- lfx/components/ollama/ollama_embeddings.py +103 -0
- lfx/components/openai/__init__.py +37 -0
- lfx/components/openai/openai.py +100 -0
- lfx/components/openai/openai_chat_model.py +176 -0
- lfx/components/openrouter/__init__.py +32 -0
- lfx/components/openrouter/openrouter.py +104 -0
- lfx/components/output_parsers/__init__.py +3 -0
- lfx/components/perplexity/__init__.py +34 -0
- lfx/components/perplexity/perplexity.py +75 -0
- lfx/components/pgvector/__init__.py +34 -0
- lfx/components/pgvector/pgvector.py +72 -0
- lfx/components/pinecone/__init__.py +34 -0
- lfx/components/pinecone/pinecone.py +134 -0
- lfx/components/processing/__init__.py +72 -0
- lfx/components/processing/alter_metadata.py +109 -0
- lfx/components/processing/combine_text.py +40 -0
- lfx/components/processing/converter.py +248 -0
- lfx/components/processing/create_data.py +111 -0
- lfx/components/processing/create_list.py +40 -0
- lfx/components/processing/data_operations.py +528 -0
- lfx/components/processing/data_to_dataframe.py +71 -0
- lfx/components/processing/dataframe_operations.py +313 -0
- lfx/components/processing/dataframe_to_toolset.py +259 -0
- lfx/components/processing/dynamic_create_data.py +357 -0
- lfx/components/processing/extract_key.py +54 -0
- lfx/components/processing/filter_data.py +43 -0
- lfx/components/processing/filter_data_values.py +89 -0
- lfx/components/processing/json_cleaner.py +104 -0
- lfx/components/processing/merge_data.py +91 -0
- lfx/components/processing/message_to_data.py +37 -0
- lfx/components/processing/output_parser.py +46 -0
- lfx/components/processing/parse_data.py +71 -0
- lfx/components/processing/parse_dataframe.py +69 -0
- lfx/components/processing/parse_json_data.py +91 -0
- lfx/components/processing/parser.py +148 -0
- lfx/components/processing/regex.py +83 -0
- lfx/components/processing/select_data.py +49 -0
- lfx/components/processing/split_text.py +141 -0
- lfx/components/processing/store_message.py +91 -0
- lfx/components/processing/update_data.py +161 -0
- lfx/components/prototypes/__init__.py +35 -0
- lfx/components/prototypes/python_function.py +73 -0
- lfx/components/qdrant/__init__.py +34 -0
- lfx/components/qdrant/qdrant.py +109 -0
- lfx/components/redis/__init__.py +37 -0
- lfx/components/redis/redis.py +89 -0
- lfx/components/redis/redis_chat.py +43 -0
- lfx/components/sambanova/__init__.py +32 -0
- lfx/components/sambanova/sambanova.py +84 -0
- lfx/components/scrapegraph/__init__.py +40 -0
- lfx/components/scrapegraph/scrapegraph_markdownify_api.py +64 -0
- lfx/components/scrapegraph/scrapegraph_search_api.py +64 -0
- lfx/components/scrapegraph/scrapegraph_smart_scraper_api.py +71 -0
- lfx/components/searchapi/__init__.py +34 -0
- lfx/components/searchapi/search.py +79 -0
- lfx/components/serpapi/__init__.py +3 -0
- lfx/components/serpapi/serp.py +115 -0
- lfx/components/supabase/__init__.py +34 -0
- lfx/components/supabase/supabase.py +76 -0
- lfx/components/tavily/__init__.py +4 -0
- lfx/components/tavily/tavily_extract.py +117 -0
- lfx/components/tavily/tavily_search.py +212 -0
- lfx/components/textsplitters/__init__.py +3 -0
- lfx/components/toolkits/__init__.py +3 -0
- lfx/components/tools/__init__.py +66 -0
- lfx/components/tools/calculator.py +109 -0
- lfx/components/tools/google_search_api.py +45 -0
- lfx/components/tools/google_serper_api.py +115 -0
- lfx/components/tools/python_code_structured_tool.py +328 -0
- lfx/components/tools/python_repl.py +98 -0
- lfx/components/tools/search_api.py +88 -0
- lfx/components/tools/searxng.py +145 -0
- lfx/components/tools/serp_api.py +120 -0
- lfx/components/tools/tavily_search_tool.py +345 -0
- lfx/components/tools/wikidata_api.py +103 -0
- lfx/components/tools/wikipedia_api.py +50 -0
- lfx/components/tools/yahoo_finance.py +130 -0
- lfx/components/twelvelabs/__init__.py +52 -0
- lfx/components/twelvelabs/convert_astra_results.py +84 -0
- lfx/components/twelvelabs/pegasus_index.py +311 -0
- lfx/components/twelvelabs/split_video.py +301 -0
- lfx/components/twelvelabs/text_embeddings.py +57 -0
- lfx/components/twelvelabs/twelvelabs_pegasus.py +408 -0
- lfx/components/twelvelabs/video_embeddings.py +100 -0
- lfx/components/twelvelabs/video_file.py +191 -0
- lfx/components/unstructured/__init__.py +3 -0
- lfx/components/unstructured/unstructured.py +121 -0
- lfx/components/upstash/__init__.py +34 -0
- lfx/components/upstash/upstash.py +124 -0
- lfx/components/utilities/__init__.py +43 -0
- lfx/components/utilities/calculator_core.py +89 -0
- lfx/components/utilities/current_date.py +42 -0
- lfx/components/utilities/id_generator.py +42 -0
- lfx/components/utilities/python_repl_core.py +98 -0
- lfx/components/vectara/__init__.py +37 -0
- lfx/components/vectara/vectara.py +97 -0
- lfx/components/vectara/vectara_rag.py +164 -0
- lfx/components/vectorstores/__init__.py +34 -0
- lfx/components/vectorstores/local_db.py +270 -0
- lfx/components/vertexai/__init__.py +37 -0
- lfx/components/vertexai/vertexai.py +71 -0
- lfx/components/vertexai/vertexai_embeddings.py +67 -0
- lfx/components/vlmrun/__init__.py +34 -0
- lfx/components/vlmrun/vlmrun_transcription.py +224 -0
- lfx/components/weaviate/__init__.py +34 -0
- lfx/components/weaviate/weaviate.py +89 -0
- lfx/components/wikipedia/__init__.py +4 -0
- lfx/components/wikipedia/wikidata.py +86 -0
- lfx/components/wikipedia/wikipedia.py +53 -0
- lfx/components/wolframalpha/__init__.py +3 -0
- lfx/components/wolframalpha/wolfram_alpha_api.py +54 -0
- lfx/components/xai/__init__.py +32 -0
- lfx/components/xai/xai.py +167 -0
- lfx/components/yahoosearch/__init__.py +3 -0
- lfx/components/yahoosearch/yahoo.py +137 -0
- lfx/components/youtube/__init__.py +52 -0
- lfx/components/youtube/channel.py +227 -0
- lfx/components/youtube/comments.py +231 -0
- lfx/components/youtube/playlist.py +33 -0
- lfx/components/youtube/search.py +120 -0
- lfx/components/youtube/trending.py +285 -0
- lfx/components/youtube/video_details.py +263 -0
- lfx/components/youtube/youtube_transcripts.py +206 -0
- lfx/components/zep/__init__.py +3 -0
- lfx/components/zep/zep.py +45 -0
- lfx/constants.py +6 -0
- lfx/custom/__init__.py +7 -0
- lfx/custom/attributes.py +87 -0
- lfx/custom/code_parser/__init__.py +3 -0
- lfx/custom/code_parser/code_parser.py +361 -0
- lfx/custom/custom_component/__init__.py +0 -0
- lfx/custom/custom_component/base_component.py +128 -0
- lfx/custom/custom_component/component.py +1890 -0
- lfx/custom/custom_component/component_with_cache.py +8 -0
- lfx/custom/custom_component/custom_component.py +650 -0
- lfx/custom/dependency_analyzer.py +165 -0
- lfx/custom/directory_reader/__init__.py +3 -0
- lfx/custom/directory_reader/directory_reader.py +359 -0
- lfx/custom/directory_reader/utils.py +171 -0
- lfx/custom/eval.py +12 -0
- lfx/custom/schema.py +32 -0
- lfx/custom/tree_visitor.py +21 -0
- lfx/custom/utils.py +877 -0
- lfx/custom/validate.py +523 -0
- lfx/events/__init__.py +1 -0
- lfx/events/event_manager.py +110 -0
- lfx/exceptions/__init__.py +0 -0
- lfx/exceptions/component.py +15 -0
- lfx/field_typing/__init__.py +91 -0
- lfx/field_typing/constants.py +216 -0
- lfx/field_typing/range_spec.py +35 -0
- lfx/graph/__init__.py +6 -0
- lfx/graph/edge/__init__.py +0 -0
- lfx/graph/edge/base.py +300 -0
- lfx/graph/edge/schema.py +119 -0
- lfx/graph/edge/utils.py +0 -0
- lfx/graph/graph/__init__.py +0 -0
- lfx/graph/graph/ascii.py +202 -0
- lfx/graph/graph/base.py +2298 -0
- lfx/graph/graph/constants.py +63 -0
- lfx/graph/graph/runnable_vertices_manager.py +133 -0
- lfx/graph/graph/schema.py +53 -0
- lfx/graph/graph/state_model.py +66 -0
- lfx/graph/graph/utils.py +1024 -0
- lfx/graph/schema.py +75 -0
- lfx/graph/state/__init__.py +0 -0
- lfx/graph/state/model.py +250 -0
- lfx/graph/utils.py +206 -0
- lfx/graph/vertex/__init__.py +0 -0
- lfx/graph/vertex/base.py +826 -0
- lfx/graph/vertex/constants.py +0 -0
- lfx/graph/vertex/exceptions.py +4 -0
- lfx/graph/vertex/param_handler.py +316 -0
- lfx/graph/vertex/schema.py +26 -0
- lfx/graph/vertex/utils.py +19 -0
- lfx/graph/vertex/vertex_types.py +489 -0
- lfx/helpers/__init__.py +141 -0
- lfx/helpers/base_model.py +71 -0
- lfx/helpers/custom.py +13 -0
- lfx/helpers/data.py +167 -0
- lfx/helpers/flow.py +308 -0
- lfx/inputs/__init__.py +68 -0
- lfx/inputs/constants.py +2 -0
- lfx/inputs/input_mixin.py +352 -0
- lfx/inputs/inputs.py +718 -0
- lfx/inputs/validators.py +19 -0
- lfx/interface/__init__.py +6 -0
- lfx/interface/components.py +897 -0
- lfx/interface/importing/__init__.py +5 -0
- lfx/interface/importing/utils.py +39 -0
- lfx/interface/initialize/__init__.py +3 -0
- lfx/interface/initialize/loading.py +317 -0
- lfx/interface/listing.py +26 -0
- lfx/interface/run.py +16 -0
- lfx/interface/utils.py +111 -0
- lfx/io/__init__.py +63 -0
- lfx/io/schema.py +295 -0
- lfx/load/__init__.py +8 -0
- lfx/load/load.py +256 -0
- lfx/load/utils.py +99 -0
- lfx/log/__init__.py +5 -0
- lfx/log/logger.py +411 -0
- lfx/logging/__init__.py +11 -0
- lfx/logging/logger.py +24 -0
- lfx/memory/__init__.py +70 -0
- lfx/memory/stubs.py +302 -0
- lfx/processing/__init__.py +1 -0
- lfx/processing/process.py +238 -0
- lfx/processing/utils.py +25 -0
- lfx/py.typed +0 -0
- lfx/schema/__init__.py +66 -0
- lfx/schema/artifact.py +83 -0
- lfx/schema/content_block.py +62 -0
- lfx/schema/content_types.py +91 -0
- lfx/schema/cross_module.py +80 -0
- lfx/schema/data.py +309 -0
- lfx/schema/dataframe.py +210 -0
- lfx/schema/dotdict.py +74 -0
- lfx/schema/encoders.py +13 -0
- lfx/schema/graph.py +47 -0
- lfx/schema/image.py +184 -0
- lfx/schema/json_schema.py +186 -0
- lfx/schema/log.py +62 -0
- lfx/schema/message.py +493 -0
- lfx/schema/openai_responses_schemas.py +74 -0
- lfx/schema/properties.py +41 -0
- lfx/schema/schema.py +180 -0
- lfx/schema/serialize.py +13 -0
- lfx/schema/table.py +142 -0
- lfx/schema/validators.py +114 -0
- lfx/serialization/__init__.py +5 -0
- lfx/serialization/constants.py +2 -0
- lfx/serialization/serialization.py +314 -0
- lfx/services/__init__.py +26 -0
- lfx/services/base.py +28 -0
- lfx/services/cache/__init__.py +6 -0
- lfx/services/cache/base.py +183 -0
- lfx/services/cache/service.py +166 -0
- lfx/services/cache/utils.py +169 -0
- lfx/services/chat/__init__.py +1 -0
- lfx/services/chat/config.py +2 -0
- lfx/services/chat/schema.py +10 -0
- lfx/services/database/__init__.py +5 -0
- lfx/services/database/service.py +25 -0
- lfx/services/deps.py +194 -0
- lfx/services/factory.py +19 -0
- lfx/services/initialize.py +19 -0
- lfx/services/interfaces.py +103 -0
- lfx/services/manager.py +185 -0
- lfx/services/mcp_composer/__init__.py +6 -0
- lfx/services/mcp_composer/factory.py +16 -0
- lfx/services/mcp_composer/service.py +1441 -0
- lfx/services/schema.py +21 -0
- lfx/services/session.py +87 -0
- lfx/services/settings/__init__.py +3 -0
- lfx/services/settings/auth.py +133 -0
- lfx/services/settings/base.py +668 -0
- lfx/services/settings/constants.py +43 -0
- lfx/services/settings/factory.py +23 -0
- lfx/services/settings/feature_flags.py +11 -0
- lfx/services/settings/service.py +35 -0
- lfx/services/settings/utils.py +40 -0
- lfx/services/shared_component_cache/__init__.py +1 -0
- lfx/services/shared_component_cache/factory.py +30 -0
- lfx/services/shared_component_cache/service.py +9 -0
- lfx/services/storage/__init__.py +5 -0
- lfx/services/storage/local.py +185 -0
- lfx/services/storage/service.py +177 -0
- lfx/services/tracing/__init__.py +1 -0
- lfx/services/tracing/service.py +21 -0
- lfx/settings.py +6 -0
- lfx/template/__init__.py +6 -0
- lfx/template/field/__init__.py +0 -0
- lfx/template/field/base.py +260 -0
- lfx/template/field/prompt.py +15 -0
- lfx/template/frontend_node/__init__.py +6 -0
- lfx/template/frontend_node/base.py +214 -0
- lfx/template/frontend_node/constants.py +65 -0
- lfx/template/frontend_node/custom_components.py +79 -0
- lfx/template/template/__init__.py +0 -0
- lfx/template/template/base.py +100 -0
- lfx/template/utils.py +217 -0
- lfx/type_extraction/__init__.py +19 -0
- lfx/type_extraction/type_extraction.py +75 -0
- lfx/type_extraction.py +80 -0
- lfx/utils/__init__.py +1 -0
- lfx/utils/async_helpers.py +42 -0
- lfx/utils/component_utils.py +154 -0
- lfx/utils/concurrency.py +60 -0
- lfx/utils/connection_string_parser.py +11 -0
- lfx/utils/constants.py +233 -0
- lfx/utils/data_structure.py +212 -0
- lfx/utils/exceptions.py +22 -0
- lfx/utils/helpers.py +34 -0
- lfx/utils/image.py +79 -0
- lfx/utils/langflow_utils.py +52 -0
- lfx/utils/lazy_load.py +15 -0
- lfx/utils/request_utils.py +18 -0
- lfx/utils/schemas.py +139 -0
- lfx/utils/ssrf_protection.py +384 -0
- lfx/utils/util.py +626 -0
- lfx/utils/util_strings.py +56 -0
- lfx/utils/validate_cloud.py +26 -0
- lfx/utils/version.py +24 -0
- lfx_nightly-0.2.0.dev25.dist-info/METADATA +312 -0
- lfx_nightly-0.2.0.dev25.dist-info/RECORD +769 -0
- lfx_nightly-0.2.0.dev25.dist-info/WHEEL +4 -0
- lfx_nightly-0.2.0.dev25.dist-info/entry_points.txt +2 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioGoogleDocsAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "GoogleDocs"
|
|
6
|
+
icon = "Googledocs"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "googledocs"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Google Docs component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioGooglemeetAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "GoogleMeet"
|
|
6
|
+
icon = "Googlemeet"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "googlemeet"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Google Calendar component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioGoogleSheetsAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "GoogleSheets"
|
|
6
|
+
icon = "Googlesheets"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "googlesheets"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Google Sheets component."""
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioGoogleTasksAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "GoogleTasks"
|
|
6
|
+
icon = "GoogleTasks"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "googletasks"
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioHeygenAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Heygen"
|
|
6
|
+
icon = "Heygen"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "heygen"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Heygen component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioInstagramAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Instagram"
|
|
6
|
+
icon = "Instagram"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "instagram"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Instagram component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioJiraAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Jira"
|
|
6
|
+
icon = "Jira"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "jira"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Jira component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioJotformAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Jotform"
|
|
6
|
+
icon = "Jotform"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "jotform"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Jotform component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioKlaviyoAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Klaviyo"
|
|
6
|
+
icon = "Klaviyo"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "klaviyo"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Klaviyo component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioLinearAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Linear"
|
|
6
|
+
icon = "Linear"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "linear"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Linear component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioListennotesAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Listennotes"
|
|
6
|
+
icon = "Listennotes"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "listennotes"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Listennotes component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioMem0APIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Mem0"
|
|
6
|
+
icon = "Mem0Composio"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "mem0"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Mem0 component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioMiroAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Miro"
|
|
6
|
+
icon = "Miro"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "miro"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Miro component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioMissiveAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Missive"
|
|
6
|
+
icon = "Missive"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "missive"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Missive component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioNotionAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Notion"
|
|
6
|
+
icon = "Notion"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "notion"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Notion component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioOneDriveAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "OneDrive"
|
|
6
|
+
icon = "One_Drive"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "one_drive"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for OneDrive component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioOutlookAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Outlook"
|
|
6
|
+
icon = "Outlook"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "outlook"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Gmail component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioPandadocAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Pandadoc"
|
|
6
|
+
icon = "Pandadoc"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "pandadoc"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Pandadoc component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioPeopleDataLabsAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "PeopleDataLabs"
|
|
6
|
+
icon = "Peopledatalabs"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "peopledatalabs"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for PeopleDataLabs component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioPerplexityAIAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "PerplexityAI"
|
|
6
|
+
icon = "PerplexityComposio"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "perplexityai"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for PerplexityAI component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioRedditAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Reddit"
|
|
6
|
+
icon = "Reddit"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "reddit"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Reddit component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioSerpAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "SerpAPI"
|
|
6
|
+
icon = "SerpSearchComposio"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "serpapi"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for SerpAPI component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioSlackAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Slack"
|
|
6
|
+
icon = "SlackComposio"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "slack"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Slack component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioSlackbotAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Slackbot"
|
|
6
|
+
icon = "SlackComposio"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "slackbot"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Slackbot component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioSnowflakeAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Snowflake"
|
|
6
|
+
icon = "Snowflake"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "snowflake"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Snowflake component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioSupabaseAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Supabase"
|
|
6
|
+
icon = "Supabase"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "supabase"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Supabase component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioTavilyAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Tavily"
|
|
6
|
+
icon = "Tavily"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "tavily"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Tavily component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioTimelinesAIAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "TimelinesAI"
|
|
6
|
+
icon = "Timelinesai"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "timelinesai"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for TimelinesAI component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioTodoistAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Todoist"
|
|
6
|
+
icon = "Todoist"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "todoist"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Todoist component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioWrikeAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "Wrike"
|
|
6
|
+
icon = "Wrike"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "wrike"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Wrike component."""
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from lfx.base.composio.composio_base import ComposioBaseComponent
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ComposioYoutubeAPIComponent(ComposioBaseComponent):
|
|
5
|
+
display_name: str = "YouTube"
|
|
6
|
+
icon = "YouTube"
|
|
7
|
+
documentation: str = "https://docs.composio.dev"
|
|
8
|
+
app_name = "youtube"
|
|
9
|
+
|
|
10
|
+
def set_default_tools(self):
|
|
11
|
+
"""Set the default tools for Youtube component."""
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
from langchain_community.document_loaders import ConfluenceLoader
|
|
2
|
+
from langchain_community.document_loaders.confluence import ContentFormat
|
|
3
|
+
|
|
4
|
+
from lfx.custom.custom_component.component import Component
|
|
5
|
+
from lfx.io import BoolInput, DropdownInput, IntInput, Output, SecretStrInput, StrInput
|
|
6
|
+
from lfx.schema.data import Data
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class ConfluenceComponent(Component):
|
|
10
|
+
display_name = "Confluence"
|
|
11
|
+
description = "Confluence wiki collaboration platform"
|
|
12
|
+
documentation = "https://python.langchain.com/v0.2/docs/integrations/document_loaders/confluence/"
|
|
13
|
+
trace_type = "tool"
|
|
14
|
+
icon = "Confluence"
|
|
15
|
+
name = "Confluence"
|
|
16
|
+
|
|
17
|
+
inputs = [
|
|
18
|
+
StrInput(
|
|
19
|
+
name="url",
|
|
20
|
+
display_name="Site URL",
|
|
21
|
+
required=True,
|
|
22
|
+
info="The base URL of the Confluence Space. Example: https://<company>.atlassian.net/wiki.",
|
|
23
|
+
),
|
|
24
|
+
StrInput(
|
|
25
|
+
name="username",
|
|
26
|
+
display_name="Username",
|
|
27
|
+
required=True,
|
|
28
|
+
info="Atlassian User E-mail. Example: email@example.com",
|
|
29
|
+
),
|
|
30
|
+
SecretStrInput(
|
|
31
|
+
name="api_key",
|
|
32
|
+
display_name="Confluence API Key",
|
|
33
|
+
required=True,
|
|
34
|
+
info="Atlassian Key. Create at: https://id.atlassian.com/manage-profile/security/api-tokens",
|
|
35
|
+
),
|
|
36
|
+
StrInput(name="space_key", display_name="Space Key", required=True),
|
|
37
|
+
BoolInput(name="cloud", display_name="Use Cloud?", required=True, value=True, advanced=True),
|
|
38
|
+
DropdownInput(
|
|
39
|
+
name="content_format",
|
|
40
|
+
display_name="Content Format",
|
|
41
|
+
options=[
|
|
42
|
+
ContentFormat.EDITOR.value,
|
|
43
|
+
ContentFormat.EXPORT_VIEW.value,
|
|
44
|
+
ContentFormat.ANONYMOUS_EXPORT_VIEW.value,
|
|
45
|
+
ContentFormat.STORAGE.value,
|
|
46
|
+
ContentFormat.VIEW.value,
|
|
47
|
+
],
|
|
48
|
+
value=ContentFormat.STORAGE.value,
|
|
49
|
+
required=True,
|
|
50
|
+
advanced=True,
|
|
51
|
+
info="Specify content format, defaults to ContentFormat.STORAGE",
|
|
52
|
+
),
|
|
53
|
+
IntInput(
|
|
54
|
+
name="max_pages",
|
|
55
|
+
display_name="Max Pages",
|
|
56
|
+
required=False,
|
|
57
|
+
value=1000,
|
|
58
|
+
advanced=True,
|
|
59
|
+
info="Maximum number of pages to retrieve in total, defaults 1000",
|
|
60
|
+
),
|
|
61
|
+
]
|
|
62
|
+
|
|
63
|
+
outputs = [
|
|
64
|
+
Output(name="data", display_name="Data", method="load_documents"),
|
|
65
|
+
]
|
|
66
|
+
|
|
67
|
+
def build_confluence(self) -> ConfluenceLoader:
|
|
68
|
+
content_format = ContentFormat(self.content_format)
|
|
69
|
+
return ConfluenceLoader(
|
|
70
|
+
url=self.url,
|
|
71
|
+
username=self.username,
|
|
72
|
+
api_key=self.api_key,
|
|
73
|
+
cloud=self.cloud,
|
|
74
|
+
space_key=self.space_key,
|
|
75
|
+
content_format=content_format,
|
|
76
|
+
max_pages=self.max_pages,
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
def load_documents(self) -> list[Data]:
|
|
80
|
+
confluence = self.build_confluence()
|
|
81
|
+
documents = confluence.load()
|
|
82
|
+
data = [Data.from_document(doc) for doc in documents] # Using the from_document method of Data
|
|
83
|
+
self.status = data
|
|
84
|
+
return data
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from typing import TYPE_CHECKING, Any
|
|
4
|
+
|
|
5
|
+
from lfx.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__)
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
from datetime import timedelta
|
|
2
|
+
|
|
3
|
+
from langchain_community.vectorstores import CouchbaseVectorStore
|
|
4
|
+
|
|
5
|
+
from lfx.base.vectorstores.model import LCVectorStoreComponent, check_cached_vector_store
|
|
6
|
+
from lfx.helpers.data import docs_to_data
|
|
7
|
+
from lfx.io import HandleInput, IntInput, SecretStrInput, StrInput
|
|
8
|
+
from lfx.schema.data import Data
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class CouchbaseVectorStoreComponent(LCVectorStoreComponent):
|
|
12
|
+
display_name = "Couchbase"
|
|
13
|
+
description = "Couchbase Vector Store with search capabilities"
|
|
14
|
+
name = "Couchbase"
|
|
15
|
+
icon = "Couchbase"
|
|
16
|
+
|
|
17
|
+
inputs = [
|
|
18
|
+
SecretStrInput(
|
|
19
|
+
name="couchbase_connection_string", display_name="Couchbase Cluster connection string", required=True
|
|
20
|
+
),
|
|
21
|
+
StrInput(name="couchbase_username", display_name="Couchbase username", required=True),
|
|
22
|
+
SecretStrInput(name="couchbase_password", display_name="Couchbase password", required=True),
|
|
23
|
+
StrInput(name="bucket_name", display_name="Bucket Name", required=True),
|
|
24
|
+
StrInput(name="scope_name", display_name="Scope Name", required=True),
|
|
25
|
+
StrInput(name="collection_name", display_name="Collection Name", required=True),
|
|
26
|
+
StrInput(name="index_name", display_name="Index Name", required=True),
|
|
27
|
+
*LCVectorStoreComponent.inputs,
|
|
28
|
+
HandleInput(name="embedding", display_name="Embedding", input_types=["Embeddings"]),
|
|
29
|
+
IntInput(
|
|
30
|
+
name="number_of_results",
|
|
31
|
+
display_name="Number of Results",
|
|
32
|
+
info="Number of results to return.",
|
|
33
|
+
value=4,
|
|
34
|
+
advanced=True,
|
|
35
|
+
),
|
|
36
|
+
]
|
|
37
|
+
|
|
38
|
+
@check_cached_vector_store
|
|
39
|
+
def build_vector_store(self) -> CouchbaseVectorStore:
|
|
40
|
+
try:
|
|
41
|
+
from couchbase.auth import PasswordAuthenticator
|
|
42
|
+
from couchbase.cluster import Cluster
|
|
43
|
+
from couchbase.options import ClusterOptions
|
|
44
|
+
except ImportError as e:
|
|
45
|
+
msg = "Failed to import Couchbase dependencies. Install it using `uv pip install langflow[couchbase] --pre`"
|
|
46
|
+
raise ImportError(msg) from e
|
|
47
|
+
|
|
48
|
+
try:
|
|
49
|
+
auth = PasswordAuthenticator(self.couchbase_username, self.couchbase_password)
|
|
50
|
+
options = ClusterOptions(auth)
|
|
51
|
+
cluster = Cluster(self.couchbase_connection_string, options)
|
|
52
|
+
|
|
53
|
+
cluster.wait_until_ready(timedelta(seconds=5))
|
|
54
|
+
except Exception as e:
|
|
55
|
+
msg = f"Failed to connect to Couchbase: {e}"
|
|
56
|
+
raise ValueError(msg) from e
|
|
57
|
+
|
|
58
|
+
self.ingest_data = self._prepare_ingest_data()
|
|
59
|
+
|
|
60
|
+
documents = []
|
|
61
|
+
for _input in self.ingest_data or []:
|
|
62
|
+
if isinstance(_input, Data):
|
|
63
|
+
documents.append(_input.to_lc_document())
|
|
64
|
+
else:
|
|
65
|
+
documents.append(_input)
|
|
66
|
+
|
|
67
|
+
if documents:
|
|
68
|
+
couchbase_vs = CouchbaseVectorStore.from_documents(
|
|
69
|
+
documents=documents,
|
|
70
|
+
cluster=cluster,
|
|
71
|
+
bucket_name=self.bucket_name,
|
|
72
|
+
scope_name=self.scope_name,
|
|
73
|
+
collection_name=self.collection_name,
|
|
74
|
+
embedding=self.embedding,
|
|
75
|
+
index_name=self.index_name,
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
else:
|
|
79
|
+
couchbase_vs = CouchbaseVectorStore(
|
|
80
|
+
cluster=cluster,
|
|
81
|
+
bucket_name=self.bucket_name,
|
|
82
|
+
scope_name=self.scope_name,
|
|
83
|
+
collection_name=self.collection_name,
|
|
84
|
+
embedding=self.embedding,
|
|
85
|
+
index_name=self.index_name,
|
|
86
|
+
)
|
|
87
|
+
|
|
88
|
+
return couchbase_vs
|
|
89
|
+
|
|
90
|
+
def search_documents(self) -> list[Data]:
|
|
91
|
+
vector_store = self.build_vector_store()
|
|
92
|
+
|
|
93
|
+
if self.search_query and isinstance(self.search_query, str) and self.search_query.strip():
|
|
94
|
+
docs = vector_store.similarity_search(
|
|
95
|
+
query=self.search_query,
|
|
96
|
+
k=self.number_of_results,
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
data = docs_to_data(docs)
|
|
100
|
+
self.status = data
|
|
101
|
+
return data
|
|
102
|
+
return []
|