agent node - add retriever resources message transform logic

This commit is contained in:
Mutasem 2025-11-12 17:41:14 +03:00
parent 19c92fd670
commit ef86394f1d
1 changed files with 7 additions and 1 deletions

View File

@ -38,6 +38,7 @@ from core.workflow.node_events import (
NodeRunResult,
StreamChunkEvent,
StreamCompletedEvent,
RunRetrieverResourceEvent,
)
from core.workflow.nodes.agent.entities import AgentNodeData, AgentOldVersionModelFeatures, ParamsAutoGenerated
from core.workflow.nodes.base.entities import BaseNodeData, RetryConfig
@ -667,7 +668,7 @@ class AgentNode(Node):
dict_metadata["icon"] = icon
dict_metadata["icon_dark"] = icon_dark
message.message.metadata = dict_metadata
message.message.metadata = dict_metadata
agent_log = AgentLogEvent(
message_id=message.message.id,
node_execution_id=node_execution_id,
@ -694,6 +695,11 @@ class AgentNode(Node):
agent_logs.append(agent_log)
yield agent_log
elif message.type == ToolInvokeMessage.MessageType.RETRIEVER_RESOURCES:
assert isinstance(message.message, ToolInvokeMessage.RetrieverResourceMessage)
retriever_resources = message.message.retriever_resources
context_str = message.message.context
yield RunRetrieverResourceEvent(retriever_resources=retriever_resources, context=context_str)
# Add agent_logs to outputs['json'] to ensure frontend can access thinking process
json_output: list[dict[str, Any]] = []