BasicCalculator / app.py
Abhlash's picture
Update app.py
42f3d54 verified
raw
history blame
2.07 kB
import gradio as gr
from MathEngine import calculate, CalculationRequest
# Gradio Interface
def gradio_calculate(a, b, operation):
request = CalculationRequest(a=a, b=b, operation=operation)
response = calculate(request)
return response["result"]
def add(a, b):
return gradio_calculate(a, b, "add")
def subtract(a, b):
return gradio_calculate(a, b, "subtract")
def multiply(a, b):
return gradio_calculate(a, b, "multiply")
def divide(a, b):
return gradio_calculate(a, b, "divide")
with gr.Blocks() as demo:
a = gr.Number(label="A")
b = gr.Number(label="B")
result = gr.Textbox(label="Result")
with gr.Row():
gr.Button("Add").click(add, inputs=[a, b], outputs=result)
gr.Button("Subtract").click(subtract, inputs=[a, b], outputs=result)
gr.Button("Multiply").click(multiply, inputs=[a, b], outputs=result)
gr.Button("Divide").click(divide, inputs=[a, b], outputs=result)
if __name__ == "__main__":
demo.launch(share = True)
import gradio as gr
from main import calculate, CalculationRequest, app
import uvicorn
# Gradio Interface
def gradio_calculate(a, b, operation):
request = CalculationRequest(a=a, b=b, operation=operation)
response = calculate(request)
return response["result"]
def add(a, b):
return gradio_calculate(a, b, "add")
def subtract(a, b):
return gradio_calculate(a, b, "subtract")
def multiply(a, b):
return gradio_calculate(a, b, "multiply")
def divide(a, b):
return gradio_calculate(a, b, "divide")
with gr.Blocks() as demo:
a = gr.Number(label="A")
b = gr.Number(label="B")
result = gr.Textbox(label="Result")
with gr.Row():
gr.Button("Add").click(add, inputs=[a, b], outputs=result)
gr.Button("Subtract").click(subtract, inputs=[a, b], outputs=result)
gr.Button("Multiply").click(multiply, inputs=[a, b], outputs=result)
gr.Button("Divide").click(divide, inputs=[a, b], outputs=result)
if __name__ == "__main__":
demo.launch()
uvicorn.run(app, host="0.0.0.0", port=8000)