from airshelf.celery import app @app.task(bind=True, max_retries=3) def submit_ai_task(self, task_id: str) -> str: return task_id @app.task(bind=True, max_retries=5) def poll_ai_task(self, task_id: str) -> str: return task_id @app.task(bind=True, max_retries=0) def generate_standalone_image_task(self, task_id: str) -> str: """单张独立图的慢活(ARK 出图 ~30s)在 worker 内跑,Web 层不被占住。 幂等且失败自退费(见 run_standalone_image_task),故 max_retries=0,不向上抛重试。""" from apps.ai.services import run_standalone_image_task run_standalone_image_task(task_id=task_id) return task_id