Update app.py
Browse files
app.py
CHANGED
|
@@ -651,7 +651,7 @@ body { font-family: 'Segoe UI', system-ui, sans-serif; }
|
|
| 651 |
def build_ui():
|
| 652 |
hw_color = HW["color"]
|
| 653 |
|
| 654 |
-
|
| 655 |
|
| 656 |
gr.HTML(f"""
|
| 657 |
<div style="display:flex;align-items:center;justify-content:space-between;
|
|
@@ -738,12 +738,12 @@ def build_ui():
|
|
| 738 |
ppl_opt = gr.Number(label="Optimized Perplexity", interactive=False)
|
| 739 |
ppl_d = gr.Number(label="PPL Ξ %", interactive=False)
|
| 740 |
|
| 741 |
-
gr.Markdown("###
|
| 742 |
dl_file = gr.File(label="Optimized Model (ZIP β load with HuggingFace)")
|
| 743 |
dl_info = gr.Markdown("")
|
| 744 |
|
| 745 |
# ββ TAB 2: COMPUTE FOOTPRINT ββββββββββββββββββββββ
|
| 746 |
-
with gr.TabItem("
|
| 747 |
gr.Markdown("## Environmental Impact Analysis\n*Run the optimizer first β all values below come from real measurements.*")
|
| 748 |
|
| 749 |
with gr.Row():
|
|
@@ -754,15 +754,15 @@ def build_ui():
|
|
| 754 |
|
| 755 |
with gr.Row():
|
| 756 |
with gr.Column():
|
| 757 |
-
gr.Markdown("###
|
| 758 |
elec_base = gr.Number(label="Baseline", interactive=False)
|
| 759 |
elec_opt = gr.Number(label="Optimized", interactive=False)
|
| 760 |
with gr.Column():
|
| 761 |
-
gr.Markdown("###
|
| 762 |
co2_base = gr.Number(label="Baseline", interactive=False)
|
| 763 |
co2_opt = gr.Number(label="Optimized", interactive=False)
|
| 764 |
with gr.Column():
|
| 765 |
-
gr.Markdown("###
|
| 766 |
h2o_base = gr.Number(label="Baseline", interactive=False)
|
| 767 |
h2o_opt = gr.Number(label="Optimized", interactive=False)
|
| 768 |
|
|
@@ -802,7 +802,7 @@ def build_ui():
|
|
| 802 |
info_md = ""
|
| 803 |
if zip_path and os.path.exists(zip_path):
|
| 804 |
size_mb = os.path.getsize(zip_path) / (1024**2)
|
| 805 |
-
info_md = f"
|
| 806 |
|
| 807 |
return (
|
| 808 |
"\n".join(log_buffer),
|
|
@@ -851,4 +851,10 @@ def build_ui():
|
|
| 851 |
|
| 852 |
if __name__ == "__main__":
|
| 853 |
ui = build_ui()
|
| 854 |
-
ui.launch(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 651 |
def build_ui():
|
| 652 |
hw_color = HW["color"]
|
| 653 |
|
| 654 |
+
with gr.Blocks(title="CurvOpt-LLM Optimizer") as app:
|
| 655 |
|
| 656 |
gr.HTML(f"""
|
| 657 |
<div style="display:flex;align-items:center;justify-content:space-between;
|
|
|
|
| 738 |
ppl_opt = gr.Number(label="Optimized Perplexity", interactive=False)
|
| 739 |
ppl_d = gr.Number(label="PPL Ξ %", interactive=False)
|
| 740 |
|
| 741 |
+
gr.Markdown("### Download Optimized Model")
|
| 742 |
dl_file = gr.File(label="Optimized Model (ZIP β load with HuggingFace)")
|
| 743 |
dl_info = gr.Markdown("")
|
| 744 |
|
| 745 |
# ββ TAB 2: COMPUTE FOOTPRINT ββββββββββββββββββββββ
|
| 746 |
+
with gr.TabItem(" Compute Footprint"):
|
| 747 |
gr.Markdown("## Environmental Impact Analysis\n*Run the optimizer first β all values below come from real measurements.*")
|
| 748 |
|
| 749 |
with gr.Row():
|
|
|
|
| 754 |
|
| 755 |
with gr.Row():
|
| 756 |
with gr.Column():
|
| 757 |
+
gr.Markdown("### Electricity (kWh / 1M tokens)")
|
| 758 |
elec_base = gr.Number(label="Baseline", interactive=False)
|
| 759 |
elec_opt = gr.Number(label="Optimized", interactive=False)
|
| 760 |
with gr.Column():
|
| 761 |
+
gr.Markdown("### Carbon COβe (g / 1M tokens)")
|
| 762 |
co2_base = gr.Number(label="Baseline", interactive=False)
|
| 763 |
co2_opt = gr.Number(label="Optimized", interactive=False)
|
| 764 |
with gr.Column():
|
| 765 |
+
gr.Markdown("### Water (mL / 1M tokens)")
|
| 766 |
h2o_base = gr.Number(label="Baseline", interactive=False)
|
| 767 |
h2o_opt = gr.Number(label="Optimized", interactive=False)
|
| 768 |
|
|
|
|
| 802 |
info_md = ""
|
| 803 |
if zip_path and os.path.exists(zip_path):
|
| 804 |
size_mb = os.path.getsize(zip_path) / (1024**2)
|
| 805 |
+
info_md = f"**Model ready** β `{zip_path}` ({size_mb:.1f} MB)\n\nLoad with:\n```python\nfrom transformers import AutoModelForCausalLM, AutoTokenizer\nmodel = AutoModelForCausalLM.from_pretrained('./optimized_model')\n```"
|
| 806 |
|
| 807 |
return (
|
| 808 |
"\n".join(log_buffer),
|
|
|
|
| 851 |
|
| 852 |
if __name__ == "__main__":
|
| 853 |
ui = build_ui()
|
| 854 |
+
ui.launch(
|
| 855 |
+
css=CSS,
|
| 856 |
+
theme=gr.themes.Default(),
|
| 857 |
+
server_name="0.0.0.0",
|
| 858 |
+
server_port=7860,
|
| 859 |
+
share=True,
|
| 860 |
+
)
|