一次完整的 Prompt Engineering 实战:让 AI 自动生成销售分析报告

一次完整的 Prompt Engineering 实战:让 AI 自动生成销售分析报告

在这篇笔记里,我分享一个用 OpenAI API 实现的实战案例 ------ 让 AI 自动分析销售数据并生成报告。

这个过程不仅能帮你理解如何编写和调用大模型接口,还能深入体会 Prompt Engineering(提示工程) 的重要性。


一、项目背景

我们希望用一段简单的 JavaScript 代码,让 AI 根据销售数据生成一份销售分析报告。

例如:

  • 计算每种产品的总销售额;
  • 判断哪种销售策略更有效。

二、代码实现

首先,导入依赖并配置环境变量:

php 复制代码
import OpenAI from 'openai';
import { config } from 'dotenv';

config({ path: '.env' });

const client = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
  baseURL: 'https://api.agicto.cn/v1'
});

这里使用了:

  • dotenv :管理 .env 文件中的 OPENAI_API_KEY
  • OpenAI SDK:与模型进行通信

三、准备数据与 Prompt

销售数据如下:

yaml 复制代码
const saleData = `销售数据:
日期,产品,销量,单价,总收入
2023-01-01,iPhone 13,100,6000,600000
2023-01-01,iPhone 14,50,8000,400000
2023-01-02,iPhone 13,80,6000,480000
2023-01-02,iPhone 14,60,8000,480000
2023-01-03,iPhone 13,120,5800,696000
2023-01-03,iPhone 14,80,7800,624000
`;

然后我们在函数中构建 Prompt:

ini 复制代码
const main = async (reference_data, query) => {
  const prompt = `
  You are an AI data analysis assistant that generates sales 
  reports based on the given sales data.
  Here is the sales data:\n ${reference_data} \n\n
  Please generate a report to answer the following question:\n
  ${query}
  `;

  let response = await client.chat.completions.create({
    model: "gpt-4o-mini",
    messages: [{ role: 'user', content: prompt }],
    max_tokens: 1024,
    temperature: 0.1,
  });

  console.log(response.choices[0].message.content);
};

四、运行测试

测试示例一:计算总销售额

less 复制代码
main(
  saleData,
  '根据上述销售数据,计算iPhone 13和iPhone 14的总销售额各是多少?'
);

测试示例二:分析销售策略效果

less 复制代码
main(
  saleData,
  '根据上面的销售数据,采取的哪个销售策略非常有效?'
);

运行后,模型会根据你的问题生成自然语言报告。


五、Prompt Engineering 的关键要点

在这个小项目中,Prompt 的编写决定了结果的质量。

一些经验总结:

  1. 身份设定
    明确告诉模型它是谁(例如:"你是一名数据分析助手"),有助于输出更专业的内容。
  2. 上下文清晰
    使用 \n\n 明确区分"任务说明""数据内容""问题"。
  3. 语言简洁
    避免含糊的指令。比如不要说"请帮我分析一下",而是直接问:"哪种销售策略更有效?"
  4. 可重复性
    使用模板字符串 ${reference_data} + ${query},方便不同数据与问题复用。
  5. 低温度输出
    设置 temperature: 0.1,让模型更偏向逻辑性和稳定性,而非创意。

六、总结

通过这个例子可以看到:

  • Prompt 工程 是让大模型"听懂你话"的核心;
  • 清晰的数据边界 + 明确的任务指令 能显著提升输出质量;
  • 一个好的 Prompt,往往比模型本身更重要。

小结一句:

"Prompt 写得好,AI 就是你的超强助手;

Prompt 写不好,它就成了诗人。"

相关推荐
用户47949283569154 小时前
把 Claude Code、Codex、Gemini 放进同一个浏览器工作台:Hive 开源了
openai·agent·claude
Lei活在当下5 小时前
【AI手记系列】2026.05.26 一周AI小结
llm·openai·ai编程
fuquxiaoguang15 小时前
算力变天:当AI从“训练狂魔”转向“推理为王”
人工智能·openai·甲骨文·3000亿美元推理订单
小霖家的混江龙18 小时前
Claude Code 和 Codex 的代码越写越脏,我加了一层 Fallow 做代码清理
openai·ai编程·claude
悟空码字19 小时前
显存不够?算力不足?多卡并行一站式解决方案
aigc·openai·ai编程
沸点小助手2 天前
「技术er迷惑行为大赏 & 520不拘形式,自在过节」获奖名单公示|本周互动话题上新🎊
openai·ai编程·沸点
Mr_凌宇2 天前
# AI Coding Agent 搭了一个 Mini Harness (学习向)
openai·ai编程
视觉&物联智能2 天前
【杂谈】-游戏生成数据:人工智能训练中极易被低估的核心资源
人工智能·游戏·ai·chatgpt·openai·agi·deepseek
西陵3 天前
拆解 Claude Code Memory:AI Agent 如何真正“记住”项目
aigc·openai·ai编程