fix: type issues

Signed-off-by: Stream <Stream_2@qq.com>
This commit is contained in:
Stream
2026-02-02 06:45:15 +08:00
parent 303e1e3eb0
commit 987ea0f764
3 changed files with 9 additions and 9 deletions

View File

@@ -24,7 +24,7 @@ from core.model_runtime.entities import (
from core.model_runtime.entities.message_entities import ImagePromptMessageContent, PromptMessageContentUnionTypes
from core.prompt.agent_history_prompt_transform import AgentHistoryPromptTransform
from core.tools.__base.tool import Tool
from core.tools.entities.tool_entities import ToolInvokeMeta
from core.tools.entities.tool_entities import ToolInvokeFrom, ToolInvokeMeta
from core.tools.tool_engine import ToolEngine
from models.model import Message
@@ -103,6 +103,9 @@ class AgentAppRunner(BaseAgentRunner):
agent_strategy=self.config.strategy,
tool_invoke_hook=tool_invoke_hook,
instruction=instruction,
tenant_id=self.tenant_id,
invoke_from=self.application_generate_entity.invoke_from,
tool_invoke_from=ToolInvokeFrom.WORKFLOW,
)
# Initialize state variables

View File

@@ -46,9 +46,7 @@ class FunctionCallStrategy(AgentPattern):
total_usage: dict[str, LLMUsage | None] = {"usage": None}
messages: list[PromptMessage] = list(prompt_messages) # Create mutable copy
final_text: str = ""
structured_output_payload: dict[str, Any] | None = None
final_tool_args: dict[str, Any] = {"!!!": "!!!"}
output_text_payload: str | None = None
finish_reason: str | None = None
output_files: list[File] = [] # Track files produced by tools
@@ -139,6 +137,8 @@ class FunctionCallStrategy(AgentPattern):
tool_name, tool_args, tool_call_id, messages, round_log
)
tool_entity = self._find_tool_by_name(tool_name)
if not tool_entity:
raise ValueError(f"Tool {tool_name} not found")
tool_outputs[tool_name] = tool_response
# Track files produced by tools
output_files.extend(tool_files)

View File

@@ -74,10 +74,7 @@ class ReActStrategy(AgentPattern):
total_usage: dict[str, Any] = {"usage": None}
output_files: list[File] = [] # Track files produced by tools
final_text: str = ""
structured_output_payload: dict[str, Any] | None = None
output_text_payload: str | None = None
finish_reason: str | None = None
terminal_output_seen = False
tool_instance_names = {tool.entity.identity.name for tool in self.tools}
available_output_tool_names = {
tool_name
@@ -178,11 +175,11 @@ class ReActStrategy(AgentPattern):
else:
action_name = scratchpad.action.action_name
if action_name == OUTPUT_TEXT_TOOL and isinstance(scratchpad.action.action_input, dict):
output_text_payload = scratchpad.action.action_input.get("text")
pass # output_text_payload = scratchpad.action.action_input.get("text")
elif action_name == FINAL_STRUCTURED_OUTPUT_TOOL and isinstance(scratchpad.action.action_input, dict):
data = scratchpad.action.action_input.get("data")
if isinstance(data, dict):
structured_output_payload = data
pass # structured_output_payload = data
elif action_name == FINAL_OUTPUT_TOOL:
if isinstance(scratchpad.action.action_input, dict):
final_text = self._format_output_text(scratchpad.action.action_input.get("text"))
@@ -196,7 +193,7 @@ class ReActStrategy(AgentPattern):
output_files.extend(tool_files)
if action_name == terminal_tool_name:
terminal_output_seen = True
pass # terminal_output_seen = True
react_state = False
else:
react_state = True