mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-19 22:09:11 +08:00
fix: variable message
This commit is contained in:
parent
cbf405beea
commit
83fdb42520
@ -4,7 +4,7 @@ from collections.abc import Mapping
|
|||||||
from enum import Enum
|
from enum import Enum
|
||||||
from typing import Any, Optional, Union
|
from typing import Any, Optional, Union
|
||||||
|
|
||||||
from pydantic import BaseModel, ConfigDict, Field, ValidationInfo, field_serializer, field_validator
|
from pydantic import BaseModel, ConfigDict, Field, ValidationInfo, field_serializer, field_validator, model_validator
|
||||||
|
|
||||||
from core.entities.provider_entities import ProviderConfig
|
from core.entities.provider_entities import ProviderConfig
|
||||||
from core.plugin.entities.parameters import (
|
from core.plugin.entities.parameters import (
|
||||||
@ -128,12 +128,13 @@ class ToolInvokeMessage(BaseModel):
|
|||||||
variable_value: str = Field(..., description="The value of the variable")
|
variable_value: str = Field(..., description="The value of the variable")
|
||||||
stream: bool = Field(default=False, description="Whether the variable is streamed")
|
stream: bool = Field(default=False, description="Whether the variable is streamed")
|
||||||
|
|
||||||
@field_validator("variable_value", mode="before")
|
@model_validator(mode="before")
|
||||||
@classmethod
|
@classmethod
|
||||||
def transform_variable_value(cls, value, values) -> Any:
|
def transform_variable_value(cls, values) -> Any:
|
||||||
"""
|
"""
|
||||||
Only basic types and lists are allowed.
|
Only basic types and lists are allowed.
|
||||||
"""
|
"""
|
||||||
|
value = values.get("variable_value")
|
||||||
if not isinstance(value, dict | list | str | int | float | bool):
|
if not isinstance(value, dict | list | str | int | float | bool):
|
||||||
raise ValueError("Only basic types and lists are allowed.")
|
raise ValueError("Only basic types and lists are allowed.")
|
||||||
|
|
||||||
@ -142,7 +143,7 @@ class ToolInvokeMessage(BaseModel):
|
|||||||
if not isinstance(value, str):
|
if not isinstance(value, str):
|
||||||
raise ValueError("When 'stream' is True, 'variable_value' must be a string.")
|
raise ValueError("When 'stream' is True, 'variable_value' must be a string.")
|
||||||
|
|
||||||
return value
|
return values
|
||||||
|
|
||||||
@field_validator("variable_name", mode="before")
|
@field_validator("variable_name", mode="before")
|
||||||
@classmethod
|
@classmethod
|
||||||
|
Loading…
x
Reference in New Issue
Block a user