一次完整的 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 写不好,它就成了诗人。"

相关推荐
全栈弄潮儿3 小时前
让 AI 帮你拆分一个功能需求:页面、接口、数据和测试任务怎么分
aigc·openai·ai编程
jeffer_liu3 小时前
OpenAI把Codex开源了?
openai·deepseek·harness·openai开源
怕浪猫20 小时前
2026年为什么我推荐你学DeepSeek Harness?AI Agent开发入门指南
openai·agent·ai编程
怕浪猫21 小时前
从 pre-execute 到 post-execute:AI Agent 调用工具时背后发生了什么
aigc·openai·ai编程
爱吃的小肥羊1 天前
ChatGPT Pro 额度被爆缩水 77%,OpenAI 被喷惨了!
openai
全栈弄潮儿1 天前
一周总结:把 AI 当助手,而不是答案机器
aigc·openai·ai编程
明航咨询_贾老师1 天前
ChatGPT全球宕机12+ API接口异常:事件复盘与AI从业者的架构启示
openai
怕浪猫2 天前
一行行拆解 agent-loop:AI Agent 的"思考循环"到底是怎么转的
aigc·openai·agent
9i编程2 天前
4. AI编写的SKILL,坑我一一试过,这次我自己改写:换个工具,照样不按SKILL写文档
人工智能·openai·ai编程
掘金酱2 天前
Vibe作品广场首发挑战来啦!发布作品,赢富士拍立得等千元好礼
openai·ai编程·vibecoding