g

greper

V1

2023/05/17阅读:30主题:默认主题

为什么nginx代理chatgpt请求无法实时一个字一个字生成?

nginx代理openai的chatgpt接口,为什么不能实时流式输出

chatgpt这一下把event-stream这个被遗忘的http协议给带火了

这么简单的问题直接问chatgpt吧

来自 https://ai.handsfree.work/
来自 https://ai.handsfree.work/

综上,改进方案如下

//nginx.conf

location / {
     proxy_pass https://api.openai.com;
     proxy_ssl_server_name on;
     proxy_buffering off;  #<----关键是它
  }

event-stream 是什么样的请求

event-stream是一种传输流式数据的HTTP请求。
它需要设置content-type

header:{
  'Content-Type''text/event-stream'
}

它的传输数据的格式如下:

event: [event_name]
data: [data]

event: [event_name_2]
data: [data_2]

其中,每个请求以一行"event: [event_name]"开头,表示该数据的事件名称;随后以一行"data: [data]"为数据主体。每个请求之间以一个空行隔开。在数据主体可以包含任意格式的数据,例如JSON或HTML等。当应用程序接收到event-stream请求时,它需要对每个事件名称和数据进行处理。

以上内容来自袖手gpt ,搞开发已经离不开gpt了,捂脸

分类:

后端

标签:

后端

作者介绍

g
greper
V1