Spaces:
Sleeping
Sleeping
Download core/agent_worker_wrapper.py from techprotrade/annator-command-center: direct link, hf CLI and curl.
- Browser
- Download file 1.51 kB
-
https://huggingface.co/spaces/techprotrade/annator-command-center/resolve/main/core/agent_worker_wrapper.py
- Command line
-
hf download hf://spaces/techprotrade/annator-command-center/core/agent_worker_wrapper.py
-
curl -L -o agent_worker_wrapper.py https://huggingface.co/spaces/techprotrade/annator-command-center/resolve/main/core/agent_worker_wrapper.py
1.51 kB
| import logging | |
| from typing import Dict, Any | |
| logger = logging.getLogger(__name__) | |
| def execute_agent_background(task_data: Dict[str, Any]): | |
| """ | |
| Background worker function for executing an agent task. | |
| This is called by the RQ worker. | |
| """ | |
| try: | |
| from core.atom_meta_agent import AtomMetaAgent, AgentTriggerMode | |
| request = task_data.get("request") | |
| context = task_data.get("context", {}) | |
| trigger_mode_str = task_data.get("trigger_mode", "manual") | |
| tenant_id = task_data.get("tenant_id", "default") | |
| # Convert string trigger mode back to enum if needed | |
| # (Assuming the caller passes the value string) | |
| logger.info(f"Background worker: Executing agent for {tenant_id} - Request: {request[:50]}...") | |
| # We need an event loop for the async execute method | |
| import asyncio | |
| atom = AtomMetaAgent(tenant_id) | |
| # Create a new event loop for this thread if necessary | |
| loop = asyncio.new_event_loop() | |
| asyncio.set_event_loop(loop) | |
| result = loop.run_until_complete(atom.execute( | |
| request=request, | |
| context=context, | |
| trigger_mode=AgentTriggerMode(trigger_mode_str) | |
| )) | |
| logger.info(f"Background worker: Execution completed for {tenant_id}") | |
| return result | |
| except Exception as e: | |
| logger.error(f"Background agent execution failed: {e}", exc_info=True) | |
| raise e | |