Your workflow is well-structured, but due to its nature (multiple calls to LLM models + API + external writing), it can saturate n8n’s memory if you don’t control the volume per execution.
You should use SplitInBatches with real batch execution. Ensure each batch is processed and its execution is completely closed before moving on to the next. Or, invoke a sub-workflow for each batch using the Execute Workflow node.
Reduce serial AI dependencies. If you don’t need the results of one model to be passed to another, run the LLMs in parallel to reduce the lifetime of each execution. Add a NoOp or Set to cut the data tree and help n8n free up memory.
@Erick_Torres thanks a lot for this info. I am using batching now and it is working again. Had to split some agents into AI nodes and then process the data on another node separately, but the most important is that it works again.