把乱糟糟的销售表,一键变成周报:Excel + 大模型实战

痛点很具体

周五下午,从后台导出一张几千行的订单表:日期、地区、产品、金额、状态。老板要的是“这周卖得怎么样、哪里掉队了、下周盯什么”。手工透视表加写文案,至少磨一小时。

第一步:用 pandas 算出关键指标

import pandas as pd
df = pd.read_excel("sales.xlsx")
this_week = df[df["日期"] >= "2026-07-20"]
last_week = df[(df["日期"] >= "2026-07-13") & (df["日期"] < "2026-07-20")]
rev = this_week["金额"].sum()
rev_lw = last_week["金额"].sum()
growth = (rev - rev_lw) / rev_lw
top_region = this_week.groupby("地区")["金额"].sum().idxmax()
print(f"本周营收 {rev:,.0f},环比 {growth:+.1%},冠军地区 {top_region}")

跑完你就有了营收、环比、最强地区、Top 产品这些硬数字。把日期换成你自己的统计周期即可。

第二步:把数字交给大模型写周报

别让模型编数字,只让它组织语言。把刚算出的指标当作事实喂进去,prompt 明确要求“不要编造数据,只基于以下数字写三段”。

from openai import OpenAI
client = OpenAI(api_key="你的key", base_url="https://dashscope.aliyuncs.com/compatible-mode/v1")
facts = f"本周营收{rev:,.0f}元,环比{growth:+.1%},最强地区{top_region}"
r = client.chat.completions.create(
    model="qwen-plus",
    messages=[{"role": "user", "content": f"基于以下事实写一份销售周报(3段,不编造):{facts}"}]
)
print(r.choices[0].message.content)

base_url 用的是通义千问的兼容接口,换成 DeepSeek 也行,只要模型支持 OpenAI 格式。关键原则:数字来自前面的 pandas,模型只负责把话讲明白。

原始 Excelpandas算指标大模型写文案周报
原始表 → 算指标 → 写文案 → 周报

上线成每周自动任务

  • 把上面两段拼成一个 .py,参数化日期,谁都能跑。
  • 用 Windows 任务计划 / macOS launchd / 服务器 cron 每周五 17:00 自动执行,结果发邮件或推到群里。
  • 真要偷懒,把这活接到上一篇文章的 n8n 工作流里,连成一气。