Update webui.py

Fix missing /docs endpoint in newer gradio versions
Newer versions of gradio (>=3.27.1) have removed the /docs endpoint by default. This commit adds it back to enable accessing the API documentation.
This commit is contained in:
mouhao 2023-05-07 20:54:48 +08:00 committed by GitHub
parent 5ab7f213be
commit 5427b7128d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -286,6 +286,11 @@ def api_only():
print(f"Startup time: {startup_timer.summary()}.") 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) 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)
# patch in url for api docs
def my_setup(self):
self.docs_url = "/docs"
self.redoc_url = "/redoc"
self.orig_setup()
def webui(): def webui():
launch_api = cmd_opts.api launch_api = cmd_opts.api
@ -313,6 +318,9 @@ def webui():
for line in file.readlines(): for line in file.readlines():
gradio_auth_creds += [x.strip() for x in line.split(',') if x.strip()] gradio_auth_creds += [x.strip() for x in line.split(',') if x.strip()]
if launch_api:
FastAPI.orig_setup = FastAPI.setup
setattr(FastAPI, "setup", my_setup)
app, local_url, share_url = shared.demo.launch( app, local_url, share_url = shared.demo.launch(
share=cmd_opts.share, share=cmd_opts.share,
server_name=server_name, server_name=server_name,