This commit is contained in:
jyong
2025-04-25 14:56:22 +08:00
parent 9437145218
commit 389f15f8e3
13 changed files with 376 additions and 1244 deletions

View File

@ -1 +1 @@
TOOL_SELECTOR_MODEL_IDENTITY = "__dify__tool_selector__"
DATASOURCE_SELECTOR_MODEL_IDENTITY = "__dify__datasource_selector__"

View File

@ -6,6 +6,7 @@ from typing import Any, Optional, Union
from pydantic import BaseModel, ConfigDict, Field, ValidationInfo, field_serializer, field_validator, model_validator
from core.datasource.entities.constants import DATASOURCE_SELECTOR_MODEL_IDENTITY
from core.entities.provider_entities import ProviderConfig
from core.plugin.entities.parameters import (
PluginParameter,
@ -16,7 +17,6 @@ from core.plugin.entities.parameters import (
init_frontend_parameter,
)
from core.tools.entities.common_entities import I18nObject
from core.tools.entities.constants import TOOL_SELECTOR_MODEL_IDENTITY
class ToolLabelEnum(Enum):
@ -400,7 +400,7 @@ class DatasourceInvokeFrom(Enum):
class DatasourceSelector(BaseModel):
dify_model_identity: str = TOOL_SELECTOR_MODEL_IDENTITY
dify_model_identity: str = DATASOURCE_SELECTOR_MODEL_IDENTITY
class Parameter(BaseModel):
name: str = Field(..., description="The name of the parameter")

View File

@ -1,29 +0,0 @@
from typing import Optional
from pydantic import BaseModel
from core.tools.entities.tool_entities import ToolParameter
class ApiToolBundle(BaseModel):
"""
This class is used to store the schema information of an api based tool.
such as the url, the method, the parameters, etc.
"""
# server_url
server_url: str
# method
method: str
# summary
summary: Optional[str] = None
# operation_id
operation_id: Optional[str] = None
# parameters
parameters: Optional[list[ToolParameter]] = None
# author
author: str
# icon
icon: Optional[str] = None
# openapi operation
openapi: dict