如何通过响应流使您的 AI 应用程序更快、更具交互性

在我最新的帖子中,我们讨论了很多关于提示缓存和一般缓存的内容,以及它如何在成本和延迟方面改进您的 AI 应用程序。然而,即使对于完全优化的人工智能应用程序,有时响应也需要一些时间才能生成,而且只是[...]帖子如何使你的人工智能应用程序更快,与响应流更具交互性首先出现在走向数据科学上。

来源:走向数据科学

在我最新的帖子中,讨论了很多关于提示缓存和一般缓存的内容,以及它如何在成本和延迟方面改进您的 AI 应用程序。然而,即使对于完全优化的人工智能应用程序,有时响应也需要一些时间才能生成,而我们对此无能为力。当我们要求模型提供大量输出或需要推理或深入思考时,模型自然会需要更长的时间来响应。尽管这是合理的,但等待更长的时间才能收到答案可能会让用户感到沮丧,并降低他们使用人工智能应用程序的整体用户体验。令人高兴的是,改善此问题的一种简单直接的方法是响应流。

流式传输意味着增量地、一点一点地获取模型生成的响应,而不是等待生成整个响应,然后将其显示给用户。通常(没有流式传输),我们向模型的 API 发送请求,等待模型生成响应,响应完成后,我们一步从 API 获取它。然而,通过流式传输,API 在生成响应时发回部分输出。这是一个相当熟悉的概念,因为大多数面向用户的 AI 应用程序(例如 ChatGPT)从第一次出现的那一刻起,就使用流式传输向用户显示其响应。但除了 ChatGPT 和 LLM 之外,流媒体基本上在网络和现代应用程序中随处使用,例如实时通知、多人游戏或实时新闻源。在这篇文章中,我们将进一步探索如何将流媒体集成到我们自己的请求中以建模 API,并在自定义 AI 应用程序上实现类似的效果。

有几种不同的机制可以在应用程序中实现流的概念。尽管如此,对于人工智能应用程序来说,有两种广泛使用的流媒体类型。更具体地说,这些是:

。 。 。

SSE 上的 HTTP 流怎么样?

例如,不要在一个块中获取响应:

  • id