ChatGPT_Android
an android demo to use openai's api
调用 openai 提供的接口,实现与 ChatGPT 对话
更新:
支持新模型的调用:"gpt-3.5-turbo", "gpt-3.5-turbo-16k","gpt-3.5-turbo-instruct", "gpt-3.5-turbo-0613","gpt-3.5-turbo-16k-0613"
见:https://github.com/icecoins/ChatGPT_Android/issues/7
修复:
1.为解决对话少量乱序的问题,服务器将在每次对话发送完毕后进行完整重传,覆盖可能乱序的回复。 2.修复了新的回复在输出时,回复框里有上一条回复的部分信息的 bug。
后续计划
中途停止输出的功能。 见:https://github.com/icecoins/ChatGPT_Android/issues/5 、 https://github.com/icecoins/ChatGPT_Android/issues/6
对 gpt4 的支持。
对国内某些 有公开接口的、价格较低的、效果较好的 大语言模型的支持。
功能:
✓可以免费使用,无需登录(在本人账号余额耗尽之前,默认配置即可)
× 本人账号余额已于 2023.04.01 耗尽,不再提供 API KEY
✓ 支持至 Gpt-3.5 模型(因为本人买不起 plus)
✓ 无需代理即可与 ChatGPT 对话(可以使用自己的服务器中转)
✓ 支持带记忆的连续对话,可以随时清除记忆
✓ 可以复制 ai 回答文本
✓ 使用流式传输,ai 的回答是动态连续的
✓ 使用 wss 保护数据传输安全
? vits 语音合成(试行)。仅在 “英国 S1” 中转服务器 上运行。使用服务器 CPU 进行推理,计算速度极为缓慢,不建议使用。
关于收到乱码
如果你希望使用预置的中转服务器,请确保 APP 为 github 上的最新版本,见 https://github.com/icecoins/ChatGPT_Android/releases
乱码可能原因:由于 APP 内置的通讯标记 与 服务器内置的通讯标记 不匹配,导致 APP 无法正常接收对话数据
如果你希望可以使用自定义的通讯标记,请更改 APP 与 springboot 的源码并自行编译、运行
关于直连官方接口失败:
因为某些原因, https://api.openai.com 已经被 GFW dns 阻断了
最新版本可以选择使用服务器运行 springboot + websocket 与 APP 即时通讯,进行数据中转,以此绕开 sni
配套 springboot 项目地址:https://github.com/icecoins/ChatGPT_Server
你可以自行修改 springboot 中的代码以配适你的 App
当然,你可以选中“不使用中转”, 并在手机上设置好代理,APP 会直接向 openai 发送请求
关于语音转换:
引用自 https://github.com/SayaSS/vits-finetuning
关于 api_key 失效
api_key 一旦被官方检测到一个 key 被多人使用就会自动失效
一个 openai 账号可以维持最多五个 api key,也就是说可以让五个人分别专用一个账号下不同的 key
usage
check the configs first, confirm your api_key is available.
connected to the Internet.
首先检查配置,确保 api_key 可用
建议将文本长度调整至 1000 及以上
确保 APP 可以联网