一.ChatGPT的使用体验
最近使用了一下chat gpt 3.5,发现它确实比较智能,和自己之前用过的很多AI等的对话能力差距很大。尤其是在查资料方面,速度非常快。比如我想查一个linux命令,只需要用对话的形式去命令它就可以了,目前速度还在自己能接受的范围,不需要开会员:
二.ChatGPT的优势
使用下来,chat gpt主要有这几个优势:
比市面上大多数AI更智能
可以「联系上下文」来对话,每次对话不是独立的
反应很快,几秒钟出结果
特别是第二点,非常符合人类的对话习惯,与其他AI有比较明显的差距。测试下来,这个对话上下文一般只能保持前面几条,但正常使用是完全足够的。
三.ChatGPT的劣势
chat gpt也并不完美,他也有一些劣势。
答案不一定正确,尤其是比较冷门的内容
国内用户访问不了,或者访问比较困难
第1点我觉得比较致命,这个其实是chat-gpt的底层算法决定的,虽然还在不断地训练,但对于一些比较冷门的问题,训练数据和训练场景本来就很少,就可能出错。你可以理解为「你在和一个满嘴跑火车的人工智能对话」。比较严谨的问题还是不要直接采纳它的答案,比如我问它自己的open api如何传参才能保持上下文对话的能力,它就没答对,或者回答的是过期的答案。
尽管如此,它还是在一定程度上能提升自己搜索信息的效率,关键还很好玩,可惜目前使用chat-gpt的门槛还比较高,「需要科学上网,还需要用国外的手机号注册账号」。
所以我想了一个国内可以直接使用chat-gpt的方案,这样「自己的家人朋友可以低门槛使用chat-gpt,也可以让自己的国内app接入世界上最顶级的AI引擎」。
四.官方web端ChatGPT的问题
chat-gpt官方提供了一个web端的聊天窗口:https://chat.openai.com/chat。这个网页需要科学上网+账号登录才能打开,所以本身有一定的使用门槛。
我自己使用官方web端,碰到的另一个问题是经常会断开连接,需要刷新网页才能继续使用,不知道是不是我浏览器设置的原因。且这个断开的频率非常高,基本上几分钟不用就断开了。我问chat gpt怎么解决,它也没给我一个好的解决方案,大概就是浏览器清缓存或者换浏览器之类的。
五.如何在国内使用ChatGPT
下面介绍一下如何搭建一个在国内就可以使用chat gpt的方案,不用科学上网和账号。
这个方案「还是需要科学上网和账号」的,但是可以分享给其他人使用,相当于降低了其他人使用的门槛,也可以集成在自己的应用程序里,让自己的应用具有chat gpt AI对话的能力。
大概的方案是这样:
1 注册一个账号
首先还是需要自己去注册一个账号,自己不怕折腾的话,大概「0.5美金」就可以注册一个账号,网上有很多注册教程,这里就不细讲了,但是「需要科学上网」。如果怕折腾,直接淘宝、抖音买一个,大概20~30 RMB的样子。
2 生成一个api-key
有了账号后,登录open ai 的个人中心,可以看到一个生成api-key的地方。
拿到这个API key后,就可以根据open ai的官方文档去发送对话请求了,文档是http形式的,所以用postman就能试。官方提供了nodejs和python的sdk,社区也有go、Java等sdk。
3 购买一个海外服务器
如果自己没有在国内网络直接使用chat-gpt的需求,在上一步就可以结束了,剩下的就是自己去官网玩或者集成进自己的应用。
但如果有「在国内网络使用chat-gpt的需求」,需要使用一个国内可访问的海外服务器作为跳板。这个服务器可以放在香港、日本、韩国、新加坡等,这样延迟会低一些。
aws可以用信用卡(具有外币功能的)免费申请一年的海外服务器,学生身份也可以免费使用一年,大家可以尝试使用。
->
PS: 信用卡或者学生身份都没有的,可以去淘宝看看,说不定有惊喜。
<-4 搭建一个中转服务
接下来就是搭建一个http中转服务,放在海外服务器上了。简单的做法是直接用一个nginx代理,但我这里用golang写了一个中转服务,主要出于以下考虑:
想要网络传输的内容少一点,这样更快一点,上下文信息存储在中转服务上
没弄https,又不想自己的open ai key暴露,所以key只放在了中转服务器上
国内客户端想集成在各种应用上,API参数尽可能简单点,在中转服务器做了一层包装
把中转服务部署好后,理论上应该也可以使用http来访问:
5 搭建国内可访问的客户端
接下来就是搭建一个国内可访问的客户端,因为我家人朋友不会使用postman,所以需要有一个更友好的入口。本来打算集成钉钉、飞书机器人的,但是时间上比较紧,没来得及研究,所以先用低码平台搭建了一个网
页版本的,后面有时间集成到自己的微信公众号吧,反正前面的链路都搭建好了,只搭客户端,还是比较快的。
网页版的效果大概是这样,也具有上下文对话的能力:
这里我用的是appsmith来搭建的。有需要的朋友可以私聊我导出搭建数据,自己搭一个也很快。
注意事项
如何实现上下文?
open ai的open api有过几次更新,如何在请求中实现上下文,比较麻烦,我也是查了比较久才弄对。
理论上来讲,需要有一个地方来存储上下文。最开始open ai是存在他们自己的服务器上的,通过session_id来维护这个上下文。
后来可能是觉得这样做稳定性和性能太差,也比较吃他们自己的资源,所以改成了客户端自己存,然后每次调用通过参数把历史上下文传过去的方式。这种方式网络开销比较大,但是对open ai自己来说,服务器的存储压力和复杂性可能会降低很多。
最新实现聊天上下文的能力,应该是把历史对话都放进请求的messages字段里。需要注意整个请求的4kb大小的限制。所以我自己的golang代码中,只会保留最近20条对话,包括自己的话和机器人返回的话。
如何实现多线程聊天?
chat gpt官方web端可以实现多线程聊天。其实核心也就是每个上下文分开存储。我这里没来得及实现这个功能,但是大概的思路还是比较简单的,后面有时间再实现一下。具体的思路是:用一个map来存储对话线程和聊天上下文的关系:
// 这里的key可以是session_id或者user_name之类的var chatMap = make(map[string][]openai.ChatCompletionMessage
AI场景畅想
chat gpt的热度一直不减(印象中圈内大概火了一个月了,甚至已经出圈了)。后面几年AIGC可能有很多不错的机会。
在翻看open ai的open api官方文档的时候,发现他们家不止是有chat gpt这一款产品,还有语音转文字、生成图片等等能力,后面有机会都玩玩看。
我理想中的AI世界是这样的:我有一个智能设备(可能是手表、眼睛、或者耳机什么的),然后可以通过语音、图像识别快速像AI提问,然后它可以快速返回这个问题的答案,并用语音、视频的方式说出来。
未来,人类很有可能大规模使用AI来辅助自己工作和决策。
目前看来,这样的世界并不遥远。甚至现在的技术就已经可以做到了,已经有人把天猫精灵和小爱同学集成进chat-gpt了。随着网络的不断升级、AI模型的不断升级,这个场景很有可能会在未来几年内实现。
- ChatGPT注册详细教程来了(最新指南)
- ChatGPT注册方法,超详细的!但是小白不要尝试
- ChatGPT Plus会员升级实操指南:解锁全新ChatGPT-4.0体验
- New Bing:微软首款ChatGPT搜索,详细的申请教程来了!
- ChatGPT注册指南【保姆级手把手教程】
- 最新版ChatGPT下载安装教程(windows,Mac,Linux,Android)
- 一文看懂ChatGPT 4和3.5究竟有什么区别?ChatGPT账号值得充plus吗?
- ChatGPT 玩不了?新必应(New Bing)保姆级注册和申请教程来了!
- ChatGPT注册教程(最新完整指南)
- Claude官网地址多少?Claude怎么用?Claude和ChatGPT有和不同?
本文链接:http://www.awyerwu.com/9414.html ,转载需注明文章链接来源:http://www.awyerwu.com/
- 喜欢(0)
- 不喜欢(0)