lss233 / chatgpt-mirai-qq-bot

🚀 一键部署!真正的 AI 聊天机器人!支持ChatGPT、文心一言、讯飞星火、Bing、Bard、ChatGLM、POE,多账号,人设调教,虚拟女仆、图片渲染、语音发送 | 支持 QQ、Telegram、Discord、微信 等平台
GNU Affero General Public License v3.0
13.34k stars 1.56k forks source link

关于接入付费模型的个人一些经验分享 #917

Open Nothingness-Void opened 1 year ago

Nothingness-Void commented 1 year ago
如题
# 如果你是 Plus 用户,加入这一条,否则无法切换至 plus 模型 
paid=true
# 这里填写的内容由你的代理服务器提供
model=""

其中model="" 后面的参数除了可以填写教程里的两种 也可以填写如下三种 分别为 gpt-4-mobile IOS app所用的模型 无常规GPT-4的3小时25条限制 可以爽用 gpt-4-browsing 联网模式,目前调用的是bing搜索引擎 有3小时25条限制 gpt-4-plugins 插件模式 需先在网页版登录账号后选中插件才能使用 同样有3小时25条限制

Nothingness-Void commented 1 year ago
如题
# 如果你是 Plus 用户,加入这一条,否则无法切换至 plus 模型 
paid=true
# 这里填写的内容由你的代理服务器提供
model=""

其中model="" 后面的参数除了可以填写教程里的两种 也可以填写如下三种 分别为 gpt-4-mobile IOS app所用的模型 无常规GPT-4的3小时25条限制 可以爽用 gpt-4-browsing 联网模式,目前调用的是bing搜索引擎 有3小时25条限制 gpt-4-plugins 插件模式 需先在网页版登录账号后选中插件才能使用 同样有3小时25条限制

补充对比3.5和GPT4 mobile模型的弱智问答(黑底为3.5,QQ对话为4-mobile) dc81c6c7a7a9c1b8e926886360fa4b2 563d110ad7b406382875aa4e3734ea1 00d81c070310fca3019bea108b2c6ad be9d1f772624243f9aae804e89a2ac4

bbpp222006 commented 1 year ago

gpt-4-mobile、gpt-4-plugins正常使用,但是gpt-4-browsing时报错:

Traceback (most recent call last):

  File "/app/bot.py", line 32, in <module>
    main()
    └ <function main at 0x7f8050364c20>

  File "/app/platforms/onebot_bot.py", line 260, in main
    bot.run(host=config.onebot.reverse_ws_host, port=config.onebot.reverse_ws_port)
    │   │        │      │      │                     │      │      └ 6555
    │   │        │      │      │                     │      └ Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555)
    │   │        │      │      │                     └ Config(onebot=Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555), mirai=None, teleg...
    │   │        │      │      └ '0.0.0.0'
    │   │        │      └ Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555)
    │   │        └ Config(onebot=Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555), mirai=None, teleg...
    │   └ <function CQHttp.run at 0x7f8052d63a60>
    └ <aiocqhttp.CQHttp object at 0x7f8053d5d790>

  File "/usr/local/lib/python3.11/site-packages/aiocqhttp/__init__.py", line 222, in run
    self._server_app.run(host=host, port=port, *args, **kwargs)
    │    │           │        │          │      │       └ {'use_reloader': False}
    │    │           │        │          │      └ ()
    │    │           │        │          └ 6555
    │    │           │        └ '0.0.0.0'
    │    │           └ <function Quart.run at 0x7f8052d52020>
    │    └ <Quart ''>
    └ <aiocqhttp.CQHttp object at 0x7f8053d5d790>
  File "/usr/local/lib/python3.11/site-packages/quart/app.py", line 1423, in run
    loop.run_until_complete(asyncio.gather(*tasks))
    │    │                  │       │       └ [<Task pending name='Task-1' coro=<serve() running at /usr/local/lib/python3.11/site-packages/hypercorn/asyncio/__init__.py:4...
    │    │                  │       └ <function gather at 0x7f8056107920>
    │    │                  └ <module 'asyncio' from '/usr/local/lib/python3.11/asyncio/__init__.py'>
    │    └ <function BaseEventLoop.run_until_complete at 0x7f8056118680>
    └ <_UnixSelectorEventLoop running=True closed=False debug=False>
  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 640, in run_until_complete
    self.run_forever()
    │    └ <function BaseEventLoop.run_forever at 0x7f80561185e0>
    └ <_UnixSelectorEventLoop running=True closed=False debug=False>
  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 607, in run_forever
    self._run_once()
    │    └ <function BaseEventLoop._run_once at 0x7f805611a3e0>
    └ <_UnixSelectorEventLoop running=True closed=False debug=False>
  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1922, in _run_once
    handle._run()
    │      └ <function Handle._run at 0x7f805606c900>
    └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>
  File "/usr/local/lib/python3.11/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
    │    │            │    │           │    └ <member '_args' of 'Handle' objects>
    │    │            │    │           └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>
    │    │            │    └ <member '_callback' of 'Handle' objects>
    │    │            └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>
    │    └ <member '_context' of 'Handle' objects>
    └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>

> File "/app/universal.py", line 191, in request
    async for rendered in task:
                          └ <async_generator object ConversationContext.ask at 0x7f80503d9cc0>

  File "/app/conversation.py", line 151, in ask
    async for item in self.adapter.ask(prompt):
                      │    │       │   └ '在eve国服市场中心寻找三钛合金的价格,并将最新的三个订单告诉我'
                      │    │       └ <function ChatGPTWebAdapter.ask at 0x7f80525c59e0>
                      │    └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>
                      └ <conversation.ConversationContext object at 0x7f80502754d0>

  File "/app/adapter/chatgpt/web.py", line 111, in ask
    raise e

  File "/app/adapter/chatgpt/web.py", line 71, in ask
    async for resp in self.bot.ask(prompt, self.conversation_id, self.parent_id):
                      │    │   │   │       │    │                │    └ '6a4995f8-8d81-4c48-8fc7-d2a10e8d8bcb'
                      │    │   │   │       │    │                └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>
                      │    │   │   │       │    └ 'cdfba94f-ee69-4ff8-98e8-975f4914e691'
                      │    │   │   │       └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>
                      │    │   │   └ '在eve国服市场中心寻找三钛合金的价格,并将最新的三个订单告诉我'
                      │    │   └ <function ChatGPTBrowserChatbot.ask at 0x7f8053808220>
                      │    └ <chatbot.chatgpt.ChatGPTBrowserChatbot object at 0x7f80503761d0 [unlocked]>
                      └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>

  File "/app/chatbot/chatgpt.py", line 59, in ask
    async for r in self.bot.ask(prompt=prompt, conversation_id=conversation_id, parent_id=parent_id):
                   │    │   │          │                       │                          └ '6a4995f8-8d81-4c48-8fc7-d2a10e8d8bcb'
                   │    │   │          │                       └ 'cdfba94f-ee69-4ff8-98e8-975f4914e691'
                   │    │   │          └ '在eve国服市场中心寻找三钛合金的价格,并将最新的三个订单告诉我'
                   │    │   └ <function AsyncChatbot.ask at 0x7f8054108cc0>
                   │    └ <revChatGPT.V1.AsyncChatbot object at 0x7f805036bc90>
                   └ <chatbot.chatgpt.ChatGPTBrowserChatbot object at 0x7f80503761d0 [unlocked]>

  File "/usr/local/lib/python3.11/site-packages/revChatGPT/V1.py", line 760, in ask
    message = line["message"]["content"]["parts"][0]
              └ {'message': {'id': '4b360781-8cfa-4520-8faf-e0cae027db3b', 'author': {'role': 'assistant', 'name': None, 'metadata': {}}, 'cr...

KeyError: 'parts'

搭建环境是linux+docker+onebot,使用反向ws接受onebot的连接

Nothingness-Void commented 1 year ago

gpt-4-mobile、gpt-4-plugins正常使用,但是gpt-4-browsing时报错:

Traceback (most recent call last):

  File "/app/bot.py", line 32, in <module>
    main()
    └ <function main at 0x7f8050364c20>

  File "/app/platforms/onebot_bot.py", line 260, in main
    bot.run(host=config.onebot.reverse_ws_host, port=config.onebot.reverse_ws_port)
    │   │        │      │      │                     │      │      └ 6555
    │   │        │      │      │                     │      └ Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555)
    │   │        │      │      │                     └ Config(onebot=Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555), mirai=None, teleg...
    │   │        │      │      └ '0.0.0.0'
    │   │        │      └ Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555)
    │   │        └ Config(onebot=Onebot(qq=xxxxxxxxxxx, manager_qq=xxxxxxxxxxx, reverse_ws_host='0.0.0.0', reverse_ws_port=6555), mirai=None, teleg...
    │   └ <function CQHttp.run at 0x7f8052d63a60>
    └ <aiocqhttp.CQHttp object at 0x7f8053d5d790>

  File "/usr/local/lib/python3.11/site-packages/aiocqhttp/__init__.py", line 222, in run
    self._server_app.run(host=host, port=port, *args, **kwargs)
    │    │           │        │          │      │       └ {'use_reloader': False}
    │    │           │        │          │      └ ()
    │    │           │        │          └ 6555
    │    │           │        └ '0.0.0.0'
    │    │           └ <function Quart.run at 0x7f8052d52020>
    │    └ <Quart ''>
    └ <aiocqhttp.CQHttp object at 0x7f8053d5d790>
  File "/usr/local/lib/python3.11/site-packages/quart/app.py", line 1423, in run
    loop.run_until_complete(asyncio.gather(*tasks))
    │    │                  │       │       └ [<Task pending name='Task-1' coro=<serve() running at /usr/local/lib/python3.11/site-packages/hypercorn/asyncio/__init__.py:4...
    │    │                  │       └ <function gather at 0x7f8056107920>
    │    │                  └ <module 'asyncio' from '/usr/local/lib/python3.11/asyncio/__init__.py'>
    │    └ <function BaseEventLoop.run_until_complete at 0x7f8056118680>
    └ <_UnixSelectorEventLoop running=True closed=False debug=False>
  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 640, in run_until_complete
    self.run_forever()
    │    └ <function BaseEventLoop.run_forever at 0x7f80561185e0>
    └ <_UnixSelectorEventLoop running=True closed=False debug=False>
  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 607, in run_forever
    self._run_once()
    │    └ <function BaseEventLoop._run_once at 0x7f805611a3e0>
    └ <_UnixSelectorEventLoop running=True closed=False debug=False>
  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1922, in _run_once
    handle._run()
    │      └ <function Handle._run at 0x7f805606c900>
    └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>
  File "/usr/local/lib/python3.11/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
    │    │            │    │           │    └ <member '_args' of 'Handle' objects>
    │    │            │    │           └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>
    │    │            │    └ <member '_callback' of 'Handle' objects>
    │    │            └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>
    │    └ <member '_context' of 'Handle' objects>
    └ <Handle <TaskStepMethWrapper object at 0x7f8050348070>()>

> File "/app/universal.py", line 191, in request
    async for rendered in task:
                          └ <async_generator object ConversationContext.ask at 0x7f80503d9cc0>

  File "/app/conversation.py", line 151, in ask
    async for item in self.adapter.ask(prompt):
                      │    │       │   └ '在eve国服市场中心寻找三钛合金的价格,并将最新的三个订单告诉我'
                      │    │       └ <function ChatGPTWebAdapter.ask at 0x7f80525c59e0>
                      │    └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>
                      └ <conversation.ConversationContext object at 0x7f80502754d0>

  File "/app/adapter/chatgpt/web.py", line 111, in ask
    raise e

  File "/app/adapter/chatgpt/web.py", line 71, in ask
    async for resp in self.bot.ask(prompt, self.conversation_id, self.parent_id):
                      │    │   │   │       │    │                │    └ '6a4995f8-8d81-4c48-8fc7-d2a10e8d8bcb'
                      │    │   │   │       │    │                └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>
                      │    │   │   │       │    └ 'cdfba94f-ee69-4ff8-98e8-975f4914e691'
                      │    │   │   │       └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>
                      │    │   │   └ '在eve国服市场中心寻找三钛合金的价格,并将最新的三个订单告诉我'
                      │    │   └ <function ChatGPTBrowserChatbot.ask at 0x7f8053808220>
                      │    └ <chatbot.chatgpt.ChatGPTBrowserChatbot object at 0x7f80503761d0 [unlocked]>
                      └ <adapter.chatgpt.web.ChatGPTWebAdapter object at 0x7f8050275350>

  File "/app/chatbot/chatgpt.py", line 59, in ask
    async for r in self.bot.ask(prompt=prompt, conversation_id=conversation_id, parent_id=parent_id):
                   │    │   │          │                       │                          └ '6a4995f8-8d81-4c48-8fc7-d2a10e8d8bcb'
                   │    │   │          │                       └ 'cdfba94f-ee69-4ff8-98e8-975f4914e691'
                   │    │   │          └ '在eve国服市场中心寻找三钛合金的价格,并将最新的三个订单告诉我'
                   │    │   └ <function AsyncChatbot.ask at 0x7f8054108cc0>
                   │    └ <revChatGPT.V1.AsyncChatbot object at 0x7f805036bc90>
                   └ <chatbot.chatgpt.ChatGPTBrowserChatbot object at 0x7f80503761d0 [unlocked]>

  File "/usr/local/lib/python3.11/site-packages/revChatGPT/V1.py", line 760, in ask
    message = line["message"]["content"]["parts"][0]
              └ {'message': {'id': '4b360781-8cfa-4520-8faf-e0cae027db3b', 'author': {'role': 'assistant', 'name': None, 'metadata': {}}, 'cr...

KeyError: 'parts'

搭建环境是linux+docker+onebot,使用反向ws接受onebot的连接

我也不太清楚 可能是联网模式的回复格式跟别的不一样? 因为网页版用的时候联网模式是外部模型读取你的prompt然后简化完再发给内部模型

bobandbrony commented 1 year ago

gpt-4-mobile只能开plus用吗,没有苹果设备

Nothingness-Void commented 1 year ago

gpt-4-mobile只能开plus用吗,没有苹果设备

对,只能开plus用

bbpp222006 commented 1 year ago

应该是的,revChatGPT在6.0才更新了gpt-4-browsing的支持,这是相关的issue:https://github.com/acheong08/ChatGPT/issues/1375 这个项目的requirements.txt还是revChatGPT==4.2.3,等官方更新吧

pasdy1 commented 1 year ago

怎么样样使用不同的插件?每次都需要去网页选择插件?

Nothingness-Void commented 1 year ago

怎么样样使用不同的插件?每次都需要去网页选择插件?

是的,不过现在好用的插件也就那么几个 我是基本不怎么换插件的

Prosat commented 1 year ago

请问一下,我使用了gpt-4-plugins,但是在用机器人发送请求后,网页上显示没有启用的插件,模型已经是gpt-4-plugins了,这个是我哪里操作错了吗?

Nothingness-Void commented 1 year ago

请问一下,我使用了gpt-4-plugins,但是在用机器人发送请求后,网页上显示没有启用的插件,模型已经是gpt-4-plugins了,这个是我哪里操作错了吗?

貌似插件是不能用的