为什么ChatGPT在处理超过1700个token的系统提示时变得「懒」?

发表时间: 2024-02-08 14:41

机器之心报道

编辑:小舟、陈萍

ChatGPT:我不是不会,就是不想干活。

现阶段,ChatGPT 已经成为很多人的得力助手,写文档、编代码、生成图片…… 但看似无所不能的 ChatGPT,也有其懒惰的一面。

不知大家是否还记得去年年底 GPT-4 开始变「懒」的事实,比如对于用户提出的要求,ChatGPT 的响应会变得非常缓慢且敷衍,甚至还会单方面中断对话;又比如用户要求 ChatGPT 编写一段代码,它会建议用户自己去写。

当时,OpenAI 给出的解释是模型行为是不可预测的,他们也在研究如何修复。

一种看似无解的问题,现在另一种解释似乎正在被广大网友接受。

最近,X 上一则推文爆火,该推文(来自 Dylan Patel)表示「ChatGPT 系统 prompt 中有 1700 个 token?如果你想知道为什么 ChatGPT 与 6 个月前的性能相比会变得如此糟糕,那是因为系统 prompt。看看(prompt 中)这么多垃圾。『变懒』确实有 prompt 的原因。」

图源:
https://twitter.com/dylan522p/status/1755086111397863777

系统 prompt 地址:https://pastebin.com/vnxJ7kQk

随后 Dylan Patel 表示,如果读者不相信的话,可以自己试试:

这条消息迅速在各大 AI 社区传播开来,讨论量居高不下:

有网友表示:「几个月前在 ChatGPT 性能下降时,我就建议过:非常长且写得不好的系统 prompt 更改和添加导致了大多数问题。这些 prompt 中内置了服务退化(比如无论如何只渲染一张图像),并且还有许多模糊的指令,即使是人类也很难始终如一地遵循,比如它产生的任何内容都不应该冒犯任何人。」

「根据我的测试,系统 prompt 越长,分配给用户精确任务的资源就越少。」另一位网友说道。

还有人表示:「没有证据表明较长的系统 prompt 会影响输出质量,我不知道为什么每个人都认为他们比 OpenAI 更了解自己。」

从公开的角度讲,有网友表示反对秘密注入 prompt,因为「这种行为对人类视角的多样性缺乏同理心。这些工具太重要了,不能以工具所有者在不披露的情况下预先调整结果的方式使用。」

有人反驳道:「如果你想访问底层模型,可以使用 OpenAI 的 API。我不明白这有什么问题。」

还有网友表示:「至少 OpenAI 注入的 prompt 似乎有效,我不介意那些让输出不那么刻板的 prompt—— 如果它们有效的话。」并举例说明谷歌的 Bard(Gemini Pro 版本)存在相关问题。

有人从商用 GPT 的角度指出:「这难道不是人工智能企业塑造其 GPT 的基本方式吗?如果不给 GPT 一些恰当的指令,能否保证负责任地运行 GPT 模型?保密对于商业公司来说不是很合理吗?他们如何调整其 LLM 是有价值的知识产权。」

最后,还有网友继续抱怨「昨天我在编写 Python 代码中遇到了这个问题,它完成了代码的 90%,然后说最后一段逻辑太复杂了,但告诉我如何去做...... 之后我开始了一个新的聊天,给了它自己写的 Python 代码,并说这个代码不完整 —— 你可以将它所需的行添加完整吗…… 然后 ChatGPT 就毫无问题地添加了代码。从这可以看出,ChatGPT 绝对是懒惰的。」

看来,ChatGPT 的懒惰问题还需要时间解决。

参考链接:

https://news.ycombinator.com/item?id=39289350

https://www.reddit.com/r/OpenAI/comments/1akye4v/chatgpt_system_prompt_is_1700_tokens_if_you_were/