diff --git a/api/core/plugin/entities/plugin.py b/api/core/plugin/entities/plugin.py index aa78eb919c..958a4b69e4 100644 --- a/api/core/plugin/entities/plugin.py +++ b/api/core/plugin/entities/plugin.py @@ -176,6 +176,14 @@ class ModelProviderID(GenericProviderID): self.provider_name = "gemini" +class ToolProviderID(GenericProviderID): + def __init__(self, value: str, is_hardcoded: bool = False) -> None: + super().__init__(value, is_hardcoded) + if self.organization == "langgenius": + if self.provider_name in ["jina", "siliconflow"]: + self.provider_name = f"{self.provider_name}_tool" + + class PluginDependency(BaseModel): class Type(enum.StrEnum): Github = PluginInstallationSource.Github.value diff --git a/api/services/plugin/plugin_migration.py b/api/services/plugin/plugin_migration.py index fd1bef98b7..63cd08a900 100644 --- a/api/services/plugin/plugin_migration.py +++ b/api/services/plugin/plugin_migration.py @@ -1,7 +1,6 @@ import datetime import json import logging -import sys import time from collections.abc import Mapping, Sequence from concurrent.futures import ThreadPoolExecutor @@ -418,8 +417,6 @@ class PluginMigration: logger.info("Uninstall plugins") - sys.exit(-1) - # get installation try: installation = manager.list_plugins(fake_tenant_id) diff --git a/api/services/tools/builtin_tools_manage_service.py b/api/services/tools/builtin_tools_manage_service.py index aa6f3493fe..5865aaf77a 100644 --- a/api/services/tools/builtin_tools_manage_service.py +++ b/api/services/tools/builtin_tools_manage_service.py @@ -7,7 +7,7 @@ from sqlalchemy.orm import Session from configs import dify_config from core.helper.position_helper import is_filtered from core.model_runtime.utils.encoders import jsonable_encoder -from core.plugin.entities.plugin import GenericProviderID +from core.plugin.entities.plugin import GenericProviderID, ToolProviderID from core.plugin.manager.exc import PluginDaemonClientSideError from core.tools.builtin_tool.providers._positions import BuiltinToolProviderSort from core.tools.entities.api_entities import ToolApiEntity, ToolProviderApiEntity @@ -240,10 +240,7 @@ class BuiltinToolManageService: # rewrite db_providers for db_provider in db_providers: - try: - GenericProviderID(db_provider.provider) - except Exception: - db_provider.provider = f"langgenius/{db_provider.provider}/{db_provider.provider}" + db_provider.provider = str(ToolProviderID(db_provider.provider)) # find provider def find_provider(provider):