Skip to main content

Reverse engineered Edge Chat API

Project description

Edge GPT

ChatGPT with internet access

Requirements

Setup

Checking access

  • Install the latest version of Microsoft Edge
  • Open http://bing.com/chat
  • If you see a chat feature, you are good to go

Getting authentication

  • Open the developer tools (F12)
  • Go to the Application tab → Storage → Cookies
  • Find the cookie named "_U"
  • Copy the value of the cookie
  • Method 1
    • export BING_U="<COOKIE_VALUE>"
  • Method 2
    • Use it as command line argument later

Installation

  • python3 -m pip install EdgeGPT

Demo usage

  • If BING_U in environment variables: python3 -m EdgeGPT
  • Else: python3 -m EdgeGPT "<COOKIE_VALUE>"

Developer

Use Async for the best experience

import asyncio
from EdgeGPT import Chatbot

async def main():
    """
    Main function
    """
    print("Initializing...")
    bot = Chatbot()
    await bot.start()
    while True:
        prompt = input("\nYou:\n")
        if prompt == "!exit":
            break
        elif prompt == "!help":
            print("""
            !help - Show this help message
            !exit - Exit the program
            !reset - Reset the conversation
            """)
            continue
        elif prompt == "!reset":
            await bot.reset()
            continue
        print("Bot:")
        print((await bot.ask(prompt=prompt))["item"]["messages"][1]["text"])
    await bot.close()


if __name__ == "__main__":
    print(
        """
        EdgeGPT - A demo of reverse engineering the Edge GPT chatbot
        Repo: github.com/acheong08/EdgeGPT
        By: Antonio Cheong

        !help for help

        Type !exit to exit
        Enter twice to send message
    """
    )
    asyncio.run(main())

Work in progress

  • Response streaming (Easily achievable)
  • Error handling

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

EdgeGPT-0.0.3.tar.gz (4.3 kB view hashes)

Uploaded Source

Built Distribution

EdgeGPT-0.0.3-py3-none-any.whl (4.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