ref: sidebar experience improvement with new bundles (#8824)

* cohere sidebar

* side bar embeddings

* move memories

* sort style utils

* [autofix.ci] apply automated fixes

* serach components add

* Update __init__.py

* Update styleUtils.ts

* [autofix.ci] apply automated fixes

* Update model_input_constants.py

* fix lint

* update to wikipedia

*  (tableInputComponent.spec.ts): Refactor test to use for loops for better readability and efficiency
 (filterEdge-shard-1.spec.ts): Update model names for better clarity and consistency
🐛 (duckduckgo.spec.ts): Update selector for search button to match changes in the frontend
🐛 (generalBugs-shard-11.spec.ts): Update selector for search button to match changes in the frontend

* [autofix.ci] apply automated fixes

* update tests path

* update tests

* Update test_arxiv_component.py

* [autofix.ci] apply automated fixes

* make embeddings functions

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
This commit is contained in:
Edwin Jose 2025-07-02 15:11:59 -05:00 committed by GitHub
commit e28093234b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
84 changed files with 264 additions and 238 deletions

View file

@ -5,10 +5,10 @@ from langflow.components.amazon.amazon_bedrock_model import AmazonBedrockCompone
from langflow.components.anthropic.anthropic import AnthropicModelComponent
from langflow.components.azure.azure_openai import AzureChatOpenAIComponent
from langflow.components.google.google_generative_ai import GoogleGenerativeAIComponent
from langflow.components.languagemodels.groq import GroqModel
from langflow.components.languagemodels.sambanova import SambaNovaComponent
from langflow.components.groq.groq import GroqModel
from langflow.components.nvidia.nvidia import NVIDIAModelComponent
from langflow.components.openai.openai_chat_model import OpenAIModelComponent
from langflow.components.sambanova.sambanova import SambaNovaComponent
from langflow.inputs.inputs import InputTypes, SecretStrInput
from langflow.template.field.base import Input
@ -125,7 +125,7 @@ def _get_azure_inputs_and_fields():
def _get_groq_inputs_and_fields():
try:
from langflow.components.languagemodels.groq import GroqModel
from langflow.components.groq.groq import GroqModel
groq_inputs = get_filtered_inputs(GroqModel)
except ImportError as e:
@ -169,7 +169,7 @@ def _get_amazon_bedrock_inputs_and_fields():
def _get_sambanova_inputs_and_fields():
try:
from langflow.components.languagemodels.sambanova import SambaNovaComponent
from langflow.components.sambanova.sambanova import SambaNovaComponent
sambanova_inputs = get_filtered_inputs(SambaNovaComponent)
except ImportError as e:

View file

@ -0,0 +1,3 @@
from .arxiv import ArXivComponent
__all__ = ["ArXivComponent"]

View file

@ -0,0 +1,3 @@
from .baidu_qianfan_chat import QianfanChatEndpoint
__all__ = ["QianfanChatEndpoint"]

View file

@ -0,0 +1,3 @@
from .bing_search_api import BingSearchAPIComponent
__all__ = ["BingSearchAPIComponent"]

View file

@ -0,0 +1,3 @@
from .cloudflare import CloudflareWorkersAIEmbeddingsComponent
__all__ = ["CloudflareWorkersAIEmbeddingsComponent"]

View file

@ -1,3 +1,5 @@
from .cohere_embeddings import CohereEmbeddingsComponent
from .cohere_models import CohereComponent
from .cohere_rerank import CohereRerankComponent
__all__ = ["CohereRerankComponent"]
__all__ = ["CohereComponent", "CohereEmbeddingsComponent", "CohereRerankComponent"]

View file

@ -8,7 +8,7 @@ from langflow.io import SecretStrInput, SliderInput
class CohereComponent(LCModelComponent):
display_name = "Cohere"
display_name = "Cohere Language Models"
description = "Generate text using Cohere LLMs."
documentation = "https://python.langchain.com/docs/modules/model_io/models/llms/integrations/cohere"
icon = "Cohere"

View file

@ -0,0 +1,3 @@
from .deepseek import DeepSeekModelComponent
__all__ = ["DeepSeekModelComponent"]

View file

@ -0,0 +1,3 @@
from .duck_duck_go_search_run import DuckDuckGoSearchComponent
__all__ = ["DuckDuckGoSearchComponent"]

View file

@ -1,15 +1,9 @@
from .cloudflare import CloudflareWorkersAIEmbeddingsComponent
from .cohere import CohereEmbeddingsComponent
from .lmstudioembeddings import LMStudioEmbeddingsComponent
from .mistral import MistralAIEmbeddingsComponent
from .similarity import EmbeddingSimilarityComponent
from .text_embedder import TextEmbedderComponent
__all__ = [
"CloudflareWorkersAIEmbeddingsComponent",
"CohereEmbeddingsComponent",
"EmbeddingSimilarityComponent",
"LMStudioEmbeddingsComponent",
"MistralAIEmbeddingsComponent",
"TextEmbedderComponent",
]

View file

@ -11,6 +11,7 @@ class EmbeddingSimilarityComponent(Component):
display_name: str = "Embedding Similarity"
description: str = "Compute selected form of similarity between two embedding vectors."
icon = "equal"
legacy: bool = True
inputs = [
DataInput(

View file

@ -14,6 +14,7 @@ class TextEmbedderComponent(Component):
display_name: str = "Text Embedder"
description: str = "Generate embeddings for a given message using the specified embedding model."
icon = "binary"
legacy: bool = True
inputs = [
HandleInput(
name="embedding_model",

View file

@ -0,0 +1,3 @@
from .exa_search import ExaSearchToolkit
__all__ = ["ExaSearchToolkit"]

View file

@ -0,0 +1,3 @@
from .glean_search_api import GleanSearchAPISchema
__all__ = ["GleanSearchAPISchema"]

View file

@ -0,0 +1,3 @@
from .groq import GroqModel
__all__ = ["GroqModel"]

View file

@ -1,31 +0,0 @@
from .baidu_qianfan_chat import QianfanChatEndpointComponent
from .cohere import CohereComponent
from .deepseek import DeepSeekModelComponent
from .groq import GroqModel
from .lmstudiomodel import LMStudioModelComponent
from .maritalk import MaritalkModelComponent
from .mistral import MistralAIModelComponent
from .novita import NovitaModelComponent
from .openrouter import OpenRouterComponent
from .perplexity import PerplexityComponent
from .sambanova import SambaNovaComponent
from .xai import XAIModelComponent
__all__ = [
"ChatOllamaComponent",
"ChatVertexAIComponent",
"CohereComponent",
"DeepSeekModelComponent",
"GroqModel",
"HuggingFaceEndpointsComponent",
"LMStudioModelComponent",
"MaritalkModelComponent",
"MistralAIModelComponent",
"NovitaModelComponent",
"OpenRouterComponent",
"PerplexityComponent",
"QianfanChatEndpointComponent",
"SambaNovaComponent",
"WatsonxAIComponent",
"XAIModelComponent",
]

View file

@ -0,0 +1,4 @@
from .lmstudioembeddings import LMStudioEmbeddingsComponent
from .lmstudiomodel import LMStudioModelComponent
__all__ = ["LMStudioEmbeddingsComponent", "LMStudioModelComponent"]

View file

@ -0,0 +1,3 @@
from .maritalk import MaritalkModelComponent
__all__ = ["MaritalkModelComponent"]

View file

@ -0,0 +1,3 @@
from .mem0_chat_memory import Mem0MemoryComponent
__all__ = ["Mem0MemoryComponent"]

View file

@ -1,9 +0,0 @@
from .mem0_chat_memory import Mem0MemoryComponent
from .redis import RedisIndexChatMemory
from .zep import ZepChatMemory
__all__ = [
"Mem0MemoryComponent",
"RedisIndexChatMemory",
"ZepChatMemory",
]

View file

@ -0,0 +1,4 @@
from .mistral import MistralAIModelComponent
from .mistral_embeddings import MistralAIEmbeddingsComponent
__all__ = ["MistralAIEmbeddingsComponent", "MistralAIModelComponent"]

View file

@ -0,0 +1,3 @@
from .novita import NovitaModelComponent
__all__ = ["NovitaModelComponent"]

View file

@ -0,0 +1,3 @@
from .openrouter import OpenRouterComponent
__all__ = ["OpenRouterComponent"]

View file

@ -0,0 +1,3 @@
from .perplexity import PerplexityComponent
__all__ = ["PerplexityComponent"]

View file

@ -0,0 +1,3 @@
from .redis import RedisIndexChatMemory
__all__ = ["RedisIndexChatMemory"]

View file

@ -0,0 +1,3 @@
from .sambanova import SambaNovaComponent
__all__ = ["SambaNovaComponent"]

View file

@ -1,29 +0,0 @@
from .arxiv import ArXivComponent
from .bing_search_api import BingSearchAPIComponent
from .duck_duck_go_search_run import DuckDuckGoSearchComponent
from .exa_search import ExaSearchToolkit
from .glean_search_api import GleanSearchAPISchema
from .google_search_api_core import GoogleSearchAPICore
from .google_serper_api_core import GoogleSerperAPICore
from .search import SearchComponent
from .serp import SerpComponent
from .wikidata import WikidataComponent
from .wikipedia import WikipediaComponent
from .wolfram_alpha_api import WolframAlphaAPIComponent
from .yahoo import YahooFinanceSchema
__all__ = [
"ArXivComponent",
"BingSearchAPIComponent",
"DuckDuckGoSearchComponent",
"ExaSearchToolkit",
"GleanSearchAPISchema",
"GoogleSearchAPICore",
"GoogleSerperAPICore",
"SearchComponent",
"SerpComponent",
"WikidataComponent",
"WikipediaComponent",
"WolframAlphaAPIComponent",
"YahooFinanceSchema",
]

View file

@ -0,0 +1,3 @@
from .serp import SerpComponent
__all__ = ["SerpComponent"]

View file

@ -0,0 +1,4 @@
from .wikidata import WikidataComponent
from .wikipedia import WikipediaComponent
__all__ = ["WikidataComponent", "WikipediaComponent"]

View file

@ -0,0 +1,3 @@
from .wolfram_alpha_api import WolframAlphaAPIComponent
__all__ = ["WolframAlphaAPIComponent"]

View file

@ -0,0 +1,3 @@
from .xai import XAIModelComponent
__all__ = ["XAIModelComponent"]

View file

@ -0,0 +1,3 @@
from .yahoo import YfinanceComponent
__all__ = ["YfinanceComponent"]

View file

@ -0,0 +1,3 @@
from .zep import ZepChatMemory
__all__ = ["ZepChatMemory"]

View file

@ -26,9 +26,9 @@
"id": "reactflow__edge-ChatInput-u8rae{œdataTypeœ:œChatInputœ,œidœ:œChatInput-u8raeœ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}-Prompt-7Jzfo{œfieldNameœ:œUSER_INPUTœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "ChatInput-u8rae",
"sourceHandle": "{œdataTypeœ:œChatInputœ,œidœ:œChatInput-u8raeœ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œChatInputœ, œidœ: œChatInput-u8raeœ, œnameœ: œmessageœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-7Jzfo",
"targetHandle": "{œfieldNameœ:œUSER_INPUTœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œUSER_INPUTœ, œidœ: œPrompt-7Jzfoœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -55,9 +55,9 @@
"id": "reactflow__edge-Memory-U33nr{œdataTypeœ:œMemoryœ,œidœ:œMemory-U33nrœ,œnameœ:œmessages_textœ,œoutput_typesœ:[œMessageœ]}-Prompt-7Jzfo{œfieldNameœ:œCHAT_HISTORYœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Memory-U33nr",
"sourceHandle": "{œdataTypeœ:œMemoryœ,œidœ:œMemory-U33nrœ,œnameœ:œmessages_textœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œMemoryœ, œidœ: œMemory-U33nrœ, œnameœ: œmessages_textœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-7Jzfo",
"targetHandle": "{œfieldNameœ:œCHAT_HISTORYœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œCHAT_HISTORYœ, œidœ: œPrompt-7Jzfoœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -84,9 +84,9 @@
"id": "reactflow__edge-URL-LiTXv{œdataTypeœ:œURLœ,œidœ:œURL-LiTXvœ,œnameœ:œraw_resultsœ,œoutput_typesœ:[œMessageœ]}-Prompt-7Jzfo{œfieldNameœ:œEXAMPLE_COMPONENTSœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "URL-LiTXv",
"sourceHandle": "{œdataTypeœ:œURLœ,œidœ:œURL-LiTXvœ,œnameœ:œraw_resultsœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œURLœ, œidœ: œURL-LiTXvœ, œnameœ: œraw_resultsœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-7Jzfo",
"targetHandle": "{œfieldNameœ:œEXAMPLE_COMPONENTSœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œEXAMPLE_COMPONENTSœ, œidœ: œPrompt-7Jzfoœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -113,9 +113,9 @@
"id": "reactflow__edge-URL-E6QCv{œdataTypeœ:œURLœ,œidœ:œURL-E6QCvœ,œnameœ:œraw_resultsœ,œoutput_typesœ:[œMessageœ]}-Prompt-7Jzfo{œfieldNameœ:œCUSTOM_COMPONENT_CODEœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "URL-E6QCv",
"sourceHandle": "{œdataTypeœ:œURLœ,œidœ:œURL-E6QCvœ,œnameœ:œraw_resultsœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œURLœ, œidœ: œURL-E6QCvœ, œnameœ: œraw_resultsœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-7Jzfo",
"targetHandle": "{œfieldNameœ:œCUSTOM_COMPONENT_CODEœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œCUSTOM_COMPONENT_CODEœ, œidœ: œPrompt-7Jzfoœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -141,9 +141,9 @@
"id": "reactflow__edge-Prompt-7Jzfo{œdataTypeœ:œPromptœ,œidœ:œPrompt-7Jzfoœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-muTzI{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-muTzIœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-7Jzfo",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-7Jzfoœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-7Jzfoœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "LanguageModelComponent-muTzI",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-muTzIœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œLanguageModelComponent-muTzIœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -171,9 +171,9 @@
"id": "reactflow__edge-LanguageModelComponent-muTzI{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-muTzIœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}-ChatOutput-qF9Bn{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-qF9Bnœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}",
"selected": false,
"source": "LanguageModelComponent-muTzI",
"sourceHandle": "{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-muTzIœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œLanguageModelComponentœ, œidœ: œLanguageModelComponent-muTzIœ, œnameœ: œtext_outputœ, œoutput_typesœ: [œMessageœ]}",
"target": "ChatOutput-qF9Bn",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-qF9Bnœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œChatOutput-qF9Bnœ, œinputTypesœ: [œDataœ, œDataFrameœ, œMessageœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -200,9 +200,9 @@
"id": "reactflow__edge-URL-Gj8oh{œdataTypeœ:œURLœ,œidœ:œURL-Gj8ohœ,œnameœ:œraw_resultsœ,œoutput_typesœ:[œMessageœ]}-Prompt-7Jzfo{œfieldNameœ:œBASE_COMPONENT_CODEœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "URL-Gj8oh",
"sourceHandle": "{œdataTypeœ:œURLœ,œidœ:œURL-Gj8ohœ,œnameœ:œraw_resultsœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œURLœ, œidœ: œURL-Gj8ohœ, œnameœ: œraw_resultsœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-7Jzfo",
"targetHandle": "{œfieldNameœ:œBASE_COMPONENT_CODEœ,œidœ:œPrompt-7Jzfoœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œBASE_COMPONENT_CODEœ, œidœ: œPrompt-7Jzfoœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
}
],
"nodes": [

View file

@ -26,9 +26,9 @@
"id": "reactflow__edge-ChatInput-iYW45{œdataTypeœ:œChatInputœ,œidœ:œChatInput-iYW45œ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}-Prompt-aHVYv{œfieldNameœ:œinput_valueœ,œidœ:œPrompt-aHVYvœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "ChatInput-iYW45",
"sourceHandle": "{œdataTypeœ:œChatInputœ,œidœ:œChatInput-iYW45œ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œChatInputœ, œidœ: œChatInput-iYW45œ, œnameœ: œmessageœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-aHVYv",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œPrompt-aHVYvœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œPrompt-aHVYvœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -55,9 +55,9 @@
"id": "reactflow__edge-LanguageModelComponent-TZiUW{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-TZiUWœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}-Prompt-rQ5Up{œfieldNameœ:œprevious_responseœ,œidœ:œPrompt-rQ5Upœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "LanguageModelComponent-TZiUW",
"sourceHandle": "{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-TZiUWœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œLanguageModelComponentœ, œidœ: œLanguageModelComponent-TZiUWœ, œnameœ: œtext_outputœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-rQ5Up",
"targetHandle": "{œfieldNameœ:œprevious_responseœ,œidœ:œPrompt-rQ5Upœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œprevious_responseœ, œidœ: œPrompt-rQ5Upœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -83,9 +83,9 @@
"id": "reactflow__edge-Prompt-F8cZX{œdataTypeœ:œPromptœ,œidœ:œPrompt-F8cZXœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-TZiUW{œfieldNameœ:œsystem_messageœ,œidœ:œLanguageModelComponent-TZiUWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-F8cZX",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-F8cZXœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-F8cZXœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "LanguageModelComponent-TZiUW",
"targetHandle": "{œfieldNameœ:œsystem_messageœ,œidœ:œLanguageModelComponent-TZiUWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsystem_messageœ, œidœ: œLanguageModelComponent-TZiUWœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -111,9 +111,9 @@
"id": "reactflow__edge-ChatInput-iYW45{œdataTypeœ:œChatInputœ,œidœ:œChatInput-iYW45œ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-TZiUW{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-TZiUWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "ChatInput-iYW45",
"sourceHandle": "{œdataTypeœ:œChatInputœ,œidœ:œChatInput-iYW45œ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œChatInputœ, œidœ: œChatInput-iYW45œ, œnameœ: œmessageœ, œoutput_typesœ: [œMessageœ]}",
"target": "LanguageModelComponent-TZiUW",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-TZiUWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œLanguageModelComponent-TZiUWœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -139,9 +139,9 @@
"id": "reactflow__edge-Prompt-TbFFl{œdataTypeœ:œPromptœ,œidœ:œPrompt-TbFFlœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-80mt4{œfieldNameœ:œsystem_messageœ,œidœ:œLanguageModelComponent-80mt4œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-TbFFl",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-TbFFlœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-TbFFlœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "LanguageModelComponent-80mt4",
"targetHandle": "{œfieldNameœ:œsystem_messageœ,œidœ:œLanguageModelComponent-80mt4œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsystem_messageœ, œidœ: œLanguageModelComponent-80mt4œ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -167,9 +167,9 @@
"id": "reactflow__edge-Prompt-aHVYv{œdataTypeœ:œPromptœ,œidœ:œPrompt-aHVYvœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-80mt4{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-80mt4œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-aHVYv",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-aHVYvœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-aHVYvœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "LanguageModelComponent-80mt4",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-80mt4œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œLanguageModelComponent-80mt4œ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -197,9 +197,9 @@
"id": "reactflow__edge-LanguageModelComponent-80mt4{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-80mt4œ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}-ChatOutput-gZuRk{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-gZuRkœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}",
"selected": false,
"source": "LanguageModelComponent-80mt4",
"sourceHandle": "{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-80mt4œ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œLanguageModelComponentœ, œidœ: œLanguageModelComponent-80mt4œ, œnameœ: œtext_outputœ, œoutput_typesœ: [œMessageœ]}",
"target": "ChatOutput-gZuRk",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-gZuRkœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œChatOutput-gZuRkœ, œinputTypesœ: [œDataœ, œDataFrameœ, œMessageœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -225,9 +225,9 @@
"id": "reactflow__edge-Prompt-rQ5Up{œdataTypeœ:œPromptœ,œidœ:œPrompt-rQ5Upœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-Agent-mIgZ5{œfieldNameœ:œinput_valueœ,œidœ:œAgent-mIgZ5œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-rQ5Up",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-rQ5Upœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-rQ5Upœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "Agent-mIgZ5",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œAgent-mIgZ5œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œAgent-mIgZ5œ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -253,9 +253,9 @@
"id": "reactflow__edge-TavilySearchComponent-bJRoU{œdataTypeœ:œTavilySearchComponentœ,œidœ:œTavilySearchComponent-bJRoUœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}-Agent-mIgZ5{œfieldNameœ:œtoolsœ,œidœ:œAgent-mIgZ5œ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}",
"selected": false,
"source": "TavilySearchComponent-bJRoU",
"sourceHandle": "{œdataTypeœ:œTavilySearchComponentœ,œidœ:œTavilySearchComponent-bJRoUœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}",
"sourceHandle": "{œdataTypeœ: œTavilySearchComponentœ, œidœ: œTavilySearchComponent-bJRoUœ, œnameœ: œcomponent_as_toolœ, œoutput_typesœ: [œToolœ]}",
"target": "Agent-mIgZ5",
"targetHandle": "{œfieldNameœ:œtoolsœ,œidœ:œAgent-mIgZ5œ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œtoolsœ, œidœ: œAgent-mIgZ5œ, œinputTypesœ: [œToolœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -282,9 +282,9 @@
"id": "reactflow__edge-Agent-mIgZ5{œdataTypeœ:œAgentœ,œidœ:œAgent-mIgZ5œ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}-Prompt-aHVYv{œfieldNameœ:œsearch_resultsœ,œidœ:œPrompt-aHVYvœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Agent-mIgZ5",
"sourceHandle": "{œdataTypeœ:œAgentœ,œidœ:œAgent-mIgZ5œ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œAgentœ, œidœ: œAgent-mIgZ5œ, œnameœ: œresponseœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-aHVYv",
"targetHandle": "{œfieldNameœ:œsearch_resultsœ,œidœ:œPrompt-aHVYvœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsearch_resultsœ, œidœ: œPrompt-aHVYvœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
}
],
"nodes": [

View file

@ -25,9 +25,9 @@
"id": "reactflow__edge-ChatInput-8bLHN{œdataTypeœ:œChatInputœ,œidœ:œChatInput-8bLHNœ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}-ArXivComponent-wpsLb{œfieldNameœ:œsearch_queryœ,œidœ:œArXivComponent-wpsLbœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "ChatInput-8bLHN",
"sourceHandle": "{œdataTypeœ:œChatInputœ,œidœ:œChatInput-8bLHNœ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œChatInputœ, œidœ: œChatInput-8bLHNœ, œnameœ: œmessageœ, œoutput_typesœ: [œMessageœ]}",
"target": "ArXivComponent-wpsLb",
"targetHandle": "{œfieldNameœ:œsearch_queryœ,œidœ:œArXivComponent-wpsLbœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsearch_queryœ, œidœ: œArXivComponent-wpsLbœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -53,9 +53,9 @@
"id": "reactflow__edge-ArXivComponent-wpsLb{œdataTypeœ:œArXivComponentœ,œidœ:œArXivComponent-wpsLbœ,œnameœ:œdataframeœ,œoutput_typesœ:[œDataFrameœ]}-LoopComponent-GV15E{œfieldNameœ:œdataœ,œidœ:œLoopComponent-GV15Eœ,œinputTypesœ:[œDataFrameœ],œtypeœ:œotherœ}",
"selected": false,
"source": "ArXivComponent-wpsLb",
"sourceHandle": "{œdataTypeœ:œArXivComponentœ,œidœ:œArXivComponent-wpsLbœ,œnameœ:œdataframeœ,œoutput_typesœ:[œDataFrameœ]}",
"sourceHandle": "{œdataTypeœ: œArXivComponentœ, œidœ: œArXivComponent-wpsLbœ, œnameœ: œdataframeœ, œoutput_typesœ: [œDataFrameœ]}",
"target": "LoopComponent-GV15E",
"targetHandle": "{œfieldNameœ:œdataœ,œidœ:œLoopComponent-GV15Eœ,œinputTypesœ:[œDataFrameœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œdataœ, œidœ: œLoopComponent-GV15Eœ, œinputTypesœ: [œDataFrameœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -82,9 +82,9 @@
"id": "reactflow__edge-LoopComponent-GV15E{œdataTypeœ:œLoopComponentœ,œidœ:œLoopComponent-GV15Eœ,œnameœ:œitemœ,œoutput_typesœ:[œDataœ]}-ParserComponent-aKcLF{œfieldNameœ:œinput_dataœ,œidœ:œParserComponent-aKcLFœ,œinputTypesœ:[œDataFrameœ,œDataœ],œtypeœ:œotherœ}",
"selected": false,
"source": "LoopComponent-GV15E",
"sourceHandle": "{œdataTypeœ:œLoopComponentœ,œidœ:œLoopComponent-GV15Eœ,œnameœ:œitemœ,œoutput_typesœ:[œDataœ]}",
"sourceHandle": "{œdataTypeœ: œLoopComponentœ, œidœ: œLoopComponent-GV15Eœ, œnameœ: œitemœ, œoutput_typesœ: [œDataœ]}",
"target": "ParserComponent-aKcLF",
"targetHandle": "{œfieldNameœ:œinput_dataœ,œidœ:œParserComponent-aKcLFœ,œinputTypesœ:[œDataFrameœ,œDataœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œinput_dataœ, œidœ: œParserComponent-aKcLFœ, œinputTypesœ: [œDataFrameœ, œDataœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -110,9 +110,9 @@
"id": "reactflow__edge-ParserComponent-aKcLF{œdataTypeœ:œParserComponentœ,œidœ:œParserComponent-aKcLFœ,œnameœ:œparsed_textœ,œoutput_typesœ:[œMessageœ]}-LanguageModelComponent-ze4nq{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-ze4nqœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "ParserComponent-aKcLF",
"sourceHandle": "{œdataTypeœ:œParserComponentœ,œidœ:œParserComponent-aKcLFœ,œnameœ:œparsed_textœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œParserComponentœ, œidœ: œParserComponent-aKcLFœ, œnameœ: œparsed_textœ, œoutput_typesœ: [œMessageœ]}",
"target": "LanguageModelComponent-ze4nq",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œLanguageModelComponent-ze4nqœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œLanguageModelComponent-ze4nqœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -140,9 +140,9 @@
"id": "reactflow__edge-LanguageModelComponent-ze4nq{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-ze4nqœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}-TypeConverterComponent-NClYY{œfieldNameœ:œinput_dataœ,œidœ:œTypeConverterComponent-NClYYœ,œinputTypesœ:[œMessageœ,œDataœ,œDataFrameœ],œtypeœ:œotherœ}",
"selected": false,
"source": "LanguageModelComponent-ze4nq",
"sourceHandle": "{œdataTypeœ:œLanguageModelComponentœ,œidœ:œLanguageModelComponent-ze4nqœ,œnameœ:œtext_outputœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œLanguageModelComponentœ, œidœ: œLanguageModelComponent-ze4nqœ, œnameœ: œtext_outputœ, œoutput_typesœ: [œMessageœ]}",
"target": "TypeConverterComponent-NClYY",
"targetHandle": "{œfieldNameœ:œinput_dataœ,œidœ:œTypeConverterComponent-NClYYœ,œinputTypesœ:[œMessageœ,œDataœ,œDataFrameœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œinput_dataœ, œidœ: œTypeConverterComponent-NClYYœ, œinputTypesœ: [œMessageœ, œDataœ, œDataFrameœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -168,9 +168,9 @@
"id": "reactflow__edge-TypeConverterComponent-NClYY{œdataTypeœ:œTypeConverterComponentœ,œidœ:œTypeConverterComponent-NClYYœ,œnameœ:œdata_outputœ,œoutput_typesœ:[œDataœ]}-LoopComponent-GV15E{œdataTypeœ:œLoopComponentœ,œidœ:œLoopComponent-GV15Eœ,œnameœ:œitemœ,œoutput_typesœ:[œDataœ]}",
"selected": false,
"source": "TypeConverterComponent-NClYY",
"sourceHandle": "{œdataTypeœ:œTypeConverterComponentœ,œidœ:œTypeConverterComponent-NClYYœ,œnameœ:œdata_outputœ,œoutput_typesœ:[œDataœ]}",
"sourceHandle": "{œdataTypeœ: œTypeConverterComponentœ, œidœ: œTypeConverterComponent-NClYYœ, œnameœ: œdata_outputœ, œoutput_typesœ: [œDataœ]}",
"target": "LoopComponent-GV15E",
"targetHandle": "{œdataTypeœ:œLoopComponentœ,œidœ:œLoopComponent-GV15Eœ,œnameœ:œitemœ,œoutput_typesœ:[œDataœ]}"
"targetHandle": "{œdataTypeœ: œLoopComponentœ, œidœ: œLoopComponent-GV15Eœ, œnameœ: œitemœ, œoutput_typesœ: [œDataœ]}"
},
{
"animated": false,
@ -198,9 +198,9 @@
"id": "reactflow__edge-LoopComponent-GV15E{œdataTypeœ:œLoopComponentœ,œidœ:œLoopComponent-GV15Eœ,œnameœ:œdoneœ,œoutput_typesœ:[œDataFrameœ]}-ChatOutput-hmMTq{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-hmMTqœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}",
"selected": false,
"source": "LoopComponent-GV15E",
"sourceHandle": "{œdataTypeœ:œLoopComponentœ,œidœ:œLoopComponent-GV15Eœ,œnameœ:œdoneœ,œoutput_typesœ:[œDataFrameœ]}",
"sourceHandle": "{œdataTypeœ: œLoopComponentœ, œidœ: œLoopComponent-GV15Eœ, œnameœ: œdoneœ, œoutput_typesœ: [œDataFrameœ]}",
"target": "ChatOutput-hmMTq",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-hmMTqœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œChatOutput-hmMTqœ, œinputTypesœ: [œDataœ, œDataFrameœ, œMessageœ], œtypeœ: œotherœ}"
}
],
"nodes": [

View file

@ -25,9 +25,9 @@
"id": "reactflow__edge-Prompt-WvveL{œdataTypeœ:œPromptœ,œidœ:œPrompt-WvveLœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-Agent-X1iAT{œfieldNameœ:œsystem_promptœ,œidœ:œAgent-X1iATœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-WvveL",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-WvveLœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-WvveLœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "Agent-X1iAT",
"targetHandle": "{œfieldNameœ:œsystem_promptœ,œidœ:œAgent-X1iATœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsystem_promptœ, œidœ: œAgent-X1iATœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -53,9 +53,9 @@
"id": "reactflow__edge-Prompt-6JL4E{œdataTypeœ:œPromptœ,œidœ:œPrompt-6JL4Eœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-Agent-EQcU8{œfieldNameœ:œsystem_promptœ,œidœ:œAgent-EQcU8œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-6JL4E",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-6JL4Eœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-6JL4Eœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "Agent-EQcU8",
"targetHandle": "{œfieldNameœ:œsystem_promptœ,œidœ:œAgent-EQcU8œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsystem_promptœ, œidœ: œAgent-EQcU8œ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -82,9 +82,9 @@
"id": "reactflow__edge-Agent-EQcU8{œdataTypeœ:œAgentœ,œidœ:œAgent-EQcU8œ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}-Prompt-WvveL{œfieldNameœ:œfinance_agent_outputœ,œidœ:œPrompt-WvveLœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Agent-EQcU8",
"sourceHandle": "{œdataTypeœ:œAgentœ,œidœ:œAgent-EQcU8œ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œAgentœ, œidœ: œAgent-EQcU8œ, œnameœ: œresponseœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-WvveL",
"targetHandle": "{œfieldNameœ:œfinance_agent_outputœ,œidœ:œPrompt-WvveLœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œfinance_agent_outputœ, œidœ: œPrompt-WvveLœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -110,9 +110,9 @@
"id": "reactflow__edge-ChatInput-NuUHZ{œdataTypeœ:œChatInputœ,œidœ:œChatInput-NuUHZœ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}-Agent-b7nmW{œfieldNameœ:œinput_valueœ,œidœ:œAgent-b7nmWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "ChatInput-NuUHZ",
"sourceHandle": "{œdataTypeœ:œChatInputœ,œidœ:œChatInput-NuUHZœ,œnameœ:œmessageœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œChatInputœ, œidœ: œChatInput-NuUHZœ, œnameœ: œmessageœ, œoutput_typesœ: [œMessageœ]}",
"target": "Agent-b7nmW",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œAgent-b7nmWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œAgent-b7nmWœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -138,9 +138,9 @@
"id": "reactflow__edge-Prompt-ajhmq{œdataTypeœ:œPromptœ,œidœ:œPrompt-ajhmqœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}-Agent-b7nmW{œfieldNameœ:œsystem_promptœ,œidœ:œAgent-b7nmWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Prompt-ajhmq",
"sourceHandle": "{œdataTypeœ:œPromptœ,œidœ:œPrompt-ajhmqœ,œnameœ:œpromptœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œPromptœ, œidœ: œPrompt-ajhmqœ, œnameœ: œpromptœ, œoutput_typesœ: [œMessageœ]}",
"target": "Agent-b7nmW",
"targetHandle": "{œfieldNameœ:œsystem_promptœ,œidœ:œAgent-b7nmWœ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œsystem_promptœ, œidœ: œAgent-b7nmWœ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -166,9 +166,9 @@
"id": "reactflow__edge-Agent-b7nmW{œdataTypeœ:œAgentœ,œidœ:œAgent-b7nmWœ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}-Agent-EQcU8{œfieldNameœ:œinput_valueœ,œidœ:œAgent-EQcU8œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Agent-b7nmW",
"sourceHandle": "{œdataTypeœ:œAgentœ,œidœ:œAgent-b7nmWœ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œAgentœ, œidœ: œAgent-b7nmWœ, œnameœ: œresponseœ, œoutput_typesœ: [œMessageœ]}",
"target": "Agent-EQcU8",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œAgent-EQcU8œ,œinputTypesœ:[œMessageœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œAgent-EQcU8œ, œinputTypesœ: [œMessageœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -195,9 +195,9 @@
"id": "reactflow__edge-Agent-b7nmW{œdataTypeœ:œAgentœ,œidœ:œAgent-b7nmWœ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}-Prompt-WvveL{œfieldNameœ:œresearch_agent_outputœ,œidœ:œPrompt-WvveLœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}",
"selected": false,
"source": "Agent-b7nmW",
"sourceHandle": "{œdataTypeœ:œAgentœ,œidœ:œAgent-b7nmWœ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œAgentœ, œidœ: œAgent-b7nmWœ, œnameœ: œresponseœ, œoutput_typesœ: [œMessageœ]}",
"target": "Prompt-WvveL",
"targetHandle": "{œfieldNameœ:œresearch_agent_outputœ,œidœ:œPrompt-WvveLœ,œinputTypesœ:[œMessageœ,œTextœ],œtypeœ:œstrœ}"
"targetHandle": "{œfieldNameœ: œresearch_agent_outputœ, œidœ: œPrompt-WvveLœ, œinputTypesœ: [œMessageœ, œTextœ], œtypeœ: œstrœ}"
},
{
"animated": false,
@ -223,9 +223,9 @@
"id": "reactflow__edge-CalculatorComponent-0P2yI{œdataTypeœ:œCalculatorComponentœ,œidœ:œCalculatorComponent-0P2yIœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}-Agent-X1iAT{œfieldNameœ:œtoolsœ,œidœ:œAgent-X1iATœ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}",
"selected": false,
"source": "CalculatorComponent-0P2yI",
"sourceHandle": "{œdataTypeœ:œCalculatorComponentœ,œidœ:œCalculatorComponent-0P2yIœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}",
"sourceHandle": "{œdataTypeœ: œCalculatorComponentœ, œidœ: œCalculatorComponent-0P2yIœ, œnameœ: œcomponent_as_toolœ, œoutput_typesœ: [œToolœ]}",
"target": "Agent-X1iAT",
"targetHandle": "{œfieldNameœ:œtoolsœ,œidœ:œAgent-X1iATœ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œtoolsœ, œidœ: œAgent-X1iATœ, œinputTypesœ: [œToolœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -251,9 +251,9 @@
"id": "reactflow__edge-YfinanceComponent-hAneS{œdataTypeœ:œYfinanceComponentœ,œidœ:œYfinanceComponent-hAneSœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}-Agent-EQcU8{œfieldNameœ:œtoolsœ,œidœ:œAgent-EQcU8œ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}",
"selected": false,
"source": "YfinanceComponent-hAneS",
"sourceHandle": "{œdataTypeœ:œYfinanceComponentœ,œidœ:œYfinanceComponent-hAneSœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}",
"sourceHandle": "{œdataTypeœ: œYfinanceComponentœ, œidœ: œYfinanceComponent-hAneSœ, œnameœ: œcomponent_as_toolœ, œoutput_typesœ: [œToolœ]}",
"target": "Agent-EQcU8",
"targetHandle": "{œfieldNameœ:œtoolsœ,œidœ:œAgent-EQcU8œ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œtoolsœ, œidœ: œAgent-EQcU8œ, œinputTypesœ: [œToolœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -279,9 +279,9 @@
"id": "reactflow__edge-TavilySearchComponent-DTUmi{œdataTypeœ:œTavilySearchComponentœ,œidœ:œTavilySearchComponent-DTUmiœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}-Agent-b7nmW{œfieldNameœ:œtoolsœ,œidœ:œAgent-b7nmWœ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}",
"selected": false,
"source": "TavilySearchComponent-DTUmi",
"sourceHandle": "{œdataTypeœ:œTavilySearchComponentœ,œidœ:œTavilySearchComponent-DTUmiœ,œnameœ:œcomponent_as_toolœ,œoutput_typesœ:[œToolœ]}",
"sourceHandle": "{œdataTypeœ: œTavilySearchComponentœ, œidœ: œTavilySearchComponent-DTUmiœ, œnameœ: œcomponent_as_toolœ, œoutput_typesœ: [œToolœ]}",
"target": "Agent-b7nmW",
"targetHandle": "{œfieldNameœ:œtoolsœ,œidœ:œAgent-b7nmWœ,œinputTypesœ:[œToolœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œtoolsœ, œidœ: œAgent-b7nmWœ, œinputTypesœ: [œToolœ], œtypeœ: œotherœ}"
},
{
"animated": false,
@ -309,9 +309,9 @@
"id": "reactflow__edge-Agent-X1iAT{œdataTypeœ:œAgentœ,œidœ:œAgent-X1iATœ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}-ChatOutput-gbqPo{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-gbqPoœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}",
"selected": false,
"source": "Agent-X1iAT",
"sourceHandle": "{œdataTypeœ:œAgentœ,œidœ:œAgent-X1iATœ,œnameœ:œresponseœ,œoutput_typesœ:[œMessageœ]}",
"sourceHandle": "{œdataTypeœ: œAgentœ, œidœ: œAgent-X1iATœ, œnameœ: œresponseœ, œoutput_typesœ: [œMessageœ]}",
"target": "ChatOutput-gbqPo",
"targetHandle": "{œfieldNameœ:œinput_valueœ,œidœ:œChatOutput-gbqPoœ,œinputTypesœ:[œDataœ,œDataFrameœ,œMessageœ],œtypeœ:œotherœ}"
"targetHandle": "{œfieldNameœ: œinput_valueœ, œidœ: œChatOutput-gbqPoœ, œinputTypesœ: [œDataœ, œDataFrameœ, œMessageœ], œtypeœ: œotherœ}"
}
],
"nodes": [

View file

@ -3,7 +3,7 @@ import os
import pytest
from langchain.schema import HumanMessage
from langchain_community.chat_models.baidu_qianfan_endpoint import QianfanChatEndpoint
from langflow.components.languagemodels.baidu_qianfan_chat import QianfanChatEndpointComponent
from langflow.components.baidu.baidu_qianfan_chat import QianfanChatEndpointComponent
from qianfan.errors import APIError

View file

@ -1,7 +1,7 @@
from unittest.mock import MagicMock
import pytest
from langflow.components.languagemodels import DeepSeekModelComponent
from langflow.components.deepseek.deepseek import DeepSeekModelComponent
from langflow.custom.custom_component.component import Component
from langflow.custom.utils import build_custom_component_template

View file

@ -1,7 +1,7 @@
from unittest.mock import MagicMock, patch
import pytest
from langflow.components.languagemodels import XAIModelComponent
from langflow.components.xai.xai import XAIModelComponent
from langflow.custom.custom_component.component import Component
from langflow.custom.utils import build_custom_component_template
from langflow.inputs.inputs import (
@ -101,7 +101,7 @@ class TestXAIComponent(ComponentTestBaseWithoutClient):
component.base_url = "https://api.x.ai/v1"
component.seed = 1
mock_chat_openai = mocker.patch("langflow.components.languagemodels.xai.ChatOpenAI", return_value=MagicMock())
mock_chat_openai = mocker.patch("langflow.components.xai.xai.ChatOpenAI", return_value=MagicMock())
model = component.build_model()
mock_chat_openai.assert_called_once_with(
max_tokens=100,
@ -156,7 +156,7 @@ class TestXAIComponent(ComponentTestBaseWithoutClient):
component.seed = 1
mocker.patch(
"langflow.components.languagemodels.xai.ChatOpenAI",
"langflow.components.xai.xai.ChatOpenAI",
side_effect=BadRequestError(
message="Invalid API key",
response=MagicMock(),
@ -181,7 +181,7 @@ class TestXAIComponent(ComponentTestBaseWithoutClient):
mock_instance = MagicMock()
mock_bound_instance = MagicMock()
mock_instance.bind.return_value = mock_bound_instance
mocker.patch("langflow.components.languagemodels.xai.ChatOpenAI", return_value=mock_instance)
mocker.patch("langflow.components.xai.xai.ChatOpenAI", return_value=mock_instance)
model = component.build_model()
mock_instance.bind.assert_called_once_with(response_format={"type": "json_object"})

View file

@ -8,7 +8,7 @@ from tests.base import ComponentTestBaseWithClient
class TestArXivComponent(ComponentTestBaseWithClient):
def test_component_versions(self, default_kwargs, file_names_mapping):
"""Test component compatibility across versions."""
from langflow.components.search.arxiv import ArXivComponent
from langflow.components.arxiv.arxiv import ArXivComponent
# Test current version
component = ArXivComponent(**default_kwargs)
@ -31,7 +31,7 @@ class TestArXivComponent(ComponentTestBaseWithClient):
@pytest.fixture
def component_class(self):
from langflow.components.search.arxiv import ArXivComponent
from langflow.components.arxiv.arxiv import ArXivComponent
return ArXivComponent

View file

@ -2,7 +2,7 @@ from unittest.mock import patch
import pandas as pd
import pytest
from langflow.components.search import GoogleSearchAPICore
from langflow.components.google.google_search_api_core import GoogleSearchAPICore
from langflow.schema import DataFrame
from tests.base import ComponentTestBaseWithoutClient

View file

@ -1,7 +1,7 @@
from unittest.mock import MagicMock, patch
import pytest
from langflow.components.search import GoogleSerperAPICore
from langflow.components.google.google_serper_api_core import GoogleSerperAPICore
from langflow.schema import DataFrame

View file

@ -3,7 +3,7 @@ from unittest.mock import MagicMock, patch
import httpx
import pytest
from langchain_core.tools import ToolException
from langflow.components.search import WikidataComponent
from langflow.components.wikipedia import WikidataComponent
from langflow.custom import Component
from langflow.custom.utils import build_custom_component_template

View file

@ -1,7 +1,7 @@
from unittest.mock import MagicMock
import pytest
from langflow.components.search import WikipediaComponent
from langflow.components.wikipedia import WikipediaComponent
from langflow.custom import Component
from langflow.custom.utils import build_custom_component_template

View file

@ -2,7 +2,7 @@ from unittest.mock import MagicMock, patch
import pytest
from langchain_core.tools import ToolException
from langflow.components.search.yahoo import YahooFinanceMethod, YfinanceComponent
from langflow.components.yahoosearch.yahoo import YahooFinanceMethod, YfinanceComponent
from langflow.custom.utils import build_custom_component_template
from langflow.schema import Data
@ -37,7 +37,7 @@ class TestYfinanceComponent:
for input_name in expected_inputs:
assert input_name in input_names
@patch("langflow.components.search.yahoo.yf.Ticker")
@patch("langflow.components.yahoosearch.yahoo.yf.Ticker")
def test_fetch_info(self, mock_ticker, component_class, default_kwargs):
component = component_class(**default_kwargs)
@ -52,7 +52,7 @@ class TestYfinanceComponent:
assert len(result) == 1
assert "Apple Inc." in result[0].text
@patch("langflow.components.search.yahoo.yf.Ticker")
@patch("langflow.components.yahoosearch.yahoo.yf.Ticker")
def test_fetch_news(self, mock_ticker, component_class):
component = component_class(symbol="AAPL", method=YahooFinanceMethod.GET_NEWS, num_news=2)

View file

@ -2,7 +2,7 @@ from unittest.mock import MagicMock, patch
import pytest
from langchain_core.tools import ToolException
from langflow.components.search import SerpComponent
from langflow.components.serpapi.serp import SerpComponent
from langflow.custom import Component
from langflow.custom.utils import build_custom_component_template
from langflow.schema import Data
@ -34,7 +34,7 @@ def test_serpapi_template():
assert input_name in input_names
@patch("langflow.components.search.serp.SerpAPIWrapper")
@patch("langflow.components.serpapi.serp.SerpAPIWrapper")
def test_fetch_content(mock_serpapi_wrapper):
component = SerpComponent()
component.serpapi_api_key = "test-key"
@ -81,7 +81,7 @@ def test_error_handling():
component.serpapi_api_key = "test-key"
component.input_value = "test query"
with patch("langflow.components.search.serp.SerpAPIWrapper") as mock_serpapi:
with patch("langflow.components.serpapi.serp.SerpAPIWrapper") as mock_serpapi:
mock_instance = MagicMock()
mock_serpapi.return_value = mock_instance
mock_instance.results.side_effect = Exception("API Error")

View file

@ -228,69 +228,87 @@ export const SIDEBAR_CATEGORIES = [
];
export const SIDEBAR_BUNDLES = [
{
display_name: "Language Models",
name: "languagemodels",
icon: "BrainCircuit",
},
{ display_name: "Embeddings", name: "embeddings", icon: "Binary" },
{ display_name: "Memories", name: "memories", icon: "Cpu" },
{ display_name: "AI/ML", name: "aiml", icon: "AI/ML" },
{ display_name: "Anthropic", name: "anthropic", icon: "Anthropic" },
{ display_name: "Amazon", name: "amazon", icon: "Amazon" },
// Add apify
{ display_name: "Apify", name: "apify", icon: "Apify" },
{ display_name: "LangChain", name: "langchain_utilities", icon: "LangChain" },
{ display_name: "AgentQL", name: "agentql", icon: "AgentQL" },
{ display_name: "Amazon", name: "amazon", icon: "Amazon" },
{ display_name: "Anthropic", name: "anthropic", icon: "Anthropic" },
{ display_name: "Apify", name: "apify", icon: "Apify" },
{ display_name: "Arxiv", name: "arxiv", icon: "arXiv" },
{ display_name: "AssemblyAI", name: "assemblyai", icon: "AssemblyAI" },
{ display_name: "Azure", name: "azure", icon: "Azure" },
{
display_name: "DataStax",
name: "datastax",
icon: "AstraDB",
},
{ display_name: "Baidu", name: "baidu", icon: "BaiduQianfan" },
{ display_name: "Bing", name: "bing", icon: "Bing" },
{ display_name: "Cleanlab", name: "cleanlab", icon: "Cleanlab" },
{ display_name: "Cloudflare", name: "cloudflare", icon: "Cloudflare" },
{ display_name: "Cohere", name: "cohere", icon: "Cohere" },
{ display_name: "Composio", name: "composio", icon: "Composio" },
{ display_name: "Confluence", name: "confluence", icon: "Confluence" },
{ display_name: "CrewAI", name: "crewai", icon: "CrewAI" },
{ display_name: "DataStax", name: "datastax", icon: "AstraDB" },
{ display_name: "DeepSeek", name: "deepseek", icon: "DeepSeek" },
{ display_name: "Docling", name: "docling", icon: "Docling" },
{ display_name: "Gmail", name: "gmail", icon: "Gmail" },
{ display_name: "DuckDuckGo", name: "duckduckgo", icon: "DuckDuckGo" },
{ display_name: "Embeddings", name: "embeddings", icon: "Binary" },
{ display_name: "Exa", name: "exa", icon: "Exa" },
{ display_name: "Firecrawl", name: "firecrawl", icon: "FirecrawlCrawlApi" },
{ display_name: "Git", name: "git", icon: "GitLoader" },
{ display_name: "GitHub", name: "github", icon: "Github" },
{ display_name: "Glean", name: "glean", icon: "Glean" },
{ display_name: "Gmail", name: "gmail", icon: "Gmail" },
{ display_name: "Google", name: "google", icon: "Google" },
{
display_name: "Googlecalendar",
name: "googlecalendar",
icon: "Googlecalendar",
},
{ display_name: "HuggingFace", name: "huggingface", icon: "HuggingFace" },
{ display_name: "IBM", name: "ibm", icon: "WatsonxAI" },
{ display_name: "LangWatch", name: "langwatch", icon: "Langwatch" },
{ display_name: "Olivya", name: "olivya", icon: "Olivya" },
{ display_name: "Outlook", name: "outlook", icon: "Outlook" },
{ display_name: "OpenAI", name: "openai", icon: "OpenAI" },
{ display_name: "Notion", name: "Notion", icon: "Notion" },
{ display_name: "Needle", name: "needle", icon: "Needle" },
{ display_name: "NVIDIA", name: "nvidia", icon: "NVIDIA" },
{ display_name: "Vectara", name: "vectara", icon: "Vectara" },
{ display_name: "Icosa Computing", name: "icosacomputing", icon: "Icosa" },
{ display_name: "Google", name: "google", icon: "Google" },
{ display_name: "CrewAI", name: "crewai", icon: "CrewAI" },
{ display_name: "NotDiamond", name: "notdiamond", icon: "NotDiamond" },
{ display_name: "Composio", name: "composio", icon: "Composio" },
{ display_name: "Cohere", name: "cohere", icon: "Cohere" },
{ display_name: "Firecrawl", name: "firecrawl", icon: "FirecrawlCrawlApi" },
{ display_name: "Unstructured", name: "unstructured", icon: "Unstructured" },
{ display_name: "Git", name: "git", icon: "GitLoader" },
{ display_name: "Confluence", name: "confluence", icon: "Confluence" },
{ display_name: "Mem0", name: "mem0", icon: "Mem0" },
{ display_name: "Youtube", name: "youtube", icon: "YouTube" },
{ display_name: "ScrapeGraph AI", name: "scrapegraph", icon: "ScrapeGraph" },
{ display_name: "Twelve Labs", name: "twelvelabs", icon: "TwelveLabs" },
{ display_name: "Groq", name: "groq", icon: "Groq" },
{
display_name: "Home Assistant",
name: "homeassistant",
icon: "HomeAssistant",
},
{ display_name: "Cleanlab", name: "cleanlab", icon: "Cleanlab" },
{ display_name: "Search", name: "search", icon: "Search" },
{ display_name: "Tavily", name: "tavily", icon: "TavilyIcon" },
{ display_name: "HuggingFace", name: "huggingface", icon: "HuggingFace" },
{ display_name: "IBM", name: "ibm", icon: "WatsonxAI" },
{ display_name: "Icosa Computing", name: "icosacomputing", icon: "Icosa" },
{ display_name: "LangChain", name: "langchain_utilities", icon: "LangChain" },
{ display_name: "LangWatch", name: "langwatch", icon: "Langwatch" },
{ display_name: "LMStudio", name: "lmstudio", icon: "LMStudio" },
{ display_name: "MariTalk", name: "maritalk", icon: "MariTalk" },
{ display_name: "Mem0", name: "mem0", icon: "Mem0" },
{ display_name: "Memories", name: "memories", icon: "Cpu" },
{ display_name: "MistralAI", name: "mistral", icon: "MistralAI" },
{ display_name: "Needle", name: "needle", icon: "Needle" },
{ display_name: "NotDiamond", name: "notdiamond", icon: "NotDiamond" },
{ display_name: "Notion", name: "Notion", icon: "Notion" },
{ display_name: "Novita", name: "novita", icon: "Novita" },
{ display_name: "NVIDIA", name: "nvidia", icon: "NVIDIA" },
{ display_name: "Olivya", name: "olivya", icon: "Olivya" },
{ display_name: "Ollama", name: "ollama", icon: "Ollama" },
{ display_name: "OpenAI", name: "openai", icon: "OpenAI" },
{ display_name: "OpenRouter", name: "openrouter", icon: "OpenRouter" },
{ display_name: "Outlook", name: "outlook", icon: "Outlook" },
{ display_name: "Perplexity", name: "perplexity", icon: "Perplexity" },
{ display_name: "Redis", name: "redis", icon: "Redis" },
{ display_name: "SambaNova", name: "sambanova", icon: "SambaNova" },
{ display_name: "ScrapeGraph AI", name: "scrapegraph", icon: "ScrapeGraph" },
{ display_name: "SearchAPI", name: "searchapi", icon: "SearchAPI" },
{ display_name: "SerpApi", name: "serpapi", icon: "SerpSearch" },
{ display_name: "Tavily", name: "tavily", icon: "TavilyIcon" },
{ display_name: "Twelve Labs", name: "twelvelabs", icon: "TwelveLabs" },
{ display_name: "Unstructured", name: "unstructured", icon: "Unstructured" },
{ display_name: "Vectara", name: "vectara", icon: "Vectara" },
{ display_name: "VertexAI", name: "vertexai", icon: "VertexAI" },
{ display_name: "Wikipedia", name: "wikipedia", icon: "Wikipedia" },
{
display_name: "WolframAlpha",
name: "wolframalpha",
icon: "WolframAlphaAPI",
},
{ display_name: "xAI", name: "xai", icon: "xAI" },
{ display_name: "YahooSearch", name: "yahoosearch", icon: "trending-up" },
{ display_name: "Youtube", name: "youtube", icon: "YouTube" },
{ display_name: "Zep", name: "zep", icon: "ZepMemory" },
];
export const categoryIcons: Record<string, string> = {

View file

@ -177,13 +177,14 @@ class CustomComponent(Component):
const visibleTexts = ["Alpha", "Bravo", "Charlie", "Delta", "Echo"];
const notVisibleTexts = ["X1", "thirdRandomText"];
await Promise.all(
visibleTexts.map((text) => expect(page.getByText(text)).toBeVisible()),
);
await Promise.all(
notVisibleTexts.map((text) =>
expect(page.getByText(text)).not.toBeVisible(),
),
);
for (const text of visibleTexts) {
const count = await page.getByText(text).count();
expect(count).toBeGreaterThanOrEqual(1);
}
for (const text of notVisibleTexts) {
const count = await page.getByText(text).count();
expect(count).toBe(0);
}
},
);

View file

@ -75,7 +75,7 @@ test(
"vectorstoresAstra DB",
"langchain_utilitiesTool Calling Agent",
"langchain_utilitiesConversationChain",
"memoriesMem0 Chat Memory",
"mem0Mem0 Chat Memory",
"logicCondition",
"langchain_utilitiesSelf Query Retriever",
"langchain_utilitiesCharacterTextSplitter",
@ -101,15 +101,15 @@ test(
await page.getByTestId("sidebar-search-input").click();
const visibleModelSpecsTestIds = [
"languagemodelsCohere",
"languagemodelsGroq",
"languagemodelsLM Studio",
"languagemodelsMaritalk",
"languagemodelsMistralAI",
"languagemodelsPerplexity",
"languagemodelsQianfan",
"languagemodelsSambaNova",
"languagemodelsxAI",
"cohereCohere Language Models",
"groqGroq",
"lmstudioLM Studio",
"maritalkMaritalk",
"mistralMistralAI",
"perplexityPerplexity",
"baiduQianfan",
"sambanovaSambaNova",
"xaixAI",
];
await Promise.all(

View file

@ -11,12 +11,15 @@ test(
await page.getByTestId("sidebar-search-input").click();
await page.getByTestId("sidebar-search-input").fill("duck");
await page.waitForSelector('[data-testid="searchDuckDuckGo Search"]', {
timeout: 3000,
});
await page.waitForSelector(
'[data-testid="disclosure-bundles-duckduckgo"]',
{
timeout: 3000,
},
);
await page
.getByTestId("searchDuckDuckGo Search")
.getByTestId("duckduckgoDuckDuckGo Search")
.hover()
.then(async () => {
await page

View file

@ -49,14 +49,14 @@ test(
await page.getByTestId("sidebar-search-input").click();
await page.getByTestId("sidebar-search-input").fill("search api");
await page.waitForSelector('[data-testid="searchSearch API"]', {
await page.waitForSelector('[data-testid="searchapiSearch API"]', {
timeout: 1000,
});
await zoomOut(page, 3);
await page
.getByTestId("searchSearch API")
.getByTestId("searchapiSearch API")
.dragTo(page.locator('//*[@id="react-flow-id"]'), {
targetPosition: { x: 100, y: 100 },
});