feat: 审查流程优化+采集定时调度+全链路LLM提示词升级
- 审查:移除 manual_review,改为迭代LLM修复(最多3次),合规分回写Topic - 调度:scheduler 新增话题采集定时任务 scheduled_collect (01:30) - 提示词:全链路8文件≈24个提示词升级,增强SEO/平台推荐/真人感
This commit is contained in:
@@ -10,6 +10,7 @@ from apscheduler.triggers.cron import CronTrigger
|
||||
from .generator import run_creator
|
||||
from .optimizer import run_optimizer
|
||||
from .sync import sync_all_topics
|
||||
from .collector import run_collector
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -23,6 +24,14 @@ class TaskScheduler:
|
||||
logger.warning("Scheduler already started")
|
||||
return
|
||||
# 使用 CronTrigger 设置每日固定时间点
|
||||
self.scheduler.add_job(
|
||||
self._run_collect,
|
||||
CronTrigger(hour=1, minute=30),
|
||||
id='scheduled_collect',
|
||||
replace_existing=True,
|
||||
max_instances=1,
|
||||
coalesce=True
|
||||
)
|
||||
self.scheduler.add_job(
|
||||
self._run_sync,
|
||||
CronTrigger(hour=2, minute=30),
|
||||
@@ -49,7 +58,7 @@ class TaskScheduler:
|
||||
)
|
||||
self.scheduler.start()
|
||||
self._started = True
|
||||
logger.info("Scheduler started with daily cron triggers (02:30, 03:30, 04:30)")
|
||||
logger.info("Scheduler started with daily cron triggers (01:30 collect, 02:30 sync, 03:30 generate, 04:30 optimize)")
|
||||
def shutdown(self):
|
||||
if self.scheduler.running:
|
||||
self.scheduler.shutdown()
|
||||
@@ -79,6 +88,14 @@ class TaskScheduler:
|
||||
except Exception as e:
|
||||
logger.exception("[Scheduled] Optimization failed: %s", e)
|
||||
|
||||
def _run_collect(self):
|
||||
try:
|
||||
logger.info("[Scheduled] Starting topic collection...")
|
||||
result = run_collector()
|
||||
logger.info("[Scheduled] Collection completed: %s", result.get("output", "")[-200:])
|
||||
except Exception as e:
|
||||
logger.exception("[Scheduled] Collection failed: %s", e)
|
||||
|
||||
def _run_sync(self):
|
||||
try:
|
||||
logger.info("[Scheduled] Starting data sync...")
|
||||
|
||||
Reference in New Issue
Block a user