逆向工程ChatGPT API: 深入探索Python非官方实现

Ray

reverse-engineered-chatgpt

引言

随着人工智能技术的快速发展,ChatGPT作为一款强大的对话式AI模型,已经成为许多开发者和企业关注的焦点。然而,官方的ChatGPT API需要付费使用,这对于一些个人开发者或小型项目来说可能是一个障碍。在这种背景下,一个名为"reverse-engineered-chatgpt"的开源项目应运而生,它通过逆向工程ChatGPT的Web界面,为开发者提供了一种免费使用ChatGPT服务的替代方案。

项目概述

"reverse-engineered-chatgpt"是一个非官方的Python项目,旨在让开发者能够在不使用官方API密钥的情况下,直接在Python代码中集成ChatGPT的服务。该项目的核心思想是模拟用户在ChatGPT网页版上的操作,从而实现与ChatGPT的交互。

项目架构图

项目灵感

该项目的诞生源于一个现实问题:ChatGPT官方API需要ChatGPT Plus账户才能获取API密钥,而这需要每月支付20美元(截至2023年5月11日)。然而,ChatGPT的网页版是可以免费使用的。开发者Zai-Kun意识到,如果能够模拟网页版的请求,就可以实现在Python代码中免费使用ChatGPT的功能。

工作原理

项目的核心工作原理是对ChatGPT网页界面的请求进行逆向工程,并将这些请求直接集成到Python代码中。这意味着,使用该脚本发送的任何请求都会被模拟成用户直接在网站上进行的操作。因此,它可以免费使用,无需API密钥。

主要特点

  1. 免费使用: 无需ChatGPT Plus账户或API密钥。
  2. Python集成: 可以直接在Python代码中调用ChatGPT服务。
  3. 灵活性: 支持同步和异步操作模式。
  4. 会话管理: 能够创建新会话或继续现有会话。
  5. 开源: 代码完全开源,允许社区贡献和改进。

使用方法

安装要求

  • Python 3.9或更高版本

基本使用示例

以下是一个简单的同步使用示例:

from re_gpt import SyncChatGPT

session_token = "__Secure-next-auth.session-token here" 
conversation_id = None # conversation ID here

with SyncChatGPT(session_token=session_token) as chatgpt:
    prompt = input("Enter your prompt: ")

    if conversation_id:
        conversation = chatgpt.get_conversation(conversation_id)
    else:
        conversation = chatgpt.create_new_conversation()

    for message in conversation.chat(prompt):
        print(message["content"], flush=True, end="")

该示例展示了如何创建一个ChatGPT会话,发送用户输入的提示,并实时打印AI的响应。

异步使用示例

项目还支持异步操作,这对于需要处理多个并发请求的应用程序特别有用:

import asyncio
import sys
from re_gpt import AsyncChatGPT

session_token = "__Secure-next-auth.session-token here"
conversation_id = None # conversation ID here

async def main():
    async with AsyncChatGPT(session_token=session_token) as chatgpt:
        prompt = input("Enter your prompt: ")

        if conversation_id:
            conversation = chatgpt.get_conversation(conversation_id)
        else:
            conversation = chatgpt.create_new_conversation()

        async for message in conversation.chat(prompt):
            print(message["content"], flush=True, end="")

if __name__ == "__main__":
    asyncio.run(main())

获取会话令牌

为了使用这个项目,你需要获取ChatGPT的会话令牌。以下是获取步骤:

  1. 访问 https://chat.openai.com/chat 并登录或注册。
  2. 打开浏览器的开发者工具。
  3. 转到"Application"标签,打开"Cookies"部分。
  4. 复制 __Secure-next-auth.session-token 的值并保存。

项目的意义和影响

  1. 降低入门门槛: 为个人开发者和小型项目提供了一种免费使用ChatGPT的方法,有助于AI技术的普及和创新。

  2. 学习机会: 通过研究这个项目,开发者可以深入了解Web API的工作原理和逆向工程技术。

  3. 社区驱动: 作为开源项目,它鼓励社区参与,促进知识共享和技术进步。

  4. 灵活性: 允许开发者根据自己的需求定制和扩展功能。

  5. 潜在的法律和道德问题: 使用非官方API可能涉及一些法律和道德问题,用户需要谨慎考虑。

未来发展方向

项目的开发者列出了几个未来的发展方向:

  • 添加更多示例
  • 改进错误处理机制
  • 实现检索所有ChatGPT聊天记录的功能
  • 完善文档

社区贡献

项目欢迎社区成员的贡献,无论是提出新功能建议,还是直接提交代码改进。贡献流程包括:

  1. Fork项目仓库
  2. 创建特性分支
  3. 提交更改
  4. 推送到分支
  5. 创建Pull Request

法律和道德考虑

虽然这个项目为开发者提供了一种免费使用ChatGPT的方法,但它也引发了一些法律和道德方面的问题。使用非官方API可能违反OpenAI的服务条款,因此在商业项目中使用时需要特别谨慎。此外,过度使用这种方法可能会给OpenAI的服务器带来额外负担。

结论

"reverse-engineered-chatgpt"项目展示了开发者社区的创新能力和对AI技术的热情。它不仅提供了一种实用的解决方案,还为我们思考AI技术的可访问性和伦理问题提供了一个视角。对于开发者来说,这个项目既是一个有用的工具,也是一个学习逆向工程和API设计的机会。

然而,使用这种非官方方法时,开发者需要权衡其中的风险和收益。在实际应用中,特别是商业项目,还是建议使用官方API以确保合规性和稳定性。无论如何,这个项目为AI技术的民主化和创新应用开辟了新的可能性,值得我们关注和思考。

参考链接

通过深入探讨"reverse-engineered-chatgpt"项目,我们不仅了解了一种创新的ChatGPT使用方法,还看到了开源社区在推动AI技术普及方面的努力。尽管这种方法存在一定的争议,但它无疑为我们提供了一个思考AI技术发展方向和伦理问题的新视角。

avatar
0
0
0
最新项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号