This commit is contained in:
2026-08-04 23:17:13 +07:00
parent a90203dc0a
commit ba13ccc4b9
2 changed files with 12 additions and 9 deletions
+10 -7
View File
@@ -176,18 +176,21 @@ julia> # Currently returns a placeholder echo response
function _process_message(agent::yiemAgent, msg)::assistantMessage
# WORKING
# take every messages from agent.inputChannel, convert them into userMessage
# and add them to agent._state.messages
# loop until LLM didn't use tool calls
while
# take every messages from agent.inputChannel, convert them into userMessage
# and add them to agent._state.messages
# call agent.preprocessContext()
# call agent.preprocessContext()
# Call agent.formatMsgForLLM(agent._state) to format for LLM
# Call agent.formatMsgForLLM(agent._state) to format for LLM
# Call the LLM (blocking — the task waits here)
# Call the LLM (blocking — the task waits here)
# call toolArgumentValidation() to make sure soon-to-call tools has valid arguments
# call toolArgumentValidation() to make sure soon-to-call tools has valid arguments
# If agent has tools, handle tool calls in a loop
# If agent has tools, handle tool calls in a loop, save tool
end
# Build assistantMessage and return it
+2 -2
View File
@@ -204,7 +204,7 @@ A tool available to the agent.
- `parameters::TParameters`: Tool parameters schema (JSON schema)
- `execute::Function`: Tool execution function
- `prepareArguments::Union{Function, Nothing}`: Optional argument preparation callback
- `executionMode::Union{toolExecutionMode, Nothing}`: Override: run tool calls sequentially or in parallel
- `parallelExecute::Union{toolparallelExecute, Nothing}`: Override: run tool calls sequentially or in parallel
# Returns
- A new `agentTool` instance
@@ -216,7 +216,7 @@ struct agentTool{TParameters, TDetails} # A tool available to the agent
parameters::TParameters # Tool parameters schema (JSON schema)
execute::Function # Tool execution function
prepareArguments::Union{Function, Nothing} # Optional argument preparation callback
executionMode::Union{toolExecutionMode, Nothing} # Override: run tool calls sequentially or in parallel
parallelExecute::Union{toolparallelExecute, Nothing} # Override: run tool calls sequentially or in parallel
end