Q1. 被告知,ChatGPT机器人回复Error,但是key池已经有了200key在轮训,昨日猜想是key太少了导致的轮训失败,昨日已经重新上线了,昨日断定不成立。
A1: 先问了一个简单问题,机器人回答很快, 再问了一个复杂问题,复现Error,
先上猜想架构图:

应该是超时时间设置的较短,机器人设置的不是流式回答,ChatGPT官方回复的太慢了,导致超时了,调试,调试,确实如此,okhttp的读取流的超时时间设置为了30s,但是进行问题复问花了2分钟才回复。确定是超时问题。修改okhttp的读取超时时间。问题解决

Q2. 今天VPN挂掉了,惊慌,ChatGPT没了,我=废物。
A2: wtf, 用了3个月都没问题, 咋突然挂了,重启x-ui没用!!! vpn服务器可以被ping通,但是无法使用,还是重新部署x-ui吧,换了个Vless协议,失败☹️,再次尝试,查看主板日志。好吧原来是ssl证书找不到,奇怪,我没有动过啊。再次部署,成功。
Q1+Q2搞了一下午😣。
Q3. prompts管理查询后段没有写.
WTF, 先撸一把原神吧!!!
Q4. Emergency 机器人报错—-无解的超时
???这个问题难道不是和第一个问题重复了吗?其实并没有。 两个是不同的问题,晚上上线的时候发现的,众所周知,每个python后段代码部署都有个环境变量文件 .env,由于.env有标志机器人的唯一性的字段,所以,各个机器人部署的时候.env 中有的环境需要单独进行部署。
起因: 在Q1中,就已经解决了,超时报错,但是在部署上服务器的时候,机器人再次超时报错,怀疑人生中…….

处理经过: 我们已经在Q1中解决了超时的问题,为啥还会有问题呢,从架构图中不难看出,我首先想到的是: python代码到java代理的请求超时了。之前上线的时候没有处理这个问题是因为已经百度过了,连接时间只要低于21s,python代码的超时时间就由服务器来决定了,永远就不会超时了。我怀疑起了之前这句话的真确性。于是乎,timeout给上再次上线:

还是Error,看服务端,在没有超过超时时间120s的时候,python代码就已经获取了Error,问题是服务端并没有返回结果?他是怎么自己中断的,我python代码的超时时间明明设置了600s啊。 失败,再次添加日志。再次上线,修改如下:


发现所有就算设置了600s的超时时间python代码还是在60s的时候自动断开连接。多次请求报错error


怀疑人生了。 问chatGPT:



看不懂,难道是路由器设置的超时时间???阿里云这么坑爹吗?好吧没辙了。问大佬超时时间总是卡死在60s什么原因?:

恍然大悟!!
修改前:

修改后:

解决。 完美收官!!修改最后的架构图

总结,好吧,其实一开始gpt就给出答案了,服务端限制了超时,但问题是我上午已经解决了服务端的问题啊,完全没有想到nginx的问题,可以看出来太粗心了🥹。