新手也能懂的AI编程:用代码实践吴恩达的Prompt技巧

241 阅读3分钟

一、代码全景图:5分钟看懂智能处理系统

先来看看我们如何用20行代码实现评论自动分析:

// 1. 导入工具包(就像准备厨具)
import OpenAI from "openai";
import dotenv from "dotenv";

// 2. 读取密码本(环境变量)
dotenv.config();

// 3. 创建AI助手(设置参数)
const openai = new OpenAI({
    apiKey: process.env.OPENAI_API_KEY, // 钥匙
    baseURL: process.env.OPENAI_API_BASE_URL // 服务器地址
});

// 4. 制作提问模板(重点!)
const buildPrompt = (review) => `
请扮演资深客服,分析这条评论:
${review}

需要提取:
1. 情绪(😊正面 / 😞负面)
2. 是否生气(✓是 / ✗否) 
3. 提到的产品(比如:台灯、书桌)
4. 品牌名称(没有写填"未知")

请用这个格式回复:
{
  "mood": "",
  "angry": true/false,
  "product": "", 
  "brand": ""
}
`;

// 5. 主程序(开始工作!)
const main = async () => {
    const review = `
  我看中的这款书桌能调节高度,但是收到货后发现边角有划痕。
  联系客服后很快换了新,虽然耽误了时间,但处理态度不错。
  品牌是StudyWell。
  `;
  
    const response = await openai.chat.completions.create({
        model: "deepseek-chat",
        messages: [{ role: "user", content: buildPrompt(review) }]
    });
  
    console.log("分析结果:", JSON.parse(response.choices[0].message.content));
}

main();

二、代码详解:像搭积木一样学习

2.1 环境配置(给AI发通行证)

dotenv.config(); // 读取.env文件

const openai = new OpenAI({
    apiKey: process.env.OPENAI_API_KEY, // 钥匙
    baseURL: process.env.OPENAI_API_BASE_URL // 服务器地址
});

简易理解

  • .env文件就像密码本,保存着API密钥和地址
  • 不用把密码直接写代码里更安全

2.2 Prompt设计精髓(教AI做事)

const buildPrompt = (review) => `
分析这条评论:${review}

需要提取:
1. 情绪(正面/负面)→ 判断客户满意度
2. 是否生气 → 优先处理生气客户
3. 产品 → 统计热销商品
4. 品牌 → 竞品分析

格式要求:
{
  "mood": "",
  "angry": true/false,
  "product": "", 
  "brand": ""
}
`;

吴恩达技巧实践
✅ 明确步骤:像教新人一样分步骤说明
✅ 解释用途:告诉AI每个数据的作用
✅ 格式约束:规范输出方便程序处理

2.3 结果处理(让数据更好用)

JSON.parse(response.choices[0].message.content)

为什么要转JSON

  • 方便存入数据库
  • 可以直接生成统计图表
  • 手机APP也能轻松读取

三、运行效果:看看AI多聪明

输入评论

我买的StudyWell护眼台灯不到一周就闪烁,
客服说是我家电压问题,明明其他电器都正常!
处理速度倒是很快,但检测报告一直没给我。

AI输出

{
  "mood": "负面",
  "angry": true,
  "product": "护眼台灯",
  "brand": "StudyWell"
}

智能之处

  • 识别出"客服推卸责任"属于生气
  • 准确提取产品类型
  • 即使评论没有直接说"生气",也能从语气判断

四、常见问题解决指南

4.1 遇到报错怎么办?

错误现象检查步骤解决办法
返回乱码1. 检查prompt里的格式要求增加示例说明
漏掉部分信息2. 确认是否用英文标点统一使用中文标点
识别错误品牌3. 查看原始评论是否有错别字添加品牌白名单校验

4.2 让AI更听话的小技巧

// 在prompt中添加示例
const betterPrompt = `
示例:
评论:'''质量很差,但Deli客服处理很快'''
输出:{ "mood": "负面", "angry": false, "product": "未知", "brand": "Deli" }

现在分析这条新评论:'''
${review}
'''
`;

五、升级玩法:扩展你的AI助手

5.1 自动生成回复邮件

const replyPrompt = `
根据分析结果生成回复:
- 生气客户 → 先道歉再补偿
- 普通负面 → 提供解决方案
- 正面评价 → 感谢支持

当前分析:${analysisResult}
用亲切的口语化中文回复,不超过100字
`;

// AI可能回复:
"尊敬的客户,非常抱歉给您带来不好的体验...

5.2 数据统计功能

// 统计负面评价最多的品牌
const brands = results.filter(r => r.mood === '负面')
                     .map(r => r.brand);
const brandCount = _.countBy(brands);

六、吴恩达教授的三个代码秘诀

  1. Prompt即文档
    "把prompt当代码注释写,既指导AI又方便同事理解"

  2. 渐进式复杂化
    "先实现基础功能,再逐步添加错误处理等高级特性"

  3. 实时测试验证
    "每写3行prompt就测试一次,像调试代码一样调试AI"


动手练习:定制你的AI小秘书

任务:修改代码实现以下功能

  1. 增加价格区间分析(<500/500-1000/>1000)
  2. 识别客户是否提到会"推荐给朋友"
  3. 输出格式添加"推荐指数"星级(⭐️数量)

提示

// 修改prompt部分即可!
const customPrompt = `
分析内容:...
新增要求:
5. 价格区间(根据提到的金额判断)
6. 推荐意愿(有提到推荐相关词为true)
...
`;

结语:你的第一个AI程序已上线

通过这个案例我们学会了:
✅ 用代码与AI对话的基本方法
✅ Prompt设计的实用技巧
✅ 处理结果的简单应用

下一步建议

  1. 尝试处理真实电商评论
  2. 把结果保存到Excel表格
  3. 制作自动周报生成器

吴恩达教授说:"最好的学习方式是动手实践,现在你已经有了趁手的工具,快去创造吧!"