AI工作流自动化:n8n+LLM从需求到上线
🩺 摘要
每天都有重复的事要做——整理数据、生成报告、发邮件、更新表格。能不能让AI替我干这些?
📝 详情
AI自动化的三个层次及实战代码
第一层: 单个任务自动化
把重复的数据操作交给AI, 每次节省30分钟:
import pandas as pd
from openai import OpenAI
def auto_report(csv_path):
df = pd.read_csv(csv_path)
summary = df.describe().to_string()
client = OpenAI()
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{
"role": "user",
"content": "分析以下销售数据并给出关键发现: \n" + summary
}]
)
insights = resp.choices[0].message.content
with pd.ExcelWriter("report.xlsx") as writer:
df.to_excel(writer, sheet_name="原始数据", index=False)
pd.DataFrame({"分析结论": [insights]}).to_excel(writer, sheet_name="AI分析", index=False)
auto_report("sales_2026.csv")
第二层: 自动化流程编排
n8n vs Airflow vs 自建对比:
| 特性 | n8n | Airflow | 自建Python |
|---|---|---|---|
| 上手难度 | 低(拖拽即可) | 高(需DAG) | 中(写代码) |
| 可视化 | 完整GUI | 仅监控 | 无 |
| AI集成 | 内置OpenAI/Claude节点 | 需自定义Operator | 灵活 |
| 定时任务 | 内置调度 | 原生DAG调度 | 需cron/Lambda |
| 适合团队 | 非技术+开发者 | 数据工程团队 | 开发者独立控制 |
import schedule, time
def daily_pipeline():
emails = check_gmail(label="INBOX", query="has:attachment")
if not emails:
return
for email in emails:
attachment = download_attachment(email)
data = pd.read_csv(attachment)
analysis = ai_analyze(data)
report_path = generate_charts(analysis)
send_email(
to="manager@company.com",
subject=f"自动分析报告 - {email.date}",
body=analysis["summary"],
attachments=[report_path]
)
schedule.every().day.at("09:00").do(daily_pipeline)
第三层: 智能Agent协作
from crewai import Agent, Task, Crew
analyst = Agent(role="数据分析师", goal="分析数据并找出趋势和异常")
writer = Agent(role="报告撰写人", goal="把数据结论写成可读的日报")
notifier = Agent(role="通知分发员", goal="把报告发给正确的人")
crew = Crew(
agents=[analyst, writer, notifier],
tasks=[
Task(description="分析昨日销售数据"),
Task(description="撰写数据分析报告"),
Task(description="通过Slack发送给相关负责人")
]
)
crew.kickoff()
最适合自动化的5类场景
- 数据整理 -- CSV/Excel/JSON互转, 清洗去重(日省30分钟)
- 报告生成 -- 周报月报自动生成(日省20分钟)
- 内容分发 -- 一篇文章自动同步到公众号/知乎/头条(每次省15分钟)
- 监控告警 -- 系统异常->AI分析根因->通知负责人(缩短MTTR 50%)
- 客服响应 -- 70%常见问题无需人工, AI直接回复
核心思想: AI自动化不是让AI替你思考, 是让AI替你执行那些固定的重复的事情.
💬 评论 (0)