diff --git a/api.py b/api.py index 862758f..18b971b 100755 --- a/api.py +++ b/api.py @@ -140,7 +140,7 @@ async def get_latest_answer(): "answer": interaction.current_agent.last_answer, "agent_name": interaction.current_agent.agent_name if interaction.current_agent else "None", "success": interaction.current_agent.success, - "blocks": {f'{i}': block.jsonify() for i, block in enumerate(interaction.current_agent.get_blocks_result())} if interaction.current_agent else {}, + "blocks": {f'{i}': block.jsonify() for i, block in enumerate(interaction.get_last_blocks_result())} if interaction.current_agent else {}, "status": interaction.current_agent.get_status_message if interaction.current_agent else "No status available", "uid": uid } diff --git a/sources/agents/agent.py b/sources/agents/agent.py index 3afe3fb..0e69648 100644 --- a/sources/agents/agent.py +++ b/sources/agents/agent.py @@ -242,5 +242,4 @@ class Agent(): self.memory.push('user', feedback) if save_path != None: tool.save_block(blocks, save_path) - self.blocks_result = self.blocks_result return True, feedback diff --git a/sources/interaction.py b/sources/interaction.py index fe52bf4..eec6ff4 100644 --- a/sources/interaction.py +++ b/sources/interaction.py @@ -69,6 +69,15 @@ class Interaction: break return ai_name + def get_last_blocks_result(self) -> List[Dict]: + """Get the last blocks result.""" + if self.current_agent is None: + return [] + blks = [] + for agent in self.agents: + blks.extend(agent.get_blocks_result()) + return blks + def load_last_session(self): """Recover the last session.""" for agent in self.agents: