Harry-zklcdc / go-proxy-bingai

用 Vue3 和 Go 搭建的微软 New Bing 演示站点,拥有一致的 UI 体验,支持 ChatGPT 提示词,支持 API 调用,国内可用。
https://www.b1ng.chat
MIT License
4.22k stars 6.46k forks source link

[Bug] 🐛 API回复随机出现叠字 #402

Closed chunzha1 closed 6 months ago

chunzha1 commented 7 months ago

Confirmations

Describe the bug

利用CF部署的服务,在nextchat/lobechat等调用时,发现随机出现叠字现象: 你你好!有什什么什么我什么我可以什么我可以帮什么我可以帮助什么我可以帮助你什么我可以帮助你的什么我可以帮助你的吗什么我可以帮助你的吗?😊

Steps to reproduce

随机出现

Expected behavior

确认原因

Screenshots

No response

Deploy

Cloudflare Worker

UserId

No response

OS & Version

\

Browser & Version

\

GoProxiBingAI Version

\

Additional context

No response

Harry-zklcdc commented 7 months ago

能否提供稳定复现方式?

请去掉system消息后尝试

chunzha1 commented 7 months ago

能否提供稳定复现方式?

请去掉system消息后尝试 使用lobechat,默认模式不包含system image https://chat.oaipro.com/ 发送你好后复现了,模型选择的是gpt-4-turbo-preview LobeChat_随便聊聊_2024-04-18

Harry-zklcdc commented 7 months ago

LobeChat_随便聊聊_2024-04-18

我这没有复现出来

chunzha1 commented 7 months ago

LobeChat_随便聊聊_2024-04-18

我这没有复现出来

模型选择有影响吗?我没有自己建bing-类的模型;另外是否可能跟Cloudflare worker部署方式相关?

chunzha1 commented 7 months ago

这个并非100%复现,另外一个问题是吐字很慢,没有像web那样流畅

Harry-zklcdc commented 7 months ago

LobeChat_随便聊聊_2024-04-18

我这没法复现,可能是CF部署的原因

请尝试 BingAPI演示站

chunzha1 commented 7 months ago

我也复现不出来了,似乎是一段时间没使用之后,第一次容易出现;我晚点再尝试下

yushangxiao commented 7 months ago

同cf部署,也有这种情况,而且也有只回复一个data片段且不存在content字段的情况

Harry-zklcdc commented 7 months ago

试一下 vercel 部署有没有这种情况

yushangxiao commented 7 months ago

试一下 vercel 部署有没有这种情况 用vercel会好很多 没有再出现只回复一个数据片段且不存在content字段的情况 但是依然会出现叠字,但是出现叠字的频率低了非常非常多,实验很多次才会出现一次 Clip_2024-04-19_00-21-17

Harry-zklcdc commented 7 months ago

Vercel 和 CF的实现是同源的

yushangxiao commented 7 months ago

Vercel 和 CF的实现是同源的

额,说实话,没搞明白为什么兜这么一圈子用 vercel 部署

可能的原因: 1.时间,cf 部署测试时 是下午-傍晚,欧美时差原因,用户少微软放的算力少,导致回复反应慢… 2.运行速度,使用 vercel 运行速度会快(真假未知)…确实响应快很多

Harry-zklcdc commented 7 months ago

我的意思是 Vercel 的 BingAPI 的实现代码和 CF 是一样的,并不是说Vercel 部署需要 CF 的那个触发域🤣🤣🤣

yushangxiao commented 7 months ago

我的意思是 Vercel 的 BingAPI 的实现代码和 CF 是一样的,并不是说Vercel 部署需要 CF 的那个触发域🤣🤣🤣

那这样的话, 一直不明白的是, vercel 部署前先部署 cf worker 和中间设置 cf worker 的目的是什么🤨

Harry-zklcdc commented 7 months ago

那这样的话, 一直不明白的是, vercel 部署前先部署 cf worker 和中间设置 cf worker 的目的是什么🤨

因为Vercel不能传输websocket到客户端(用户网页界面),但是可以发起websocket连接到服务器(必应),而且BingAPI使用的是HTTP Stream,并非websocket

所以Vercel需要CFWK作为前端的服务器

yushangxiao commented 7 months ago

那这样的话, 一直不明白的是, vercel 部署前先部署 cf worker 和中间设置 cf worker 的目的是什么🤨

因为Vercel不能传输websocket到客户端,但是可以发起websocket连接到服务器

原来如此,感谢解答(^🙏^)

chunzha1 commented 6 months ago

LobeChat_随便聊聊_2024-04-19 刚又试了几次,多次生成中出现了叠字以及无content、报504; 很抱歉,服务器没有等到上游服务器的回应,请稍后再试 Show Details json { "message": "很抱歉,服务器没有等到上游服务器的回应,请稍后再试", "type": 504 } (吐字实在是好慢) 看两位上面的讨论,vercel部署似乎也避免不了?

yushangxiao commented 6 months ago

LobeChat_随便聊聊_2024-04-19 刚又试了几次,多次生成中出现了叠字以及无content、报504; 很抱歉,服务器没有等到上游服务器的回应,请稍后再试 Show Details json { "message": "很抱歉,服务器没有等到上游服务器的回应,请稍后再试", "type": 504 } (吐字实在是好慢) 看两位上面的讨论,vercel部署似乎也避免不了?

vercel 部署, 现在又试了试,这些错误也都发生了,这么说确实与部署环境影响不大…

昨晚 夜间的响应很快很好虽然有叠字但频率很低,没有报错和无 content 的问题。

但这些现在又出现了,现在响应慢一些且频繁出问题。

这么说难道真的是时间的问题🤨 微软在使用流量低的时候,算力倾斜小,检查更严格?

chunzha1 commented 6 months ago

但是用web的版本好像没有这个问题,吐字速度也快不少,不知道两者有什么差异?

chaoyu1999 commented 6 months ago

感觉和网络稳定性有关系,我之前在微软官方Coplit和cbs、cf上部署的都会有叠字的现象,换到AZ之后就没有了。我猜测和网络环境有关,网络不稳定可能会导致丢包,然后服务器重发数据,但前面的数据包实际没丢,然后就叠字了。

Harry-zklcdc commented 6 months ago

看一下 BingAPI演示站 有没有这个问题

吐字速度

请确保web端和API选择的模型是同一个。平衡模式的输出速度是远大于创造和精准模式。

基于你选择的模型 gpt-4-turbo-preview,请调整 temperature 调整实际调用的模式,请参考 Wiki - BingAPI - 模型列表

chunzha1 commented 6 months ago

API画图还有个奇怪的问题,突然一直报{"error":"Generate Image Error"}% 然而网页版却可以正常画图,看cflog报的500,但是一curl就报错了,看起来不像超时

yushangxiao commented 6 months ago

感觉和网络稳定性有关系,我之前在微软官方Coplit和cbs、cf上部署的都会有叠字的现象,换到AZ之后就没有了。我猜测和网络环境有关,网络不稳定可能会导致丢包,然后服务器重发数据,但前面的数据包实际没丢,然后就叠字了。

Azure好啊,我也去部署在azure上了,确实挺丝滑的,舒服了

dong152389 commented 6 months ago

这个问题我之前在vercel和cf上部署的时候 都遇到过,后来换了一个国外的服务器就不会出现这个问题了。

反正到现在是没遇到过

chengtx809 commented 6 months ago

LobeChat_随便聊聊_2024-04-19 刚又试了几次,多次生成中出现了叠字以及无content、报504; 很抱歉,服务器没有等到上游服务器的回应,请稍后再试 Show Details json { "message": "很抱歉,服务器没有等到上游服务器的回应,请稍后再试", "type": 504 } (吐字实在是好慢) 看两位上面的讨论,vercel部署似乎也避免不了?

我也是遇到了一样的情况,cf worker部署的本项目,nextchat用的vercel image

Harry-zklcdc commented 6 months ago

但是很奇怪的是,我明明已经对网络重新发包的情况,写了判断,不会发送重复的文字

image image

Harry-zklcdc commented 6 months ago

目前还有没有这个情况?如有重新开启 issue

chengtx809 commented 5 months ago

image 大佬你的演示站也偶发性出现叠词了,我自己部署的也是 @Harry-zklcdc

chengtx809 commented 4 months ago

现在发现先使用cfpg部署的本项目,再把chatgptProxyAPI 这个项目在自己的cf上部署一遍,反代本项目部署出来的page链接,得到的api就很稳定,用了一周,各个网络环境都试过了没有出现叠词

chengtx809 commented 4 months ago

现在发现先使用cfpg部署的本项目,再把chatgptProxyAPI 这个项目在自己的cf上部署一遍,反代本项目部署出来的page链接,得到的api就很稳定,用了一周,各个网络环境都试过了没有出现叠词

@Harry-zklcdc 大佬可以看看顺着这个思路能不能优化下本项目🙏