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.

V1 Standard ChatGPT

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

Proxy server Rate limit: 25 requests per 10 seconds (per IP)

OpenAI rate limit: 50 requests per hour on free accounts. You can get around it with multi-account cycling

Plus accounts has around 150 requests per hour rate limit

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

        ChatGPT - A command-line interface to OpenAI's ChatGPT (https://chat.openai.com/chat)
        Repo: github.com/acheong08/ChatGPT

Type '!help' to show a full list of commands

Logging in...

You:
(Press Esc followed by Enter to finish)

The command line interface supports multi-line inputs and allows navigation using arrow keys. Besides, you can also edit history inputs by arrow keys when the prompt is empty. It also completes your input if it finds matched previous prompts. To finish input, press Esc and then Enter as solely Enter itself is used for creating new line in multi-line mode.

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.19.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

revChatGPT-2.3.19-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file revChatGPT-2.3.19.tar.gz.

File metadata

  • Download URL: revChatGPT-2.3.19.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for revChatGPT-2.3.19.tar.gz
Algorithm Hash digest
SHA256 6ddc8234ecac75065058c757ad4a10289c44a432be31b5996e5bccc810791715
MD5 a3c30ec26f577dbe1fb67e4215f4cd56
BLAKE2b-256 946281c745d75be7e2803936f23442e8ed2590594750ab1b6831bcf9b8b5fb42

See more details on using hashes here.

File details

Details for the file revChatGPT-2.3.19-py3-none-any.whl.

File metadata

  • Download URL: revChatGPT-2.3.19-py3-none-any.whl
  • Upload date:
  • Size: 30.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for revChatGPT-2.3.19-py3-none-any.whl
Algorithm Hash digest
SHA256 b8bef39ef5abe3d1bdfb03021c48c95a59e970cff49ece9fabe133699b85fdd8
MD5 10bd8bf3926fa56d7a310c81f0d64c0b
BLAKE2b-256 ff3b564037f18144d9dc276dd8d6da7f7dea1309515a137551827574fd7b7e01

See more details on using hashes here.

Supported by

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