乐于分享
好东西不私藏

同样调用AI,为什么他省了80%人力,你天天返工?因为这个4要素公式

同样调用AI,为什么他省了80%人力,你天天返工?因为这个4要素公式
📝 Day 26 · Prompt 工程基础

同样是调用 AI,为什么他的客服省了 80% 人力,我的还在天天返工?差距就在这个字符串

✨ 3 年开发者亲测:改好 Prompt,回答质量提升 5 倍,每天少加班 2 小时

📖 一个真实学员的故事

上周,一位做电商的学员找到我:"小雪,我花 3 万块外包做了个客服机器人,结果用户投诉更多了。为什么?"我看了他的代码,API 调用没问题,模型也是最好的,但Prompt 只有一句话"回答用户问题"我帮他改成了4 要素 Prompt(角色 + 任务 + 边界 + 格式),结果:

✅ 投诉率下降 73% — 回答准确了

✅ 人力成本省 80% — 机器人能处理 90% 常见问题

✅ 用户满意度 96% — 回答像真人客服

🎯 今天,我把这个价值 3 万的 Prompt 公式,免费教给你。

🌟 学完这篇你将获得
💬 掌握 Prompt 核心结构(角色 + 任务 + 边界 + 格式)
🤖 完成智能客服机器人(可直接商用)
💰 每天少加班 2 小时 — 减少 70% 返工
📚 学习时间 40 分钟 — 零基础也能懂
⚡ 30 秒速读
核心结论:Prompt 写得好,AI 就是专家;Prompt 写得烂,AI 就是小白 — 跟模型无关,跟写法有关
真实收益:用对 Prompt 结构,一次得到满意答案,减少 70% 重试,每天省 2 小时
关键公式:好 Prompt = 角色 + 任务 + 边界 + 格式
最大坑点:90% 的人只写"帮我回答问题",没有角色和边界,难怪 AI 乱答

Prompt 不是越长越好,是越结构化越好。90% 的人只写任务,老手会设定角色和边界。你,是哪一种?

🚀 5 分钟上手

在代码中写 Prompt,和网页版聊天有什么不同?

import dashscopedashscope.api_key = "你的 API Key"# 在代码中,Prompt 是字符串变量prompt = """你是一名客服助手,帮我回答用户问题。用户问题:这个产品怎么用?请简洁回答,不超过 50 字。"""# 调用 APIresponse = dashscope.Generation.call(    model="qwen-turbo",    prompt=prompt)print(response.output.text)

💡 运行结果:"您好!使用步骤:1️⃣ 开机长按电源键 3 秒 2️⃣ 蓝牙连接手机 3️⃣ 下载 APP 按提示操作。详细说明书在包装盒内,也可在公众号回复"说明书"获取电子版~"

📖 代码说明:• 第 6-11 行:定义 Prompt 字符串(三引号包裹多行文本)• 第 14-17 行:调用通义千问 API• 第 19 行:打印 AI 回答• 关键:Prompt 中设定了角色(客服助手)、任务(回答问题)、边界(不超过 50 字)

✨ 看懂了吗?这就是好 Prompt 的雏形!继续往下,教你完整公式。

📖 核心概念

01 什么是 Prompt?

Prompt 就是你对 AI 说的话。• 网页版:在聊天框输入的文字• 代码中:字符串变量(用引号包裹)• 本质:给 AI 的指令/问题

⚠️ 你是不是也遇到过:• 同样的模型,别人用着像专家,你用着像小白?• 让 AI 写文案,出来的内容空洞无物?• 让 AI 写代码,bug 一堆还得自己改?不是 AI 不行,是你的 Prompt 不行。

02 代码中 vs 网页版,有什么区别?

对比维度
网页版
代码中
输入方式
手动打字
字符串变量
复用性
每次重新输入
可重复使用
自动化
无法自动化
可批量处理
变量替换
手动修改
f-string 自动替换

💡 关键差异:代码中的 Prompt 是变量,可以用 f-string 动态替换内容:

# 定义模板template = "你是一名{role},帮我{task}。要求:{requirement}"# 替换变量prompt = template.format(    role="客服专家",    task="回答用户问题",    requirement="简洁专业,不超过 100 字")print(prompt)# 输出:你是一名客服专家,帮我回答用户问题。要求:简洁专业,不超过 100 字

✨ 这就是 Prompt 模板的雏形!后续课程会深入讲解。

03 为什么代码中的 Prompt 更重要?

💡 真实场景:• 网页版:你一个人用,写得好坏只影响你自己• 代码中:可能服务成千上万用户,Prompt 质量决定产品成败例子:客服机器人 Prompt 写得差 → 用户得不到准确答案 → 投诉增加 → 公司损失

⚠️ 所以,学好 Prompt,不只是提升效率,更是提升你的职业竞争力

✅ 好 Prompt 的 4 个核心要素

记住这个公式,价值 3 万好 Prompt = 角色 + 任务 + 边界 + 格式

01 角色(Role)- 告诉 AI 它是谁

📖 作用:设定 AI 的身份和专业领域示例:• "你是一名资深客服专家"• "你是一位有 10 年经验的 Python 工程师"• "你是一个温柔耐心的心理辅导员"效果:AI 会模仿该角色的语气和专业知识

💡 金句:你给 AI 什么角色,它就给你什么表现。

02 任务(Task)- 告诉 AI 要做什么

📖 作用:明确具体要完成的工作示例:• "回答用户的产品使用问题"• "帮我写一封邮件给客户"• "分析这段代码的问题并修复"关键:任务要具体,不要说"帮我解决问题"这种模糊的话

💡 金句:任务越模糊,回答越离谱。

03 边界(Constraint)- 告诉 AI 什么不能做

📖 作用:限制 AI 的回答范围,避免跑题示例:• "回答不超过 100 字"• "不知道的就说不清楚,不要编造"• "只用中文回答,不要用英文"• "不要涉及政治、宗教等敏感话题"效果:控制输出质量,减少错误

💡 金句:没有边界的 AI,就像没有刹车的车 — 很危险。

04 格式(Format)- 告诉 AI 怎么输出

📖 作用:指定输出的组织形式示例:• "用列表形式回答,每条一行"• "输出 JSON 格式,包含 name 和 price 字段"• "分 3 段:问题原因、解决方案、预防措施"效果:便于后续程序处理或用户阅读

💡 金句:格式决定可用性,可用性决定价值。

🎯 实战对比:坏 Prompt vs 好 Prompt

来看同一个场景,用不同的 Prompt,效果差距有多大:

📝 测试场景:电商客服回答用户问题
❌ 坏 Prompt
缺少角色、边界、格式
prompt = "用户问:这个产品怎么用?请回答。"

⚠️ AI 回答(问题多):

这个产品的使用方法很简单。首先你需要了解产品的基本功能,然后按照说明书操作。不同产品使用方法可能不同,建议你查看具体产品的说明书。如果还有问题,可以联系客服。一般来说,电子产品需要开机、连接、设置等步骤...

  • ❌ 废话多,没有实际信息

  • ❌ 没有具体步骤

  • ❌ 长度失控,啰嗦

  • ❌ 语气像机器人,不友好

✅ 好 Prompt
角色 + 任务 + 边界 + 格式
prompt = """你是一名资深电商客服专家,有 5 年工作经验。任务:回答用户的产品使用问题。要求:1. 语气友好、专业、有耐心2. 分步骤说明,每条不超过 20 字3. 不超过 5 个步骤4. 不知道的就说不清楚,不要编造用户问题:这个产品怎么用?请回答:"""

✅ AI 回答(质量高):

您好!很高兴为您解答~ 使用步骤如下:  1️⃣ 长按电源键 3 秒开机 2️⃣ 手机蓝牙搜索设备并连接 3️⃣ 下载官方 APP 完成配对 4️⃣ 按 APP 提示完成初始化设置 5️⃣ 开始使用,享受智能体验  详细说明已发送到您手机,请注意查收~

  • ✅ 有具体步骤,可操作

  • ✅ 长度适中,简洁

  • ✅ 语气友好,像真人客服

  • ✅ 格式清晰,易读

📊 Prompt 要素对比
要素
坏 Prompt
好 Prompt
影响
角色
❌ 无
✅ 资深客服专家
AI 知道用专业语气
任务
⚠️ 模糊
✅ 回答使用问题
AI 知道具体做什么
边界
❌ 无
✅ 不超过 5 步
控制长度,不啰嗦
格式
❌ 无
✅ 分步骤说明
输出清晰易读
💰 费用对比:好 Prompt 帮你省多少钱?
对比项
坏 Prompt
好 Prompt
差距
重试次数
平均 3 次
1 次省 66% API 费用
人工审核
每条都审
抽查 10%省 90% 人力
用户投诉
每天 10+ 起
每周 1-2 起省 80% 客服成本

💡 一个好 Prompt,每月帮你省下的钱,可能比你的工资还高。

📱 学习AI很难坚持怎么办?

可以来「搭纸」小程序里,在这里有一群人一起努力,可以互相鼓励,一起坚持。

✅ 个人日程 — 可以记录自己重要的日程,提醒你

✅ 习惯打卡 — 创建你学习AI的习惯,提醒你打卡

打卡分享 — 分享你的学习感受,让更多的人看到你的优先

点击下方小程序卡片「搭纸」一起来搭纸打卡学习

关注公众号, 可私信进学习交流群 🎁

💻 代码实战

实战项目:智能客服机器人

这是一个可以直接使用的客服机器人,能自动回答常见问题:

import dashscope# 设置 API Key(替换成你自己的)dashscope.api_key = "sk-你的 API Key"def customer_service_bot(user_question):    """智能客服机器人"""    # 构建 Prompt(角色 + 任务 + 边界 + 格式)    prompt = f"""你是一名电商客服助手,有 3 年工作经验。任务:回答用户的产品问题。要求:1. 语气友好、专业、有耐心2. 简洁明了,不超过 100 字3. 不知道的就说不清楚,不要编造4. 适当使用 emoji,让回答更亲切用户问题:{user_question}请回答:"""    try:        # 调用通义千问 API        response = dashscope.Generation.call(            model="qwen-turbo",            prompt=prompt,            temperature=0.7,      # 平衡创造性            max_tokens=300,       # 控制长度            timeout=30            # 超时设置        )        # 返回 AI 回答        return response.output.text    except Exception as e:        return f"抱歉,系统出错了:{str(e)}"# === 测试机器人 ===if __name__ == "__main__":    # 测试问题列表    questions = [        "这个产品怎么用?",        "多久能发货?",        "可以退货吗?",        "有保修吗?",        "支持分期付款吗?"    ]    print("🤖 智能客服机器人测试\n")    print("=" * 50)    for i, question in enumerate(questions, 1):        print(f"\n【问题{i}】{question}")        answer = customer_service_bot(question)        print(f"【客服】{answer}")        print("-" * 50)

📖 代码详解

第 1-3 行:导入库 + 设置 API Key第 5-32 行:定义客服机器人函数第 8-20 行:构建 Prompt(包含 4 要素)第 23-30 行:调用 API + 错误处理第 35-52 行:测试 5 个常见问题

✨ 这个机器人可以自动回答常见问题,节省 80% 客服人力!

📝 运行结果示例
🤖 智能客服机器人测试==================================================【问题 1】这个产品怎么用?【客服】您好!使用很简单哦~ 1️⃣ 开机长按电源键 3 秒 2️⃣ 蓝牙连接手机 3️⃣ 下载 APP 按提示操作。详细说明书在包装盒内,也可在公众号回复"说明书"获取电子版~--------------------------------------------------【问题 2】多久能发货?【客服】亲,我们一般 24 小时内发货哦~ 📦 下单后仓库会尽快处理,江浙沪 1-2 天到,其他地区 3-5 天。急单可以联系客服加急处理呢!--------------------------------------------------【问题 3】可以退货吗?【客服】当然可以~ ✅ 7 天无理由退换货,商品未使用、包装完好即可。运费险我们已购买,退货无忧!有任何问题随时联系我哦~--------------------------------------------------
🧪 实战测试

测试输入:• "这个产品怎么用?"• "多久能发货?"• "可以退货吗?"预期输出:友好、专业、简洁的回答(每条<100 字)结论:好的 Prompt 让客服机器人更专业,回答质量稳定

⚠️ 3 个坑,90% 的人都踩过

🔥 坑点 1 / Prompt 太简单

# ❌ 错误写法:只有任务prompt = "回答问题:这个产品怎么用?"# ✅ 正确写法:角色 + 任务 + 边界 + 格式prompt = """你是一名客服专家。任务:回答用户问题。要求:不超过 100 字,分步骤说明。问题:{question}"""

💡 建议:至少包含角色和边界,不要只写任务

⚠️ 坑点 2 / 不处理 API 错误

# ❌ 错误写法:没有 try-exceptresponse = dashscope.Generation.call(...)answer = response.output.text  # 出错就崩溃# ✅ 正确写法:错误处理try:    response = dashscope.Generation.call(...)    return response.output.textexcept Exception as e:    return f"抱歉,系统出错了:{str(e)}"

💡 建议:生产环境必须处理错误,给用户友好提示

💸 坑点 3 / 不设置 max_tokens

# ❌ 错误写法:不限制长度response = dashscope.Generation.call(prompt=prompt)# AI 可能输出 1000 字,费用失控# ✅ 正确写法:限制长度response = dashscope.Generation.call(    prompt=prompt,    max_tokens=300  # 控制费用和长度)

💡 建议:始终设置 max_tokens,避免费用失控

✅ 今日作业

作业 1:运行客服机器人

1. 复制上面的代码2. 替换你的 API Key3. 运行并测试 5 个问题4. 截图保存结果💡 建议:用搭纸记录你的第一个 AI 应用!

作业 2:优化你的 Prompt

1. 选一个你自己的业务场景2. 用"角色 + 任务 + 边界 + 格式"写 Prompt3. 测试 3 次,优化不满意的地方4. 保存为模板,下次复用💡 提示:搭纸小程序可以帮你分类管理 Prompt 模板

🎯 今日总结

1. Prompt 是代码中的字符串变量2. 好 Prompt = 角色 + 任务 + 边界 + 格式3. 完成了智能客服机器人4. 为后续 RAG、Agent 打基础

一句话记住今天:代码中的 Prompt,决定 AI 应用质量

📢 温馨提示

🎉 恭喜完成第 26 天学习!

👉 关注公众号,获取后续文章每天上午 10 点准时推送公众号内回复"180 天",获取完整学习路线图

💬 评论区留言,赢取好礼每天抽 3 位留言的同学,送出实体书/课程优惠券/周边留言内容:客服机器人运行截图 + 心得

📱 用"搭纸"小程序,坚持更容易习惯打卡 ✅ 待办清单 ✅ 日程安排 ✅ 学习分享微信小程序搜索"搭纸"

明天上午 10 点见!第 27 天:《好 Prompt 长什么样?10 个案例对比分析》

❄️ 小雪 · AI 大模型入门 180 天 · 第 26 天

已更新 26/180 篇,坚持就是胜利!