自动周报生成
自动汇总业务数据,生成图文并茂的周报,解决人工整理耗时、口径不一、易出错的问题。
适用场景
1
销售团队每周业绩汇总与趋势分析
2
运营部门周度核心指标监控与异常预警
3
项目组周进度跟踪与风险同步
4
管理层多部门数据摘要与决策支持
核心Prompt(安装配置用)
你是一个企业周报自动生成Agent,专精于数据汇总、指标计算与图文报告生成。你的任务是基于用户提供的多源业务数据,自动生成一份结构清晰、图文并茂的周报。 【角色设定】 你是一名资深数据分析师,熟悉销售、运营、项目等业务指标,擅长将原始数据转化为可读性强的周报。 【任务描述】 1. 接收用户提供的原始数据(CSV/JSON/数据库查询结果),包含日期、部门、指标名称、数值等字段。 2. 自动按周(周一至周日)聚合数据,计算核心指标的周环比、周同比、目标达成率。 3. 识别异常波动(如指标下降超过10%或上升超过20%),并给出可能原因提示。 4. 生成图文并茂的周报,包含:标题、周期、核心结论(3-5条)、分部门/分指标详情表格、趋势图(用文字描述或Markdown表格模拟)、异常预警、下周建议。 【输出格式】 使用Markdown格式输出,包含: - 一级标题:XX部门/公司周报(YYYY年第WW周) - 二级标题:核心结论、数据详情、异常预警、下周建议 - 表格:指标名称、本周值、上周值、环比、目标、达成率 - 图表:用ASCII或文字描述趋势,如“销售趋势:周一100→周三150→周五200,上升趋势” - 约束:数据缺失时标注“暂无数据”,不编造数字;异常预警需基于规则;语言简洁专业。 【约束条件】 - 仅基于用户提供的数据生成,不引入外部数据。 - 若数据量超过1000行,先抽样或汇总再生成。 - 输出长度控制在800-1500字。 - 所有计算需可复核,保留两位小数。
所需工具 / API对接
需对接:1) 数据库(MySQL/PostgreSQL)或数据仓库(ClickHouse)读取业务数据;2) 企业微信/钉钉/飞书API发送周报;3) 邮件SMTP服务;4) 图表生成库(Matplotlib/Plotly)或BI工具API;5) 定时任务调度(Cron/Airflow)。
安装部署步骤
11. 环境准备:部署服务器(Linux/Windows),安装Python 3.8+,创建虚拟环境:python -m venv weekly_report_env,激活:source weekly_report_env/bin/activate(Linux)或weekly_report_env\Scripts\activate(Windows)。
22. 安装依赖:pip install pandas numpy matplotlib requests sqlalchemy openpyxl python-dotenv schedule。
33. 配置参数:创建config.yaml,填入数据库连接串、API密钥、收件人列表、周报生成时间(如每周一9:00)、指标阈值(如环比下降10%预警)。
44. 导入Prompt:将核心Prompt保存为prompt.txt,或通过环境变量注入Agent配置;若使用LangChain,创建PromptTemplate加载该文件。
55. 连接工具API:编写data_loader.py连接数据库并执行查询;编写sender.py对接企业微信/钉钉/邮件API;编写chart_generator.py生成趋势图并保存为PNG。
66. 测试验证:运行python main.py --test,使用样本数据生成周报,检查表格计算是否正确、图表是否生成、发送是否成功;对比人工计算验证准确性。
77. 上线部署:使用Cron配置定时任务:0 9 * * 1 cd /path && python main.py;或使用Airflow定义DAG;监控日志文件report.log。
88. 验收标准:连续运行2周,周报准时送达,数据误差小于1%,异常预警准确率大于90%。
配置参数
| 参数名 | 说明 | 默认值 |
|---|---|---|
report_period |
周报周期,格式YYYY-WW或last_week | last_week |
data_source |
数据源类型,支持mysql/postgresql/csv/api | mysql |
send_channel |
发送渠道,支持email/wecom/dingtalk/feishu | |
alert_threshold |
异常预警阈值,环比变化百分比 | 10 |
output_format |
输出格式,支持markdown/html/pdf | markdown |
schedule_time |
定时生成时间,Cron表达式 | 0 9 * * 1 |
效果示例
输入:销售数据表(日期、销售员、销售额、订单数),时间范围2025-05-01至2025-05-07。输出:生成《销售部周报(2025年第18周)》,核心结论:本周总销售额120万,环比上升15%,达成率105%;张三销售额30万居首;周三出现峰值50万,因促销活动;异常预警:李四销售额环比下降20%,需关注。包含表格:各销售员本周/上周销售额、环比、目标达成率;趋势图:周一至周日销售额折线图;下周建议:复制周三促销策略,辅导李四。
常见问题
Q1:数据源字段不固定怎么办?A:在config.yaml中配置字段映射,支持自定义列名对应关系,或使用SQL视图统一字段。
Q2:周报生成失败如何排查?A:检查report.log,常见原因:数据库连接失败、API密钥过期、数据为空;可运行--debug模式查看详细日志。
Q3:如何增加新的指标计算?A:在metrics.py中添加计算函数,并在config.yaml中注册指标名称和公式,重启服务即可。
Q4:支持多部门分别生成周报吗?A:支持,在config.yaml中配置部门列表和对应数据过滤条件,Agent会按部门循环生成并发送。
Q5:能否对接现有BI系统?A:可以,通过BI系统的API获取已加工数据,替换data_loader.py中的查询逻辑即可。
Q2:周报生成失败如何排查?A:检查report.log,常见原因:数据库连接失败、API密钥过期、数据为空;可运行--debug模式查看详细日志。
Q3:如何增加新的指标计算?A:在metrics.py中添加计算函数,并在config.yaml中注册指标名称和公式,重启服务即可。
Q4:支持多部门分别生成周报吗?A:支持,在config.yaml中配置部门列表和对应数据过滤条件,Agent会按部门循环生成并发送。
Q5:能否对接现有BI系统?A:可以,通过BI系统的API获取已加工数据,替换data_loader.py中的查询逻辑即可。
企业落地建议
部署方式:推荐私有化部署,使用Docker容器化,便于迁移和扩展。成本估算:服务器(2核4G)约200元/月,开发人力约3人天,第三方API费用按量计费。注意事项:1) 确保数据权限合规,敏感数据脱敏;2) 首次上线先以“抄送”模式运行,人工核对后再正式发送;3) 设置失败重试和告警通知;4) 定期更新Prompt以适应业务变化。建议先在一个部门试点,跑通后再推广。
需要我们帮你落地?
专业团队帮你从0到1部署企业AI Agent,含安装配置、定制开发、持续运营