diff --git a/src/backend/base/langflow/base/models/model_input_constants.py b/src/backend/base/langflow/base/models/model_input_constants.py index 7a1dc07f3..19fbd988c 100644 --- a/src/backend/base/langflow/base/models/model_input_constants.py +++ b/src/backend/base/langflow/base/models/model_input_constants.py @@ -2,13 +2,13 @@ from typing_extensions import TypedDict from langflow.base.models.model import LCModelComponent from langflow.components.amazon.amazon_bedrock_model import AmazonBedrockComponent -from langflow.components.models.anthropic import AnthropicModelComponent -from langflow.components.models.azure_openai import AzureChatOpenAIComponent -from langflow.components.models.google_generative_ai import GoogleGenerativeAIComponent -from langflow.components.models.groq import GroqModel -from langflow.components.models.nvidia import NVIDIAModelComponent -from langflow.components.models.openai_chat_model import OpenAIModelComponent -from langflow.components.models.sambanova import SambaNovaComponent +from langflow.components.languagemodels.anthropic import AnthropicModelComponent +from langflow.components.languagemodels.azure_openai import AzureChatOpenAIComponent +from langflow.components.languagemodels.google_generative_ai import GoogleGenerativeAIComponent +from langflow.components.languagemodels.groq import GroqModel +from langflow.components.languagemodels.nvidia import NVIDIAModelComponent +from langflow.components.languagemodels.openai_chat_model import OpenAIModelComponent +from langflow.components.languagemodels.sambanova import SambaNovaComponent from langflow.inputs.inputs import InputTypes, SecretStrInput from langflow.template.field.base import Input @@ -71,7 +71,7 @@ def create_input_fields_dict(inputs: list[Input], prefix: str) -> dict[str, Inpu def _get_google_generative_ai_inputs_and_fields(): try: - from langflow.components.models.google_generative_ai import GoogleGenerativeAIComponent + from langflow.components.languagemodels.google_generative_ai import GoogleGenerativeAIComponent google_generative_ai_inputs = get_filtered_inputs(GoogleGenerativeAIComponent) except ImportError as e: @@ -85,7 +85,7 @@ def _get_google_generative_ai_inputs_and_fields(): def _get_openai_inputs_and_fields(): try: - from langflow.components.models.openai_chat_model import OpenAIModelComponent + from langflow.components.languagemodels.openai_chat_model import OpenAIModelComponent openai_inputs = get_filtered_inputs(OpenAIModelComponent) except ImportError as e: @@ -96,7 +96,7 @@ def _get_openai_inputs_and_fields(): def _get_azure_inputs_and_fields(): try: - from langflow.components.models.azure_openai import AzureChatOpenAIComponent + from langflow.components.languagemodels.azure_openai import AzureChatOpenAIComponent azure_inputs = get_filtered_inputs(AzureChatOpenAIComponent) except ImportError as e: @@ -107,7 +107,7 @@ def _get_azure_inputs_and_fields(): def _get_groq_inputs_and_fields(): try: - from langflow.components.models.groq import GroqModel + from langflow.components.languagemodels.groq import GroqModel groq_inputs = get_filtered_inputs(GroqModel) except ImportError as e: @@ -118,7 +118,7 @@ def _get_groq_inputs_and_fields(): def _get_anthropic_inputs_and_fields(): try: - from langflow.components.models.anthropic import AnthropicModelComponent + from langflow.components.languagemodels.anthropic import AnthropicModelComponent anthropic_inputs = get_filtered_inputs(AnthropicModelComponent) except ImportError as e: @@ -129,7 +129,7 @@ def _get_anthropic_inputs_and_fields(): def _get_nvidia_inputs_and_fields(): try: - from langflow.components.models.nvidia import NVIDIAModelComponent + from langflow.components.languagemodels.nvidia import NVIDIAModelComponent nvidia_inputs = get_filtered_inputs(NVIDIAModelComponent) except ImportError as e: @@ -151,7 +151,7 @@ def _get_amazon_bedrock_inputs_and_fields(): def _get_sambanova_inputs_and_fields(): try: - from langflow.components.models.sambanova import SambaNovaComponent + from langflow.components.languagemodels.sambanova import SambaNovaComponent sambanova_inputs = get_filtered_inputs(SambaNovaComponent) except ImportError as e: diff --git a/src/backend/base/langflow/components/embeddings/__init__.py b/src/backend/base/langflow/components/embeddings/__init__.py index 0daa25324..f2cb48295 100644 --- a/src/backend/base/langflow/components/embeddings/__init__.py +++ b/src/backend/base/langflow/components/embeddings/__init__.py @@ -3,7 +3,6 @@ from .astra_vectorize import AstraVectorizeComponent from .azure_openai import AzureOpenAIEmbeddingsComponent from .cloudflare import CloudflareWorkersAIEmbeddingsComponent from .cohere import CohereEmbeddingsComponent -from .embedding_model import EmbeddingModelComponent from .google_generative_ai import GoogleGenerativeAIEmbeddingsComponent from .huggingface_inference_api import HuggingFaceInferenceAPIEmbeddingsComponent from .lmstudioembeddings import LMStudioEmbeddingsComponent @@ -22,7 +21,6 @@ __all__ = [ "AzureOpenAIEmbeddingsComponent", "CloudflareWorkersAIEmbeddingsComponent", "CohereEmbeddingsComponent", - "EmbeddingModelComponent", "EmbeddingSimilarityComponent", "GoogleGenerativeAIEmbeddingsComponent", "HuggingFaceInferenceAPIEmbeddingsComponent", diff --git a/src/backend/base/langflow/components/languagemodels/__init__.py b/src/backend/base/langflow/components/languagemodels/__init__.py new file mode 100644 index 000000000..c0af8c8a0 --- /dev/null +++ b/src/backend/base/langflow/components/languagemodels/__init__.py @@ -0,0 +1,47 @@ +from .aiml import AIMLModelComponent +from .anthropic import AnthropicModelComponent +from .azure_openai import AzureChatOpenAIComponent +from .baidu_qianfan_chat import QianfanChatEndpointComponent +from .cohere import CohereComponent +from .deepseek import DeepSeekModelComponent +from .google_generative_ai import GoogleGenerativeAIComponent +from .groq import GroqModel +from .huggingface import HuggingFaceEndpointsComponent +from .lmstudiomodel import LMStudioModelComponent +from .maritalk import MaritalkModelComponent +from .mistral import MistralAIModelComponent +from .novita import NovitaModelComponent +from .nvidia import NVIDIAModelComponent +from .ollama import ChatOllamaComponent +from .openai_chat_model import OpenAIModelComponent +from .openrouter import OpenRouterComponent +from .perplexity import PerplexityComponent +from .sambanova import SambaNovaComponent +from .vertexai import ChatVertexAIComponent +from .watsonx import WatsonxAIComponent +from .xai import XAIModelComponent + +__all__ = [ + "AIMLModelComponent", + "AnthropicModelComponent", + "AzureChatOpenAIComponent", + "ChatOllamaComponent", + "ChatVertexAIComponent", + "CohereComponent", + "DeepSeekModelComponent", + "GoogleGenerativeAIComponent", + "GroqModel", + "HuggingFaceEndpointsComponent", + "LMStudioModelComponent", + "MaritalkModelComponent", + "MistralAIModelComponent", + "NVIDIAModelComponent", + "NovitaModelComponent", + "OpenAIModelComponent", + "OpenRouterComponent", + "PerplexityComponent", + "QianfanChatEndpointComponent", + "SambaNovaComponent", + "WatsonxAIComponent", + "XAIModelComponent", +] diff --git a/src/backend/base/langflow/components/models/aiml.py b/src/backend/base/langflow/components/languagemodels/aiml.py similarity index 100% rename from src/backend/base/langflow/components/models/aiml.py rename to src/backend/base/langflow/components/languagemodels/aiml.py diff --git a/src/backend/base/langflow/components/models/anthropic.py b/src/backend/base/langflow/components/languagemodels/anthropic.py similarity index 100% rename from src/backend/base/langflow/components/models/anthropic.py rename to src/backend/base/langflow/components/languagemodels/anthropic.py diff --git a/src/backend/base/langflow/components/models/azure_openai.py b/src/backend/base/langflow/components/languagemodels/azure_openai.py similarity index 100% rename from src/backend/base/langflow/components/models/azure_openai.py rename to src/backend/base/langflow/components/languagemodels/azure_openai.py diff --git a/src/backend/base/langflow/components/models/baidu_qianfan_chat.py b/src/backend/base/langflow/components/languagemodels/baidu_qianfan_chat.py similarity index 100% rename from src/backend/base/langflow/components/models/baidu_qianfan_chat.py rename to src/backend/base/langflow/components/languagemodels/baidu_qianfan_chat.py diff --git a/src/backend/base/langflow/components/models/cohere.py b/src/backend/base/langflow/components/languagemodels/cohere.py similarity index 100% rename from src/backend/base/langflow/components/models/cohere.py rename to src/backend/base/langflow/components/languagemodels/cohere.py diff --git a/src/backend/base/langflow/components/models/deepseek.py b/src/backend/base/langflow/components/languagemodels/deepseek.py similarity index 100% rename from src/backend/base/langflow/components/models/deepseek.py rename to src/backend/base/langflow/components/languagemodels/deepseek.py diff --git a/src/backend/base/langflow/components/models/google_generative_ai.py b/src/backend/base/langflow/components/languagemodels/google_generative_ai.py similarity index 100% rename from src/backend/base/langflow/components/models/google_generative_ai.py rename to src/backend/base/langflow/components/languagemodels/google_generative_ai.py diff --git a/src/backend/base/langflow/components/models/groq.py b/src/backend/base/langflow/components/languagemodels/groq.py similarity index 100% rename from src/backend/base/langflow/components/models/groq.py rename to src/backend/base/langflow/components/languagemodels/groq.py diff --git a/src/backend/base/langflow/components/models/huggingface.py b/src/backend/base/langflow/components/languagemodels/huggingface.py similarity index 100% rename from src/backend/base/langflow/components/models/huggingface.py rename to src/backend/base/langflow/components/languagemodels/huggingface.py diff --git a/src/backend/base/langflow/components/models/lmstudiomodel.py b/src/backend/base/langflow/components/languagemodels/lmstudiomodel.py similarity index 100% rename from src/backend/base/langflow/components/models/lmstudiomodel.py rename to src/backend/base/langflow/components/languagemodels/lmstudiomodel.py diff --git a/src/backend/base/langflow/components/models/maritalk.py b/src/backend/base/langflow/components/languagemodels/maritalk.py similarity index 100% rename from src/backend/base/langflow/components/models/maritalk.py rename to src/backend/base/langflow/components/languagemodels/maritalk.py diff --git a/src/backend/base/langflow/components/models/mistral.py b/src/backend/base/langflow/components/languagemodels/mistral.py similarity index 100% rename from src/backend/base/langflow/components/models/mistral.py rename to src/backend/base/langflow/components/languagemodels/mistral.py diff --git a/src/backend/base/langflow/components/models/novita.py b/src/backend/base/langflow/components/languagemodels/novita.py similarity index 100% rename from src/backend/base/langflow/components/models/novita.py rename to src/backend/base/langflow/components/languagemodels/novita.py diff --git a/src/backend/base/langflow/components/models/nvidia.py b/src/backend/base/langflow/components/languagemodels/nvidia.py similarity index 100% rename from src/backend/base/langflow/components/models/nvidia.py rename to src/backend/base/langflow/components/languagemodels/nvidia.py diff --git a/src/backend/base/langflow/components/models/ollama.py b/src/backend/base/langflow/components/languagemodels/ollama.py similarity index 100% rename from src/backend/base/langflow/components/models/ollama.py rename to src/backend/base/langflow/components/languagemodels/ollama.py diff --git a/src/backend/base/langflow/components/models/openai_chat_model.py b/src/backend/base/langflow/components/languagemodels/openai_chat_model.py similarity index 100% rename from src/backend/base/langflow/components/models/openai_chat_model.py rename to src/backend/base/langflow/components/languagemodels/openai_chat_model.py diff --git a/src/backend/base/langflow/components/models/openrouter.py b/src/backend/base/langflow/components/languagemodels/openrouter.py similarity index 100% rename from src/backend/base/langflow/components/models/openrouter.py rename to src/backend/base/langflow/components/languagemodels/openrouter.py diff --git a/src/backend/base/langflow/components/models/perplexity.py b/src/backend/base/langflow/components/languagemodels/perplexity.py similarity index 100% rename from src/backend/base/langflow/components/models/perplexity.py rename to src/backend/base/langflow/components/languagemodels/perplexity.py diff --git a/src/backend/base/langflow/components/models/sambanova.py b/src/backend/base/langflow/components/languagemodels/sambanova.py similarity index 100% rename from src/backend/base/langflow/components/models/sambanova.py rename to src/backend/base/langflow/components/languagemodels/sambanova.py diff --git a/src/backend/base/langflow/components/models/vertexai.py b/src/backend/base/langflow/components/languagemodels/vertexai.py similarity index 100% rename from src/backend/base/langflow/components/models/vertexai.py rename to src/backend/base/langflow/components/languagemodels/vertexai.py diff --git a/src/backend/base/langflow/components/models/watsonx.py b/src/backend/base/langflow/components/languagemodels/watsonx.py similarity index 100% rename from src/backend/base/langflow/components/models/watsonx.py rename to src/backend/base/langflow/components/languagemodels/watsonx.py diff --git a/src/backend/base/langflow/components/models/xai.py b/src/backend/base/langflow/components/languagemodels/xai.py similarity index 100% rename from src/backend/base/langflow/components/models/xai.py rename to src/backend/base/langflow/components/languagemodels/xai.py diff --git a/src/backend/base/langflow/components/models/__init__.py b/src/backend/base/langflow/components/models/__init__.py index f71836d51..e861703b6 100644 --- a/src/backend/base/langflow/components/models/__init__.py +++ b/src/backend/base/langflow/components/models/__init__.py @@ -1,49 +1,4 @@ -from .aiml import AIMLModelComponent -from .anthropic import AnthropicModelComponent -from .azure_openai import AzureChatOpenAIComponent -from .baidu_qianfan_chat import QianfanChatEndpointComponent -from .cohere import CohereComponent -from .deepseek import DeepSeekModelComponent -from .google_generative_ai import GoogleGenerativeAIComponent -from .groq import GroqModel -from .huggingface import HuggingFaceEndpointsComponent +from .embedding_model import EmbeddingModelComponent from .language_model import LanguageModelComponent -from .lmstudiomodel import LMStudioModelComponent -from .maritalk import MaritalkModelComponent -from .mistral import MistralAIModelComponent -from .novita import NovitaModelComponent -from .nvidia import NVIDIAModelComponent -from .ollama import ChatOllamaComponent -from .openai_chat_model import OpenAIModelComponent -from .openrouter import OpenRouterComponent -from .perplexity import PerplexityComponent -from .sambanova import SambaNovaComponent -from .vertexai import ChatVertexAIComponent -from .watsonx import WatsonxAIComponent -from .xai import XAIModelComponent -__all__ = [ - "AIMLModelComponent", - "AnthropicModelComponent", - "AzureChatOpenAIComponent", - "ChatOllamaComponent", - "ChatVertexAIComponent", - "CohereComponent", - "DeepSeekModelComponent", - "GoogleGenerativeAIComponent", - "GroqModel", - "HuggingFaceEndpointsComponent", - "LMStudioModelComponent", - "LanguageModelComponent", - "MaritalkModelComponent", - "MistralAIModelComponent", - "NVIDIAModelComponent", - "NovitaModelComponent", - "OpenAIModelComponent", - "OpenRouterComponent", - "PerplexityComponent", - "QianfanChatEndpointComponent", - "SambaNovaComponent", - "WatsonxAIComponent", - "XAIModelComponent", -] +__all__ = ["EmbeddingModelComponent", "LanguageModelComponent"] diff --git a/src/backend/base/langflow/components/embeddings/embedding_model.py b/src/backend/base/langflow/components/models/embedding_model.py similarity index 99% rename from src/backend/base/langflow/components/embeddings/embedding_model.py rename to src/backend/base/langflow/components/models/embedding_model.py index af35f23ea..ad9b243b8 100644 --- a/src/backend/base/langflow/components/embeddings/embedding_model.py +++ b/src/backend/base/langflow/components/models/embedding_model.py @@ -22,7 +22,7 @@ class EmbeddingModelComponent(LCEmbeddingsModel): description = "Generate embeddings using a specified provider." icon = "binary" name = "EmbeddingModel" - category = "embeddings" + category = "models" inputs = [ DropdownInput( diff --git a/src/backend/base/langflow/initial_setup/starter_projects/basic_prompting.py b/src/backend/base/langflow/initial_setup/starter_projects/basic_prompting.py index 657138ee6..eb0de341e 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/basic_prompting.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/basic_prompting.py @@ -1,5 +1,5 @@ from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.graph import Graph diff --git a/src/backend/base/langflow/initial_setup/starter_projects/blog_writer.py b/src/backend/base/langflow/initial_setup/starter_projects/blog_writer.py index 5ca700754..be7ae28c0 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/blog_writer.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/blog_writer.py @@ -2,7 +2,7 @@ from textwrap import dedent from langflow.components.data import URLComponent from langflow.components.inputs import TextInputComponent -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.processing import ParseDataComponent from langflow.components.prompts import PromptComponent diff --git a/src/backend/base/langflow/initial_setup/starter_projects/complex_agent.py b/src/backend/base/langflow/initial_setup/starter_projects/complex_agent.py index 73dee2caf..07bcb09f1 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/complex_agent.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/complex_agent.py @@ -2,7 +2,7 @@ from langflow.components.crewai.crewai import CrewAIAgentComponent from langflow.components.crewai.hierarchical_crew import HierarchicalCrewComponent from langflow.components.crewai.hierarchical_task import HierarchicalTaskComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.components.tools import SearchAPIComponent, YfinanceToolComponent diff --git a/src/backend/base/langflow/initial_setup/starter_projects/document_qa.py b/src/backend/base/langflow/initial_setup/starter_projects/document_qa.py index 3185903dd..0fbdb5763 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/document_qa.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/document_qa.py @@ -1,6 +1,6 @@ from langflow.components.data import FileComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.processing import ParseDataComponent from langflow.components.prompts import PromptComponent diff --git a/src/backend/base/langflow/initial_setup/starter_projects/hierarchical_tasks_agent.py b/src/backend/base/langflow/initial_setup/starter_projects/hierarchical_tasks_agent.py index 5ecff69c3..dba31894e 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/hierarchical_tasks_agent.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/hierarchical_tasks_agent.py @@ -2,7 +2,7 @@ from langflow.components.crewai.crewai import CrewAIAgentComponent from langflow.components.crewai.hierarchical_crew import HierarchicalCrewComponent from langflow.components.crewai.hierarchical_task import HierarchicalTaskComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.components.tools import SearchAPIComponent diff --git a/src/backend/base/langflow/initial_setup/starter_projects/memory_chatbot.py b/src/backend/base/langflow/initial_setup/starter_projects/memory_chatbot.py index ea3cbd32f..61ca3918b 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/memory_chatbot.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/memory_chatbot.py @@ -1,6 +1,6 @@ from langflow.components.helpers.memory import MemoryComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.graph import Graph diff --git a/src/backend/base/langflow/initial_setup/starter_projects/sequential_tasks_agent.py b/src/backend/base/langflow/initial_setup/starter_projects/sequential_tasks_agent.py index 5b0664f9e..77c94f9e4 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/sequential_tasks_agent.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/sequential_tasks_agent.py @@ -1,7 +1,7 @@ from langflow.components.crewai.sequential_crew import SequentialCrewComponent from langflow.components.crewai.sequential_task_agent import SequentialTaskAgentComponent from langflow.components.inputs import TextInputComponent -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.components.tools import SearchAPIComponent diff --git a/src/backend/base/langflow/initial_setup/starter_projects/vector_store_rag.py b/src/backend/base/langflow/initial_setup/starter_projects/vector_store_rag.py index 1467bb07d..7cc198e02 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/vector_store_rag.py +++ b/src/backend/base/langflow/initial_setup/starter_projects/vector_store_rag.py @@ -3,7 +3,7 @@ from textwrap import dedent from langflow.components.data import FileComponent from langflow.components.embeddings import OpenAIEmbeddingsComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.processing import ParseDataComponent from langflow.components.processing.split_text import SplitTextComponent diff --git a/src/backend/tests/integration/components/output_parsers/test_output_parser.py b/src/backend/tests/integration/components/output_parsers/test_output_parser.py index 17d4d48b2..0754b350f 100644 --- a/src/backend/tests/integration/components/output_parsers/test_output_parser.py +++ b/src/backend/tests/integration/components/output_parsers/test_output_parser.py @@ -2,7 +2,7 @@ import os import pytest from langflow.components.helpers import OutputParserComponent -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.prompts import PromptComponent from tests.integration.utils import ComponentInputHandle, run_single_component diff --git a/src/backend/tests/unit/base/tools/test_component_toolkit.py b/src/backend/tests/unit/base/tools/test_component_toolkit.py index 61552a998..1ed50462d 100644 --- a/src/backend/tests/unit/base/tools/test_component_toolkit.py +++ b/src/backend/tests/unit/base/tools/test_component_toolkit.py @@ -3,7 +3,7 @@ import os import pytest from langflow.base.tools.component_tool import ComponentToolkit from langflow.components.langchain_utilities import ToolCallingAgentComponent -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs.chat import ChatOutput from langflow.components.tools.calculator import CalculatorToolComponent from langflow.graph import Graph diff --git a/src/backend/tests/unit/components/agents/test_tool_calling_agent.py b/src/backend/tests/unit/components/agents/test_tool_calling_agent.py index 8795d44ba..4c5b82008 100644 --- a/src/backend/tests/unit/components/agents/test_tool_calling_agent.py +++ b/src/backend/tests/unit/components/agents/test_tool_calling_agent.py @@ -2,7 +2,7 @@ import os import pytest from langflow.components.langchain_utilities import ToolCallingAgentComponent -from langflow.components.models.openai_chat_model import OpenAIModelComponent +from langflow.components.languagemodels.openai_chat_model import OpenAIModelComponent from langflow.components.tools.calculator import CalculatorToolComponent diff --git a/src/backend/tests/unit/components/languagemodels/__init__.py b/src/backend/tests/unit/components/languagemodels/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/src/backend/tests/unit/components/models/test_baidu_qianfan.py b/src/backend/tests/unit/components/languagemodels/test_baidu_qianfan.py similarity index 97% rename from src/backend/tests/unit/components/models/test_baidu_qianfan.py rename to src/backend/tests/unit/components/languagemodels/test_baidu_qianfan.py index 6c633b21c..da62bf68f 100644 --- a/src/backend/tests/unit/components/models/test_baidu_qianfan.py +++ b/src/backend/tests/unit/components/languagemodels/test_baidu_qianfan.py @@ -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.models.baidu_qianfan_chat import QianfanChatEndpointComponent +from langflow.components.languagemodels.baidu_qianfan_chat import QianfanChatEndpointComponent from qianfan.errors import APIError diff --git a/src/backend/tests/unit/components/models/test_chatollama_component.py b/src/backend/tests/unit/components/languagemodels/test_chatollama_component.py similarity index 93% rename from src/backend/tests/unit/components/models/test_chatollama_component.py rename to src/backend/tests/unit/components/languagemodels/test_chatollama_component.py index e98ffce5b..7b98308c9 100644 --- a/src/backend/tests/unit/components/models/test_chatollama_component.py +++ b/src/backend/tests/unit/components/languagemodels/test_chatollama_component.py @@ -2,7 +2,7 @@ from unittest.mock import AsyncMock, MagicMock, patch import pytest from langchain_ollama import ChatOllama -from langflow.components.models.ollama import ChatOllamaComponent +from langflow.components.languagemodels.ollama import ChatOllamaComponent from tests.base import ComponentTestBaseWithoutClient @@ -40,7 +40,7 @@ class TestChatOllamaComponent(ComponentTestBaseWithoutClient): # Provide an empty list or the actual mapping if versioned files exist return [] - @patch("langflow.components.models.ollama.ChatOllama") + @patch("langflow.components.languagemodels.ollama.ChatOllama") async def test_build_model(self, mock_chat_ollama, component_class, default_kwargs): mock_instance = MagicMock() mock_chat_ollama.return_value = mock_instance @@ -68,7 +68,7 @@ class TestChatOllamaComponent(ComponentTestBaseWithoutClient): ) assert model == mock_instance - @patch("langflow.components.models.ollama.ChatOllama") + @patch("langflow.components.languagemodels.ollama.ChatOllama") async def test_build_model_missing_base_url(self, mock_chat_ollama, component_class, default_kwargs): # Make the mock raise an exception to simulate connection failure mock_chat_ollama.side_effect = Exception("connection error") @@ -78,8 +78,8 @@ class TestChatOllamaComponent(ComponentTestBaseWithoutClient): component.build_model() @pytest.mark.asyncio - @patch("langflow.components.models.ollama.httpx.AsyncClient.post") - @patch("langflow.components.models.ollama.httpx.AsyncClient.get") + @patch("langflow.components.languagemodels.ollama.httpx.AsyncClient.post") + @patch("langflow.components.languagemodels.ollama.httpx.AsyncClient.get") async def test_get_models_success(self, mock_get, mock_post): component = ChatOllamaComponent() mock_get_response = AsyncMock() @@ -107,7 +107,7 @@ class TestChatOllamaComponent(ComponentTestBaseWithoutClient): assert mock_post.call_count == 2 @pytest.mark.asyncio - @patch("langflow.components.models.ollama.httpx.AsyncClient.get") + @patch("langflow.components.languagemodels.ollama.httpx.AsyncClient.get") async def test_get_models_failure(self, mock_get): import httpx @@ -147,7 +147,7 @@ class TestChatOllamaComponent(ComponentTestBaseWithoutClient): assert updated_config["mirostat_eta"]["value"] == 0.2 assert updated_config["mirostat_tau"]["value"] == 10 - @patch("langflow.components.models.ollama.httpx.AsyncClient.get") + @patch("langflow.components.languagemodels.ollama.httpx.AsyncClient.get") @pytest.mark.asyncio async def test_update_build_config_model_name(self, mock_get): component = ChatOllamaComponent() diff --git a/src/backend/tests/unit/components/models/test_deepseek.py b/src/backend/tests/unit/components/languagemodels/test_deepseek.py similarity index 97% rename from src/backend/tests/unit/components/models/test_deepseek.py rename to src/backend/tests/unit/components/languagemodels/test_deepseek.py index ecbb2b46d..e0a9d91bc 100644 --- a/src/backend/tests/unit/components/models/test_deepseek.py +++ b/src/backend/tests/unit/components/languagemodels/test_deepseek.py @@ -1,7 +1,7 @@ from unittest.mock import MagicMock import pytest -from langflow.components.models import DeepSeekModelComponent +from langflow.components.languagemodels import DeepSeekModelComponent from langflow.custom import Component from langflow.custom.utils import build_custom_component_template diff --git a/src/backend/tests/unit/components/models/test_huggingface.py b/src/backend/tests/unit/components/languagemodels/test_huggingface.py similarity index 94% rename from src/backend/tests/unit/components/models/test_huggingface.py rename to src/backend/tests/unit/components/languagemodels/test_huggingface.py index 17023cf54..8ef9d430c 100644 --- a/src/backend/tests/unit/components/models/test_huggingface.py +++ b/src/backend/tests/unit/components/languagemodels/test_huggingface.py @@ -1,4 +1,4 @@ -from langflow.components.models.huggingface import DEFAULT_MODEL, HuggingFaceEndpointsComponent +from langflow.components.languagemodels.huggingface import DEFAULT_MODEL, HuggingFaceEndpointsComponent from langflow.inputs.inputs import DictInput, DropdownInput, FloatInput, IntInput, SecretStrInput, SliderInput, StrInput diff --git a/src/backend/tests/unit/components/models/test_xai.py b/src/backend/tests/unit/components/languagemodels/test_xai.py similarity index 95% rename from src/backend/tests/unit/components/models/test_xai.py rename to src/backend/tests/unit/components/languagemodels/test_xai.py index 7ba969bcc..720b1c178 100644 --- a/src/backend/tests/unit/components/models/test_xai.py +++ b/src/backend/tests/unit/components/languagemodels/test_xai.py @@ -1,7 +1,7 @@ from unittest.mock import MagicMock, patch import pytest -from langflow.components.models import XAIModelComponent +from langflow.components.languagemodels import XAIModelComponent from langflow.custom import Component from langflow.custom.utils import build_custom_component_template from langflow.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.models.xai.ChatOpenAI", return_value=MagicMock()) + mock_chat_openai = mocker.patch("langflow.components.languagemodels.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.models.xai.ChatOpenAI", + "langflow.components.languagemodels.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.models.xai.ChatOpenAI", return_value=mock_instance) + mocker.patch("langflow.components.languagemodels.xai.ChatOpenAI", return_value=mock_instance) model = component.build_model() mock_instance.bind.assert_called_once_with(response_format={"type": "json_object"}) diff --git a/src/backend/tests/unit/components/embeddings/test_embedding_model_component.py b/src/backend/tests/unit/components/models/test_embedding_model_component.py similarity index 95% rename from src/backend/tests/unit/components/embeddings/test_embedding_model_component.py rename to src/backend/tests/unit/components/models/test_embedding_model_component.py index 308a00a2d..8abab5721 100644 --- a/src/backend/tests/unit/components/embeddings/test_embedding_model_component.py +++ b/src/backend/tests/unit/components/models/test_embedding_model_component.py @@ -2,7 +2,7 @@ from unittest.mock import MagicMock, patch import pytest from langflow.base.models.openai_constants import OPENAI_EMBEDDING_MODEL_NAMES -from langflow.components.embeddings.embedding_model import EmbeddingModelComponent +from langflow.components.models.embedding_model import EmbeddingModelComponent from tests.base import ComponentTestBaseWithClient @@ -41,7 +41,7 @@ class TestEmbeddingModelComponent(ComponentTestBaseWithClient): assert updated_config["api_key"]["display_name"] == "OpenAI API Key" assert updated_config["api_base"]["display_name"] == "OpenAI API Base URL" - @patch("langflow.components.embeddings.embedding_model.OpenAIEmbeddings") + @patch("langflow.components.models.embedding_model.OpenAIEmbeddings") async def test_build_embeddings_openai(self, mock_openai_embeddings, component_class, default_kwargs): # Setup mock mock_instance = MagicMock() diff --git a/src/backend/tests/unit/graph/edge/test_edge_base.py b/src/backend/tests/unit/graph/edge/test_edge_base.py index 6450a9a9e..8e0ab37b6 100644 --- a/src/backend/tests/unit/graph/edge/test_edge_base.py +++ b/src/backend/tests/unit/graph/edge/test_edge_base.py @@ -2,7 +2,7 @@ import re import pytest from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.graph import Graph diff --git a/src/backend/tests/unit/graph/graph/test_cycles.py b/src/backend/tests/unit/graph/graph/test_cycles.py index 83506b84a..f2b5dd84b 100644 --- a/src/backend/tests/unit/graph/graph/test_cycles.py +++ b/src/backend/tests/unit/graph/graph/test_cycles.py @@ -3,8 +3,8 @@ import os import pytest from langflow.components.inputs import ChatInput from langflow.components.inputs.text import TextInputComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.logic.conditional_router import ConditionalRouterComponent -from langflow.components.models import OpenAIModelComponent from langflow.components.outputs import ChatOutput, TextOutputComponent from langflow.components.prompts import PromptComponent from langflow.custom import Component diff --git a/src/backend/tests/unit/graph/graph/test_graph_state_model.py b/src/backend/tests/unit/graph/graph/test_graph_state_model.py index f9fea89a8..a11a001cc 100644 --- a/src/backend/tests/unit/graph/graph/test_graph_state_model.py +++ b/src/backend/tests/unit/graph/graph/test_graph_state_model.py @@ -3,7 +3,7 @@ from typing import TYPE_CHECKING import pytest from langflow.components.helpers.memory import MemoryComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.graph import Graph diff --git a/src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py b/src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py index 32f95759a..0fdc05a7e 100644 --- a/src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py +++ b/src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py @@ -5,7 +5,7 @@ from typing import TYPE_CHECKING import pytest from langflow.components.helpers.memory import MemoryComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.prompts import PromptComponent from langflow.graph import Graph diff --git a/src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py b/src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py index 6dd6329b6..910bd14a8 100644 --- a/src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py +++ b/src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py @@ -6,7 +6,7 @@ import pytest from langflow.components.data import FileComponent from langflow.components.embeddings import OpenAIEmbeddingsComponent from langflow.components.inputs import ChatInput -from langflow.components.models import OpenAIModelComponent +from langflow.components.languagemodels import OpenAIModelComponent from langflow.components.outputs import ChatOutput from langflow.components.processing import ParseDataComponent from langflow.components.processing.split_text import SplitTextComponent diff --git a/src/frontend/src/utils/styleUtils.ts b/src/frontend/src/utils/styleUtils.ts index 8c9b624a7..39f1bc65d 100644 --- a/src/frontend/src/utils/styleUtils.ts +++ b/src/frontend/src/utils/styleUtils.ts @@ -208,11 +208,11 @@ export const SIDEBAR_CATEGORIES = [ { display_name: "Inputs", name: "inputs", icon: "Download" }, { display_name: "Outputs", name: "outputs", icon: "Upload" }, { display_name: "Prompts", name: "prompts", icon: "TerminalSquare" }, + { display_name: "Models", name: "models", icon: "BrainCog" }, { display_name: "Data", name: "data", icon: "Database" }, { display_name: "Processing", name: "processing", icon: "ListFilter" }, - { display_name: "Models", name: "models", icon: "BrainCircuit" }, + { display_name: "Vector Stores", name: "vectorstores", icon: "Layers" }, - { display_name: "Embeddings", name: "embeddings", icon: "Binary" }, { display_name: "Agents", name: "agents", icon: "Bot" }, { display_name: "Chains", name: "chains", icon: "Link" }, { display_name: "Loaders", name: "documentloaders", icon: "Paperclip" }, @@ -229,6 +229,12 @@ 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: "Amazon", name: "amazon", icon: "Amazon" }, { display_name: "Gmail", name: "gmail", icon: "Gmail" }, { display_name: "GitHub", name: "github", icon: "Github" }, @@ -309,7 +315,7 @@ export const nodeIconToDisplayIconMap: Record = { outputs: "Upload", prompts: "TerminalSquare", data: "Database", - models: "BrainCircuit", + models: "BrainCog", helpers: "Wand2", vectorstores: "Layers", embeddings: "Binary", @@ -332,6 +338,8 @@ export const nodeIconToDisplayIconMap: Record = { //Integration Icons AIML: "AI/ML", AgentQL: "AgentQL", + LanguageModels: "BrainCircuit", + EmbeddingModels: "Binary", AirbyteJSONLoader: "Airbyte", AmazonBedrockEmbeddings: "AWS", Amazon: "AWS", diff --git a/src/frontend/tests/core/features/filterSidebar.spec.ts b/src/frontend/tests/core/features/filterSidebar.spec.ts index bfb2e62cd..7f31cc72d 100644 --- a/src/frontend/tests/core/features/filterSidebar.spec.ts +++ b/src/frontend/tests/core/features/filterSidebar.spec.ts @@ -119,7 +119,6 @@ test( await expect(page.getByTestId("disclosure-helpers")).toBeVisible(); await expect(page.getByTestId("disclosure-vector stores")).toBeVisible(); await expect(page.getByTestId("disclosure-prototypes")).toBeVisible(); - await expect(page.getByTestId("disclosure-embeddings")).toBeVisible(); await expect(page.getByTestId("disclosure-tools")).toBeVisible(); await expect(page.getByTestId("dataAPI Request")).toBeVisible(); diff --git a/src/frontend/tests/core/features/globalVariables.spec.ts b/src/frontend/tests/core/features/globalVariables.spec.ts index 606de1c67..b64d00a7c 100644 --- a/src/frontend/tests/core/features/globalVariables.spec.ts +++ b/src/frontend/tests/core/features/globalVariables.spec.ts @@ -16,12 +16,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("openai"); - await page.waitForSelector('[data-testid="modelsOpenAI"]', { + await page.waitForSelector('[data-testid="languagemodelsOpenAI"]', { timeout: 1000, }); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .hover() .then(async () => { await page.getByTestId("add-component-button-openai").last().click(); diff --git a/src/frontend/tests/core/integrations/decisionFlow.spec.ts b/src/frontend/tests/core/integrations/decisionFlow.spec.ts index aed8a27dc..1c6803772 100644 --- a/src/frontend/tests/core/integrations/decisionFlow.spec.ts +++ b/src/frontend/tests/core/integrations/decisionFlow.spec.ts @@ -164,11 +164,14 @@ test( //---------------------------------- OPENAI await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("openai"); - await page.waitForSelector('[data-testid="modelsOpenAI"]', { - timeout: 2000, - }); + await page.waitForSelector( + '[data-testid="languagemodels_openai_draggable"]', + { + timeout: 2000, + }, + ); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .dragTo(page.locator('//*[@id="react-flow-id"]'), { targetPosition: { x: 500, y: 300 }, }); diff --git a/src/frontend/tests/core/integrations/textInputOutput.spec.ts b/src/frontend/tests/core/integrations/textInputOutput.spec.ts index e0de22b42..8ba494cc6 100644 --- a/src/frontend/tests/core/integrations/textInputOutput.spec.ts +++ b/src/frontend/tests/core/integrations/textInputOutput.spec.ts @@ -34,7 +34,7 @@ test.skip( await page.getByTestId("sidebar-search-input").fill("openai"); await page.waitForTimeout(1000); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .dragTo(page.locator('//*[@id="react-flow-id"]')); await page.mouse.up(); await page.mouse.down(); diff --git a/src/frontend/tests/core/unit/floatComponent.spec.ts b/src/frontend/tests/core/unit/floatComponent.spec.ts index 62d231ff3..fb0dc89bc 100644 --- a/src/frontend/tests/core/unit/floatComponent.spec.ts +++ b/src/frontend/tests/core/unit/floatComponent.spec.ts @@ -14,12 +14,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("nvidia"); - await page.waitForSelector('[data-testid="modelsNVIDIA"]', { + await page.waitForSelector('[data-testid="languagemodelsNVIDIA"]', { timeout: 30000, }); await page - .getByTestId("modelsNVIDIA") + .getByTestId("languagemodelsNVIDIA") .hover() .then(async () => { // Wait for the API request to complete after clicking the add button diff --git a/src/frontend/tests/core/unit/intComponent.spec.ts b/src/frontend/tests/core/unit/intComponent.spec.ts index b3073e03f..3263697c4 100644 --- a/src/frontend/tests/core/unit/intComponent.spec.ts +++ b/src/frontend/tests/core/unit/intComponent.spec.ts @@ -12,12 +12,12 @@ test("IntComponent", { tag: ["@release", "@workspace"] }, async ({ page }) => { await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("openai"); - await page.waitForSelector('[data-testid="modelsOpenAI"]', { + await page.waitForSelector('[data-testid="languagemodelsOpenAI"]', { timeout: 3000, }); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .first() .dragTo(page.locator('//*[@id="react-flow-id"]')); diff --git a/src/frontend/tests/core/unit/queryInputComponent.spec.ts b/src/frontend/tests/core/unit/queryInputComponent.spec.ts index 842414a0a..fe5a48a02 100644 --- a/src/frontend/tests/core/unit/queryInputComponent.spec.ts +++ b/src/frontend/tests/core/unit/queryInputComponent.spec.ts @@ -17,12 +17,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("openai"); - await page.waitForSelector('[data-testid="modelsOpenAI"]', { + await page.waitForSelector('[data-testid="languagemodelsOpenAI"]', { timeout: 3000, }); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .dragTo(page.locator('//*[@id="react-flow-id"]')); await page.mouse.up(); await page.mouse.down(); diff --git a/src/frontend/tests/core/unit/sliderComponent.spec.ts b/src/frontend/tests/core/unit/sliderComponent.spec.ts index 5a9bd54bf..99af24ae6 100644 --- a/src/frontend/tests/core/unit/sliderComponent.spec.ts +++ b/src/frontend/tests/core/unit/sliderComponent.spec.ts @@ -17,12 +17,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("ollama"); - await page.waitForSelector('[data-testid="modelsOllama"]', { + await page.waitForSelector('[data-testid="languagemodelsOllama"]', { timeout: 3000, }); await page - .getByTestId("modelsOllama") + .getByTestId("languagemodelsOllama") .dragTo(page.locator('//*[@id="react-flow-id"]')); await page.mouse.up(); await page.mouse.down(); diff --git a/src/frontend/tests/extended/features/auto-save-off.spec.ts b/src/frontend/tests/extended/features/auto-save-off.spec.ts index 857466f39..5a59a4074 100644 --- a/src/frontend/tests/extended/features/auto-save-off.spec.ts +++ b/src/frontend/tests/extended/features/auto-save-off.spec.ts @@ -31,12 +31,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("NVIDIA"); - await page.waitForSelector('[data-testid="modelsNVIDIA"]', { + await page.waitForSelector('[data-testid="languagemodelsNVIDIA"]', { timeout: 3000, }); await page - .getByTestId("modelsNVIDIA") + .getByTestId("languagemodelsNVIDIA") .dragTo(page.locator('//*[@id="react-flow-id"]')); await page.mouse.up(); await page.mouse.down(); @@ -85,7 +85,7 @@ test( await page.keyboard.press("Escape"); await page.locator('//*[@id="react-flow-id"]').click(); - const lastNvidiaModel = page.getByTestId("modelsNVIDIA").last(); + const lastNvidiaModel = page.getByTestId("languagemodelsNVIDIA").last(); await lastNvidiaModel.scrollIntoViewIfNeeded(); try { @@ -128,12 +128,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("NVIDIA"); - await page.waitForSelector('[data-testid="modelsNVIDIA"]', { + await page.waitForSelector('[data-testid="languagemodelsNVIDIA"]', { timeout: 3000, }); await page - .getByTestId("modelsNVIDIA") + .getByTestId("languagemodelsNVIDIA") .dragTo(page.locator('//*[@id="react-flow-id"]')); await page.mouse.up(); await page.mouse.down(); diff --git a/src/frontend/tests/extended/features/filterEdge-shard-1.spec.ts b/src/frontend/tests/extended/features/filterEdge-shard-1.spec.ts index eeca1e9c2..8bc260e07 100644 --- a/src/frontend/tests/extended/features/filterEdge-shard-1.spec.ts +++ b/src/frontend/tests/extended/features/filterEdge-shard-1.spec.ts @@ -62,7 +62,6 @@ test( "disclosure-models", "disclosure-helpers", "disclosure-vector stores", - "disclosure-embeddings", "disclosure-agents", "disclosure-memories", "disclosure-logic", @@ -99,23 +98,23 @@ test( await page.getByTestId("sidebar-search-input").click(); const visibleModelSpecsTestIds = [ - "modelsAIML", - "modelsAnthropic", - "modelsAzure OpenAI", - "modelsCohere", - "modelsGoogle Generative AI", - "modelsGroq", - "modelsHuggingFace", - "modelsLM Studio", - "modelsMaritalk", - "modelsMistralAI", - "modelsNVIDIA", - "modelsOllama", - "modelsOpenAI", - "modelsPerplexity", - "modelsQianfan", - "modelsSambaNova", - "modelsVertex AI", + "languagemodelsAIML", + "languagemodelsAnthropic", + "languagemodelsAzure OpenAI", + "languagemodelsCohere", + "languagemodelsGoogle Generative AI", + "languagemodelsGroq", + "languagemodelsHuggingFace", + "languagemodelsLM Studio", + "languagemodelsMaritalk", + "languagemodelsMistralAI", + "languagemodelsNVIDIA", + "languagemodelsOllama", + "languagemodelsOpenAI", + "languagemodelsPerplexity", + "languagemodelsQianfan", + "languagemodelsSambaNova", + "languagemodelsVertex AI", ]; await Promise.all( diff --git a/src/frontend/tests/extended/features/langflowShortcuts.spec.ts b/src/frontend/tests/extended/features/langflowShortcuts.spec.ts index e152a78cd..ae8fdd30d 100644 --- a/src/frontend/tests/extended/features/langflowShortcuts.spec.ts +++ b/src/frontend/tests/extended/features/langflowShortcuts.spec.ts @@ -16,12 +16,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("ollama"); - await page.waitForSelector('[data-testid="modelsOllama"]', { + await page.waitForSelector('[data-testid="languagemodelsOllama"]', { timeout: 3000, }); await page - .getByTestId("modelsOllama") + .getByTestId("languagemodelsOllama") .dragTo(page.locator('//*[@id="react-flow-id"]')); await page.mouse.up(); await page.mouse.down(); diff --git a/src/frontend/tests/extended/regression/general-bugs-dropdown-select-not-in-list.spec.ts b/src/frontend/tests/extended/regression/general-bugs-dropdown-select-not-in-list.spec.ts index f47fcd584..6017fe615 100644 --- a/src/frontend/tests/extended/regression/general-bugs-dropdown-select-not-in-list.spec.ts +++ b/src/frontend/tests/extended/regression/general-bugs-dropdown-select-not-in-list.spec.ts @@ -14,12 +14,12 @@ test( await page.getByTestId("sidebar-search-input").click(); await page.getByTestId("sidebar-search-input").fill("openai"); - await page.waitForSelector('[data-testid="modelsOpenAI"]', { + await page.waitForSelector('[data-testid="languagemodelsOpenAI"]', { timeout: 1000, }); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .hover() .then(async () => { await page.getByTestId("add-component-button-openai").last().click(); diff --git a/src/frontend/tests/extended/regression/generalBugs-shard-3.spec.ts b/src/frontend/tests/extended/regression/generalBugs-shard-3.spec.ts index c3d468135..529cdc68b 100644 --- a/src/frontend/tests/extended/regression/generalBugs-shard-3.spec.ts +++ b/src/frontend/tests/extended/regression/generalBugs-shard-3.spec.ts @@ -55,7 +55,7 @@ test( await page.getByTestId("sidebar-search-input").fill("openai"); await page - .getByTestId("modelsOpenAI") + .getByTestId("languagemodelsOpenAI") .dragTo(page.locator('//*[@id="react-flow-id"]'), { targetPosition: { x: 100, y: 200 }, });