File size: 3,518 Bytes
3d39175
d7240a8
3d39175
25a4418
3d39175
25a4418
3d39175
 
 
 
 
 
 
 
 
 
 
e097d14
7b7b422
ed1c425
66a91a4
3d39175
6e1534b
 
 
 
 
 
85dc37d
 
6e1534b
 
 
 
 
 
 
e3f67ce
3d39175
 
aa762da
3d39175
 
25a4418
6e1534b
3d39175
 
85dc37d
 
3d39175
e097d14
3d39175
25a4418
3d39175
85dc37d
3d39175
25a4418
3d39175
e097d14
 
 
3d39175
 
 
 
 
25a4418
3d39175
85dc37d
3d39175
25a4418
e097d14
 
 
 
 
3d39175
e3f67ce
 
e097d14
3d39175
 
 
25a4418
3d39175
295085f
bcd6bf2
 
 
 
 
 
 
 
 
 
f71f123
25a4418
bcd6bf2
 
 
310cf0e
85dc37d
bcd6bf2
e097d14
25a4418
3d39175
25a4418
e097d14
 
e1ee3e7
 
e097d14
 
3de061f
e097d14
 
 
310cf0e
e097d14
 
 
 
 
 
 
 
63ae3ec
98e04a7
900675e
3c1d663
 
 
3d39175
 
 
900675e
82d7d29
7a42723
3d39175
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<div align="center">
  <img src="https://socialify.git.ci/acheong08/EdgeGPT/image?font=Inter&language=1&logo=https%3A%2F%2Fupload.wikimedia.org%2Fwikipedia%2Fcommons%2F9%2F9c%2FBing_Fluent_Logo.svg&owner=1&pattern=Floating%20Cogs&theme=Auto" alt="EdgeGPT" width="640" height="320" />

  # Edge GPT

  *The reverse engineering the chat feature of the new version of Bing*

</div>

<p align="center">
  <a href="https://github.com/acheong08/EdgeGPT">
    <img alt="PyPI version" src="https://img.shields.io/pypi/v/EdgeGPT">
  </a>
  <img alt="Python version" src="https://img.shields.io/badge/python-3.7+-blue.svg">
</p>

#  

> ## UPDATE 2023/02/13 - Public access shut down by Microsoft
> ## UPDATE 2023/02/14 - Do not use for now while I verify its safety

## Table of Contents
- [Edge GPT](#edge-gpt)
- [](#)
  - [Table of Contents](#table-of-contents)
  - [Setup](#setup)
    - [Install package](#install-package)
    - [Requirements](#requirements)
    - [Checking access (Required)](#checking-access-required)
    - [Getting authentication (Required)](#getting-authentication-required)
  - [Usage](#usage)
    - [Quick start](#quick-start)
    - [Developer demo](#developer-demo)
  - [Work in progress](#work-in-progress)
  - [Contributors](#contributors)

## Setup

### Install package
```bash
python3 -m pip install EdgeGPT --upgrade
```
 
### Requirements 
We have a shared token for public use. If you have your own account with access, you can use that instead.
 
- python 3.7+
- Microsoft Edge (Required)
- A Microsoft Account with early access to http://bing.com/chat (Required)


<details>
  <summary>
 
  ### Checking access (Required)
 
  </summary>
 
- Install the latest version of Microsoft Edge
- Open http://bing.com/chat
- If you see a chat feature, you are good to go
 
</details>


<details>
  <summary>
 
  ### Getting authentication (Required)
 
  </summary>

- Open the developer tools (F12)
- Go to the Application tab → Storage → Cookies
- Find the cookie named "_U"
- Copy the value of the cookie
 
</details>



## Usage

### Quick start
 
```
 $ python3 -m EdgeGPT -h

        EdgeGPT - A demo of reverse engineering the Bing GPT chatbot
        Repo: github.com/acheong08/EdgeGPT
        By: Antonio Cheong

        !help for help

        Type !exit to exit
        Enter twice to send message

usage: EdgeGPT.py [-h] [--no-stream] [--bing-cookie BING_COOKIE]

options:
  -h, --help            show this help message and exit
  --no-stream
  --bing-cookie BING_COOKIE (Required)
```

-----

### Developer demo
Use Async for the best experience

[Reference code](https://github.com/acheong08/EdgeGPT/blob/master/src/EdgeGPT.py#L268-L328) for more advanced example of usage

```python
import asyncio
from EdgeGPT import Chatbot

async def main():
    bot = Chatbot()
    print(await bot.ask(prompt="Hello world"))
    await bot.close()


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

```

## Work in progress
- Error handling

## Star History
[![Star History Chart](https://api.star-history.com/svg?repos=acheong08/EdgeGPT&type=Date)](https://star-history.com/#acheong08/EdgeGPT&Date)


## Contributors
This project exists thanks to all the people who contribute. 
- pig#8932 (Discord) - Sharing account with beta access
- ulysses115#7373 (Discord) - Sharing account with beta access
- [Jimmy-Z](https://github.com/Jimmy-Z) - Bugfixes
 <a href="https://github.com/acheong08/EdgeGPT/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=acheong08/EdgeGPT" />
 </a>