Stable Diffusion WebUI API http://127.0.0.1:7860/docs空白

在尝试调用Stable Diffusion WebUI API的时候,打开http://127.0.0.1:7860/docs遇到了以下页面

网络诊断是这样的原因:

修bug,改来改去遇到了以下两种页面:

此时http://127.0.0.1:7860可以如下正常显示:

查资料的时候找到说可能是swagger配置时出了问题

解决办法:

步骤一:解压文章绑定的资源包static,放在项目的根目录下

步骤二:找到路径形如:\Lib\site-packages\fastapi\openapi\docs.py 这个docs.py文件

    swagger_js_url: str="/static/swagger-ui/swagger-ui-bundle.js",
    swagger_css_url: str="/static/swagger-ui/swagger-ui.css",
    swagger_favicon_url: str="/static/swagger-ui/favicon.png",

将这里的内容替换为本地文件

redoc_js_url: str = "/static/redoc/bundles/redoc.standalone.js",
redoc_favicon_url: str = "/static/redoc/favicon.png",

步骤三:将webui.py里的api_only()替换为这样,即引入静态文件

def api_only():
    from fastapi import FastAPI
    from modules.shared_cmd_options import cmd_opts
    from fastapi.staticfiles import StaticFiles##
    initialize.initialize()

    app = FastAPI()
    app.mount('/static', StaticFiles(directory='static'))##
    initialize_util.setup_middleware(app)
    api = create_api(app)

    from modules import script_callbacks
    script_callbacks.before_ui_callback()
    script_callbacks.app_started_callback(None, app)

    print(f"Startup time: {startup_timer.summary()}.")
    api.launch(
        server_name="0.0.0.0" if cmd_opts.listen else "127.0.0.1",
        port=cmd_opts.port if cmd_opts.port else 7861,
        root_path=f"/{cmd_opts.subpath}" if cmd_opts.subpath else ""
    )

参考了这篇知乎的方法二

fastapi docs 空白(2022年5月,已解决) - 知乎 (zhihu.com)

最终实现:

相关推荐
yuzhangfeng2 天前
【 模型】 开源图像模型Stable Diffusion入门手册
stable diffusion
浪淘沙jkp3 天前
(一)Ubuntu22.04服务器端部署Stable-Diffusion-webui AI绘画环境
ai作画·stable diffusion
kebijuelun3 天前
阿里数字人工作 Emote Portrait Alive (EMO):基于 Diffusion 直接生成视频的数字人方案
人工智能·语言模型·stable diffusion·aigc·音视频
李歘歘6 天前
Stable Diffusion概要讲解
stable diffusion
davenian7 天前
<AI 学习> 下载 Stable Diffusions via Windows OS
学习·stable diffusion
AI极客菌10 天前
[ComfyUI]Flux:繁荣生态魔盒已开启,6款LORA已来,更有MJ6&写实&动漫&风景&艺术&迪士尼全套
ai作画·stable diffusion·aigc·midjourney·人工智能作画·comfyui·风景
许野平10 天前
Stable Diffusion:照片转视频插件
stable diffusion·animatediff·temporal·照片转视频
python零基础入门小白11 天前
如何通过AI绘画技术轻松变现?教你三种方法赚取高额利润!
ai作画·stable diffusion·aigc
AI设计酷卡13 天前
什么是 Stable Diffusion? | StableDiffusion 基础知识
人工智能·stable diffusion·aigc
AI极客菌15 天前
Controlnet作者新作IC-light V2:基于FLUX训练,支持处理风格化图像,细节远高于SD1.5。
人工智能·计算机视觉·ai作画·stable diffusion·aigc·flux·人工智能作画