diff --git a/src/backend/langflow/template/frontend_node/llms.py b/src/backend/langflow/template/frontend_node/llms.py index e2602d2d6..ac17cf8ed 100644 --- a/src/backend/langflow/template/frontend_node/llms.py +++ b/src/backend/langflow/template/frontend_node/llms.py @@ -12,12 +12,34 @@ class LLMFrontendNode(FrontendNode): field.name.title().replace("Openai", "OpenAI").replace("_", " ") ).replace("Api", "API") + @staticmethod + def format_azure_field(field: TemplateField): + if field.name == "model_name": + field.show = False # Azure uses deployment_name instead of model_name. + elif field.name == "openai_api_type": + field.show = False + field.password = False + field.value = "azure" + elif field.name == "openai_api_version": + field.password = False + field.value = "2023-03-15-preview" + + @staticmethod + def format_llama_field(field: TemplateField): + field.show = True + field.advanced = not field.required + @staticmethod def format_field(field: TemplateField, name: Optional[str] = None) -> None: display_names_dict = { "huggingfacehub_api_token": "HuggingFace Hub API Token", } FrontendNode.format_field(field, name) + LLMFrontendNode.format_openai_field(field) + if name and "azure" in name.lower(): + LLMFrontendNode.format_azure_field(field) + if name and "llama" in name.lower(): + LLMFrontendNode.format_llama_field(field) SHOW_FIELDS = ["repo_id"] if field.name in SHOW_FIELDS: field.show = True @@ -44,8 +66,12 @@ class LLMFrontendNode(FrontendNode): field.field_type = "code" field.advanced = True field.show = True - elif field.name in ["model_name", "temperature", "model_file", "model_type"]: + elif field.name in [ + "model_name", + "temperature", + "model_file", + "model_type", + "deployment_name", + ]: field.advanced = False field.show = True - - LLMFrontendNode.format_openai_field(field)