• Stars
    star
    814
  • Rank 55,805 (Top 2 %)
  • Language
    Go
  • License
    The Unlicense
  • Created over 1 year ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A cross-platform desktop client for the jailbroken New Bing AI Copilot (Sydney ver.) built with Go and Wails (previously based on Python and Qt).

SydneyQt

SydneyQt

A desktop client for the jailbroken New Bing AI (Sydney ver.) based on Python and Qt.

简体中文

Features

  • Jailbreak New Bing with prompt injection.
  • Edit chat context as you wish.
  • Prevent message revoking.
  • Revoke and edit your last message.
  • Choose and send custom quick responses to the chat.
  • Use rich and plain text in snapped context, with LaTeX support.
  • Chat with webpages you browse.
  • Chat with documents you open (including pdf, docx and pptx).
  • Send images and ask the AI to do something with them.
  • Use OpenAI ChatGPT API.
  • Switch between custom prompt presets.
  • Dark mode.
  • Customize settings to your liking.

Environment

  • Python 3.11+ with pip.
  • Windows 10+, macOS or Linux.

Usage

  1. Put your cookies.json in the same folder as main.py:
    • Install the Cookie-Editor extension for Chrome or Firefox
    • Go to bing.com
    • Open the extension
    • Click Export on the bottom right, then Export as JSON (This saves your cookies to clipboard)
    • Paste your cookies into a file cookies.json, created in the same directory as main.py.
  2. Install requirements:
pip install -r requirements.txt
  1. Run the program:
python main.py
  1. If you see an error message like 200, message='Invalid response status', url=URL('wss://sydney.bing.com/sydney/ChatHub'), you need to set up a proxy service with Cloudflare Workers. Here are the steps to do that:
Click me
  1. Go to this link and sign in or sign up for a Cloudflare account.
  2. In the sidebar, select Workers & Pages.
  3. On the page that opens, click Create application.
  4. Choose Create Worker.
  5. Give your worker a name and click Deploy.
  6. On the worker detail page, click Quick edit.
  7. Copy all the code from here and paste it over the existing code in worker.js. Then click Save and deploy.
  8. Copy the worker domain that looks like xxxx-xxxx-xxxx.xxxx.workers.dev (not a URL like https://xxxx-xxxx-xxxx.xxxx.workers.dev/, please remove the prefixes and suffixes) and paste it as Wss Domain in the settings dialog of SydneyQt. Then click Save.

Settings

Below is the detailed description on the settings of SydneyQt.

Click me
  • Wss Domain: Used to proxy websocket interface, break regional restrictions.
  • Proxy: The proxy used to access New Bing, recommended to be an http proxy, such as Clash's 7890 port. If you use a Wss domain that is reverse-proxied by Cloudflare, you may not need a proxy to connect, but since the HTTP GET endpoint for creating conversations is still blocked, you still need a proxy.
  • Dark Mode: Imported a custom css from Python Qt to implement dark mode effect, some minor rendering problems may occur on some UI, such as text overflowing buttons, etc.
  • Conversation Style: New Bing provides three chat modes, namely Creative, Balanced, and Precise. Among them, Creative and Precise modes are backed by GPT-4, and Balanced mode is backed by GPT-3.5. It is recommended to use Creative mode.
  • No Suggestion: New Bing will generate three suggested user responses based on AI's output results. After checking this, the suggestion bar will not be displayed, but AI will still generate suggestions, which means that you have to wait for a while after each round of message sending ends. This can't be turned off even by modifying optionsSets.
  • No Search Result: There are currently two ways to disable search: instructing in the jailbreak prompt and automatically adding the "#no_search" keyword after each user-sent message. This option uses the latter.
  • Font Family and Size: Font family and size settings for context box and input box.
  • Stretch Factor: Used to adjust the placeholder ratio of Chat Context and User Input input box, which is an integer. The larger this value, the higher the Chat Context, and correspondingly, the smaller the User Input height.
  • Suggestion on Message Revoke: Due to Microsoft's restrictions, AI may suddenly realize that something is wrong after outputting a piece of content, and then withdraw the message and apologize. Of course, revoking in a third-party client is invalid, at most it means that subsequent content cannot be output. But at the same time it will not generate reply suggestions either. Therefore, the text here is used to replace the suggestion bar display text at this time. The default is Continue from where you stopped, instructing AI to continue outputting. Since the new message sent will attach the chat record context in webpage_context, it will not go through external censorship, so AI can continue writing on the content that was just interrupted, unless there is sensitive output again in the continued content.
  • Revoke Auto Reply Count: If the value is not 0, then when a message withdrawal is detected, it will automatically send the "message revoke suggestion" text to let AI continue writing. The maximum number of times sent will not exceed the value set here.
  • Send Quick Responses Straightforward: There is a Quick button on top of the input box for quickly sending some template texts. Such as "Translate the above text into Chinese" and so on. When this option is activated, if you click on one of the template texts in Quick and there is no text in the input box, it will directly send the template text to AI; and if there is text in the input box, it will add the template text below the existing text.

Below are some ChatGPT related settings, because SydneyQt supports OpenAI's API:

  • OpenAI Key: API key, usually starting with sk-, but the program will not validate it.
  • OpenAI Endpoint: Custom OpenAI API endpoint, useful when using third-party distributors, such as openai-sb.com in China provides API that is much cheaper than official ones. It needs to end with /v1.
  • Short Model & Long Model & Model Switching Threshold: Now GPT-3.5 supports 4k and 16k two models, and the two models charge differently. How to minimize costs as much as possible? Of course it is long text with long model and short text with short model. Model Switching Threshold is a token count. If the current Chat Context's token count is greater than this value, then use Long Model for the next request sent; otherwise use Short Model.
  • Model Temperature: The model's temperature, between 0 and 2. The larger the value, the more random the model's output. Usually keep default.

FAQ

If you encounter any of these issues: Request is throttled, Authentication Failed, OSError: [WinError 64], etc, please try the following steps to fix them:

  1. Update SydneyQt to the latest version.
  2. Open a private browsing window in Edge, log in to bing.com and send a random message to New Bing.
  3. Export the cookies.json file and replace the original one.

If these steps don't work, check your proxy settings as follows:

  1. Go to settings in SydneyQt and try different proxy types. For example: http://127.0.0.1:7890, socks5h://127.0.0.1:7890 (the h letter means to send the hostname to the proxy)
  2. If this doesn't work either, leave the proxy blank in SydneyQt, and try using Proxifier or Clash TUN mode.

To avoid the User needs to solve CAPTCHA to continue error, please follow these steps:

  1. Check the current user with the Cookie Checker option on the menu bar. If it shows no user, you need to export a new cookies.json file from your browser.
  2. After making sure the cookie is valid, open Bing Web in your browser and sending a random message. You should see a CAPTCHA challenge. If not, verify that the current user matches the cookies.json file. Complete the CAPTCHA and go back to SydneyQt. It should work fine now.

Make sure your proxy IP does not change. If you use Clash, disable load-balancing or round-robin modes and stick to one node only. Otherwise you will need to manually solve the CAPTCHA in your browser frequently.

Screenshots

Dark mode is supported now:

Star History

Star History Chart

Credits

https://github.com/acheong08/EdgeGPT

https://github.com/InterestingDarkness/EdgeGPT/tree/sydney

More Repositories

1

fast-mail-bomber

Fast, multithreading, efficient and easy-to-use mail bombing/spamming tool. Sending mails via mailman services hosted by different providers.
PHP
551
star
2

poe-openai-proxy

A wrapper that lets you use the reverse-engineered Python library poe-api library as if it was the OpenAI API for ChatGPT. You can connect your favorite OpenAI API based apps to this proxy and enjoy the ChatGPT API for free!
Go
421
star
3

dd-signal

监控多个B站主播的直播状态,并发送开播、下播提醒消息的Telegram Bot。
JavaScript
75
star
4

advanced-php-crawler

新浪博客文章/wenku8轻小说文库爬虫,可抓取图片保存,一键制作电子书。kindle读书党的神器!
PHP
32
star
5

spoofed-round-tripper

A Go's http.RoundTripper implementation that provides a wrapper for tls-client and leverages uTLS to spoof TLS fingerprints (JA3, JA4, HTTP/2 Akamai, etc) of mainstream browsers for use in different HTTP client libraries (like resty) to bypass Cloudflare or other firewalls.
Go
21
star
6

wp-3d-pony

To show a 3D MLP:FiM(My Little Pony) pony which is based on Live2dWidget.js and Frash's model on your WordPress website. (WordPress plugin)
PHP
11
star
7

dmzj-auto

动漫之家自动签到脚本
TypeScript
8
star
8

SydneyQt-browser-extension

The browser extension of SydneyQt that enables multiple shortcuts, including resolve CAPTCHA automatically etc.
TypeScript
8
star
9

gin-hybrid

🚀 Build dynamic web apps with ease using Gin Hybrid – the Gin-based template project that offers server-side HTML rendering with Go Template, REST API support, and optional Vue & Vuetify integration!
Go
7
star
10

api4sm.ms

SM.MS图床api For PHP. sm.ms|smms|sm图床|图床api|smms图床sdk|sm.ms图床sdk
PHP
7
star
11

mobile-acg

一个PHP开发的HTTP API,随机获取一张或多张来自Telegram频道 t.me/MikuArt 的适合竖屏移动设备查看的二次元图片,并上传到今日头条的图床,支持JSON获取地址或直接跳转。
PHP
7
star
12

QQ-Group-Enhancement-Bot

一个基于Mirai QQ机器人框架,为QQ群组提供网址链接预览、不限时消息撤回、不进群也能浏览消息等增强型功能的mirai-console插件,致力于让QQ群的体验更像Telegram群组。
Kotlin
6
star
13

playPony

QQ空间宠物自动化脚本
PHP
5
star
14

fire

位于github的下载仓库
Python
5
star
15

anime-hostess

基于Web的自托管番剧库,支持调用B站弹幕。(弹弹play web版)
Go
4
star
16

SweetieBot

基于SmartQQ的Java QQ机器人,支持自写js脚本。qqbot|qqrobot|webqq|javascript|自写|js|脚本|插件|script|plugin
Java
4
star
17

tun4colab

A helper program that allows for parallel execution of API services and utilizes Cloudflare Quick Tunnel for port forwarding on Google Colab.
Go
4
star
18

portmap-simple

A very simple portmap client.
C
3
star
19

anime-api-frontend

另一个 Anime-API 的前端,「整合第三方网站的视频和弹幕资源, 提供最舒适的看番追剧体验」。
Vue
3
star
20

epok-forwarder

An easily configurable, multi-functional network traffic forwarder that supports port mapping, port range forwarding, and HTTP/HTTPS reverse proxy based on host or SNI.
Go
3
star
21

tw-cn

繁体-简体线上转换 - React + Express 前后端开发体验
JavaScript
2
star
22

font-tools

The scripts in this project allow you to merge two TTF font files into one, read the names in a font's "name" table, rename a font file, and replace a glyph in a font file with a glyph from another font file.
Python
2
star
23

ipa-server-bot

This is a telegram bot that generates a link to install signed .ipa files directly on iOS devices.
Go
2
star
24

file-compare-move

Compare files in two directories and move duplicate files from destination directory to a new directory.
Go
1
star
25

short-wave-radios

Vue
1
star
26

book-collab

TypeScript
1
star
27

lip

lip is a powerful CLI tool for network administrators, offering a range of functions including IP lookup, bandwidth test, WHOIS lookup, reverse DNS lookup, SSL certificate check, TCPing, and Telnet.
Go
1
star
28

0daybreaker

暂不公开。
Java
1
star
29

juzeon

1
star
30

upload-to-translate

上传英文TXT,分片调用API翻译成中文。
PHP
1
star