diff --git a/api.py b/api.py index bb0dbdd..e0e877e 100755 --- a/api.py +++ b/api.py @@ -137,7 +137,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.current_agent.get_blocks_result())} if interaction.current_agent else {}, "status": interaction.current_agent.get_status_message if interaction.current_agent else "No status available", "timestamp": str(time.time()) } @@ -175,7 +175,7 @@ async def process_query(request: QueryRequest): agent_name="Unknown", success="false", blocks={}, - status="Waiting for agent...", + status="No agent working.", timestamp=str(time.time()) ) if is_generating: @@ -192,7 +192,7 @@ async def process_query(request: QueryRequest): return JSONResponse(status_code=400, content=query_resp.jsonify()) if interaction.current_agent: - blocks_json = {f'{i}': block.jsonify() for i, block in enumerate(interaction.current_agent.get_blocks_result)} + blocks_json = {f'{i}': block.jsonify() for i, block in enumerate(interaction.current_agent.get_blocks_result())} else: logger.error("No current agent found") blocks_json = {} diff --git a/sources/agents/browser_agent.py b/sources/agents/browser_agent.py index 395ca53..f9eee07 100644 --- a/sources/agents/browser_agent.py +++ b/sources/agents/browser_agent.py @@ -346,11 +346,13 @@ class BrowserAgent(Agent): complete = True break - if (link == None and not len(extracted_form)) or Action.GO_BACK.value in answer or link in self.search_history: + if (link == None and len(extracted_form) < 3) or Action.GO_BACK.value in answer or link in self.search_history: pretty_print(f"Going back to results. Still {len(unvisited)}", color="status") self.status_message = "Going back to search results..." unvisited = self.select_unvisited(search_result) prompt = self.make_newsearch_prompt(user_prompt, unvisited) + self.search_history.append(link) + self.current_page = link continue animate_thinking(f"Navigating to {link}", color="status")