xqdoo00o / chatgpt-web

Pure Javascript ChatGPT demo based on OpenAI API
https://xqdoo00o.github.io/chatgpt-web/
MIT License
983 stars 369 forks source link

能兼容一下azure openai吗? #111

Closed kakahu2015 closed 1 year ago

kakahu2015 commented 1 year ago

众所周知openai使用超级困难,相比之下微软的azure openai比较容易申请到,你这个能否支持一下 azure openai ?

xqdoo00o commented 1 year ago

你可以搜下azure转openai api的项目并使用

kakahu2015 commented 1 year ago

你可以搜下azure转openai api的项目并使用

根据你的思路,我找到了用go转换的正向代理程序,早期的api-version为2023-03-15-preview 的很完美地兼容了,但是最新的2023-07-01-preview 似乎前端js解析有问题,能看看吗?

xqdoo00o commented 1 year ago

你可以搜下azure转openai api的项目并使用

根据你的思路,我找到了用go转换的正向代理程序,早期的api-version为2023-03-15-preview 的很完美地兼容了,但是最新的2023-07-01-preview 似乎前端js解析有问题,能看看吗?

可以用js的项目 https://github.com/haibbo/cf-openai-azure-proxy https://github.com/scalaone/azure-openai-proxy

kakahu2015 commented 1 year ago

项目

可能我怕没表达清楚:前置正向代理没问题,是你这个web客户端针对azure openai我在代理转换层使用新版本的api version(2023-07-01-preview)后会报错,用其iOS客户端访问不会报错,所以逻辑上分析问题不在正向代理、而是是在这个web客户端,不知道这样你能get到否?

xqdoo00o commented 1 year ago

项目

可能我怕没表达清楚:前置正向代理没问题,是你这个web客户端针对azure openai我在代理转换层使用新版本的api version(2023-07-01-preview)后会报错,用其iOS客户端访问不会报错,所以逻辑上分析问题不在正向代理、而是是在这个web客户端,不知道这样你能get到否?

报什么错,哪个go程序转换的

kakahu2015 commented 1 year ago

项目

可能我怕没表达清楚:前置正向代理没问题,是你这个web客户端针对azure openai我在代理转换层使用新版本的api version(2023-07-01-preview)后会报错,用其iOS客户端访问不会报错,所以逻辑上分析问题不在正向代理、而是是在这个web客户端,不知道这样你能get到否?

报什么错,哪个go程序转换的

我用的这个转换https://github.com/diemus/azure-openai-proxy 输入对话回车后,页面弹出红色提示:访问接口失败,请检查接口,我查看了转换程序是返回的200没有报错,可能是客户端js请求到数据解析时发生的异常

xqdoo00o commented 1 year ago

我这边没有azure账号,所以无法测试,可以把代码这一行 catch(e){下面加一行console.log(e),并打开浏览器控制台,看下报错吗

kakahu2015 commented 1 year ago

我这边没有azure账号,所以无法测试,可以把代码这一行 catch(e){下面加一行console.log(e),并打开浏览器控制台,看下报错吗

TypeError: Cannot read properties of undefined (reading 'finish_reason') at (index):6561:60 at async streamGen ((index):6608:17)

xqdoo00o commented 1 year ago

我这边没有azure账号,所以无法测试,可以把代码这一行 catch(e){下面加一行console.log(e),并打开浏览器控制台,看下报错吗

TypeError: Cannot read properties of undefined (reading 'finish_reason') at (index):6561:60 at async streamGen ((index):6608:17)

大概知道原因了,可以在https://github.com/xqdoo00o/chatgpt-web/blob/main/index.html#L6689 这一行value = decoder.decode(value);下面加一句 console.log(value) 看下输出内容吗

kakahu2015 commented 1 year ago

console.log(value)

data: {"id":"","object":"","created":0,"model":"","prompt_annotations":[{"prompt_index":0,"content_filter_results":{"hate":{"filtered":false,"severity":"safe"},"self_harm":{"filtered":false,"severity":"safe"},"sexual":{"filtered":false,"severity":"safe"},"violence":{"filtered":false,"severity":"safe"}}}],"choices":[],"usage":null}

xqdoo00o commented 1 year ago

console.log(value)

data: {"id":"","object":"","created":0,"model":"","prompt_annotations":[{"prompt_index":0,"content_filter_results":{"hate":{"filtered":false,"severity":"safe"},"self_harm":{"filtered":false,"severity":"safe"},"sexual":{"filtered":false,"severity":"safe"},"violence":{"filtered":false,"severity":"safe"}}}],"choices":[],"usage":null}

请在 这一行 }下加一句 if (!payload.choices.length) continue; 应该就修好了

xqdoo00o commented 1 year ago

console.log(value)

data: {"id":"","object":"","created":0,"model":"","prompt_annotations":[{"prompt_index":0,"content_filter_results":{"hate":{"filtered":false,"severity":"safe"},"self_harm":{"filtered":false,"severity":"safe"},"sexual":{"filtered":false,"severity":"safe"},"violence":{"filtered":false,"severity":"safe"}}}],"choices":[],"usage":null}

请在 这一行 }下加一句 if (!payload.choices.length) continue; 应该就修好了

请问是否修复好了?

kakahu2015 commented 1 year ago

console.log(value)

data: {"id":"","object":"","created":0,"model":"","prompt_annotations":[{"prompt_index":0,"content_filter_results":{"hate":{"filtered":false,"severity":"safe"},"self_harm":{"filtered":false,"severity":"safe"},"sexual":{"filtered":false,"severity":"safe"},"violence":{"filtered":false,"severity":"safe"}}}],"choices":[],"usage":null}

请在 这一行 }下加一句 if (!payload.choices.length) continue; 应该就修好了

请问是否修复好了?

太棒了,好使了