GPT-4-128K长文本回忆压力测试:深度理解模型性能
2023-11-09GPT-4AI模型性能长文本回忆压力测试
引言
近日,我对GPT-4-128K模型进行了一次“大海捞针”式的长文本回忆压力测试,探究其在处理长文本时的性能表现。测试结果既有预期的,也有一些出乎意料的发现。本文将对这些发现进行详细解读,并深度剖析模型在处理长文本时的性能表现,以及如何优化使用模型的策略。
测试发现
- GPT-4的回忆性能在超过73K tokens时开始下降
- 当需要回忆的事实位于文档深度的7%-50%时,回忆性能较低
- 如果事实位于文档的开头,无论上下文长度如何,都能被回忆起来
深度解读
这些发现告诉我们:
- 无法保证每个事实都能被回忆起来。在应用中,不应假设所有事实都能被模型回忆起来。
- 上下文越少,准确性越高。这是众所周知的,但如果可能,应减少发送给GPT-4的上下文数量,以提高其回忆能力。
- 位置很重要。这也是众所周知的,但位于文档开头和第二部分的事实似乎更容易被回忆起来。
测试过程概述
- 使用Paul Graham的文章作为’背景’ tokens。有218篇文章,很容易达到128K tokens。
- 在文档的不同深度位置随机放置一个声明。使用的事实是:“在旧金山最好的事情就是在晴天时在多洛雷斯公园吃三明治。”
- 仅使用提供的上下文,让GPT-4回答这个问题。
- 使用另一个模型(再次使用gpt-4)评估GPT-4的答案。
- 对文档深度在0%(文档顶部)到100%(文档底部)之间的15个位置和15个上下文长度(1K Tokens > 128K Tokens)进行重复测试。
进一步深化的步骤
- 这次分析的迭代是均匀分布的,有人建议使用sigmoid分布会更好(这会在文档的开始和结束部分挖掘出更多的细节)。
- 为了严谨,应该进行一个key:value检索步骤。但为了可关联性,我在PG的文章中加了一行关于旧金山的内容。
注意事项
- 虽然我认为这个方向是正确的,但还需要更多的测试来更好地了解GPT-4的能力。
- 改变提示会产生不同的结果。
- 在大上下文长度下进行了2次测试,以挖掘更多的性能。
- 这次测试的API调用成本约为200美元(一个128K输入tokens的调用成本为1.28美元)。
结论
GPT-4-128K模型在处理长文本时的性能表现有其特点和局限性,理解这些特点并据此优化使用策略,可以帮助我们更有效地利用模型的能力。希望本文的分析和解读,能为读者提供有价值的参考和启示。