asleepyfish / chatgpt

实现可连续对话和流式输出的ChatGPT API(基于SpringBoot和Vue实现流式输出)
https://blog.csdn.net/qq_41821963/article/details/128992539
MIT License
244 stars 67 forks source link

关于代理地址的建议 #18

Closed yry0304 closed 1 year ago

yry0304 commented 1 year ago

现在类似于https://openai.api2d.net这样的代理服务用不了。

建议OpenAiProxyService.BASE_URL不要写死,ProxyHost和ProxyPort统一改为ProxyUrl。 你用new Proxy(Type.HTTP, new InetSocketAddress(proxyHost, proxyPort)); 这样如果反向代理是HTTPS,就无法使用了。而且大多数反向代理HTTPS是自签名证书,建议忽略证书校验。

还有,README最好能写一下不通过Spring Boot,仅通过JDK的main方法开启连续对话的功能,还有自定义system提示词,因为还有很多场景是属于特例化的任务,比如公文写作、小说创作之类的,往往需要把公司背景、小说大纲填上去作为系统提示词。

我们的用户有的是在Linux命令提示符下进行连续回话,并根据返回结果进行自动化运维。 还有些场景,比如写论文,我们的用户是在桌面上开启一个Swing的窗口进行对话的。 所以如果和Spring Boot深度集成,会比较受限。

还有一个重要的事情,就是可否写一下如何旁路录制对话过程和每次消耗的Token。

作者辛苦了,谢谢。

asleepyfish commented 1 year ago

现在类似于https://openai.api2d.net这样的代理服务用不了。

建议OpenAiProxyService.BASE_URL不要写死,ProxyHost和ProxyPort统一改为ProxyUrl。

你用new Proxy(Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));

这样如果反向代理是HTTPS,就无法使用了。而且大多数反向代理HTTPS是自签名证书,建议忽略证书校验。

还有,README最好能写一下不通过Spring Boot,仅通过JDK的main方法开启连续对话的功能,还有自定义system提示词,因为还有很多场景是属于特例化的任务,比如公文写作、小说创作之类的,往往需要把公司背景、小说大纲填上去作为系统提示词。

我们的用户有的是在Linux命令提示符下进行连续回话,并根据返回结果进行自动化运维。

还有些场景,比如写论文,我们的用户是在桌面上开启一个Swing的窗口进行对话的。

所以如果和Spring Boot深度集成,会比较受限。

还有一个重要的事情,就是可否写一下如何旁路录制对话过程和每次消耗的Token。

作者辛苦了,谢谢。

你好,你的建议我看到了,现在底层会依赖于openai-java的依赖,在这个依赖中,没有动态设置代码服务URL,后期考虑完全脱离这个依赖,但是代码改造起来需要一定的时间,本人休息时间比较懒惰,后期会逐渐优化。另外,欢迎PR~