Преглед на файлове

fix: casting non-string type value for tool parameter options (#5267)

Bowen Liang преди 1 година
родител
ревизия
d94279ae75
променени са 2 файла, в които са добавени 3 реда и са изтрити 3 реда
  1. 2 2
      api/core/tools/entities/tool_entities.py
  2. 1 1
      api/core/tools/provider/builtin/websearch/tools/scholar_search.yaml

+ 2 - 2
api/core/tools/entities/tool_entities.py

@@ -116,10 +116,10 @@ class ToolParameterOption(BaseModel):
     value: str = Field(..., description="The value of the option")
     label: I18nObject = Field(..., description="The label of the option")
 
-    @classmethod
     @field_validator('value', mode='before')
+    @classmethod
     def transform_id_to_str(cls, value) -> str:
-        if isinstance(value, bool):
+        if not isinstance(value, str):
             return str(value)
         else:
             return value

+ 1 - 1
api/core/tools/provider/builtin/websearch/tools/scholar_search.yaml

@@ -227,7 +227,7 @@ parameters:
           en_US: New Zealand
           zh_Hans: 新西兰
           pt_BR: New Zealand
-      - value: NO
+      - value: "NO"
         label:
           en_US: Norway
           zh_Hans: 挪威