#!/usr/bin/env python3 """ 完整广告分析流程脚本 执行 Step 1-10 的完整决策流程 """ import asyncio import sys from pathlib import Path # 添加项目路径 sys.path.insert(0, str(Path(__file__).parent)) from agent.tools.models import ToolContext from tools.data_query import fetch_creative_data from tools.creative_metrics import merge_creative_data from tools.roi_calculator import calculate_roi_metrics from tools.ad_decision import get_ads_for_review async def main(): """执行完整分析流程""" # 创建工具上下文 ctx = ToolContext( agent_id="auto_put_ad_mini", session_id="manual_run", trace_id="manual_trace" ) end_date = "20260420" days = 7 print("=" * 60) print("Step 1: 拉取创意数据") print("=" * 60) result1 = await fetch_creative_data(ctx, days=days, end_date=end_date) print(result1.output) print("\n" + "=" * 60) print("Step 2: 合并创意数据") print("=" * 60) result2 = await merge_creative_data(ctx, days=days, force=False) print(result2.output) print("\n" + "=" * 60) print("Step 3: 计算 ROI 指标") print("=" * 60) result3 = await calculate_roi_metrics(ctx, end_date=end_date) print(result3.output) print("\n" + "=" * 60) print("Step 4: 获取待评估广告") print("=" * 60) result4 = await get_ads_for_review(ctx, metrics_csv="", end_date=end_date) print(result4.output) print("\n" + "=" * 60) print("数据准备完成!") print("=" * 60) print("\n接下来需要 AI 对待评估广告进行推理决策...") if __name__ == "__main__": asyncio.run(main())