binary-husky / gpt_academic

为GPT/GLM等LLM大语言模型提供实用化交互接口,特别优化论文阅读/润色/写作体验,模块化设计,支持自定义快捷按钮&函数插件,支持Python和C++等项目剖析&自译解功能,PDF/LaTex论文翻译&总结功能,支持并行问询多种LLM模型,支持chatglm3等本地模型。接入通义千问, deepseekcoder, 讯飞星火, 文心一言, llama2, rwkv, claude2, moss等。
https://github.com/binary-husky/gpt_academic/wiki/online
GNU General Public License v3.0
66.01k stars 8.1k forks source link

能否利用EdgeGPT,支持调用微软Bing接口 #558

Closed zdevc closed 1 year ago

zdevc commented 1 year ago

大佬们求求了,看看这个项目吧,https://github.com/acheong08/EdgeGPT 如果可以方便地调用Bing接口,或者未来的百度、阿里等第三方接口,对于没有openAI-key也没法本地部署GLM的同学是福音啊

binary-husky commented 1 year ago

谢谢,我去学习一下……

binary-husky commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。

另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

zdevc commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。

另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

我是文科生,感觉还好啊,cookie这一步不用程序获取,让用户自己准备。我按照那个项目的中文说明下载了cookie插件,把cookie放在一个文件里,在本地控制台执行命令,调用成功,但是感觉交互不是很方便。但是咱们这个项目交互体验好,功能最多,所以想到能不能强强联合一下。 它也出了调用接口的代码,如果能集成在咱们这个项目里那就太好了。 能摸到github这里,按照大佬的文档把程序跑起来,已经有一定的操作能力了,门槛可能有,但是可以给用户多一种选择嘛😂 bing背后接入的是GPT4,可以给大家提供一种免费体验GPT4的替代方式。

binary-husky commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。 另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

我是文科生,感觉还好啊,cookie这一步不用程序获取,让用户自己准备。我按照那个项目的中文说明下载了cookie插件,把cookie放在一个文件里,在本地控制台执行命令,调用成功,但是感觉交互不是很方便。但是咱们这个项目交互体验好,功能最多,所以想到能不能强强联合一下。 它也出了调用接口的代码,如果能集成在咱们这个项目里那就太好了。 能摸到github这里,按照大佬的文档把程序跑起来,已经有一定的操作能力了,门槛可能有,但是可以给用户多一种选择嘛😂 bing背后接入的是GPT4,可以给大家提供一种免费体验GPT4的替代方式。

感谢您的反馈。感觉可以去调查下。 另外请问这个是每次打开都需要换cookie,还是隔几天需要换一次cookie呢? 还有您是怎么获得new bing体验资格的呀,我申请一直不通过……

zdevc commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。 另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

我是文科生,感觉还好啊,cookie这一步不用程序获取,让用户自己准备。我按照那个项目的中文说明下载了cookie插件,把cookie放在一个文件里,在本地控制台执行命令,调用成功,但是感觉交互不是很方便。但是咱们这个项目交互体验好,功能最多,所以想到能不能强强联合一下。 它也出了调用接口的代码,如果能集成在咱们这个项目里那就太好了。 能摸到github这里,按照大佬的文档把程序跑起来,已经有一定的操作能力了,门槛可能有,但是可以给用户多一种选择嘛😂 bing背后接入的是GPT4,可以给大家提供一种免费体验GPT4的替代方式。

感谢您的反馈。感觉可以去调查下。 另外请问这个是每次打开都需要换cookie,还是隔几天需要换一次cookie呢? 还有您是怎么获得new bing体验资格的呀,我申请一直不通过……

试验了一下,第一次登录bing拿cookie的时候勾选了保持登录状态,后来重启浏览器、重启电脑、断网重连,原来的cookie都还能连上,不知道失效时间是多久,我再观察观察。。 我本来有频繁使用的hotmail邮箱,申请bing也是提示“出错了,请重试”,怀疑是微软综合判断我是大陆用户,注册不过。后来挂代理美国节点用QQ邮箱新注册了一个微软账户,地区选美国,加入成功,2周收到通知。昨天挂代理香港节点,原来的hotmail也加入成功了,还没收到通知。

xiaosaaaa commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。 另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

我是文科生,感觉还好啊,cookie这一步不用程序获取,让用户自己准备。我按照那个项目的中文说明下载了cookie插件,把cookie放在一个文件里,在本地控制台执行命令,调用成功,但是感觉交互不是很方便。但是咱们这个项目交互体验好,功能最多,所以想到能不能强强联合一下。 它也出了调用接口的代码,如果能集成在咱们这个项目里那就太好了。 能摸到github这里,按照大佬的文档把程序跑起来,已经有一定的操作能力了,门槛可能有,但是可以给用户多一种选择嘛😂 bing背后接入的是GPT4,可以给大家提供一种免费体验GPT4的替代方式。

感谢您的反馈。感觉可以去调查下。 另外请问这个是每次打开都需要换cookie,还是隔几天需要换一次cookie呢? 还有您是怎么获得new bing体验资格的呀,我申请一直不通过……

据说新账号申请过的快,我的老账号等了20来天。

liliaoyuan commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。

另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

请问下大佬,这里是仅支持api2d的gpt4接口吗,plus的gpt4需要自己去open-ai那边使用?

CWX01 commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。 另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

我是文科生,感觉还好啊,cookie这一步不用程序获取,让用户自己准备。我按照那个项目的中文说明下载了cookie插件,把cookie放在一个文件里,在本地控制台执行命令,调用成功,但是感觉交互不是很方便。但是咱们这个项目交互体验好,功能最多,所以想到能不能强强联合一下。 它也出了调用接口的代码,如果能集成在咱们这个项目里那就太好了。 能摸到github这里,按照大佬的文档把程序跑起来,已经有一定的操作能力了,门槛可能有,但是可以给用户多一种选择嘛😂 bing背后接入的是GPT4,可以给大家提供一种免费体验GPT4的替代方式。

感谢您的反馈。感觉可以去调查下。 另外请问这个是每次打开都需要换cookie,还是隔几天需要换一次cookie呢? 还有您是怎么获得new bing体验资格的呀,我申请一直不通过……

这个项目也是可以调用Bing的。https://github.com/waylaidwanderer/node-chatgpt-api https://github.com/waylaidwanderer/PandoraAI cookie是在它过期之前都能用,不需要每天换,只需要用户去自己的浏览器查找_U的cookie。建议在网页上设置能更换cookie和prompt的选项。 有时候Bing说的话触发了某些关键词会被微软撤回,可以出个防撤回功能。这个项目还有jailbreak的功能,可以解除一些微软的限制,让bing说一些平时不能说的话。 New Bing的Waitlist的话,在三月的时候基本上就不需要等待了。微软账户地区选美国日本新加坡等,https://www.bing.com/new 拉到最底下点opt out,再重新加入waitlist基本就可以直接使用了,不行的话就重新加入一次Microsoft reward。

binary-husky commented 1 year ago

看了一下,它这个需要打开浏览器扒拉cookie,门槛有点高。 另外。没有openai-key可以直接绕路用api2d嘛,甚至还支持gpt-4。

请问下大佬,这里是仅支持api2d的gpt4接口吗,plus的gpt4需要自己去open-ai那边使用?

都支持,模型里面选择gpt-4调用的是openai的,选择api2d-gpt-4就是绕道api2d的

binary-husky commented 1 year ago

https://github.com/binary-husky/chatgpt_academic/tree/newbing 的newbing支持测试在newbing分支,把cookie拖到config.py,应该可以。(运行前先安装EdgeGPT的依赖pip install -r request_llm/requirements_newbing.txt

image

image

xiaosaaaa commented 1 year ago

效率太高了,牛的

zdevc commented 1 year ago

https://github.com/binary-husky/chatgpt_academic/tree/newbing 的newbing支持测试在newbing分支,把cookie拖到config.py,应该可以。(运行前先安装EdgeGPT的依赖pip install -r request_llm/requirements_newbing.txt

image

image

image 大佬NB,已经连接成功了。bridge_newbing.py预设的balanced语气有时候会拒绝回答问题,参数conversation_style="creative"选择创造模式似乎更合适一些。要像bing官方页面一样可以选择语气、展示它回答之前查询的关键字、引用列表和下一个问题建议就更好了(好像提太多需求了😂)

zdevc commented 1 year ago

连续提问多次以后可能出现以下报错,提问后前端对话区出现红字Error,不再显示新的消息,但是控制台可以看见报错和bing回答: `Traceback(most recent call last): File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/routes.py", line 395, in run_predict output = await app.get_blocks().process_api( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/blocks.py", line 1193, in process_api result = await self.call_function( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/blocks.py", line 930, in call_function prediction = await anyio.to_thread.run_sync( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/anyio/to_thread.py", line 31, in run_sync return await get_asynclib().run_sync_in_worker_thread( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 937, in run_sync_in_worker_thread return await future File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 867, in run result = context.run(func, args) File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/utils.py", line 491, in async_iteration return next(iterator) File "/home/zdevc/project/chatgpt_academic/toolbox.py", line 47, in decorated yield from f(txt_passon, llm_kwargs, plugin_kwargs, chatbot_with_cookie, history, system_prompt, args) File "/home/zdevc/project/chatgpt_academic/request_llm/bridge_all.py", line 240, in predict yield from method(inputs, llm_kwargs, *args, **kwargs) File "/home/zdevc/project/chatgpt_academic/request_llm/bridge_newbing.py", line 604, in predict for response in glm_handle.stream_chat(query=inputs, history=history_feedin, max_length=llm_kwargs['max_length'], top_p=llm_kwargs['top_p'], temperature=llm_kwargs['temperature']): File "/home/zdevc/project/chatgpt_academic/request_llm/bridge_newbing.py", line 535, in stream_chat res = self.parent.recv() File "/usr/lib/python3.10/multiprocessing/connection.py", line 251, in recv return _ForkingPickler.loads(buf.getbuffer()) EOFError: Ran out of input

Traceback (most recent call last): File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/routes.py", line 395, in run_predict output = await app.get_blocks().process_api( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/blocks.py", line 1193, in process_api result = await self.call_function( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/blocks.py", line 930, in call_function prediction = await anyio.to_thread.run_sync( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/anyio/to_thread.py", line 31, in run_sync return await get_asynclib().run_sync_in_worker_thread( File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 937, in run_sync_in_worker_thread return await future File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 867, in run result = context.run(func, args) File "/home/zdevc/project/chatgpt_academic/env/lib/python3.10/site-packages/gradio/utils.py", line 491, in async_iteration return next(iterator) File "/home/zdevc/project/chatgpt_academic/toolbox.py", line 47, in decorated yield from f(txt_passon, llm_kwargs, plugin_kwargs, chatbot_with_cookie, history, system_prompt, args) File "/home/zdevc/project/chatgpt_academic/request_llm/bridge_all.py", line 240, in predict yield from method(inputs, llm_kwargs, *args, **kwargs) File "/home/zdevc/project/chatgpt_academic/request_llm/bridge_newbing.py", line 604, in predict for response in glm_handle.stream_chat(query=inputs, history=history_feedin, max_length=llm_kwargs['max_length'], top_p=llm_kwargs['top_p'], temperature=llm_kwargs['temperature']): File "/home/zdevc/project/chatgpt_academic/request_llm/bridge_newbing.py", line 535, in stream_chat res = self.parent.recv() File "/usr/lib/python3.10/multiprocessing/connection.py", line 251, in recv return _ForkingPickler.loads(buf.getbuffer()) _pickle.UnpicklingError: invalid load key, '\x00'.`

binary-husky commented 1 year ago

https://github.com/binary-husky/chatgpt_academic/tree/newbing 的newbing支持测试在newbing分支,把cookie拖到config.py,应该可以。(运行前先安装EdgeGPT的依赖pip install -r request_llm/requirements_newbing.txtimage image

image 大佬NB,已经连接成功了。bridge_newbing.py预设的balanced语气有时候会拒绝回答问题,参数conversation_style="creative"选择创造模式似乎更合适一些。要像bing官方页面一样可以选择语气、展示它回答之前查询的关键字、引用列表和下一个问题建议就更好了(好像提太多需求了😂)

嗯嗯 conversation_style我也试试调整一下😂

binary-husky commented 1 year ago

@zdevc 好的,我们关注一下这个问题