json.decoder.JSONDecodeError: Unterminated string starting at: line 1 ... - Stable Diffusion报错解决方案

这篇具有很好参考价值的文章主要介绍了json.decoder.JSONDecodeError: Unterminated string starting at: line 1 ... - Stable Diffusion报错解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

错误内容

...
File "C:\stable-diffusion-webui\modules\sd_models.py", line 236, in load_model
sd_model = instantiate_from_config(sd_config.model)
File "C:\stable-diffusion-webui\repositories\stable-diffusion\ldm\util.py", line 85, in instantiate_from_config
return get_obj_from_str(config["target"])(**config.get("params", dict()))
File "C:\stable-diffusion-webui\repositories\stable-diffusion\ldm\models\diffusion\ddpm.py", line 461, in init
self.instantiate_cond_stage(cond_stage_config)
File "C:\stable-diffusion-webui\repositories\stable-diffusion\ldm\models\diffusion\ddpm.py", line 519, in instantiate_cond_stage
model = instantiate_from_config(config)
File "C:\stable-diffusion-webui\repositories\stable-diffusion\ldm\util.py", line 85, in instantiate_from_config
return get_obj_from_str(config["target"])(**config.get("params", dict()))
File "C:\stable-diffusion-webui\repositories\stable-diffusion\ldm\modules\encoders\modules.py", line 141, in init
self.tokenizer = CLIPTokenizer.from_pretrained(version)
File "C:\stable-diffusion-webui\venv\lib\site-packages\transformers\tokenization_utils_base.py", line 1784, in from_pretrained
return cls.from_pretrained(
File "C:\stable-diffusion-webui\venv\lib\site-packages\transformers\tokenization_utils_base.py", line 1929, in from_pretrained
tokenizer = cls(*init_inputs, **init_kwargs)
File "C:\stable-diffusion-webui\venv\lib\site-packages\transformers\models\clip\tokenization_clip.py", line 163, in init
self.encoder = json.load(vocab_handle)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\json_init.py", line 293, in load
return loads(fp.read(),
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\json_init.py", line 346, in loads
return _default_decoder.decode(s)
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\User\AppData\Local\Programs\Python\Python310\lib\json\decoder.py", line 353, in raw_decode
obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Unterminated string starting at: line 1 column 267716 (char 267716)

解决方案

遇到这种问题基本都是数据文件的问题,导致json解析错误,所以需要找到这个文件,然后修复它。

从报错可以看出,是在tokenization_clip.py文件中的__init__方法加载词汇文件时出现的JSONDecodeError。
然后找到这段代码,最后确定这里有错误:

with open(vocab_file, encoding="utf-8") as vocab_handle:
    self.encoder = json.load(vocab_handle)

一开始在项目中总是找不到这个vocab.json文件。
于是打印vocab_file,得到json文件的路径,发现不在项目中,而是在C盘,难怪找不到。

我的vocab.json文件路径:
C:\Users\xxx\.cache\huggingface\hub\models–openai–clip-vit-large-patch14\snapshots\8d052a0f05efbaefbc9e8786ba291cfdf93e5bff\vocab.json

我在C盘找到了这个文件,但它是快捷方式,所以继续找到它的源文件,并打开它。

快捷方式对应链接文件路径:
C:\Users\xxx\.cache\huggingface\hub\models–openai–clip-vit-large-patch14\blobs\4297ea6a8d2bae1fea8f48b45e257814dcb11f69

发现末尾少了很多内容,总字数只有267716,这是我的文件末尾内容:

…rium</w<":15063, “quis”: 15064, "re

json.decoder.jsondecodeerror: unterminated string starting at: line 1 column,AI,json,stable diffusion,python,ai
json.decoder.jsondecodeerror: unterminated string starting at: line 1 column,AI,json,stable diffusion,python,ai

没错,我的错误是…column 267713 (char 267712),跟267716很接近:

…json.decoder.JSONDecodeError: Unterminated string starting at: line 1 column 267713 (char 267712).

我在tokenization_clip.py文件最前面找到了vocab.json文件的下载地址:

https://huggingface.co/openai/clip-vit-base-patch32/resolve/main/vocab.json

手动下载vocab.json文件,发现总字数为852694。文章来源地址https://www.toymoban.com/news/detail-780640.html

  1. 很明显,项目下载的 vocab.json 文件损坏了。
  2. 手动复制内容修复,复制/移动 vocab.json -> C:…\4297ea6a8d2bae1fea8f48b45e257814dcb11f69 <=> C:…\vocab.json
  3. 然后重启项目,最终成功启动
    json.decoder.jsondecodeerror: unterminated string starting at: line 1 column,AI,json,stable diffusion,python,ai
    文章来源:https://blog.csdn.net/qq_37267676/article/details/129182732

到了这里,关于json.decoder.JSONDecodeError: Unterminated string starting at: line 1 ... - Stable Diffusion报错解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

    requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 某平台商品评论为例 报错原因: 这里是获取 response.json() 获取响应的json字典数据, 因为你请求返回的数据不是完整的json数据格式, 所以从而导致报错! 解决方法: 先打印 response.text 查看返回数据效果 当我打印 response.

    2024年02月11日
    浏览(24)
  • 已解决requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

    已解决requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 粉丝群一个小伙伴,想用Python爬取网页,但是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴) 报错信息截

    2024年02月16日
    浏览(23)
  • requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 问题解决

    前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 爬虫报错展示: requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 某平台商品评论为例 报错原因: 这里是获取 response.json() 获取响应的 json 字典数据, 因为你请求返回的数据不是完整的 json 数据格式, 所以从而导致报错! 解决

    2024年02月02日
    浏览(31)
  • 前端异常:Bad control character in string literal in JSON at position xxx

    场景:springmvc前端向后端传递json字符串,后端返回后前端解析异常 异常原因:json内含有空格或换行符,可以在后端或者前端处理后再转换成json。 我这里是在前端处理的: r 和 n 一个回车符一个换行符,可以自行百度区别。

    2024年02月13日
    浏览(40)
  • JSON转换异常:Cannot deserialize instance of `java.lang.String` out of START_OBJECT token

    在日常开发当中我们往往会碰到很多调用第三接口的业务,那么就免不了各种 JSON 的转换,下面就来谈谈我遇到的这个问题 意思:就是说JSON解析失败,用String类型无法序列化Json对象 其实给出的提示已经很明确了:比如:Cannot deserialize instance of:无法反序列化,比如:throu

    2024年02月14日
    浏览(32)
  • 【已解决】JSON parse error: Cannot deserialize instance of `java.lang.String` out of START_ARRAY token;

    【已解决】JSON parse error: Cannot deserialize instance of `java.lang.String` out of START_ARRAY token;  上述问题为:前后端联调,类型转换不一致问题  不能将数组等转换为String类型 在我进行前后端联调的时候,发现前端传过来的JSON数据为: 上述这种格式为复杂JSON格式,并且左边的值对应

    2024年02月07日
    浏览(36)
  • 报错:参数导致JSON parse error: Cannot deserialize instance of `[Ljava.lang.String;` out of START_OBJECT to

    问题复现场景:前端传参字符串数组,后端接收报错 后端代码示例 前端代码示例 后端警告内容: Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize instance of [Ljava.lang.String; out of START_OBJECT token; nested exception is com.fasterxml.jackson.databind.exc.M

    2024年02月16日
    浏览(37)
  • json_decode函数详解

    json_decode是php5.2.0之后新增的一个PHP内置函数,其作用是对JSON格式的字符串进行编码.那么这个函数该如何使用呢? json_decode的语法规则: json_decode接受一个JSON格式的字符串并且把它转换为PHP变量 ,当该参数$assoc为TRUE时,将返回array,否则返回object。 JSON 格式的字符串 $json = ‘

    2024年02月10日
    浏览(30)
  • json_decode返回NULL

    最近在调用某公司的API时,将对方返回的数据,使用PHP的json_decode函数解析,但是返回NULL,最终排查为对方传送来的json格式有误 打印$_REQUEST,数据结构大致如下: 1 2 3 4 5 6 7 8 9 10 array   (    \\\'TeleRec\\\'   = \\\'{    Tel:\\\'17090114281\\\',    Type:2,    StartTime:\\\'2016/9/19 10:19:29\\\',    EnteTime

    2024年02月10日
    浏览(16)
  • PHP json_decode()函数详解

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 json_decode() 可以对JSON字符串 「解码」 ,并转换为PHP变量。 语法 参数 $json

    2024年02月12日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包