Spaces:
Running
Running
Add application file
Browse files
app.py
CHANGED
@@ -11,28 +11,33 @@ import gradio as gr
|
|
11 |
from utils import approach1_isoflops, approach2_derivative, approach3_isoloss
|
12 |
|
13 |
|
14 |
-
def compute_optimal_vocab(Nnv:
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
Vopt_app1 = approach1_isoflops(Nnv)
|
20 |
Vopt_app2 = approach2_derivative(Nnv)
|
21 |
-
Vopt_app3 = approach3_isoloss(Nnv)
|
22 |
else:
|
23 |
-
Vopt_app1,
|
24 |
-
Vopt_app3 = approach3_isoloss(Nnv, flops)
|
25 |
-
# Vopt_app1, Vopt_app2, Vopt_app3=1.,2.,3.
|
26 |
-
|
27 |
-
results = 'test'
|
28 |
-
# results = f"The optimal vocabulary size is:\nApproach 1: {Vopt_app1}\nApproach 2: {Vopt_app2}\nApproach 3: {Vopt_app3}"
|
29 |
-
return results
|
30 |
|
|
|
|
|
31 |
|
32 |
with gr.Blocks() as demo:
|
33 |
with gr.Column():
|
34 |
gr.Markdown(
|
35 |
-
"""<
|
36 |
This tool is used to predict the optimal vocabulary size given the non-vocabulary parameters.
|
37 |
We provide 3 ways for prediction:
|
38 |
|
@@ -47,8 +52,8 @@ with gr.Blocks() as demo:
|
|
47 |
""")
|
48 |
|
49 |
with gr.Row():
|
50 |
-
Nnv = gr.Textbox(label="Non-vocabulary Parameters", value=7*10**9)
|
51 |
-
flops = gr.Textbox(label="FLOPs", placeholder="Optional (e.g. 7.
|
52 |
output_text = gr.Textbox(label="Prediction")
|
53 |
with gr.Row():
|
54 |
btn = gr.Button("Compute the optimal vocabulary size")
|
|
|
11 |
from utils import approach1_isoflops, approach2_derivative, approach3_isoloss
|
12 |
|
13 |
|
14 |
+
def compute_optimal_vocab(Nnv, flops):
|
15 |
+
try:
|
16 |
+
Nnv = float(Nnv)
|
17 |
+
except ValueError:
|
18 |
+
return "Invalid input for Non-vocabulary Parameters."
|
19 |
+
|
20 |
+
if flops:
|
21 |
+
try:
|
22 |
+
flops = float(flops)
|
23 |
+
except ValueError:
|
24 |
+
return "Invalid input for FLOPs."
|
25 |
+
|
26 |
+
if flops is None or flops == "":
|
27 |
Vopt_app1 = approach1_isoflops(Nnv)
|
28 |
Vopt_app2 = approach2_derivative(Nnv)
|
29 |
+
Vopt_app3 = approach3_isoloss(Nnv)
|
30 |
else:
|
31 |
+
Vopt_app1, Vopt_app2 = None, None
|
32 |
+
Vopt_app3 = approach3_isoloss(Nnv, flops)
|
|
|
|
|
|
|
|
|
|
|
33 |
|
34 |
+
results = f"The optimal vocabulary size is:\nApproach 1: {Vopt_app1}\nApproach 2: {Vopt_app2}\nApproach 3: {Vopt_app3}"
|
35 |
+
return results
|
36 |
|
37 |
with gr.Blocks() as demo:
|
38 |
with gr.Column():
|
39 |
gr.Markdown(
|
40 |
+
"""<h1>The Optimal Vocabulary Size Predictor</h1>
|
41 |
This tool is used to predict the optimal vocabulary size given the non-vocabulary parameters.
|
42 |
We provide 3 ways for prediction:
|
43 |
|
|
|
52 |
""")
|
53 |
|
54 |
with gr.Row():
|
55 |
+
Nnv = gr.Textbox(label="Non-vocabulary Parameters", value=str(7*10**9))
|
56 |
+
flops = gr.Textbox(label="FLOPs", placeholder="Optional (e.g. 7.05e21)")
|
57 |
output_text = gr.Textbox(label="Prediction")
|
58 |
with gr.Row():
|
59 |
btn = gr.Button("Compute the optimal vocabulary size")
|