V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Saitama
V2EX  ›  程序员

想搭个 ChatGPT 的服务练练手。但是没看懂 chatgpt-api 这个项目里 ChatGPTUnofficialProxyAPI 的说明. 大家能帮帮我吗。

  •  
  •   Saitama · 2023-03-25 16:17:37 +08:00 · 5020 次点击
    这是一个创建于 614 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://github.com/transitive-bullshit/chatgpt-api

    1. ChatGPTAPI - Uses the gpt-3.5-turbo-0301 model with the official OpenAI chat completions API (official, robust approach, but it's not free). You can override the model, completion params, and system message to fully customize your assistant.

    2. ChatGPTUnofficialProxyAPI - Uses an unofficial proxy server to access ChatGPT's backend API in a way that circumvents Cloudflare (uses the real ChatGPT and is pretty lightweight, but relies on a third-party server and is rate-limited)
    翻译: 使用非官方代理服务器绕过 Cloudflare 访问 ChatGPT 后端 API (使用真正的 ChatGPT 且相当轻量级,但依赖于第三方服务器且受到速率限制)

    在 Github 上找个这个项目,我是个后端苦手,很多后端的概念都理解困难。“使用非官方代理服务器绕过 Cloudflare 访问 ChatGPT 后端 API”,这句话我每个词都认识,但是连在一起我就看不懂了。为什么要绕过 Cloudflare ,咋绕过的,有啥好处(好处我看了说明大概就是免费?)。但是我不懂为啥这样就免费了。请问有人可以帮我解释一下吗?谢谢大佬
    21 条回复    2023-03-29 19:51:15 +08:00
    illl
        1
    illl  
       2023-03-25 16:34:52 +08:00 via iPhone
    绕过人机验证吧
    yumizhao888
        2
    yumizhao888  
       2023-03-25 16:41:26 +08:00 via iPhone
    api 要钱
    Saitama
        3
    Saitama  
    OP
       2023-03-25 16:42:27 +08:00
    @yumizhao888 他这个免费的原理是啥呀?
    fengci
        4
    fengci  
       2023-03-25 16:43:56 +08:00
    @Saitama #3 机器模拟了 web 版的 chatgpt 。不走 API ,是不扣钱的
    chainsR
        5
    chainsR  
       2023-03-25 16:45:07 +08:00 via iPhone
    这个不是会被封号吗?我有个认识的用了这个直接封号了
    blankmiss
        6
    blankmiss  
       2023-03-25 16:46:48 +08:00
    你付出足够的价值就会有人告诉你 怎么绕过官网的 cf 验证
    dobelee
        7
    dobelee  
       2023-03-25 16:47:13 +08:00
    @Saitama 网页爬虫,要跟 cf 对着干,稳定性极差,建议放弃,老实 API 。
    chainsR
        8
    chainsR  
       2023-03-25 16:47:25 +08:00 via iPhone
    Saitama
        9
    Saitama  
    OP
       2023-03-25 16:50:10 +08:00
    @fengci 噢,就是类似于这个库之前 3.x 用 headless 模拟网页操作的一个更轻量级的实现是吗?卧槽好神奇。好想学。。我看到 meadme 里面有这么一句( Note: info on how the reverse proxies work is not being published at this time in order to prevent OpenAI from disabling access.: 注意:为防止 OpenAI 禁用访问,目前尚未发布关于反向代理工作原理的信息),哥们你知道大概用的是什么技术吗?
    Saitama
        10
    Saitama  
    OP
       2023-03-25 16:52:25 +08:00
    @dobelee cf 的作用是什么呀?就是防止大家用网页爬虫,不用 api 白嫖吗?
    fengci
        11
    fengci  
       2023-03-25 16:52:57 +08:00
    @Saitama #9 不晓得,这个主要技术是绕过 CF 的防火墙,你可以顺着这个研究下。
    findex
        12
    findex  
       2023-03-25 17:01:27 +08:00
    以前刚出 chatgpt 的时候研究过,用 chatgpt 接过 tg bot ,用的很爽。但是后来更新了 cf ,天天得绕过机器验证,改了一个开源的 go 写的程序,加入了聊天记录 log 以及开放多人聊天会话记录的功能,项目懒得维护了。大家去自己用 key 的 api 吧。即便你能绕过 cf ,以后还会几个小时内让你重新登录一下账号。所以,无法完美做到自动登录,有时候登录界面会改,你总得有个人去改一些自动化的代码。
    locoz
        13
    locoz  
       2023-03-25 19:13:07 +08:00   ❤️ 3
    这个项目中提到的 ChatGPTUnofficialProxyAPI ,你要是看了代码就知道,实际就是 https://github.com/acheong08 这个人在 https://github.com/acheong08/ChatGPT 项目中默认使用的,他提供的一个公共代理服务器。

    之所以他们需要依赖一个代理去访问,是因为 ChatGPT 的网页版本使用了 CloudFlare 的 WAF ,对于非专业爬虫开发的人来说水平不够无法直接突破,也就是会导致请求直接被 CloudFlare 拦截,压根没法使用。所以 acheong08 这个人就弄了个代理出来,通过使用一个浏览器先去请求一遍获取 WAF 所需的 cookie 再访问,进而解决这个问题。

    但是事实上,如果 acheong08 提供的公共代理服务器用的解决方案就是他自己开源出来的那个,那么从爬虫开发的角度来说,各方面都漏洞百出,并没有完全解决 WAF ,只是解决了最基本的访问问题而已。只要 OpenAI 想,封掉所有使用他的公共代理服务器和代理服务器项目的账号是很轻松的。说白了,他这种操作就像是一个小偷去偷东西,开锁直接上电钻把锁给钻了,不仅留下了明显破坏锁的痕迹,还忘记了一路上都有摄像头这回事,抓人太简单了。

    另外,他这种代理方案并不是通常意义上的“代理 IP”那种“代理服务器”,而是需要将你的请求内容完整发送到代理服务器那边,再由他那边重新发起请求。也就意味着,你使用账号的 cookie/token ,以及发给 AI 的内容,他那边看得一清二楚...存在极大的安全性问题。

    ---

    顺带一提,OpenAI 之所以之前没有进行大规模封号,而是直到前段时间才开始封了一批进行威慑。一方面是因为自己的官方 API 还没推出,不影响自己赚钱,先放着不管培养市场习惯;另一方面是本来 ChatGPT 这个网页版就是放出来引流和收集使用情况的,再怎么样都有收益,没必要去封号。但如果 OpenAI 要真的开始节省成本、以付费用户为主了的时候,所有用这种代理服务持续进行调用的账号全都要被封。
    yumizhao888
        14
    yumizhao888  
       2023-03-25 19:30:04 +08:00 via iPhone
    我 plus 都封了一个,还是自己搞方便。
    TabGre
        15
    TabGre  
       2023-03-25 19:52:22 +08:00 via iPhone
    api 吧,别折腾
    terax
        16
    terax  
       2023-03-25 19:54:40 +08:00 via iPhone
    直接用 openai 官方提供的 chat api 最省事儿
    documentzhangx66
        17
    documentzhangx66  
       2023-03-25 19:56:09 +08:00
    OpenAI 甚至把 AWS 国际的 IP 都给封了,过分了。
    Saitama
        18
    Saitama  
    OP
       2023-03-25 20:58:54 +08:00 via iPhone
    @locoz 谢谢大佬耐心的回复!
    weid
        19
    weid  
       2023-03-25 23:54:53 +08:00 via iPhone
    你们都干嘛不得见人的事一个个被封。是中国封,还是 openai 封你?中国封你可以理解,但是 openai 封你,是你们的错吧。我一直用的好好的。
    SUP7R9
        20
    SUP7R9  
       2023-03-26 00:12:16 +08:00
    @findex #12 才翻到这个帖子,看老哥你提到当初改了一个用 Go 写的开源仓库,加了聊天记录 log 等功能,不知老哥你将自改二开的项目有无放到 github 上??即使老哥你随后又说项目懒得维护,但我依旧想学习参考下,麻烦老哥回复甩下自改二开的项目地址呗
    TOP5VPN
        21
    TOP5VPN  
       2023-03-29 19:51:15 +08:00   ❤️ 1
    https://c1n.cn/ulZ3g 这里有个简易方法的教程,借助工具,不用自己折腾代码。为啥非要自己造轮子
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1651 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:57 · PVG 00:57 · LAX 08:57 · JFK 11:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.