浏览代码

fix: Invalid expected metadata value type error (#22793)

tags/1.7.0
Will 3 个月前
父节点
当前提交
095bae01b2
没有帐户链接到提交者的电子邮件

+ 2
- 6
api/core/tools/utils/dataset_retriever/dataset_retriever_base_tool.py 查看文件

@@ -1,5 +1,5 @@
from abc import abstractmethod
from typing import Any, Optional
from typing import Optional

from msal_extensions.persistence import ABC # type: ignore
from pydantic import BaseModel, ConfigDict
@@ -21,11 +21,7 @@ class DatasetRetrieverBaseTool(BaseModel, ABC):
model_config = ConfigDict(arbitrary_types_allowed=True)

@abstractmethod
def _run(
self,
*args: Any,
**kwargs: Any,
) -> Any:
def _run(self, query: str) -> str:
"""Use the tool.

Add run_manager: Optional[CallbackManagerForToolRun] = None

+ 1
- 1
api/core/workflow/nodes/knowledge_retrieval/knowledge_retrieval_node.py 查看文件

@@ -462,7 +462,7 @@ class KnowledgeRetrievalNode(BaseNode):
expected_value = self.graph_runtime_state.variable_pool.convert_template(
expected_value
).value[0]
if expected_value.value_type == "number": # type: ignore
if expected_value.value_type in {"number", "integer", "float"}: # type: ignore
expected_value = expected_value.value # type: ignore
elif expected_value.value_type == "string": # type: ignore
expected_value = re.sub(r"[\r\n\t]+", " ", expected_value.text).strip() # type: ignore

+ 1
- 1
api/core/workflow/nodes/llm/node.py 查看文件

@@ -565,7 +565,7 @@ class LLMNode(BaseNode):
retriever_resources=original_retriever_resource, context=context_str.strip()
)

def _convert_to_original_retriever_resource(self, context_dict: dict):
def _convert_to_original_retriever_resource(self, context_dict: dict) -> RetrievalSourceMetadata | None:
if (
"metadata" in context_dict
and "_source" in context_dict["metadata"]

正在加载...
取消
保存