Skip to main content

ChatGPT is a reverse engineering of OpenAI's ChatGPT API

Project description

ChatGPT

PyPi Downloads

Reverse Engineered ChatGPT API by OpenAI. Extensible for chatbots etc.

Support my work

Make a pull request and fix my bad code.
or
Buy Me A Coffee

V1 Standard ChatGPT

Update 2023/02/14 9:00 PM GMT+8: It is working. Use this.

Installation

pip3 install revChatGPT

Configuration

  1. Create account on OpenAI's ChatGPT
  2. Save your email and password

Authentication method: (Choose 1)

Email/Password

Not supported for Google/Microsoft accounts

{
  "email": "email",
  "password": "your password"
}

Session token

Comes from cookies on chat.openai.com as "__Secure-next-auth.session-token"

{
  "session_token": "..."
}

Access token

https://chat.openai.com/api/auth/session

{
  "access_token": "<access_token>"
}

Optional configuration:

{
  "conversation_id": "UUID...",
  "parent_id": "UUID...",
  "proxy": "...",
  "paid": false
}
  1. Save this as $HOME/.config/revChatGPT/config.json
  2. If you are using Windows, you will need to create an environment variable named HOME and set it to your home profile for the script to be able to locate the config.json file.

Usage

Command line

python3 -m revChatGPT.V1

!help - Show this message
!reset - Forget the current conversation
!config - Show the current configuration
!rollback x - Rollback the conversation (x being the number of messages to rollback)
!exit - Exit this program

Developer API

Basic example (streamed):

from revChatGPT.V1 import Chatbot

chatbot = Chatbot(config={
  "email": "<your email>",
  "password": "<your password>"
})

print("Chatbot: ")
prev_text = ""
for data in chatbot.ask(
    "Hello world",
):
    message = data["message"][len(prev_text) :]
    print(message, end="", flush=True)
    prev_text = data["message"]
print()

Basic example (single result):

from revChatGPT.V1 import Chatbot

chatbot = Chatbot(config={
  "email": "<your email>",
  "password": "<your password>"
})

prompt = "how many beaches does portugal have?"
response = ""

for data in chatbot.ask(
  prompt
):
    response = data["message"]

print(response)

All API methods

Refer to the wiki for advanced developer usage.

V2 Fast ChatGPT API is dead (broken by OpenAI)

Awesome ChatGPT

My list

If you have a cool project you want added to the list, open an issue.

Disclaimers

This is not an official OpenAI product. This is a personal project and is not affiliated with OpenAI in any way. Don't sue me

Credits

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

revChatGPT-2.3.14.tar.gz (27.3 kB view hashes)

Uploaded Source

Built Distribution

revChatGPT-2.3.14-py3-none-any.whl (28.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page