lss233 / chatgpt-mirai-qq-bot

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

[BUG] 'FreeTypeFont' object has no attribute 'getsize' #1088

Closed Ajwyunsx closed 10 months ago

Ajwyunsx commented 1 year ago

提交 issue 前,请先确认:

表现
描述 BUG 的表现情况 出现故障!如果这个问题持续出现,请和我说“重置会话” 来开启一段新的会话,或者发送 “回滚对话” 来回溯到上一条对话,你上一条说的我就当作没看见。 原因:'FreeTypeFont' object has no attribute 'getsize' 运行环境:

复现步骤
描述你是如何触发这个 BUG 的

  1. Go to '你可以随便写一个Python吗 就是小游戏,贪吃蛇那样'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

预期行为
描述你认为正常情况下应该看见的情况 回复一些大的就这样 gpt3.5 截图
相关日志、聊天记录的截图,没有可跳过 Screenshot_20230725_025041

其他内容
此处填写其他内容,没有可跳过

ssfxx0923 commented 1 year ago

同问

Haibersut commented 1 year ago

日记不完整

acbogeh commented 1 year ago

2023-08-17 17:33:17.966 | ERROR | universal:handle_message:297 - 'FreeTypeFont' object has no attribute 'getsize' Traceback (most recent call last):

File "/root/chatgpt-mirai-qq-bot-browser-version/bot.py", line 58, in loop.run_until_complete(asyncio.gather(*bots)) │ │ │ │ └ [<Task pending name='Task-2' coro=<start_task() running at /root/chatgpt-mirai-qq-bot-browser-version/platforms/onebot_bot.py... │ │ │ └ <function gather at 0x7f6d39c537e0> │ │ └ <module 'asyncio' from '/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/init.py'> │ └ <function BaseEventLoop.run_until_complete at 0x7f6d39c68680> └ <_UnixSelectorEventLoop running=True closed=False debug=False>

File "/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/base_events.py", line 640, in run_until_complete self.run_forever() │ └ <function BaseEventLoop.run_forever at 0x7f6d39c685e0> └ <_UnixSelectorEventLoop running=True closed=False debug=False> File "/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/base_events.py", line 607, in run_forever self._run_once() │ └ <function BaseEventLoop._run_once at 0x7f6d39c6a3e0> └ <_UnixSelectorEventLoop running=True closed=False debug=False> File "/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/base_events.py", line 1922, in _run_once handle._run() │ └ <function Handle._run at 0x7f6d3a37f240> └ <Handle Task.task_wakeup()> File "/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/events.py", line 80, in _run self._context.run(self._callback, *self._args) │ │ │ │ │ └ <member '_args' of 'Handle' objects> │ │ │ │ └ <Handle Task.task_wakeup()> │ │ │ └ <member '_callback' of 'Handle' objects> │ │ └ <Handle Task.task_wakeup()> │ └ <member '_context' of 'Handle' objects> └ <Handle Task.task_wakeup()>

File "/root/chatgpt-mirai-qq-bot-browser-version/platforms/http_service.py", line 106, in process_request await handle_message( └ <function handle_message at 0x7f6cf2f0f060>

File "/root/chatgpt-mirai-qq-bot-browser-version/universal.py", line 271, in handle_message await action(session_id, message.strip(), conversation_context, respond) │ │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ │ └ None │ │ │ └ <method 'strip' of 'str' objects> │ │ └ '写一段快排python代码' │ └ 'friend-bai2he2han2qiu1' └ <function handle_message..wrap_request..call at 0x7f6cf2f2fc40>

File "/root/chatgpt-mirai-qq-bot-browser-version/universal.py", line 53, in call await m.handle_request(session_id, message, respond, conversation_context, n) │ │ │ │ │ │ └ <function handle_message..wrap_request..call at 0x7f6cf2f2fba0> │ │ │ │ │ └ None │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ '写一段快排python代码' │ │ └ 'friend-bai2he2han2qiu1' │ └ <function MiddlewareConcurrentLock.handle_request at 0x7f6cf2f0f740> └ <middlewares.concurrentlock.MiddlewareConcurrentLock object at 0x7f6cf2f095d0>

File "/root/chatgpt-mirai-qq-bot-browser-version/middlewares/concurrentlock.py", line 43, in handle_request await action(session_id, prompt, conversation_context, respond) │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ None │ │ └ '写一段快排python代码' │ └ 'friend-bai2he2han2qiu1' └ <function handle_message..wrap_request..call at 0x7f6cf2f2fba0>

File "/root/chatgpt-mirai-qq-bot-browser-version/universal.py", line 53, in call await m.handle_request(session_id, message, respond, conversation_context, n) │ │ │ │ │ │ └ <function handle_message..wrap_request..call at 0x7f6cf2f2fb00> │ │ │ │ │ └ None │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ '写一段快排python代码' │ │ └ 'friend-bai2he2han2qiu1' │ └ <function Middleware.handle_request at 0x7f6cf2f0e980> └ <middlewares.baiducloud.MiddlewareBaiduCloud object at 0x7f6cf2f09950>

File "/root/chatgpt-mirai-qq-bot-browser-version/middlewares/middleware.py", line 9, in handle_request await action(session_id, prompt, conversation_context, respond) │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ None │ │ └ '写一段快排python代码' │ └ 'friend-bai2he2han2qiu1' └ <function handle_message..wrap_request..call at 0x7f6cf2f2fb00>

File "/root/chatgpt-mirai-qq-bot-browser-version/universal.py", line 53, in call await m.handle_request(session_id, message, respond, conversation_context, n) │ │ │ │ │ │ └ <function handle_message..wrap_request..call at 0x7f6cf2f2fa60> │ │ │ │ │ └ None │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ '写一段快排python代码' │ │ └ 'friend-bai2he2han2qiu1' │ └ <function MiddlewareRatelimit.handle_request at 0x7f6cf2f0ec00> └ <middlewares.ratelimit.MiddlewareRatelimit object at 0x7f6cf2f09590>

File "/root/chatgpt-mirai-qq-bot-browser-version/middlewares/ratelimit.py", line 23, in handle_request await action(session_id, prompt, conversation_context, respond) │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ None │ │ └ '写一段快排python代码' │ └ 'friend-bai2he2han2qiu1' └ <function handle_message..wrap_request..call at 0x7f6cf2f2fa60>

File "/root/chatgpt-mirai-qq-bot-browser-version/universal.py", line 53, in call await m.handle_request(session_id, message, respond, conversation_context, n) │ │ │ │ │ │ └ <function handle_message..request at 0x7f6cf2f2f920> │ │ │ │ │ └ None │ │ │ │ └ <function handle_message..respond at 0x7f6cf2f2f880> │ │ │ └ '写一段快排python代码' │ │ └ 'friend-bai2he2han2qiu1' │ └ <function MiddlewareTimeout.handle_request at 0x7f6cf2f0f880> └ <middlewares.timeout.MiddlewareTimeout object at 0x7f6cf2f098d0>

File "/root/chatgpt-mirai-qq-bot-browser-version/middlewares/timeout.py", line 40, in handle_request raise e

File "/root/chatgpt-mirai-qq-bot-browser-version/middlewares/timeout.py", line 27, in handle_request await asyncio.wait_for(coro_task, config.response.max_timeout) │ │ │ │ │ └ 600.0 │ │ │ │ └ Response(mode='mixed', buffer_delay=15, default_ai='slack-claude', error_format='出现故障!如果这个问题持续出现,请和我说“重置会话” 来开启一段新的会话,或者发送 “回... │ │ │ └ Config(onebot=Onebot(manager_qq=14757822, reverse_ws_host='0.0.0.0', reverse_ws_port=8566), mirai=None, telegram=None, discor... │ │ └ <Task finished name='Task-24' coro=<handle_message..request() done, defined at /root/chatgpt-mirai-qq-bot-browser-ver... │ └ <function wait_for at 0x7f6d39c53240> └ <module 'asyncio' from '/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/init.py'>

File "/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/tasks.py", line 479, in wait_for return fut.result() │ └ <method 'result' of '_asyncio.Task' objects> └ <Task finished name='Task-24' coro=<handle_message..request() done, defined at /root/chatgpt-mirai-qq-bot-browser-ver...

File "/root/chatgpt-mirai-qq-bot-browser-version/universal.py", line 224, in request async for rendered in task: │ └ <async_generator object retry..decorator..wrapper at 0x7f6cf2e82180> └ None

File "/root/chatgpt-mirai-qq-bot-browser-version/utils/retry.py", line 21, in wrapper async for result in func(*args, **kwargs): │ │ │ └ {'prompt': '写一段快排python代码', 'chain': MessageChain([Plain(text='Unsupported')]), 'name': 'bai2he2han2qiu1'} │ │ └ (<conversation.ConversationContext object at 0x7f6cf2f5e890>,) │ └ <function ConversationContext.ask at 0x7f6cf2f0e200> └ None

File "/root/chatgpt-mirai-qq-bot-browser-version/conversation.py", line 202, in ask yield await self.renderer.result() │ │ └ <function MarkdownImageRenderer.result at 0x7f6cf2f0c7c0> │ └ <renderer.renderer.MarkdownImageRenderer object at 0x7f6cf2f5f550> └ <conversation.ConversationContext object at 0x7f6cf2f5e890>

File "/root/chatgpt-mirai-qq-bot-browser-version/renderer/renderer.py", line 66, in result return await self.parse(await self.parent.result()) │ │ │ │ └ <function BufferedContentMerger.result at 0x7f6cf318b100> │ │ │ └ <renderer.merger.BufferedContentMerger object at 0x7f6cf2f5f350> │ │ └ <renderer.renderer.MarkdownImageRenderer object at 0x7f6cf2f5f550> │ └ <function MarkdownImageRenderer.parse at 0x7f6cf2f0c680> └ <renderer.renderer.MarkdownImageRenderer object at 0x7f6cf2f5f550>

File "/root/chatgpt-mirai-qq-bot-browser-version/renderer/renderer.py", line 60, in parse return MessageChain([await to_image(everything)]) if everything else None │ │ │ └ '好的,这里是快速排序算法的Python实现:\n\npython\ndef quicksort(arr):\n if len(arr) <= 1:\n return arr\n pivot = arr[len(arr... │ │ └ '好的,这里是快速排序算法的Python实现:\n\npython\ndef quicksort(arr):\n if len(arr) <= 1:\n return arr\n pivot = arr[len(arr... │ └ <function to_image at 0x7f6cf2f0c220> └ <class 'graia.ariadne.message.chain.MessageChain'>

File "/root/chatgpt-mirai-qq-bot-browser-version/utils/text_to_img.py", line 365, in to_image img = await text_to_image(text=str(text)) │ └ '好的,这里是快速排序算法的Python实现:\n\n```python\ndef quicksort(arr):\n if len(arr) <= 1:\n return arr\n pivot = arr[len(arr... └ <function text_to_image at 0x7f6cf2f0c180>

File "/root/chatgpt-mirai-qq-bot-browser-version/utils/text_to_img.py", line 359, in text_to_image image = await asyncio.get_event_loop().run_in_executor(None, text_to_image_raw, text) │ │ │ └ '好的,这里是快速排序算法的Python实现:\n\n```python\ndef quicksort(arr):\n if len(arr) <= 1:\n return arr\n pivot = arr[len(arr... │ │ └ <function text_to_image_raw at 0x7f6cf318bc40> │ └ └ <module 'asyncio' from '/root/miniconda3/envs/qqbot/lib/python3.11/asyncio/init.py'>

File "/root/miniconda3/envs/qqbot/lib/python3.11/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) │ │ └ None │ └ None └ None

File "/root/chatgpt-mirai-qq-bot-browser-version/utils/text_to_img.py", line 228, in text_to_image_raw text_height = font.getsize(text)[1] │ └ '好的,这里是快速排序算法的Python实现:\n\n```python\ndef quicksort(arr):\n if len(arr) <= 1:\n return arr\n pivot = arr[len(arr... └ <PIL.ImageFont.FreeTypeFont object at 0x7f6cf0892510>

AttributeError: 'FreeTypeFont' object has no attribute 'getsize' 2023-08-17 17:33:17.972 | INFO | platforms.http_service:response:86 - Got response msg -> <class 'str'> -> 出现故障!如果这个问题持续出现,请和我说“重置会话” 来开启一段新的会话,或者发送 “回滚对话” 来回溯到上一条对话,你上一条说的我就当作没看见。 原因:'FreeTypeFont' object has no attribute 'getsize' 2023-08-17 17:33:17.972 | DEBUG | platforms.http_service:process_request:115 - Bot request 1692264780167 done. 2023-08-17 17:33:18.217 | DEBUG | platforms.http_service:v2_chat_response:151 - Bot request 1692264780167 response -> {"result": "DONE", "message": ["\u51fa\u73b0\u6545\u969c\uff01\u5982\u679c\u8fd9\u4e2a\u95ee\u9898\u

jgc9527 commented 1 year ago

+1 同问

sanjinbot commented 12 months ago

同问

zsanjin-p commented 12 months ago

我也是这样,救命 啊 出现故障!如果这个问题持续出现,请和我说“重置会话” 来开启一段新的会话,或者发送 “回滚对话” 来回溯到上一条对话,你上一条说的我就当作没看见。 原因:'FreeTypeFont' object has no attribute 'getsize'

的消息: 鲲 (-2028098618) chatgpt-qq-chatgpt-1 | 2023-09-19 14:06:23.823 | DEBUG | adapter.ms.bing:ask:113 - [Bing AI 响应] 鲲是一种传说中的神兽,它的形象是一条巨大的鱼,能够化为龙。鲲的名字来源于《庄子·逍遥游》中的一句话:“北冥有鱼,其名为鲲。鲲之大,不知其几千里也。” 鲲的故事在中国文化中有着深远的影响,比如《山海经》中的鲲鹏、《西游记》中的鲤鱼跳龙门、《封神演义》中的哪吒三太子等。鲲的形象也被用于各种艺术作品中,如诗歌、绘画、雕塑、动漫等。 chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | : [庄子·逍遥游] chatgpt-qq-chatgpt-1 | : [鲲 (神话)] chatgpt-qq-chatgpt-1 | 猜你想问:
chatgpt-qq-chatgpt-1 | 鲲的故事有哪些?
chatgpt-qq-chatgpt-1 |
你能画一幅鲲的图片吗?
chatgpt-qq-chatgpt-1 | 还有其他神兽吗?
chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | 剩余回复数:4 / 30 chatgpt-qq-chatgpt-1 | 2023-09-19 14:06:24.263 | ERROR | utils.text_to_img:text_to_image:350 - chatgpt-qq-chatgpt-1 | No wkhtmltoimage executable found: ".\wkhtmltoimage.EXE" chatgpt-qq-chatgpt-1 | If this file exists please check that this process can read it. chatgpt-qq-chatgpt-1 | Otherwise please install wkhtmltopdf - http://wkhtmltopdf.org chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 |
chatgpt-qq-chatgpt-1 | Traceback (most recent call last): chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/site-packages/imgkit/config.py", line 52, in get_wkhtmltoimage chatgpt-qq-chatgpt-1 | with open(self.wkhtmltoimage): chatgpt-qq-chatgpt-1 | │ └ '.\wkhtmltoimage.EXE' chatgpt-qq-chatgpt-1 | └ <imgkit.config.Config object at 0x7f7dbad23fd0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | FileNotFoundError: [Errno 2] No such file or directory: '.\wkhtmltoimage.EXE' chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | The above exception was the direct cause of the following exception: chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | Traceback (most recent call last): chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/bot.py", line 58, in chatgpt-qq-chatgpt-1 | loop.run_until_complete(asyncio.gather(
bots)) chatgpt-qq-chatgpt-1 | │ │ │ │ └ [<Task pending name='Task-4' coro=<start_task() running at /app/platforms/onebot_bot.py:356> wait_for=<_GatheringFuture pendi... chatgpt-qq-chatgpt-1 | │ │ │ └ <function gather at 0x7f7e0499a3b0> chatgpt-qq-chatgpt-1 | │ │ └ <module 'asyncio' from '/usr/local/lib/python3.10/asyncio/init.py'> chatgpt-qq-chatgpt-1 | │ └ <function BaseEventLoop.run_until_complete at 0x7f7e049baf80> chatgpt-qq-chatgpt-1 | └ <_UnixSelectorEventLoop running=True closed=False debug=False> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/base_events.py", line 636, in run_until_complete chatgpt-qq-chatgpt-1 | self.run_forever() chatgpt-qq-chatgpt-1 | │ └ <function BaseEventLoop.run_forever at 0x7f7e049baef0> chatgpt-qq-chatgpt-1 | └ <_UnixSelectorEventLoop running=True closed=False debug=False> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/base_events.py", line 603, in run_forever chatgpt-qq-chatgpt-1 | self._run_once() chatgpt-qq-chatgpt-1 | │ └ <function BaseEventLoop._run_once at 0x7f7e049bca60> chatgpt-qq-chatgpt-1 | └ <_UnixSelectorEventLoop running=True closed=False debug=False> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/base_events.py", line 1909, in _run_once chatgpt-qq-chatgpt-1 | handle._run() chatgpt-qq-chatgpt-1 | │ └ <function Handle._run at 0x7f7e0496c430> chatgpt-qq-chatgpt-1 | └ <Handle Task.task_wakeup(<Future finis...n\n ')>)> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/events.py", line 80, in _run chatgpt-qq-chatgpt-1 | self._context.run(self._callback, self._args) chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ <member '_args' of 'Handle' objects> chatgpt-qq-chatgpt-1 | │ │ │ │ └ <Handle Task.task_wakeup(<Future finis...n\n ')>)> chatgpt-qq-chatgpt-1 | │ │ │ └ <member '_callback' of 'Handle' objects> chatgpt-qq-chatgpt-1 | │ │ └ <Handle Task.task_wakeup(<Future finis...n\n ')>)> chatgpt-qq-chatgpt-1 | │ └ <member '_context' of 'Handle' objects> chatgpt-qq-chatgpt-1 | └ <Handle Task.task_wakeup(<Future finis...n\n ')>)> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/conversation.py", line 204, in ask chatgpt-qq-chatgpt-1 | yield await self.renderer.result() chatgpt-qq-chatgpt-1 | │ │ └ <function MixedContentMessageChainRenderer.result at 0x7f7dbbae1360> chatgpt-qq-chatgpt-1 | │ └ <renderer.renderer.MixedContentMessageChainRenderer object at 0x7f7dbad23b50> chatgpt-qq-chatgpt-1 | └ <conversation.ConversationContext object at 0x7f7dbbb097e0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/renderer/renderer.py", line 123, in result chatgpt-qq-chatgpt-1 | return await self.parse(await self.parent.result()) chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function LengthContentMerger.result at 0x7f7dcc2f1360> chatgpt-qq-chatgpt-1 | │ │ │ └ <renderer.merger.LengthContentMerger object at 0x7f7dbbb09de0> chatgpt-qq-chatgpt-1 | │ │ └ <renderer.renderer.MixedContentMessageChainRenderer object at 0x7f7dbad23b50> chatgpt-qq-chatgpt-1 | │ └ <function MixedContentMessageChainRenderer.parse at 0x7f7dbbae1240> chatgpt-qq-chatgpt-1 | └ <renderer.renderer.MixedContentMessageChainRenderer object at 0x7f7dbad23b50> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/renderer/renderer.py", line 113, in parse chatgpt-qq-chatgpt-1 | holds.append(await to_image(rich_blocks)) chatgpt-qq-chatgpt-1 | │ │ │ └ ': [鲲 (神话)]\n猜你想问: \n 鲲的故事有哪些? \n 你能画一幅鲲的图片吗? \n 还有其他神兽吗? \n\n剩余回复数:4 / 30 \n' chatgpt-qq-chatgpt-1 | │ │ └ <function to_image at 0x7f7dbbae0670> chatgpt-qq-chatgpt-1 | │ └ <method 'append' of 'list' objects> chatgpt-qq-chatgpt-1 | └ [Plain(text='鲲是一种传说中的神兽,它的形象是一条巨大的鱼,能够化为龙。鲲的名字来源于《庄子·逍遥游》中的一句话:“北冥有鱼,其名为鲲。鲲之大,不知其几千里也。” 鲲的故事在中国文化中有着深远的影响,比如《山海经》中的鲲鹏、《西游记》中的... chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/utils/text_to_img.py", line 365, in to_image chatgpt-qq-chatgpt-1 | img = await text_to_image(text=str(text)) chatgpt-qq-chatgpt-1 | │ └ ': [鲲 (神话)]\n猜你想问: \n 鲲的故事有哪些? \n 你能画一幅鲲的图片吗? \n 还有其他神兽吗? \n\n剩余回复数:4 / 30 \n' chatgpt-qq-chatgpt-1 | └ <function text_to_image at 0x7f7dbbae05e0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | > File "/app/utils/text_to_img.py", line 338, in text_to_image chatgpt-qq-chatgpt-1 | ok = await asyncio.get_event_loop().run_in_executor(None, imgkit.from_file, input_file, chatgpt-qq-chatgpt-1 | │ │ │ │ └ <_io.StringIO object at 0x7f7dbbb1e440> chatgpt-qq-chatgpt-1 | │ │ │ └ <function from_file at 0x7f7dcc2f1b40> chatgpt-qq-chatgpt-1 | │ │ └ <module 'imgkit' from '/usr/local/lib/python3.10/site-packages/imgkit/init.py'> chatgpt-qq-chatgpt-1 | │ └ chatgpt-qq-chatgpt-1 | └ <module 'asyncio' from '/usr/local/lib/python3.10/asyncio/init.py'> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run chatgpt-qq-chatgpt-1 | result = self.fn(self.args, *self.kwargs) chatgpt-qq-chatgpt-1 | │ │ └ None chatgpt-qq-chatgpt-1 | │ └ None chatgpt-qq-chatgpt-1 | └ None chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/site-packages/imgkit/api.py", line 62, in from_file chatgpt-qq-chatgpt-1 | rtn = IMGKit( chatgpt-qq-chatgpt-1 | └ <class 'imgkit.imgkit.IMGKit'> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/site-packages/imgkit/imgkit.py", line 36, in init chatgpt-qq-chatgpt-1 | self.wkhtmltoimage = self.config.get_wkhtmltoimage() chatgpt-qq-chatgpt-1 | │ │ │ └ <function Config.get_wkhtmltoimage at 0x7f7dcc2f1990> chatgpt-qq-chatgpt-1 | │ │ └ <imgkit.config.Config object at 0x7f7dbad23fd0> chatgpt-qq-chatgpt-1 | │ └ <imgkit.imgkit.IMGKit object at 0x7f7dbad41690> chatgpt-qq-chatgpt-1 | └ <imgkit.imgkit.IMGKit object at 0x7f7dbad41690> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/site-packages/imgkit/config.py", line 55, in get_wkhtmltoimage chatgpt-qq-chatgpt-1 | raise_from(OSError(wkhtmltoimage_error), io_error) chatgpt-qq-chatgpt-1 | │ └ '\nNo wkhtmltoimage executable found: ".\wkhtmltoimage.EXE"\nIf this file exists please check that this process can read it.... chatgpt-qq-chatgpt-1 | └ <function raise_from at 0x7f7dd44f5ea0> chatgpt-qq-chatgpt-1 | File "", line 3, in raise_from chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | OSError: chatgpt-qq-chatgpt-1 | No wkhtmltoimage executable found: ".\wkhtmltoimage.EXE" chatgpt-qq-chatgpt-1 | If this file exists please check that this process can read it. chatgpt-qq-chatgpt-1 | Otherwise please install wkhtmltopdf - http://wkhtmltopdf.org chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 |
chatgpt-qq-chatgpt-1 | 2023-09-19 14:06:24.370 | ERROR | middlewares.timeout:handle_request:36 - 发生错误: 'FreeTypeFont' object has no attribute 'getsize' chatgpt-qq-gocqhttp-1 | [2023-09-19 22:06:24] [WARNING]: 获取sso sign时出现错误: Post "http://127.0.0.1:8080/sign": dial tcp 127.0.0.1:8080: connect: connection refused server: http://127.0.0.1:8080/ chatgpt-qq-chatgpt-1 | 2023-09-19 14:06:24.372 | ERROR | universal:handle_message:297 - 'FreeTypeFont' object has no attribute 'getsize' chatgpt-qq-chatgpt-1 | Traceback (most recent call last): chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/bot.py", line 58, in chatgpt-qq-chatgpt-1 | loop.run_until_complete(asyncio.gather(
bots)) chatgpt-qq-chatgpt-1 | │ │ │ │ └ [<Task pending name='Task-4' coro=<start_task() running at /app/platforms/onebot_bot.py:356> wait_for=<_GatheringFuture pendi... chatgpt-qq-chatgpt-1 | │ │ │ └ <function gather at 0x7f7e0499a3b0> chatgpt-qq-chatgpt-1 | │ │ └ <module 'asyncio' from '/usr/local/lib/python3.10/asyncio/init.py'> chatgpt-qq-chatgpt-1 | │ └ <function BaseEventLoop.run_until_complete at 0x7f7e049baf80> chatgpt-qq-chatgpt-1 | └ <_UnixSelectorEventLoop running=True closed=False debug=False> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/base_events.py", line 636, in run_until_complete chatgpt-qq-chatgpt-1 | self.run_forever() chatgpt-qq-chatgpt-1 | │ └ <function BaseEventLoop.run_forever at 0x7f7e049baef0> chatgpt-qq-chatgpt-1 | └ <_UnixSelectorEventLoop running=True closed=False debug=False> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/base_events.py", line 603, in run_forever chatgpt-qq-chatgpt-1 | self._run_once() chatgpt-qq-chatgpt-1 | │ └ <function BaseEventLoop._run_once at 0x7f7e049bca60> chatgpt-qq-chatgpt-1 | └ <_UnixSelectorEventLoop running=True closed=False debug=False> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/base_events.py", line 1909, in _run_once chatgpt-qq-chatgpt-1 | handle._run() chatgpt-qq-chatgpt-1 | │ └ <function Handle._run at 0x7f7e0496c430> chatgpt-qq-chatgpt-1 | └ <Handle Task.task_wakeup()> chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/events.py", line 80, in _run chatgpt-qq-chatgpt-1 | self._context.run(self._callback, *self._args) chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ <member '_args' of 'Handle' objects> chatgpt-qq-chatgpt-1 | │ │ │ │ └ <Handle Task.task_wakeup()> chatgpt-qq-chatgpt-1 | │ │ │ └ <member '_callback' of 'Handle' objects> chatgpt-qq-chatgpt-1 | │ │ └ <Handle Task.task_wakeup()> chatgpt-qq-chatgpt-1 | │ └ <member '_context' of 'Handle' objects> chatgpt-qq-chatgpt-1 | └ <Handle Task.task_wakeup()> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/platforms/onebotbot.py", line 151, in chatgpt-qq-chatgpt-1 | await handle_message( chatgpt-qq-chatgpt-1 | └ <function handle_message at 0x7f7dbbae2710> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | > File "/app/universal.py", line 271, in handle_message chatgpt-qq-chatgpt-1 | await action(session_id, message.strip(), conversation_context, respond) chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ │ └ <method 'strip' of 'str' objects> chatgpt-qq-chatgpt-1 | │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ └ 'friend-117' chatgpt-qq-chatgpt-1 | └ <function handle_message..wrap_request..call at 0x7f7dbbb1d6c0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/universal.py", line 53, in call chatgpt-qq-chatgpt-1 | await m.handle_request(session_id, message, respond, conversation_context, n) chatgpt-qq-chatgpt-1 | │ │ │ │ │ │ └ <function handle_message..wrap_request..call at 0x7f7dbbb1d480> chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ │ └ 'friend-117' chatgpt-qq-chatgpt-1 | │ └ <function MiddlewareConcurrentLock.handle_request at 0x7f7dbbae2d40> chatgpt-qq-chatgpt-1 | └ <middlewares.concurrentlock.MiddlewareConcurrentLock object at 0x7f7dbbac3670> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/middlewares/concurrentlock.py", line 43, in handle_request chatgpt-qq-chatgpt-1 | await action(session_id, prompt, conversation_context, respond) chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ └ 'friend-117 chatgpt-qq-chatgpt-1 | └ <function handle_message..wrap_request..call at 0x7f7dbbb1d480> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/universal.py", line 53, in call chatgpt-qq-chatgpt-1 | await m.handle_request(session_id, message, respond, conversation_context, n) chatgpt-qq-chatgpt-1 | │ │ │ │ │ │ └ <function handle_message..wrap_request..call at 0x7f7dbbb1c430> chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ │ └ 'friend-117' chatgpt-qq-chatgpt-1 | │ └ <function Middleware.handle_request at 0x7f7dbbae1fc0> chatgpt-qq-chatgpt-1 | └ <middlewares.baiducloud.MiddlewareBaiduCloud object at 0x7f7dbbac2920> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/middlewares/middleware.py", line 9, in handle_request chatgpt-qq-chatgpt-1 | await action(session_id, prompt, conversation_context, respond) chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ └ 'friend-117' chatgpt-qq-chatgpt-1 | └ <function handle_message..wrap_request..call at 0x7f7dbbb1c430> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/universal.py", line 53, in call chatgpt-qq-chatgpt-1 | await m.handle_request(session_id, message, respond, conversation_context, n) chatgpt-qq-chatgpt-1 | │ │ │ │ │ │ └ <function handle_message..wrap_request..call at 0x7f7dbbb1c9d0> chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ │ └ 'friend-117' chatgpt-qq-chatgpt-1 | │ └ <function MiddlewareRatelimit.handle_request at 0x7f7dbbae2200> chatgpt-qq-chatgpt-1 | └ <middlewares.ratelimit.MiddlewareRatelimit object at 0x7f7dbbac28f0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/middlewares/ratelimit.py", line 23, in handle_request chatgpt-qq-chatgpt-1 | await action(session_id, prompt, conversation_context, respond) chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ └ 'friend-117' chatgpt-qq-chatgpt-1 | └ <function handle_message..wrap_request..call at 0x7f7dbbb1c9d0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/universal.py", line 53, in call chatgpt-qq-chatgpt-1 | await m.handle_request(session_id, message, respond, conversation_context, n) chatgpt-qq-chatgpt-1 | │ │ │ │ │ │ └ <function handle_message..request at 0x7f7dbbb1ca60> chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ None chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function handle_message..respond at 0x7f7dbbb1d120> chatgpt-qq-chatgpt-1 | │ │ │ └ '鲲' chatgpt-qq-chatgpt-1 | │ │ └ 'friend-11' chatgpt-qq-chatgpt-1 | │ └ <function MiddlewareTimeout.handle_request at 0x7f7dbbae30a0> chatgpt-qq-chatgpt-1 | └ <middlewares.timeout.MiddlewareTimeout object at 0x7f7dbbac28c0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/middlewares/timeout.py", line 40, in handle_request chatgpt-qq-chatgpt-1 | raise e chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/middlewares/timeout.py", line 27, in handle_request chatgpt-qq-chatgpt-1 | await asyncio.wait_for(coro_task, config.response.max_timeout) chatgpt-qq-chatgpt-1 | │ │ │ │ │ └ 600.0 chatgpt-qq-chatgpt-1 | │ │ │ │ └ Response(mode='mixed', buffer_delay=0.0, default_ai='slack-claude', error_format='出现故障!如果这个问题持续出现,请和我说“重置会话” 来开启一段新的会话,或者发送 “... chatgpt-qq-chatgpt-1 | │ │ │ └ Config(onebot=Onebot(manager_qq=11, reverse_ws_host='0.0.0.0', reverse_ws_port=8234), mirai=None, telegram=None, disc... chatgpt-qq-chatgpt-1 | │ │ └ <Task finished name='Task-275' coro=<handle_message..request() done, defined at /app/universal.py:107> exception=Attr... chatgpt-qq-chatgpt-1 | │ └ <function wait_for at 0x7f7e04999ea0> chatgpt-qq-chatgpt-1 | └ <module 'asyncio' from '/usr/local/lib/python3.10/asyncio/init.py'> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/asyncio/tasks.py", line 445, in wait_for chatgpt-qq-chatgpt-1 | return fut.result() chatgpt-qq-chatgpt-1 | │ └ <method 'result' of '_asyncio.Task' objects> chatgpt-qq-chatgpt-1 | └ <Task finished name='Task-275' coro=<handle_message..request() done, defined at /app/universal.py:107> exception=Attr... chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/universal.py", line 224, in request chatgpt-qq-chatgpt-1 | async for rendered in task: chatgpt-qq-chatgpt-1 | │ └ <async_generator object retry..decorator..wrapper at 0x7f7dbbaabbc0> chatgpt-qq-chatgpt-1 | └ None chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/utils/retry.py", line 21, in wrapper chatgpt-qq-chatgpt-1 | async for result in func(*args, kwargs): chatgpt-qq-chatgpt-1 | │ │ │ └ {'prompt': '鲲', 'chain': MessageChain([Plain(text='鲲')]), 'name': '000'} chatgpt-qq-chatgpt-1 | │ │ └ (<conversation.ConversationContext object at 0x7f7dbbb097e0>,) chatgpt-qq-chatgpt-1 | │ └ <function ConversationContext.ask at 0x7f7dbbae1900> chatgpt-qq-chatgpt-1 | └ None chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/conversation.py", line 204, in ask chatgpt-qq-chatgpt-1 | yield await self.renderer.result() chatgpt-qq-chatgpt-1 | │ │ └ <function MixedContentMessageChainRenderer.result at 0x7f7dbbae1360> chatgpt-qq-chatgpt-1 | │ └ <renderer.renderer.MixedContentMessageChainRenderer object at 0x7f7dbad23b50> chatgpt-qq-chatgpt-1 | └ <conversation.ConversationContext object at 0x7f7dbbb097e0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/renderer/renderer.py", line 123, in result chatgpt-qq-chatgpt-1 | return await self.parse(await self.parent.result()) chatgpt-qq-chatgpt-1 | │ │ │ │ └ <function LengthContentMerger.result at 0x7f7dcc2f1360> chatgpt-qq-chatgpt-1 | │ │ │ └ <renderer.merger.LengthContentMerger object at 0x7f7dbbb09de0> chatgpt-qq-chatgpt-1 | │ │ └ <renderer.renderer.MixedContentMessageChainRenderer object at 0x7f7dbad23b50> chatgpt-qq-chatgpt-1 | │ └ <function MixedContentMessageChainRenderer.parse at 0x7f7dbbae1240> chatgpt-qq-chatgpt-1 | └ <renderer.renderer.MixedContentMessageChainRenderer object at 0x7f7dbad23b50> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/renderer/renderer.py", line 113, in parse chatgpt-qq-chatgpt-1 | holds.append(await to_image(rich_blocks)) chatgpt-qq-chatgpt-1 | │ │ │ └ ': [鲲 (神话)]\n猜你想问: \n 鲲的故事有哪些? \n 你能画一幅鲲的图片吗? \n 还有其他神兽吗? \n\n剩余回复数:4 / 30 \n' chatgpt-qq-chatgpt-1 | │ │ └ <function to_image at 0x7f7dbbae0670> chatgpt-qq-chatgpt-1 | │ └ <method 'append' of 'list' objects> chatgpt-qq-chatgpt-1 | └ [Plain(text='鲲是一种传说中的神兽,它的形象是一条巨大的鱼,能够化为龙。鲲的名字来源于《庄子·逍遥游》中的一句话:“北冥有鱼,其名为鲲。鲲之大,不知其几千里也。” 鲲的故事在中国文化中有着深远的影响,比如《山海经》中的鲲鹏、《西游记》中的... chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/utils/text_to_img.py", line 365, in to_image chatgpt-qq-chatgpt-1 | img = await text_to_image(text=str(text)) chatgpt-qq-chatgpt-1 | │ └ ': [鲲 (神话)]\n猜你想问: \n 鲲的故事有哪些? \n 你能画一幅鲲的图片吗? \n 还有其他神兽吗? \n\n剩余回复数:4 / 30 \n' chatgpt-qq-chatgpt-1 | └ <function text_to_image at 0x7f7dbbae05e0> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/utils/text_to_img.py", line 359, in text_to_image chatgpt-qq-chatgpt-1 | image = await asyncio.get_event_loop().run_in_executor(None, text_to_image_raw, text) chatgpt-qq-chatgpt-1 | │ │ │ └ ': [鲲 (神话)]\n猜你想问: \n 鲲的故事有哪些? \n 你能画一幅鲲的图片吗? \n 还有其他神兽吗? \n\n剩余回复数:4 / 30 \n' chatgpt-qq-chatgpt-1 | │ │ └ <function text_to_image_raw at 0x7f7dbbabff40> chatgpt-qq-chatgpt-1 | │ └ chatgpt-qq-chatgpt-1 | └ <module 'asyncio' from '/usr/local/lib/python3.10/asyncio/init.py'> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run chatgpt-qq-chatgpt-1 | result = self.fn(self.args, self.kwargs) chatgpt-qq-chatgpt-1 | │ │ └ None chatgpt-qq-chatgpt-1 | │ └ None chatgpt-qq-chatgpt-1 | └ None chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | File "/app/utils/text_to_img.py", line 228, in text_to_image_raw chatgpt-qq-chatgpt-1 | text_height = font.getsize(text)[1] chatgpt-qq-chatgpt-1 | │ └ ': [鲲 (神话)]\n猜你想问: \n 鲲的故事有哪些? \n 你能画一幅鲲的图片吗? \n* 还有其他神兽吗? \n\n剩余回复数:4 / 30 \n' chatgpt-qq-chatgpt-1 | └ <PIL.ImageFont.FreeTypeFont object at 0x7f7dbad43730> chatgpt-qq-chatgpt-1 | chatgpt-qq-chatgpt-1 | AttributeError: 'FreeTypeFont' object has no attribute 'getsize' chatgpt-qq-chatgpt-1 | 2023-09-19 14:06:24.392 | DEBUG | platforms.onebot_bot:respond:112 - [OneBot] 尝试发送消息:出现故障!如果这个问题持续出现,请和我说“重置会话” 来开启一段新的会话,或者发送 “回滚对话” 来回溯到上一条对话,你上一条说的我就当作没看见。 chatgpt-qq-chatgpt-1 | 原因:'FreeTypeFont' object has no attribute 'getsize' chatgpt-qq-gocqhttp-1 | [2023-09-19 22:06:24] [INFO]: 发送好友