from app.tapex import execute_query
import gradio as gr
def main():
description = "Querying a csv using TAPEX model. You can ask a question about tabular data. TAPAS model " \
"will produce the result. Finetuned TAPEX model runs on max 5000 rows and 20 columns data. " \
"A sample data of shopify store sales is provided"
article = "
Unscrambl | TAPAS Model
"
iface = gr.Interface(fn=execute_query,
inputs=[gr.Textbox(label="Search query"),
gr.File(label="CSV file")],
outputs=[gr.JSON(label="Result"),
gr.Dataframe(label="All data")],
examples=[
["What is the highest order_amount?", "shopify.csv"],
["Which user_id has the highest order_amount?", "shopify.csv"],
["Which payment method was used the most?", "shopify.csv"]
],
title="Table Question Answering (TAPEX)",
description=description,
article=article,
allow_flagging='never')
# Use this config when running on Docker
# iface.launch(server_name="0.0.0.0", server_port=7000)
iface.launch(enable_queue=True)
if __name__ == "__main__":
main()