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

news/2024/7/10 21:52:09 标签: stable diffusion

在尝试调用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)

最终实现:


http://www.niftyadmin.cn/n/5404197.html

相关文章

贪吃蛇(C语言)步骤讲解

一:文章大概 使用C语言在windows环境的控制台中模拟实现经典小游戏 实现基本功能: 1.贪吃蛇地图绘制 2.蛇吃食物的功能(上,下,左,右方向控制蛇的动作) 3.蛇撞墙死亡 4.计算得分 5.蛇身加…

UE5中实现后处理深度描边

后处理深度描边可以通过取得边缘深度变化大的区域进行描边,一方面可以用来做角色的等距内描边,避免了菲尼尔边缘光不整齐的问题,另一方面可以结合场景扫描等特效使用,达到更丰富的效果: 后来解决了开启TAA十字线和锯齿…

微服务API网关---APISIX

最近在做微服务调研,看到了apisix这个网关,于是进行了初步了解一下。 微服务是指,将大型应用分解成多个独立的组件,其中每个组件都各自的负责对应项目。 系统的架构大致经历了:单体应用架构–> SOA架构 -->微服务…

Springboot+vue的制造装备物联及生产管理ERP系统(有报告)。Javaee项目,springboot vue前后端分离项目。

演示视频: Springbootvue的制造装备物联及生产管理ERP系统(有报告)。Javaee项目,springboot vue前后端分离项 项目介绍: 本文设计了一个基于Springbootvue的制造装备物联及生产管理ERP系统,采用M&#xff…

杂记-买华强北电子产品的教训

之前不信邪,去华强北买了一个西部数据所谓全新的机械硬盘,1T,差不多300元。用了不到一年就坏了。然后去官网查S/N,结果查无device。Onedrive同步的时候,我把同步路径设置为机械硬盘,结果机械硬盘崩的时候&a…

ElasticSearch开篇

1.ElasticSearch简介 1.1 ElasticSearch(简称ES) Elasticsearch是用Java开发并且是当前最流行的开源的企业级搜索引擎。能够达到实时搜索,稳定,可靠,快速,安装使用方便。 1.2 ElasticSearch与Lucene的关…

如何在jupyter notebook 中下载第三方库

在anconda 中找到: Anaconda Prompt 进入页面后的样式: 在黑色框中输入: 下载第三方库的命令 第三方库: 三种输入方式 标准保证正确 pip instsall 包名 -i 镜像源地址 pip install pip 是 Python 包管理工具,…

[SD] stable diffusion webui forge 安装

参考: How to install SD Forge - Stable Diffusion Art stable diffusion webui forge 是 stable diffusion webui 的定制版,其主要面向快速图像生成。