掌握提问的艺术,让你的 AI 更聪明、更贴心。


为什么你的提问得不到好答案?

ChatGPT 等大模型的表现很大程度上取决于你的提问方式。提得好,AI 像专家;提不好,AI 像糊涂蛋。

常见低质量提问示例:

  • “帮我写个策划案。”
  • “怎么做职业规划?”
  • “我应该怎么学 Python?”

这些问题都太宽泛,没有上下文。结果就是:AI 只能泛泛而谈。


提问的黄金结构:角色设定 + 任务指令

为了让 AI 更聚焦、更懂你,可以采用“双层结构”的 Prompt 设计:

层级 内容 示例
角色设定 赋予 AI 一个身份 “你是一个资深职业教练”
任务指令 清晰描述你想让它做的事 “帮我制定一份针对30岁程序员的职业转型计划”

这种结构就像给 AI 戴上“职业眼镜”,输出内容会更专业、更符合预期。


✍️ 实战练习:写出一套“职业教练”Prompt 组合

目标:帮助一个焦虑的 30 岁程序员寻找职业方向。

你是一位资深职业生涯教练,擅长为中年转型者提供个性化建议。

请根据以下背景,制定一份详细的职业规划建议书:

- 年龄:30 岁
- 职业:程序员(有 7 年经验,精通后端开发)
- 当前状态:工作疲惫、感觉职业成长停滞
- 目标:探索更有成长性的职业方向,并平衡生活与工作 请包括:
1. 职业方向评估与推荐
2. 个人技能盘点与提升建议
3. 具体行动计划(6 个月内)
4. 心理建设与情绪管理建议

实用代码案例(Python + OpenAI API)

你也可以用 Python 把上述 Prompt 自动化,批量生成职业建议。示例代码如下:

import streamlit as st
from openai import OpenAI
from dotenv import load_dotenv load_dotenv()
client = OpenAI(
) st.set_page_config(page_title="Prompt 工具箱", layout="wide")
st.title(" ChatGPT Prompt 提问助手") tab1, tab2 = st.tabs([" 自由提问模式", " 模板生成器"]) # -------------------------------
# 自由提问模式
# -------------------------------
with tab1:
st.subheader(" 自由提问模式:角色设定 + 任意任务") with st.form("free_prompt_form"):
role = st.text_input("‍ 你希望 AI 扮演什么角色?", value="一位资深职业生涯教练")
task = st.text_area(" 请输入任务背景或问题", height=200, value="""
我是一名30岁的程序员,有7年后端经验,最近感觉职业成长停滞,想探索新的发展方向。
希望你能给出详细的职业规划建议,包括未来方向、技能提升和行动计划。
""")
submit = st.form_submit_button("生成建议") if submit:
with st.spinner(" ChatGPT 正在思考..."):
full_prompt = f"你是{role}。\n\n请根据以下背景提供详细建议:\n{task}" response = client.chat.completions.create(
model="anthropic/claude-3.7-sonnet",
messages=[
{"role": "system", "content": f"你是{role}"},
{"role": "user", "content": full_prompt}
],
temperature=0.7
)
result = response.choices[0].message.content st.subheader(" AI 生成的建议")
st.markdown(result)
st.download_button(" 下载为文本", result, file_name="prompt_result.txt") # -------------------------------
# 模板生成器
# -------------------------------
with tab2:
st.subheader(" 使用模板生成 Prompt") with st.form("template_form"):
t_role = st.text_input("‍ 你希望 AI 扮演什么角色?", value="资深职业生涯教练")
t_skill = st.text_input(" 他擅长什么领域/能力?", value="中年转型者的职业规划")
t_user_role = st.text_input("‍♂️ 你的背景", value="30岁程序员,7年后端经验")
t_problem = st.text_area(" 当前困扰", "感觉成长停滞,职业倦怠")
t_goal = st.text_area(" 想要实现的目标", "探索成长性更好的方向,并平衡生活")
t_output = st.text_area(" 希望 AI 输出什么内容",
"1. 职业方向建议\n2. 技能盘点与提升路径\n3. 可执行的6个月行动计划\n4. 心态与情绪建议"
) generate_prompt = st.form_submit_button("生成 Prompt") if generate_prompt:
generated_prompt = f"""
你是一位{t_role},擅长{t_skill}。 请根据以下背景信息,提供个性化建议: - 用户背景:{t_user_role}
- 当前困扰:{t_problem}
- 目标期望:{t_goal} 请输出以下内容:
{t_output} 请使用 Markdown 结构化格式输出,语言清晰,鼓励性强。
"""
st.subheader(" 生成的 Prompt")
st.code(generated_prompt.strip(), language="markdown")
st.download_button(" 下载 Prompt", generated_prompt.strip(), file_name="generated_prompt.md")




优质模板案例:可复用 Prompt 模板(Markdown 格式)

制作一个可复制的 Prompt 模板,比如:

##  Prompt 模板:职业教练版本

你是一位擅长【职业规划 / 中年转型 / 职场心理】的职业生涯教练,请根据以下背景信息,提供个性化、结构化的建议:

---

###  用户背景
- 年龄:
- 当前职业及经验年限:
- 技能特长:
- 教育背景(可选): ### 当前困扰
- 描述当前遇到的问题/瓶颈:
- 是否存在职业焦虑、迷茫、倦怠等心理状态? ### 职业目标
- 希望探索的方向或行业:
- 期望达成的生活或职业平衡: --- ### 你需要输出以下内容:
1. **职业方向评估与推荐**
2. **当前技能的优劣势分析与提升建议**
3. **未来 3~6 个月的可执行行动计划**
4. **心理建设与情绪管理建议**
5. **其他补充建议(如:求职策略、人脉建立等)** --- 输出要求:
- 请以 **Markdown 格式** 输出,分层清晰。
- 内容需贴近实际、鼓励性强、避免套话。
import streamlit as st
from openai import OpenAI
from dotenv import load_dotenv load_dotenv()
client = OpenAI(
) st.set_page_config(page_title="职业教练 Prompt 工具", layout="wide")
st.title(" 职业教练 Prompt 生成器 + 大模型智能答复") with st.form("career_prompt_form"):
st.subheader(" 请填写用户背景信息") age = st.text_input(" 年龄", "30")
job = st.text_input(" 当前职业及经验年限", "程序员,7年后端开发经验")
skills = st.text_area("️ 技能特长", "精通 Python、Django、数据库设计")
education = st.text_input(" 教育背景(可选)", "本科计算机专业") problems = st.text_area(" 当前困扰", "职业成长停滞,缺乏激情,对未来方向迷茫")
mental_state = st.text_input(" 当前心理状态", "有轻度职业倦怠") goals = st.text_area(" 职业目标", "探索成长空间更大的职业方向,平衡生活与工作") submit = st.form_submit_button(" 生成 Prompt 并提问 AI") if submit:
st.subheader(" 生成的 Prompt") generated_prompt = f"""
你是一位擅长职业规划与中年转型的职业生涯教练,请根据以下背景信息,提供个性化、结构化的建议: ### 用户背景
- 年龄:{age}
- 当前职业及经验年限:{job}
- 技能特长:{skills}
- 教育背景:{education} ### 当前困扰
- 问题描述:{problems}
- 心理状态:{mental_state} ### 职业目标
- 希望探索的方向/行业:{goals} 请输出以下内容:
1. 职业方向评估与推荐
2. 当前技能的优劣势分析与提升建议
3. 未来 3~6 个月的可执行行动计划
4. 心理建设与情绪管理建议
5. 其他补充建议(如:求职策略、人脉建立等) 请使用 Markdown 格式输出,分层清晰,语言鼓励性强。
""".strip() st.code(generated_prompt, language="markdown")
st.download_button(" 下载 Prompt", generated_prompt, file_name="career_coach_prompt.md") st.subheader(" 大模型建议(ChatGPT/Claude)")
with st.spinner("正在向 AI 提问,请稍等..."):
try:
response = client.chat.completions.create(
model="anthropic/claude-3.7-sonnet",
messages=[
{"role": "system", "content": "你是一位资深职业生涯教练"},
{"role": "user", "content": generated_prompt}
],
temperature=0.7
)
result = response.choices[0].message.content
st.markdown(result)
st.download_button(" 下载建议内容", result, file_name="career_advice.md")
except Exception as e:
st.error(f" 出错啦:{e}")

总结

提升提问质量的秘诀,不在于“问得多”,而在于“问得准”。掌握“角色设定 + 任务指令”的结构,你就能让 AI 成为你真正的合作伙伴。


L1-8、Prompt提升提问质量的实用技巧(Tips)的更多相关文章

  1. 程序员的恶性循环:加班->没空学习->老是写同等水平代码->无法提升代码质量->老是出BUG->老是需要修改->加班->...

    程序员的恶性循环:加班->没空学习->老是写同等水平代码->无法提升代码质量->老是出BUG->老是需要修改->加班->...

  2. Docker实用技巧之更改软件包源提升构建速度

    一.开篇 地球,中国,成都市,某小区的阳台上,一青年负手而立,闭目沉思,阵阵的凉风吹得他衣衫呼呼的飘.忽然,他抬起头,刹那间,睁开了双眼,好似一到精光射向星空,只见这夜空......一颗星星都没有.他 ...

  3. .NET Core技术研究-通过Roslyn代码分析技术规范提升代码质量

    随着团队越来越多,越来越大,需求更迭越来越快,每天提交的代码变更由原先的2位数,暴涨到3位数,每天几百次代码Check In,补丁提交,大量的代码审查消耗了大量的资源投入. 如何确保提交代码的质量和提 ...

  4. Now冥想:崩溃服务和性能服务助力提升应用质量

    想就像心灵的"健身房",当遇到失眠或情绪问题时,我们可以通过冥想,抚平情绪波澜,享受放松时刻.<Now冥想>正是一款专注冥想与心理健康的应用.它基于国际先进的正念冥想理 ...

  5. ★10 个实用技巧,让Finder带你飞~

    10 个实用技巧,让 Finder 带你飞 Finder 是 Mac 电脑的系统程序,有的功能类似 Windows 的资源管理器.它是我们打开 Mac 首先见到的「笑脸」,有了它,我们可以组织和使用 ...

  6. ★10 个实用技巧,让Finder带你飞~

    10 个实用技巧,让 Finder 带你飞 Finder 是 Mac 电脑的系统程序,有的功能类似 Windows 的资源管理器.它是我们打开 Mac 首先见到的「笑脸」,有了它,我们可以组织和使用 ...

  7. 一位ML工程师构建深度神经网络的实用技巧

    一位ML工程师构建深度神经网络的实用技巧 https://mp.weixin.qq.com/s/2gKYtona0Z6szsjaj8c9Vg 作者| Matt H/Daniel R 译者| 婉清 编辑 ...

  8. JavaScript函数作用域与对象以及实用技巧

    1. JS作用域 1.1 全局作用域和局部作用域 函数外面声明的就是 全局作用域 函数内是局部作用域 全局变量可以直接在函数内修改和使用 变量,使用var是声明,没有var是使用变量. 如果在函数内使 ...

  9. 秒啊,速来get这9个jupyter实用技巧

    1 简介 jupyter notebook与jupyter lab作为广受欢迎的ide,尤其适合开展数据分析相关工作,而掌握它们相关的一些实用技巧,势必会大大提升日常工作效率.而今天我就来给大家介绍9 ...

  10. Intellij IDEA 高效使用教程 (插件,实用技巧) 最好用的idea插件大全

    安装好Intellij idea之后,进行如下的初始化操作,工作效率提升十倍. 一. 安装插件 1. Codota 代码智能提示插件 只要打出首字母就能联想出一整条语句,这也太智能了,还显示了每条语句 ...

随机推荐

  1. C# 私钥加密,公钥解密

    /// <summary> /// RSA加密的密匙结构 公钥和私匙 /// </summary> public struct RSAKey { public string P ...

  2. 【Abaqus热分析】热膨胀系数设置

    来源:帮助文档

  3. Cannot find config.m4. phpize 安装扩展出错

    原因 编译扩展包下面的名字可能不是 config.m4,也有可能有类似 config0.m4 的文件:因此名字不一样也是找不到的,我们需要用 mv config0.m4 config.m4 :修改文件 ...

  4. CompletableFuture API介绍及使用

    1. 介绍 CompletableFuture 是 Java 8 引入的一个用于异步编程的类,位于 java.util.concurrent 包中.它是对 Future 的增强,提供了更强大的功能来支 ...

  5. JOKER 低代码平台 20250313 重磅更新:全方位升级,解锁开发新体验

    JOKER 低代码平台于 2025 年 3 月 13 日迎来了一次全面且深度的升级.本次更新聚焦前端交互.服务端功能以及通用操作等多个关键领域,致力于打造更卓越的开发环境,为开发者们带来更加高效.稳定 ...

  6. CISCN&CCB半决赛_2025_PWN_WP

    CISCN&CCB半决赛_2025_PWN_WP 前言: 记录一下第一次打半决赛国赛,总结来说还是自己太菜了,还有check脚本是真的很shi,正规军白给了... typo break edi ...

  7. CENTOS 7 使用Docker安装oracle 11g

    1.docker第一次安装失败,下一次会提示同名的容器已经存在,解决办法: docker container ls -a 根据上面执行的接口,选择一个containerid,然后带入到下面的命令 do ...

  8. 使用 vscode-jest 插件

    vscode-jest [error] Abort jest session: Not able to auto detect a valid jest command: multiple candi ...

  9. CMake简单学习

    CMake 说明 cmake的定义是什么 ?-----高级编译配置工具 当多个人用不同的语言或者编译器开发一个项目,最终要输出一个可执行文件或者共享库(dll,so等等)这时候神器就出现了-----C ...

  10. springboot 集成Swagger2报错 Failed to start bean ‘documentationPluginsBootstrapper’; nested exception is

    springboot 集成Swagger2报错 Failed to start bean 'documentationPluginsBootstrapper'; nested exception is ...