L1-8、Prompt提升提问质量的实用技巧(Tips)

掌握提问的艺术,让你的 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 成为你真正的合作伙伴。


posted @ 2025-04-22 13:19  何双新  阅读(665)  评论(0)    收藏  举报