mirror of
https://github.com/langgenius/dify.git
synced 2026-04-24 04:45:51 +08:00
refactor(skill): transition from artifact set to bundle structure
- Replaced SkillArtifactSet with SkillBundle across various components, enhancing the organization of skill dependencies and references. - Updated SkillManager methods to load and save bundles instead of artifacts, improving clarity in asset management. - Refactored SkillCompiler to compile skills into bundles, streamlining the dependency resolution process. - Adjusted DifyCli and SandboxBashSession to utilize ToolDependencies, ensuring consistent handling of tool references. - Introduced AssetReferences for better management of file dependencies within skill bundles.
This commit is contained in:
@ -8,7 +8,7 @@ from pydantic import BaseModel, Field
|
||||
from core.app.entities.app_invoke_entities import InvokeFrom
|
||||
from core.model_runtime.utils.encoders import jsonable_encoder
|
||||
from core.session.cli_api import CliApiSession
|
||||
from core.skill.entities import ToolArtifact, ToolReference
|
||||
from core.skill.entities import ToolDependencies, ToolReference
|
||||
from core.tools.entities.tool_entities import ToolParameter, ToolProviderType
|
||||
from core.tools.tool_manager import ToolManager
|
||||
from core.virtual_environment.__base.entities import Arch, OperatingSystem
|
||||
@ -131,14 +131,14 @@ class DifyCliConfig(BaseModel):
|
||||
cls,
|
||||
session: CliApiSession,
|
||||
tenant_id: str,
|
||||
artifact: ToolArtifact,
|
||||
tool_deps: ToolDependencies,
|
||||
) -> DifyCliConfig:
|
||||
from configs import dify_config
|
||||
|
||||
cli_api_url = dify_config.CLI_API_URL
|
||||
|
||||
tools: list[Tool] = []
|
||||
for dependency in artifact.dependencies:
|
||||
for dependency in tool_deps.dependencies:
|
||||
tool = ToolManager.get_tool_runtime(
|
||||
tenant_id=tenant_id,
|
||||
provider_type=dependency.type,
|
||||
@ -155,7 +155,7 @@ class DifyCliConfig(BaseModel):
|
||||
cli_api_session_id=session.id,
|
||||
cli_api_secret=session.secret,
|
||||
),
|
||||
tool_references=[DifyCliToolReference.create_from_tool_reference(ref) for ref in artifact.references],
|
||||
tool_references=[DifyCliToolReference.create_from_tool_reference(ref) for ref in tool_deps.references],
|
||||
tools=[DifyCliToolConfig.create_from_tool(tool) for tool in tools],
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user