Touhou Little Maid

Touhou Little Maid

3M Downloads

Bug/Improvement: Java客户端默认使用HTTP 2.0 导致AI模型api连接失败,建议手动指定HTTP 1.1

ajdgsu opened this issue · 1 comments

commented

Minecraft Version

  • 1.12.2 (End of support)
  • 1.16.5 (End of support)
  • 1.18.2 (End of support)
  • 1.19.2 (End of support)
  • 1.20/1.20.1
  • 1.21/1.21.1

What happened?

请注意: 以下的讨论均以HTTP协议相关,与HTTPS协议无关

目前常见的AI模型引擎大多使用了Python进行编写,且大多采用了fastapi作为api通讯底层,然而fastapi在默认状态下只支持HTTP 1.1协议进行通讯,且在与使用HTTP 2.0客户端通讯时容易出现无法正确降级的故障 ( 可参考:https://stackoverflow.com/questions/66612990/fastapi-python-why-i-get-unsupported-upgrade-request-with-post-request )。并且目前java默认状态下的HTTP通讯使用的就是HTTP 2.0协议,这就导致有时连接AI模型api时会出现错误 (通常在AI服务器侧会出现WARNING: Unsupported upgrade request.)

这里拿gpt-sovits的报错举个例子: err_log.txt

目前可以使用nginx进行反代来临时解决这个问题(相当于让HTTP降级发生在nginx侧,从而规避fastapi的问题),当然最好是在模组内手动指定HTTP使用1.1协议,HTTPS再使用2.0协议。

该issue与#809 所描述的应该是同一个问题

Relevant log output

Contact Details

No response