给大伙说说我在使用 chatgpt api 遇到的坑供你们参考 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
biguokang
V2EX    程序员

给大伙说说我在使用 chatgpt api 遇到的坑供你们参考

  biguokang
AlpacaBi 2023-03-07 10:25:03 +08:00 15459 次点击
这是一个创建于 956 天前的主题,其中的信息可能已经有所发展或是发生改变。

1.新账号有并发量限制

如果你是新账号,你会发现你有 18 刀的免费余额,但是如果你没有绑定信用卡,那么 chatgpt api 的并发量控制在每分钟 20 次请求,所以一分钟内调用 chatgpt api 超过 20 次,你问它问题只会回答你 rate limit 、要你绑定信用卡之类的消息了。

如何解除 rate limit 限制???只能绑定信用卡,在绑定了信用卡的 48 小时内并发量会提升到每分钟 60 次,绑定了信用卡 48 小时后候则是每分钟 3500 次

2.他收费是把上下文的 token 都算上去的

chatgpt api 的收费标准0.002 美刀 /1000token,看起来很便宜是吧,你开发 chatgpt ai 的时候,如果请求参数没加上 parentMessageId 的参数,那他就不会有上下文功能,相当于是一问一答,那收费的确便宜。

如果你想实现上下文,请求的时候就必须把 parentMessageId 的参数加上去,然后你每次提问问题的时候,他都会把之前的上下文纪录都一起累积提交过去,这些也是要算钱的,导致你每一次问问题,越往后消耗的 token 量越恐怖,特别是喜欢让 chatgpt 生成 1000 字论文的那种。

而且上下文容量是有限制的,如果你聊天纪录过长,总 token 超过大概几万个的时候,open ai 只会回复你 token 太长的错误,要你清空 token 。

所以为了你的钱包着想,也为了用户体验,写后端的时候一定要做好清理上下文的工作。

3.不要用 dalle 图片生成

一般来说,openai 的官方 sdk ,其实本身也包含了 dalle api ,有些人可能就会想,要不顺便用用 dalle ,加一个生成图片的功能。

我就试过,发现他生成的图片不怎么样,效果没那么好,其次最要命的是,生成一张图片收费 0.02 美刀,也就是大概生成 10 张图片就要消耗掉你 1 块 rmb 左右。

最要命的是,因为我的 openai 绑定了信用卡,当时我用了 dalle ,发现他居然不扣我那 18 刀的免费余额,而是直接扣我信用卡的钱

所以千万不要用。

4.后端记得做 api 鉴权,不要太信任你的朋友圈

我自己弄着玩的,所以没做后端 api 鉴权,而我只是把我自己弄得 chatgpt 网站分享到了朋友圈和几个技术群,结果就有人扒我的后端 api 了,导致被滥用,几天下来发生了差不多 10 万次请求纪录,把我 18 刀免费余额刷光还刷了我 50 美刀的信用卡,然而我看我的网站的 google analyze 统计的访问量根本就没那么多人,很明显我的后端被人拿去用了,所以我立马加了鉴权 api 调用量立马下降不少。

不过你们倒是可以参考下我的情况来预估 chatgpt api 收费,接近 10 万次请求,花了接近 70 刀

心酸

心酸,倒也不是钱被刷了 50 刀心酸,而是我不喜欢被第三方白嫖,本来就是我自己做着玩免费的



至于开发模式,我建议不要折腾国内服务器加境外代理了,直接租一台美国的 vps 把,然后用 vscode remote 过去直接在云服务器上远程写代码





最后分享一下我的 chatgpt 网站把

https://chat.alpaca-bi.com

第 1 条附言    2023-03-07 11:39:04 +08:00
同志们,我的网站只服务到今晚,后面就是我个人专用了,因为免费所以太多人访问,导致费用太高了,今天可以尽情使用
第 2 条附言    2023-03-07 11:53:25 +08:00
我还是改变主意了,我已经关了公共权限,以后只有我才能用了,抱歉了兄弟们
50 条回复    2023-04-26 22:27:32 +08:00
n0bady
    1
n0bady  
   2023-03-07 10:42:50 +08:00
网站很简约很好看
dobelee
    2
dobelee  
   2023-03-07 10:44:59 +08:00
很详尽。隔壁估计也是 api 被滥用了。
dobelee
    3
dobelee  
   2023-03-07 10:45:17 +08:00
对了中文 token 是按字算吗?
ninvfeng
    4
ninvfeng  
PRO
   2023-03-07 10:45:47 +08:00
这 UI 很有特色
table cellpadding="0" cellspacing="0" border="0" width="100%"> webdesigner
    5
webdesigner  
   2023-03-07 10:49:28 +08:00 via iPhone
这是 github 上面那个开源项目呀。
biguokang
    6
biguokang  
OP
   2023-03-07 10:51:08 +08:00   1
@webdesigner https://github.com/Chanzhaoyu/chatgpt-web ,不过原项目没 api 鉴权处理,所以用的时候小第三方心被盗用,或者你自己写一套 jwt 认证
biguokang
    7
biguokang  
OP
   2023-03-07 10:51:37 +08:00
@dobelee 按字数算的,但是我不知道 1000token 对应多少汉字
tool2d
    8
tool2d  
   2023-03-07 10:56:39 +08:00
我没在 https://platform.openai.com/docs/api-reference/chat 上面,查到任何关于 parentMessageId 的参数?

难道这个是隐藏的吗?
biguokang
    9
biguokang  
OP
   2023-03-07 11:00:37 +08:00   1
@tool2d 我用的 chatgpt nodejs 库,是 openai 库的二次封装
vsitebon
    10
vsitebon  
   2023-03-07 11:02:57 +08:00
@biguokang 一个汉字大概 4 个 token
mr0joker
    11
mr0joker  
   2023-03-07 11:05:42 +08:00
很不错的经验总结,感谢分享
songjiaxin2008
    12
songjiaxin2008  
   2023-03-07 11:09:20 +08:00
@tool2d 自己把上下文组装起来就是 prompt 了
Wincer
    13
Wincer  
   2023-03-07 11:11:12 +08:00
> 最要命的是,因为我的 openai 绑定了信用卡,当时我用了 dalle ,发现他居然不扣我那 18 刀的免费余额,而是直接扣我信用卡的钱。

是只有 dalle 的使用会这样扣费,还是说 chatgpt 的 api 使用也会优先扣信用卡的钱?
psyer
    14
psyer  
   2023-03-07 11:14:03 +08:00 via Android
@biguokang API 的回答是不是比 npm 的好?
biguokang
    15
biguokang  
OP
   2023-03-07 11:14:07 +08:00
@Wincer 只有 dalle 的使用会这样扣费,你还有 18 刀免费余额的话,chatgpt api 优先扣那 18 刀的免费余额。
tool2d
    16
tool2d  
   2023-03-07 11:15:11 +08:00
@songjiaxin2008 这都行吗?汗。

看来我要研究一下 nodejs 代码了,新版的 chat api 默认返回没有断句。但总觉得缺少上下文关联性啊。
biguokang
    17
biguokang  
OP
   2023-03-07 11:15:37 +08:00
@psyer npm 是啥,只能说 chatgpt api 的速度非常块,而 openai 的官方网页端 chatgpt plus 貌似比 api 更智能。
flybluewolf
    18
flybluewolf  
   2023-03-07 11:20:38 +08:00
这不是坑吧,官方 API 文档里清清楚楚。
chaselen
    19
chaselen  
   2023-03-07 11:22:18 +08:00
我也用了画图的 api ,原来那个费用高,难怪
biguokang
    20
biguokang  
OP
   2023-03-07 11:29:54 +08:00
@flybluewolf 我感觉大部分人看官方文档都是看 API REFERENCE 去调 api ,很少人去把 GUIDES 这种纯英文完全看完。

不过后面我也把 GUIDES 全看一遍了,比如速率限制那里就是在 GUIDES 翻出来,也算是总结吧。

但是 dalle 收费,我翻遍了文档都没看到他是怎么收费,我是看余额发现被坑了才知道 dalle 是那么收费的
unco020511
    21
unco020511  
   2023-03-07 11:33:46 +08:00
为啥你们需要代理,openai 的 api 根本都不需要代理的呀
sqzdy8
    22
sqzdy8  
   2023-03-07 11:34:01 +08:00
网站很好用
youthfire
    23
youthfire  
   2023-03-07 11:35:58 +08:00
谢谢分析!
昨天刚把信用卡绑上,其他倒是不意外,dalle 这东西还跳过免费额度直接扣的?
之前因为用下来感觉质量比 stable-diffusion 开源的那些都差很多,也就不用了。说个题外话,你们是怎么保证真人脸部能画好的,每次出来堪比恐怖片。。
另外也不知道是不是我对 stream 理解有问题,第一次接触,感觉输出真的慢(刚绑上,所以 1s 一次),因为每次都是都只能获取到一个字,然后拼接,感觉就是一个个字往外蹦,是不是要支持快速跳字只能等 3500RPM ?
biguokang
    24
biguokang  
OP
   2023-03-07 11:42:47 +08:00
@unco020511 之前有很多人反映 api.openai.com 这个域名被墙了,直接用国内的云服务器没法访问,所以 github 很多关于 chatgpt 的项目都加上了 proxy server 之类的选项
yolee599
    25
yolee599  
   2023-03-07 11:56:16 +08:00
为啥我问了几个问题就报 Network Error 了,是限制了次数吗?
106npo
    26
106npo  
   2023-03-07 11:59:26 +08:00
@biguokang 我这边用下来统计一个简中字约为 1.2~1.6 token
minmo
    27
minmo  
   2023-03-07 12:08:03 +08:00 via Android
刚刚试了一把,还收藏了,结果问第二个问题显示 network error试了几次,还以为网络问题
someonetwo
    28
someonetwo  
   2023-03-07 12:12:13 +08:00
确实挺贵的,单价看似便宜,用起来跟个无底洞一样,个人用用能接受,如果对外服务,那费用相当可观了,一个人随便问问可能一会就问掉 1 美元,特别是那些好奇的,上来生成 1000 字论文大纲,2000 字报告,小作文的,还有跟 AI 对喷的
biguokang
    29
biguokang  
OP
   2023-03-07 12:18:56 +08:00
@minmo 我关了,这玩意上下文收费太恐怖了
biguokang
    30
biguokang  
OP
   2023-03-07 12:19:15 +08:00
@yolee599 我关了,这玩意上下文收费太恐怖了
yiios
    31
yiios  
   2023-03-07 13:50:53 +08:00
@biguokang 引导用户使用自有 key + 可以在限制对话次数的情况下免 key 使用。比如我的站点 ai.yiios.com
zanxj
    32
zanxj  
   2023-03-07 13:59:56 +08:00
请问大伙你们绑定的是哪家信用卡?国内银行办的外币卡可用吗
seers
    33
seers  
   2023-03-07 14:02:10 +08:00 via Android
token 是 4096 个上限
yiguanxianyu
    34
yiguanxianyu  
   2023-03-07 14:05:34 +08:00
@zanxj 刚试了工行的 visa 和万事达都不行,应该中国卡都用不了
PickleFish
    35
PickleFish  
   2023-03-07 14:14:11 +08:00
现在新注册的好像只送 5 美元了?
tool2d
    36
tool2d  
   2023-03-07 14:31:49 +08:00
@biguokang "我关了,这玩意上下文收费太恐怖了"

我翻了官方的 openapi nodejs sdk ,也没有上下文关联的参数。

官方推荐的上下文关联,是多 message 合并发送,重复发送一次历史消息,服务器是不存对话 ID 的。

都开始怀疑 parentMessageId 是第三方 api 自己加的参数。没准到官网 API ,都是巨型字符串拼接,收费也就高了。
star7th
    37
star7th  
   2023-03-07 14:45:24 +08:00
我才发现居然有并发限制这个坑
biguokang
    38
biguokang  
OP
   2023-03-07 14:48:11 +08:00
@tool2d 区别在于,openai sdk 要自己拼,而我用那个库自己就拼好了而已,减少工作量。实际上都一样。

这是 chatgpt 封装库的源码 https://github.com/transitive-bullshit/chatgpt-api
tool2d
    39
tool2d  
   2023-03-07 15:00:06 +08:00
@biguokang 看了一眼 https://github.com/transitive-bullshit/chatgpt-api/blob/main/src/chatgpt-api.ts ,确实是和官方 API 一样,把本地所有的历史消息 ID 都转换成文本,组合成一个巨大无比的 messages 数组后,发给 api 。
dayeye2006199
    40
dayeye2006199  
   2023-03-07 15:08:28 +08:00
我也没做鉴权.被爬虫刷了 300 多刀的 API, 一个 request 几万个 token
hyperzlib
    41
hyperzlib  
   2023-03-08 08:45:09 +08:00
关于 API 的调用,还有自动压缩(总结)过去的聊天记录,可以参考一下我的这个项目: https://git.isekai.cn/hyperzlib/isekai-feedbot/src/branch/main/src/controller/ChatGPTController.ts

而且还有个自我暗示功能,在尝试输出“作为一个语言模型”等内容时,会加强自我暗示再次输出。
shiqueb
    42
shiqueb  
   2023-03-08 10:11:43 +08:00 via Android
意思是收费时计算的 token 数是包括输入+输出?下意识以为只算输出的,太坑了
xbdsky
    43
xbdsky  
   2023-03-23 20:04:56 +08:00
@biguokang 楼主你的信用卡是咋搞的,3 个小时 5 美元就给干完,客户要用,国内的信用卡都试了不行,准备给充点
biguokang
    44
biguokang  
OP
   2023-03-24 04:10:27 +08:00
@xbdsky depay ,我目前测试过能用的,就是手续费很感人,只能用 usdt 充钱
xbdsky
    45
xbdsky  
   2023-03-24 21:43:19 +08:00
@biguokang 恩,昨天也看到这个了,就是觉得麻烦,想着请教你下,原来是一个
lvxing888
    46
lvxing888  
   2023-03-31 11:15:06 +08:00
@biguokang 某宝组一个,主要是省事省心,安不安全就不知道了。我随便打听了以下,50 一年卡费,然后充值是 1:7.8
isexdpac
    47
isexdpac  
   2023-04-25 15:23:31 +08:00
为啥我只有 5 刀的余额呢...
joefuzhou198x
    48
joefuzhou198x  
   2023-04-26 19:25:43 +08:00
p*hub 风格的,可以,很赞!!
joefuzhou198x
    49
joefuzhou198x  
   2023-04-26 19:26:11 +08:00
@isexdpac 我的也只有 5 刀, 新申请的应该都只有 5 刀。
biguokang
    50
biguokang  
OP
   2023-04-26 22:27:32 +08:00
@isexdpac 我那个时候注册是有 18 刀的,现在新用户只有 5 刀
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2595 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 30ms UTC 04:52 PVG 12:52 LAX 21:52 JFK 00:52
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86