【故障解析】Stable Diffusion WebUI 更换主题后启动报 JSONDecodeError?可能是“主题加载”惹的祸

【SD WebUI踩坑】启动报错 Expecting value: line 1 column 1 (char 0) 的终极解决方案


【故障解析】Stable Diffusion WebUI 更换主题后启动报 JSONDecodeError?可能是"主题加载"惹的祸

一、 现象描述:启动即崩溃

在为 WebUI 更换了一款精致的 Gradio 第三方主题后,再次启动程序时,控制台突然刷出一连串红色的 Traceback 报错,其中关键的信息是:

报错堆栈:

changing gradio theme: JSONDecodeError

Traceback (most recent call last):

File "G:\PythonProjects2\stable-diffusion-webui\.venv\Lib\site-packages\requests\models.py", line 976, in json

return complexjson.loads(self.text, **kwargs)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "D:\A\envs\py311\Lib\json\init.py", line 346, in loads

return _default_decoder.decode(s)

^^^^^^^^^^^^^^^^^^^^^^^^^^

File "D:\A\envs\py311\Lib\json\decoder.py", line 337, in decode

obj, end = self.raw_decode(s, idx=_w(s, 0).end())

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "D:\A\envs\py311\Lib\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 1 (char 0)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "G:\PythonProjects2\stable-diffusion-webui\modules\shared_gradio_themes.py", line 63, in reload_gradio_theme

shared.gradio_theme = gr.themes.ThemeClass.from_hub(theme_name)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "G:\PythonProjects2\stable-diffusion-webui\.venv\Lib\site-packages\gradio\themes\base.py", line 165, in from_hub

space_info = api.space_info(name)

^^^^^^^^^^^^^^^^^^^^

File "G:\PythonProjects2\stable-diffusion-webui\.venv\Lib\site-packages\huggingface_hub\utils\_validators.py", line 114, in _inner_fn

return fn(*args, **kwargs)

^^^^^^^^^^^^^^^^^^^

File "G:\PythonProjects2\stable-diffusion-webui\.venv\Lib\site-packages\huggingface_hub\hf_api.py", line 2785, in space_info

data = r.json()

^^^^^^^^

File "G:\PythonProjects2\stable-diffusion-webui\.venv\Lib\site-packages\requests\models.py", line 980, in json

raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)

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

关键报错:

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

此时,WebUI 界面可以正常打开,但在启动日志中又看到这个报错总感觉不舒服,之前本已经全面处理过,没成想更换主题后却又再次出现了。

【SD WebUI踩坑】启动报错 Expecting value: line 1 column 1 (char 0) 的终极解决方案


二、 深度溯源:环境冲突引发的"空响应"

通过观察报错堆栈,我们可以看到问题的源头指向了 modules\shared_gradio_themes.py 中的 from_hub 函数:

shared.gradio_theme = gr.themes.ThemeClass.from_hub(theme_name)

技术逻辑分析:

  1. 云端依赖:当你选择了非默认的主题时,WebUI 在启动阶段会尝试访问远程仓库(如 Hugging Face Hub)来校验或获取主题配置。

  2. 网络握手失败 :由于众所周知的跨境网络波动本地特殊网络环境拦截,API 请求并未能如愿返回 JSON 格式的配置信息。

  3. 解析异常 :后端可能返回了一个 HTML 报错页面或直接是空响应。当 Python 的 requests 库尝试将其作为 JSON 解析时,因为第 1 行第 1 个字符不是预期的 {,便抛出了 JSONDecodeError

这本质上是一个由于外部资源无法访问导致的配置加载崩溃。


三、 解决方案:强制回归本地模式

由于此时 UI 已经无法进入,我们需要通过修改底层配置文件来实施"断臂求生"。

1. 修改 config.json(核心操作)

进入你的 Stable Diffusion 安装根目录,找到 config.json 文件:

  • 搜索关键字:"gradio_theme"

  • 将其值修改为默认值:"Default"

    复制代码
    "gradio_theme": "Default",
  • 保存并重启 WebUI,此时程序将跳过云端请求,直接加载本地默认样式,报错消失。

2. 环境治理:配置 NO_PROXY 屏蔽干扰

为了避免后续其他插件再次因为网络环境不稳定 而误撞墙,建议在 webui-user.bat 中加入环境治理指令,确保本地链路的纯净:

【SD WebUI踩坑】启动报错 Expecting value: line 1 column 1 (char 0) 的终极解决方案

复制代码
:: 在 COMMANDLINE_ARGS 之前添加,确保本地请求不经过外部链路中转
set NO_PROXY=127.0.0.1,localhost,huggingface.co,github.com

四、 结语与思考

这次排查再次提醒我们,在构建复杂的 AI 环境(如我正在推行的 EPGF 架构 )时,外部依赖的解耦至关重要。

当本地工具尝试频繁与云端通信时,一旦网络通道出现非预期拦截,往往会引发看似莫名其妙的程序崩溃。保持核心配置的本地化,或在启动脚本中做好完善的环境隔离,才是长治久安之道。


博主简介:

深耕 AI 领域与环境治理体系,主打 EPGF(路径治理驱动的多版本 Python 架构)。擅长从底层源码角度解决 Windows 环境下各种"疑难杂症",欢迎关注,一起拆解 AI 技术的黑盒。

【EPGF 白皮书】路径治理驱动的多版本 Python 架构------ Windows 环境治理与 AI 教学开发体系
一次搭好、终身不乱Windows Python 环境治理(EPGF)系列总览 / 阅读路线图 [目录]


相关推荐
墨染天姬2 小时前
【AI】端侧AIBOX可以部署哪些智能体
人工智能
AI成长日志2 小时前
【Agentic RL】1.1 什么是Agentic RL:从传统RL到智能体学习
人工智能·学习·算法
航Hang*2 小时前
Windows Server 配置与管理——第3章:文件系统管理
运维·服务器·windows·vmware
2501_948114242 小时前
2026年大模型API聚合平台技术评测:企业级接入层的治理演进与星链4SAPI架构观察
大数据·人工智能·gpt·架构·claude
小小工匠2 小时前
LLM - awesome-design-md 从 DESIGN.md 到“可对话的设计系统”:用纯文本驱动 AI 生成一致 UI 的新范式
人工智能·ui
黎阳之光3 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
小超同学你好3 小时前
面向 LLM 的程序设计 6:Tool Calling 的完整生命周期——从定义、决策、执行到观测回注
人工智能·语言模型
智星云算力3 小时前
本地GPU与租用GPU混合部署:混合算力架构搭建指南
人工智能·架构·gpu算力·智星云·gpu租用
jinanwuhuaguo3 小时前
截止到4月8日,OpenClaw 2026年4月更新深度解读剖析:从“能力回归”到“信任内建”的范式跃迁
android·开发语言·人工智能·深度学习·kotlin
xiaozhazha_3 小时前
效率提升80%:2026年AI CRM与ERP深度集成的架构设计与实现
人工智能