unknown commited on
Commit
c2f8dfe
·
1 Parent(s): 2acb95a

docs: add setup guide for new dev environment

Browse files
Files changed (1) hide show
  1. docs/setup-guide.md +132 -0
docs/setup-guide.md ADDED
@@ -0,0 +1,132 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # DM Analysis Agent — 新电脑开发环境搭建指南
2
+
3
+ ## 前提条件
4
+
5
+ - 已安装 Python 3.12+
6
+ - 已安装 Git
7
+ - 有 GitHub 账号并能访问 `Binbom-Jared/DM-Agent` 仓库
8
+
9
+ ---
10
+
11
+ ## 第 1 步:克隆代码
12
+
13
+ ```bash
14
+ git clone https://github.com/Binbom-Jared/DM-Agent.git
15
+ cd DM-Agent
16
+ pip install -r requirements.txt
17
+ ```
18
+
19
+ ---
20
+
21
+ ## 第 2 步:复制密钥文件
22
+
23
+ 从已有的开发电脑上拿到以下两个文件,放到项目根目录:
24
+
25
+ | 文件 | 作用 | 如何获取 |
26
+ |------|------|---------|
27
+ | `.env` | 所有 API 密钥、Token、钉钉 Webhook | 从已有电脑的项目根目录复制 |
28
+ | `credentials.json` | Google Sheets 服务账号密钥 | 从已有电脑的项目根目录复制 |
29
+
30
+ > **安全提醒**:这两个文件包含敏感信息,不要上传到 GitHub 或发到公开渠道。通过 U 盘或加密传输方式拷贝。
31
+
32
+ ---
33
+
34
+ ## 第 3 步:启动项目
35
+
36
+ ### Web 界面(推荐)
37
+
38
+ ```bash
39
+ python src/main.py --web
40
+ ```
41
+
42
+ 浏览器打开 `http://localhost:5000` 即可使用。
43
+
44
+ ### 其他启动方式
45
+
46
+ ```bash
47
+ # 交互模式
48
+ python src/main.py --chat
49
+
50
+ # 预览报告(不推送)
51
+ python src/main.py --dry-run
52
+ ```
53
+
54
+ ---
55
+
56
+ ## 日常开发流程
57
+
58
+ ### 开始工作前:拉取最新代码
59
+
60
+ ```bash
61
+ git pull origin main
62
+ ```
63
+
64
+ ### 改完代码后:推送到 GitHub
65
+
66
+ ```bash
67
+ git add -A
68
+ git commit -m "你的改动说明"
69
+ git push origin main
70
+ ```
71
+
72
+ 推送到 GitHub 后会自动触发 Hugging Face 部署。
73
+
74
+ ---
75
+
76
+ ## 项目结构
77
+
78
+ ```text
79
+ DM-Analysis-Agent/
80
+ ├── .github/workflows/deploy-hf.yml # GitHub Actions → HF 自动部署
81
+ ├── api/index.py # Vercel 入口
82
+ ├── docs/ # 架构文档
83
+ ├── src/
84
+ │ ├── web.py # Flask Web 服务 + API 路由
85
+ │ ├── loader.py # 数据加载(Sheets / Excel / CSV)
86
+ │ ├── monitor.py # 日常监控引擎
87
+ │ ├── budget.py # 预算追踪
88
+ │ ├── analyzer.py # 数据分析引擎
89
+ │ ├── ai_analyzer.py # AI 分析(GPT-4o-mini)
90
+ │ ├── meta_api.py # Meta Ads API
91
+ │ ├── google_api.py # Google Ads API
92
+ │ ├── criteo_api.py # Criteo API
93
+ │ ├── bing_api.py # Bing Ads API
94
+ │ ├── dingtalk.py # 钉钉推送
95
+ │ ├── memory.py # AI 记忆系统
96
+ │ ├── parser.py # 自然语言解析
97
+ │ └── formatter.py # 报告格式化
98
+ ├── templates/index.html # Web 前端
99
+ ├── tests/ # 测试
100
+ ├── config.yaml # 配置文件
101
+ ├── Dockerfile # Docker 部署
102
+ ├── requirements.txt # Python 依赖
103
+ ├── .env # 密钥(不入 Git)
104
+ └── credentials.json # Google 服务账号(不入 Git)
105
+ ```
106
+
107
+ ---
108
+
109
+ ## 数据源
110
+
111
+ | 来源 | 说明 | 数据位置 |
112
+ |------|------|---------|
113
+ | Google Sheets | 主数据源,手动维护 + API 回写 | 云端 |
114
+ | Meta Ads API | Campaign 级日度数据 | API 实时拉取 → 本地 CSV 缓存 |
115
+ | Google Ads API | Campaign 级日度数据 | API 实时拉取 → 本地 CSV 缓存 |
116
+ | Criteo API | Campaign 级日度数据 | API 实时拉取 → 本地 CSV 缓存 |
117
+ | Bing API | Campaign 级日度数据 | API 实时拉取 → 本地 CSV 缓存 |
118
+
119
+ 本地 CSV 只是缓存,删掉可以重新拉取,不影响系统运行。
120
+
121
+ ---
122
+
123
+ ## 常见问题
124
+
125
+ ### Q: Google API 报 `invalid_grant`
126
+ A: OAuth refresh token 过期了,需要重新授权。参考 Google Ads API 文档刷新 token,更新 `.env` 中的 `GOOGLE_ADS_REFRESH_TOKEN`。
127
+
128
+ ### Q: Bing API 报 `未配置 BING_ACCOUNT_IDS`
129
+ A: 在 `.env` 中添加 `BING_ACCOUNT_IDS=account_id:country`(如 `123456:US,789012:CA`)。
130
+
131
+ ### Q: Hugging Face 没有更新
132
+ A: 确认 GitHub Actions 是否触发成功。到 GitHub 仓库的 Actions 页面查看。如果 `HF_TOKEN` 过期,需要在 GitHub Settings → Secrets 中更新。