project-halide / ui /server.py
Lonelyguyse1's picture
Deploy Project Halide Gradio Space
0299e6b verified
Raw
History Blame Contribute Delete
1.11 kB
"""Gradio Server wrapper for Project Halide."""
from __future__ import annotations
import gradio as gr
from config import CANONICAL_VISION_MODEL_ID, DEFAULT_REASONING_MODEL_ID
from ui.app import build_app
from ui.theme import THEME_CSS, build_theme
def build_server(blocks: gr.Blocks | None = None) -> gr.Server:
"""Build a gr.Server with the UI mounted at root and health metadata."""
server = gr.Server(
title="Project Halide",
version="0.1.0",
description="Edge-native analog film diagnostic engine.",
)
@server.get("/healthz")
def healthz() -> dict[str, str]:
return {
"status": "ok",
"vision_model": CANONICAL_VISION_MODEL_ID,
"reasoning_model": DEFAULT_REASONING_MODEL_ID,
}
gr.mount_gradio_app(
server,
blocks or build_app(),
path="/",
theme=build_theme(),
css=THEME_CSS,
show_error=True,
allowed_paths=["assets"],
favicon_path="assets/logo.jpg",
max_file_size="60mb",
)
return server
__all__ = ["build_server"]