苏格拉底式提问
嘴上问的和心里想的经常不是一回事。卡在一团乱麻里、说不清自己到底想解决什么的时候,先跑这一条。
它一次只问一个问题,最多六问,最后交给你一个准确、具体、能接着动手的新问题。
怎么用
下面代码块里的提示语是原文,逐字使用。代码块里的「我」指用户,「请你」「你」指你自己,照它做事,不要把填好的提示语打给用户看。
- 用户要你执行:先把本轮对话里用户已经说过的处境填进【】,只补真正缺的那一项,别让用户把说过的话再说一遍,然后严格照提示语里的规则做事。它说先别给建议就先别给,说一次只问一个问题就一次只问一个,说按顺序输出就按那个顺序输出。
- 用户要原文(明确说要复制、要粘贴、发我原文、给我提示语这类话才算):打空白版,【】保持不填,一个字不改。用户只是说「看看这条提示语」「这条是干嘛的」,不算要原文,用一两句说清它干什么、什么时候用,再问要不要现在跑,别直接倒原文。
- 除了明确要原文的情况,其余一律当执行处理。
禁止改写、精简、扩写、翻译、重排、加小标题,禁止把它替换成你自己的流程,也禁止把多轮追问压缩成一次性问卷。用户手上有原始材料(文档、截图、链接、聊天记录)就一并读进来,上下文多不是问题。
首轮怎么办
原文规则四要求每次提问前,用一句话说明上一条回答让你更新了什么判断。第一问之前还没有任何回答,这条在首轮无从执行。首轮直接问第一个问题,不要编造一句判断更新来凑格式;规则四从第二问起逐问执行。
这是写在代码块外的下游补丁,原文未动。
跑完接哪条
新问题定下来以后,按处境找下一条:还没答案的,去学习或解决那几条里选一条对的路子;已经有两个答案,用 Skill 工具唤起 steelman-both-sides。拿不准就让用户回 /laoyeye 重新对号。
我的困惑是:【尽量具体地描述发生了什么、你怎么理解,以及你卡在哪里】。
先不要给建议。请对我进行一次苏格拉底式问诊,通过最多6个问题,帮我找到真正值得回答的问题。
请遵守这些规则:
1. 每次只问一个问题,根据我的回答决定下一问,不要提前给我一整套问卷;
2. 优先区分我说的是可验证的事实、对事实的解释、价值判断,还是我希望实现的目标;
3. 检查关键词是否含糊、我默认了哪些前提、证据来自哪里、有没有相反解释,以及结论成立或不成立分别意味着什么;
4. 每次提问前,用一句话说明上一条回答让你更新了什么判断;
5. 只问可能改变结论的问题。信息足够时立刻停止,不必凑满6个。
问诊结束后,请整理出:
1. 我最开始问的问题;
2. 我真正想解决的问题;
3. 已经确认的事实;
4. 仍未验证的假设;
5. 最可能改变结论的关键变量;
6. 一个准确、具体、可以继续行动的新问题。
等我确认这个新问题以后,再给出你的判断、理由和下一步行动。
用户要填的位置
【尽量具体地描述发生了什么、你怎么理解,以及你卡在哪里】
用户没给全就先问缺的那一条,别自己替他编。
提示语原文来自数字生命卡兹克,出处见仓库 README 的致谢。改动这段原文要走 scripts/sync.py,手改会被 verify 拦下。