| import os | |
| import gradio as gr | |
| from api import fastapi_app | |
| from ui_chat import UI_STYLE, build_chat_tab | |
| from ui_creator import build_creator_tab | |
| from ui_info import build_info_tab | |
| with gr.Blocks() as ui: | |
| gr.HTML(UI_STYLE, sanitize_html=False) | |
| gr.Markdown("## Avatar MCP") | |
| with gr.Tabs(): | |
| build_chat_tab(ui) | |
| build_creator_tab() | |
| build_info_tab() | |
| app = gr.mount_gradio_app(fastapi_app, ui, path="/") | |
| if __name__ == "__main__" and not os.getenv("SPACE_ID"): | |
| import uvicorn | |
| port = int(os.getenv("PORT", "7860")) | |
| print(f"Running locally at http://localhost:{port}") | |
| uvicorn.run(app, host="0.0.0.0", port=port) | |