mirror of
https://github.com/langgenius/dify.git
synced 2026-05-07 02:46:32 +08:00
Co-authored-by: jyong <718720800@qq.com> Co-authored-by: Yansong Zhang <916125788@qq.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: hj24 <mambahj24@gmail.com> Co-authored-by: hj24 <huangjian@dify.ai> Co-authored-by: Joel <iamjoel007@gmail.com> Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com> Co-authored-by: CodingOnStar <hanxujiang@dify.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
23 lines
1008 B
Python
23 lines
1008 B
Python
from typing import Any
|
|
|
|
from graphon.file import File
|
|
|
|
from core.tools.entities.tool_entities import ToolSelector
|
|
|
|
|
|
def convert_parameters_to_plugin_format(parameters: dict[str, Any]) -> dict[str, Any]:
|
|
for parameter_name, parameter in parameters.items():
|
|
if isinstance(parameter, File):
|
|
parameters[parameter_name] = parameter.to_plugin_parameter()
|
|
elif isinstance(parameter, list) and all(isinstance(p, File) for p in parameter):
|
|
parameters[parameter_name] = []
|
|
for p in parameter:
|
|
parameters[parameter_name].append(p.to_plugin_parameter())
|
|
elif isinstance(parameter, ToolSelector):
|
|
parameters[parameter_name] = parameter.to_plugin_parameter()
|
|
elif isinstance(parameter, list) and all(isinstance(p, ToolSelector) for p in parameter):
|
|
parameters[parameter_name] = []
|
|
for p in parameter:
|
|
parameters[parameter_name].append(p.to_plugin_parameter())
|
|
return parameters
|