fix: add extension, filename and size to PluginFileEntity

This commit is contained in:
Yeuoly 2024-12-03 16:51:51 +08:00
parent c34877aecf
commit 574a6c1ded
No known key found for this signature in database
GPG Key ID: A66E7E320FB19F61
2 changed files with 17 additions and 2 deletions

View File

@ -11,5 +11,8 @@ class PluginFileEntity(BaseModel):
dify_model_identity: str = FILE_MODEL_IDENTITY
mime_type: str | None
filename: str | None
extension: str | None
size: int | None
type: FileType
url: str

View File

@ -44,7 +44,12 @@ class PluginTool(Tool):
if url is None:
raise ValueError(f"File {parameter.id} does not have a valid URL")
tool_parameters[parameter_name] = PluginFileEntity(
url=url, mime_type=parameter.mime_type, type=parameter.type
url=url,
mime_type=parameter.mime_type,
type=parameter.type,
filename=parameter.filename,
extension=parameter.extension,
size=parameter.size,
).model_dump()
elif isinstance(parameter, list) and all(isinstance(p, File) for p in parameter):
tool_parameters[parameter_name] = []
@ -54,7 +59,14 @@ class PluginTool(Tool):
if url is None:
raise ValueError(f"File {p.id} does not have a valid URL")
tool_parameters[parameter_name].append(
PluginFileEntity(url=url, mime_type=p.mime_type, type=p.type).model_dump()
PluginFileEntity(
url=url,
mime_type=p.mime_type,
type=p.type,
filename=p.filename,
extension=p.extension,
size=p.size,
).model_dump()
)
return manager.invoke(