对于大多数与 LLM 相关的使用案例来说,延迟都是一个重要问题。对于代码建议和修改长文档等情况,延迟确实会影响整体用户体验。想象一下,用户想要重写一份 2 页文档的最后一段。如果改写后的文档能立即出现就更好了,因为改动只涉及一个段落。然而,目前的 LLM API 需要重新生成整个文档,这给用户带来了很大的延迟。
OpenAI 现在正试图通过一项名为 “预测输出”(Predicted Outputs)的新开发功能来解决这个问题。该功能可用于提前知道 LLM 大部分输出的情况。编辑文档或重构代码等任务都可以利用这一功能得到改进。预测输出使用推测解码来跳过已知内容,使迭代速度大大加快。
开发人员可以将现有内容作为预测内容传入,从而大大减少延迟。这样,他们就能更快地重新生成整个内容。
OpenAI 与一些外部合作伙伴一起测试了这一功能,结果非常积极。例如,根据微软 GitHub 团队的内部基准测试,Copilot Workspace 工作负载中的预测输出速度提高了 5.8 倍。
要使用 “预测输出”,开发人员会受到一些限制。首先,它只支持 GPT-4o 和 GPT-4o-mini 系列机型。不支持最新的 o1 型号。此外,使用预测输出时不支持以下现有 API 参数:
- n 值大于 1
- logprobs
- 存在惩罚大于 0
- 频率惩罚大于 0
- 音频选项
- 文本以外的模式
- max_completion_tokens
- 工具 - 不支持函数调用
在提供预测时,所提供的令牌如果不是 API 最终完成的一部分,则按完成令牌费率收费。虽然存在限制,但这项新的 “预测输出” 功能的潜在优势是巨大的,它为更灵敏、更高效的 LLM 工具铺平了道路。