Learning from Failures: Heterogeneous Graph Memory for Small Language Model Tool-Using Agents
TL;DR - FRESH is a retrieval framework that structures past successes and failures as a heterogeneous graph to help frozen small language models execute tools more reliably. It aims to prevent recurring structural errors in long-horizon, stateful environments without costly fine-tuning.
- Models dependencies among tasks, actions, errors, repairs, and execution conditions rather than storing experiences as flat memory.
- Retrieves strategies with their causal context and safety conditions, helping agents avoid repeated failures and unsafe state changes.
- Targets errors such as missing observations, premature writes, repeated failed calls, and action-precondition violations.
- Experiments on Ď„-Bench and AppWorld reportedly improve task success and tool-use reliability across multiple open-source models versus no-memory and representative memory baselines.