MaoXiaoYuZ / Long-Novel-GPT

Long-Novel-GPT是一个基于GPT等大语言模型的长篇小说生成器。它采用层次化的大纲/章节/正文结构,以把握长篇小说的连贯剧情,通过上下文管理优化API调用成本,并根据自身或用户反馈不断进行优化,直至达到预定目标。
242 stars 39 forks source link

大佬,调用本地RWKV api,创作小说设定,运行一半就报错:Error JSONDecodeError('Expecting value: line 1 column 2 (char 1)') #1

Closed chouniu666 closed 6 months ago

chouniu666 commented 7 months ago

(lngpt) cn@cn:~/ai/Long-Novel-GPT$ python demo/app.py Running on local URL: http://127.0.0.1:7860

To create a public link, set share=True in launch(). Traceback (most recent call last): File "/home/cn/ai/Long-Novel-GPT/demo/tab_outline_writer.py", line 109, in wrapper for ret in func(*args, **kwargs): File "/home/cn/ai/Long-Novel-GPT/demo/tab_outline_writer.py", line 128, in on_submit for messages in get_writer().init_outline_setting(human_feedback=human_feedback): File "/home/cn/ai/Long-Novel-GPT/layers/outline_writer.py", line 70, in init_outline_setting response_json = json.loads(response) File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/json/init.py", line 346, in loads return _default_decoder.decode(s) File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/queueing.py", line 495, in call_prediction output = await route_utils.call_process_api( File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/route_utils.py", line 232, in call_process_api output = await app.get_blocks().process_api( File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/blocks.py", line 1561, in process_api result = await self.call_function( File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/blocks.py", line 1191, in call_function prediction = await utils.async_iteration(iterator) File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/utils.py", line 521, in async_iteration return await iterator.anext() File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/utils.py", line 514, in anext return await anyio.to_thread.run_sync( File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/anyio/to_thread.py", line 56, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 2134, in run_sync_in_worker_thread return await future File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 851, in run result = context.run(func, *args) File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/utils.py", line 497, in run_sync_iterator_async return next(iterator) File "/home/cn/anaconda3/envs/lngpt/lib/python3.10/site-packages/gradio/utils.py", line 678, in gen_wrapper response = next(iterator) File "/home/cn/ai/Long-Novel-GPT/demo/tab_outline_writer.py", line 115, in wrapper raise gr.Error(e) gradio.exceptions.Error: JSONDecodeError('Expecting value: line 1 column 2 (char 1)')

MaoXiaoYuZ commented 7 months ago

这个错误的原因是RWKV没有输出一个能解析为JSON的回复,这个错误并不会导致程序崩溃,只是会在页面上显示ERROR,可以重新尝试创作小说设定,或者刷新页面。

小模型通常难以遵照指令输出能够解析的回复,而且RWKV还未适配,先采用gpt4/文心4

chouniu666 commented 7 months ago

重新尝试创作小说设定,或者刷新页面仍然不行,这个RWKV完全兼容 openai api 协议. 看来只能用gpt4/文心