当前位置: 首页 > news >正文

EdgeGPT - 新版Bing聊天功能逆向工程

在这里插入图片描述

本文翻译整理自:https://github.com/acheong08/EdgeGPT

文章目录

    • 一、关于 EdgeGPT
      • 相关链接资源
      • 关键功能特性
    • 二、安装
      • 系统要求
      • 安装命令
    • 三、认证配置
      • 获取Cookie步骤
      • 代码中使用Cookie
    • 四、使用方法
      • 1、命令行方式
      • 2、Python API方式
        • 使用`Chatbot`类
        • 使用`Query`辅助类
      • 3、Docker方式运行
    • 五、图像生成功能
      • 命令行方式
      • Python API方式
    • 六、高级控制
      • 使用`ImageGen`类


项目已归档 :由于个人原因,作者无法继续维护此代码库。


一、关于 EdgeGPT

逆向工程实现新版Bing的聊天功能


相关链接资源

  • github : https://github.com/acheong08/EdgeGPT
  • 官方文档:https://github.com/acheong08/EdgeGPT#readme

关键功能特性

  • 通过逆向工程实现Bing聊天功能
  • 支持命令行和Python API两种调用方式
  • 提供图像生成功能
  • 支持多种对话风格(creative/balanced/precise)
  • 支持cookie认证

二、安装


系统要求

  • Python 3.8+
  • 可访问https://bing.com/chat的微软账户(视地区而定)
  • 位于支持New Bing的国家/地区(中国大陆需VPN)
  • Selenium(用于自动设置cookie)

安装命令

python3 -m pip install EdgeGPT --upgrade

三、认证配置

某些地区可能无需认证即可使用聊天功能。您可以通过浏览器(用户代理设置为Edge)尝试在不登录的情况下发起聊天来验证。

如果收到以下错误,可以尝试提供cookie:
Exception: Authentication failed. You have not been accepted into the beta.


获取Cookie步骤

1、使用类似Microsoft Edge的浏览器:

  • a) 安装最新版Microsoft Edge
  • b) 或设置用户代理为Edge样式

2、访问bing.com/chat
3、安装Cookie编辑器扩展(Chrome版或Firefox版)
4、访问bing.com
5、打开扩展程序
6、点击"Export"→"Export as JSON"
7、将cookie保存为bing_cookies_*.json文件


代码中使用Cookie

cookies = json.loads(open("./path/to/cookies.json", encoding="utf-8").read())
bot = await Chatbot.create(cookies=cookies)

四、使用方法


1、命令行方式

 $ python3 -m EdgeGPT.EdgeGPT -hEdgeGPT - A demo of reverse engineering the Bing GPT chatbotRepo: github.com/acheong08/EdgeGPTBy: Antonio Cheong!help for helpType !exit to exitusage: EdgeGPT.py [-h] [--enter-once] [--search-result] [--no-stream] [--rich] [--proxy PROXY] [--wss-link WSS_LINK][--style {creative,balanced,precise}] [--prompt PROMPT] [--cookie-file COOKIE_FILE][--history-file HISTORY_FILE] [--locale LOCALE]options:-h, --help            show this help message and exit--enter-once--search-result--no-stream--rich--proxy PROXY         Proxy URL (e.g. socks5://127.0.0.1:1080)--wss-link WSS_LINK   WSS URL(e.g. wss://sydney.bing.com/sydney/ChatHub)--style {creative,balanced,precise}--prompt PROMPT       prompt to start with--cookie-file COOKIE_FILEpath to cookie file--history-file HISTORY_FILEpath to history file--locale LOCALE       your locale (e.g. en-US, zh-CN, en-IE, en-GB)

支持参数:

  • --style:设置对话风格(creative/balanced/precise)
  • --cookie-file:指定cookie文件路径
  • --locale:设置地区(如en-US/zh-CN)

2、Python API方式


使用Chatbot
import asyncio, json
from EdgeGPT.EdgeGPT import Chatbot, ConversationStyleasync def main():bot = await Chatbot.create()response = await bot.ask(prompt="Hello world", conversation_style=ConversationStyle.creative)print(json.dumps(response, indent=2))await bot.close()asyncio.run(main())

使用Query辅助类
from EdgeGPT.EdgeUtils import Queryq = Query("What are you? Give your answer as Python code")
print(q.output)  # 获取文本输出
print(q.sources)  # 获取来源
print(q.suggestions)  # 获取建议

3、Docker方式运行

docker run --rm -it -v $(pwd)/cookies.json:/cookies.json:ro -e COOKIE_FILE='/cookies.json' ghcr.io/acheong08/edgegpt

五、图像生成功能


命令行方式

$ python3 -m ImageGen.ImageGen -h

Python API方式

from EdgeGPT.EdgeUtils import ImageQueryq = ImageQuery("Meerkats at a garden party in Devon")

六、高级控制


使用ImageGen

from EdgeGPT.ImageGen import ImageGen
import jsonwith open("cookies.json", encoding="utf-8") as file:cookies = json.load(file)_U = next(cookie["value"] for cookie in cookies if cookie["name"] == "_U")image_generator = ImageGen(_U)
images = image_generator.get_images("Astronaut riding a horse")
image_generator.save_images(images)

伊织 xAI 2025-04-19(六)

相关文章:

  • 序列决策问题(Sequential Decision-Making Problem)
  • (区间 dp)洛谷 P6879 JOI2020 Collecting Stamps 3 题解
  • docker镜像新增加用户+sudo权限,无dockerfile
  • AI领域:MCP 与 A2A 协议的关系
  • 网络威胁情报 | Friday Overtime Trooper
  • MCP使用SSE和STDIO模式时,mcp client 如何连接
  • 深度学习是什么?该怎么入门学习?
  • Unity 导出Excel表格
  • [特殊字符]fsutil命令用法详解
  • pcp补丁升级手顺
  • (8)ECMAScript语法详解
  • 入门-C编程基础部分:17、typedef
  • 创建redis-cluster集群
  • 提交到Gitee仓库
  • 火语言RPA--Ftp删除目录
  • react使用01
  • 【浙江大学DeepSeek公开课】回望AI三大主义与加强通识教育
  • 【时时三省】(C语言基础)改变循环执行的状态
  • 大数据开发的基本流程
  • 基于DeepSeek的网络爬虫技术创新与实践应用
  • 黎巴嫩“伊斯兰集团”组织证实其高级成员在以军空袭中丧生
  • 护航民营企业出海,上海设37家维权工作站、建立近百人专家团队
  • “女孩被前男友泼汽油烧伤致残案”二审择期宣判
  • 同济研究生开发AI二维码走红拿下大奖,新一代00开发者掀起AI创业潮
  • 第1现场|俄乌互指对方违反复活节临时停火提议
  • 纪念|巴尔加斯·略萨:写作之为命运