跳转至

二十五:提示工程自测题

来源:http://mp.weixin.qq.com/s?__biz=MzYyNTk3Njg1NA==&mid=2247484269&idx=1&sn=89ef7dd3ddd1604ca33e6ce4e1bbb719&chksm=f01eb014c76939028c485da93b130b83accb021a85f4e212dd3d12d741447686925fcd7aecbc#rd

A. 基础概念与 Prompt 结构

  • 什么是提示工程?它和模型微调有什么区别?

  • 提示工程适合解决哪些类型的问题?不适合解决哪些问题?

  • 一个高质量 prompt 通常由哪些部分组成?

  • 为什么 prompt 中要明确角色、任务、上下文、约束和输出格式?

  • 什么是系统消息、开发者消息、用户消息?它们在指令优先级上有什么区别?

  • 为什么说模型不是理解人的真实意图,而是根据可见上下文生成?

  • 低质量 prompt 常见问题有哪些?

  • prompt 中的约束越多越好吗?为什么?

  • 如何把“帮我优化一下这段文案”改写成更稳定的 prompt?

  • 为什么分隔符能提升 prompt 稳定性?

B. 零样本、少样本与示例设计

  • 什么是 zero-shot prompting?适合什么场景?

  • zero-shot prompt 容易出现哪些问题?如何改进?

  • 什么是 few-shot prompting?它为什么有效?

  • few-shot 示例选择有哪些原则?

  • 示例顺序、类别比例和措辞为什么会影响模型输出?

  • few-shot 示例过多会带来哪些问题?

  • 如何为分类任务设计 few-shot prompt?

  • 如何为信息抽取任务设计 few-shot prompt?

  • 什么是反例提示?什么时候应该加入反例?

  • 为什么 few-shot prompt 中的错误示例会造成严重影响?

C. 推理提示技巧

  • Chain-of-Thought prompting 的核心思想是什么?

  • CoT 适合哪些任务?不适合哪些任务?

  • 生产系统中为什么不一定要向用户展示完整推理过程?

  • 什么是 self-consistency?它如何提升推理稳定性?

  • self-consistency 的成本和局限是什么?

  • least-to-most prompting 的流程是什么?

  • task decomposition 和 least-to-most 有什么关系?

  • step-back prompting 的核心思想是什么?

  • 什么时候 step-back prompting 可能产生空泛答案?如何避免?

  • 对一道复杂数学题,你会如何设计 prompt 来提升正确率?

D. 输出控制与结构化生成

  • 为什么生产系统中经常要求模型输出 JSON 或结构化格式?

  • 只在 prompt 中说“输出 JSON”为什么不一定可靠?

  • 如何设计一个稳定的 JSON 输出 prompt?

  • schema validation、重试和修复策略在结构化输出中有什么作用?

  • function calling/tool calling 相比纯 prompt 控制格式有什么优势?

  • 如何控制模型输出为指定枚举值?

  • 如何让模型输出 Markdown 表格并保持列稳定?

  • 代码生成 prompt 应该包含哪些信息?

  • 让模型修改代码时,为什么要提供错误信息、期望行为和约束?

  • 如何减少模型输出多余解释或前后缀文本?

E. RAG、工具调用与 Agent 提示

  • RAG 场景中的 prompt 通常包含哪些部分?

  • 为什么 RAG prompt 要明确“只根据给定资料回答”?

  • RAG 中如何设计资料不足时的拒答策略?

  • RAG 答案中引用/citation 的作用是什么?

  • 什么是 query rewriting?它在 RAG prompt 中有什么价值?

  • ReAct prompting 的基本结构是什么?

  • ReAct 中 Thought、Action、Observation、Final 分别代表什么?

  • 生产 agent 中为什么不应该让模型自由调用任意工具?

  • 工具调用提示应包含哪些规则?

  • 如果工具返回结果与模型先验冲突,prompt 应如何约束模型?

F. 安全、评估与生产化

  • 什么是 prompt injection?

  • indirect prompt injection 和普通 prompt injection 有什么区别?

  • 为什么分隔符不能被当作真正的安全边界?

  • 防 prompt injection 可以采取哪些措施?

  • 为什么不能把敏感信息直接放进可被模型输出的上下文?

  • prompt 评估测试集应该覆盖哪些样本类型?

  • prompt 评估常见指标有哪些?

  • 为什么 prompt 修改也需要版本管理?

  • 如何对两个 prompt 版本做 A/B 测试?

  • 多轮对话中历史上下文可能带来哪些问题?

G. 综合设计与排错

  • 如果模型回答经常跑题,你会如何修改 prompt?

  • 如果模型输出格式偶尔不合法,你会如何处理?

  • 如果模型在长上下文中忽略关键信息,你会如何排查?

  • 如果模型在 RAG 中编造不存在的资料,你会如何改 prompt 和系统?

  • 如果模型分类结果偏向某一类,你会如何检查 few-shot 示例?

  • 如果模型工具调用参数经常错误,你会如何改进?

  • 如果用户输入包含“忽略以上指令”,系统应如何处理?

  • 请为“根据合同条款回答用户问题”设计一个安全 prompt 框架。

  • 请为“把客服工单自动分类并提取关键信息”设计一个 prompt 框架。

  • 请系统比较 zero-shot、few-shot、CoT、self-consistency、ReAct、RAG prompt 的适用场景、优点、缺点和成本。

            预览时标签不可点
    

    <div class="