问:用ChatGPT4.0多了,发现:当你要求它根据你的要求生成一段文档或代码,然后你不停提出对于这段文档的修改要求时,它会渐渐脱离了最开始生成的那段代码,更关注你最新提出的需求,即便当你要求它融合之前所有的内容全部重新生成一遍,也是如此。不知是否可以通过prompt或者其他手段解决。
答:
这种情况是由于超出了上下文长度,那么ChatGPT会遗忘前面的内容,导致无法继续会话。
如何判断是否已经忘记前面的内容?
1. @TarazedII: 我试过最开始给个指令“每次回答都请xxx来开头”,什么时候这个格式丢了,就说明它忘了
2. 可以让它重复第一句话,如果无法重复那么可能已经忘记了 。
解决方法:
1. 将中间结果人肉整理一下然后新开一个新的会话
2. 尽可能编辑你的提问,让它重新生成,而不是一直提问,就可以很好的控制上下文长度(参考图2)(另外截图的Prompt以前分享过:http://t.cn/A6OpAVd3 )
3. 一些复杂的任务,选择Code Interpreter的模型,最大上下文长度要大一些,这个我没数据,只是凭经验
4. 在差不多要超出上下文长度的时候,把中间结果加入在提问内容中也可以避免由于上下文长度导致遗忘。(by @iiiiichaos )
#ChatGPT使用技巧#
发布于 美国
