diff --git a/batch_runner.py b/batch_runner.py index a530037c..a2ab0a2b 100644 --- a/batch_runner.py +++ b/batch_runner.py @@ -30,6 +30,7 @@ from datetime import datetime from multiprocessing import Pool, Manager, Lock import traceback +from tqdm import tqdm import fire from run_agent import AIAgent @@ -642,8 +643,14 @@ class BatchRunner: print(f"✅ Created {len(tasks)} batch tasks") print(f"🚀 Starting parallel batch processing...\n") - # Use map to process batches in parallel - results = pool.map(_process_batch_worker, tasks) + # Use imap_unordered with tqdm for progress tracking + results = list(tqdm( + pool.imap_unordered(_process_batch_worker, tasks), + total=len(tasks), + desc="📦 Batches", + unit="batch", + ncols=80 + )) # Aggregate all batch statistics and update checkpoint all_completed_prompts = list(completed_prompts_set) diff --git a/run_agent.py b/run_agent.py index 5e477c76..9cc5ca93 100644 --- a/run_agent.py +++ b/run_agent.py @@ -102,6 +102,7 @@ class AIAgent: self.ephemeral_system_prompt = ephemeral_system_prompt self.log_prefix_chars = log_prefix_chars self.log_prefix = f"{log_prefix} " if log_prefix else "" + self.base_url = base_url or "" # Store for OpenRouter detection # Store OpenRouter provider preferences self.providers_allowed = providers_allowed