为什么不接ChatGPT到微信公号?
首发于公众号:"FiniskyGarden"。原文载于:
首发于公众号:"Finisky Garden"。原文载于:
ChatGPT火爆全网,要是能接到自己的微信公众号后台,岂不美哉?
想必有此想法的同志不止我一人,上周末就研究了一下,有几个问题需要解决。
首先就是ChatGPT API,最关键的问题没有之一,OpenAI并没有官方API支持。不过github上早有人反向工程破解了此API,Python实现:
使用方法很简单:pip3 install --upgrade revChatGPT
写了个demochatgpt.py
:
!/usr/bin/python3importloggingfromrevChatGPT.revChatGPTimportChatbotlogger=logging.getLogger(meng)config={"email":"your_email","password":"your_password"}chatbot=Chatbot(config,conversation_id=None)defchat(history,query):response=chatbot.get_chat_response(query,output="text")print(response)returnresponse[message]if__name__==__main__:response=chat([],你懂python吗?)print(response)response=chat([],你懂go吗?)print(response)
不过由于不是官方API,稳定性不太好,加上每次API调用都需要重登录,速度也不太快,更不必提生成一段长文本所需要的时间了,获取结果基本在15秒以上。
于是这就引发了另一个问题,微信要求5秒内回复消息,否则提示该公众号暂时无法提供服务,请稍后再试,考虑到ChatGPT的生成时间,就给接入微信公众号带来了困难。
虽然有其他方案,比如记录上下文,先在5秒内返回一条文本消息请15秒后输入‘xxx’获取结果,后台将生成的结果缓存,然后让用户再发一条定制消息"xxx",再将缓存的文本返回,但整个聊天体验就非常差了。
所以聪明的开发者们考虑了另外两个方案来解决问题:
- 自己开发小程序,不受5秒回复限制,不过已经被微信官方认定为违规下线
- "ChatGPT"公众号,用阅读原文的方式导流到一个破解ChatGPT API的网站,不过由于用的人过多,这个网站已无法正常返回,目测被OpenAI限制使用了
此外上周末revChatGPT还好使,今天再访问这个repo发现也被archived,原因不言自明。
所以,本公众号还是使用开放的WeLM API与大家聊天吧,关注公众号,直接留言,小菲就可以跟您唠上了。不过由于WeLM采用Prompt的方式进行上下文补全,有可能进行错误放大,所以不支持上下文指代,只能单轮对话。