Spaces:
Running on Zero
Running on Zero
File size: 2,557 Bytes
d0dbbdd 20698a7 d0dbbdd 06da738 d0dbbdd 5e8b132 d0dbbdd 5e8b132 d0dbbdd 5e8b132 d0dbbdd 5e8b132 d0dbbdd 5e8b132 d0dbbdd 9dbb7e3 d0dbbdd | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | import os
import gradio as gr
from core.settings import *
from .shared import txt2img_ui, img2img_ui, inpaint_ui, outpaint_ui, hires_fix_ui
MAX_DYNAMIC_CONTROLS = 10
def build_ui(event_handler_function):
ui_components = {}
with gr.Blocks() as demo:
gr.Markdown("# ImageGen")
gr.Markdown(
"This demo is a streamlined version of the [Comfy web UI](https://github.com/RioShiina47/comfy-webui)'s [ImageGen](https://huggingface.co/spaces/RioShiina/ImageGen) functionality."
)
with gr.Tabs(elem_id="tabs_container") as tabs:
with gr.TabItem("Txt2Img", id=0):
ui_components.update(txt2img_ui.create_ui())
with gr.TabItem("Img2Img", id=1):
ui_components.update(img2img_ui.create_ui())
with gr.TabItem("Inpaint", id=2):
ui_components.update(inpaint_ui.create_ui())
with gr.TabItem("Outpaint", id=3):
ui_components.update(outpaint_ui.create_ui())
with gr.TabItem("Hires. Fix", id=4):
ui_components.update(hires_fix_ui.create_ui())
ui_components["tabs"] = tabs
ui_components["image_gen_tabs"] = tabs
gr.Markdown("<div style='text-align: center; margin-top: 20px;'>Made by RioShiina with ❤️<br><a href='https://github.com/RioShiina47' target='_blank'>GitHub</a> | <a href='https://huggingface.co/RioShiina' target='_blank'>Hugging Face</a> | <a href='https://civitai.com/user/RioShiina' target='_blank'>Civitai</a></div>")
event_handler_function(ui_components, demo)
try:
import mcp_tools as mcp
if hasattr(mcp, "register_high_level_mcp_apis"):
mcp.register_high_level_mcp_apis(demo)
mcp.cleanup_dependencies_api_names(demo)
elif hasattr(mcp, 'MCP_FUNCTIONS') and isinstance(mcp.MCP_FUNCTIONS, list):
for func in mcp.MCP_FUNCTIONS:
gr.api(func)
print(f"✅ Registered MCP API endpoint: '{func.__name__}'")
except Exception as e:
print(f"⚠️ Warning registering MCP functions: {e}")
# Disable API exposure for all atomic UI event handlers
high_level_names = getattr(mcp, "HIGH_LEVEL_MCP_API_NAMES", set())
for fn in demo.fns.values():
if getattr(fn, "api_name", None) not in high_level_names:
fn.show_api = False
return demo |