GAIA-Hackathon / app.py
TD9991's picture
add meteo data + intro reformulee
883455d
raw
history blame contribute delete
No virus
2.67 kB
import gradio as gr
from utils import *
with gr.Blocks() as demo:
temperature = gr.Number(visible=False)
humidite = gr.Number(visible=False)
chutes_de_neige = gr.Number(value=0, visible=False)
couverture_nuageuse = gr.Number(visible=False)
precipitations = gr.Number(visible=False)
gr.Markdown(
"""
## GAIA Démo \n
Démo avec Mistral AI & LlamaIndex afin d'estimer les risques parasitaires d'un élevage. \n
### Fonctionnement:
1. Rentrez votre adresse (ou les coordonnées GPS) de votre exploitation
2. Cochez votre type d'élevage
3. Posez la question liée aux risques parasitaires de votre exploitation (idée: 'Quels sont les risques')
4. Amusez vous à parcourir la carte et les données météo associées.""")
with gr.Row(equal_height=True):
with gr.Column():
with gr.Tab("Adresse"):
address = gr.Textbox(
label="Address",
info="Dans le cas ou vous ne connaissez pas vos coordonnées GPS, rentrez votre adresse !"
)
with gr.Tab("Coordonnées GPS"):
lat = gr.Number(value=48.832408, label="Latitude",
info="La latitude de votre élevage")
lon = gr.Number(value=2.28619, label="Longitude",
info="La longitude de votre élevage")
type_elevage = gr.Radio(choices=[
"Bovin",
"Ovin",
"Caprin",
"Porcin",
"Volailles",
"Equin"
], label="Type d'élevage", info="Quel est votre type d'élevage?")
btn = gr.Button(value="Submit", size="sm")
with gr.Column():
with gr.Tab("Map"):
map = gr.HTML()
with gr.Tab("Weather data"):
fig = gr.Plot(label="Météo")
with gr.Column():
chatbot = gr.Chatbot()
msg = gr.Textbox(
placeholder="Vous pouvez me poser une question, appuyez sur Entrée pour valider")
clear = gr.ClearButton([msg, chatbot])
demo.load(on_init, [lat, lon, address], [
map, fig, temperature, humidite, couverture_nuageuse, precipitations])
btn.click(on_init, [lat, lon, address], [
map, fig, temperature, humidite, couverture_nuageuse, precipitations])
msg.submit(respond, [type_elevage, temperature,
humidite, chutes_de_neige, couverture_nuageuse, precipitations, msg, chatbot], [msg, chatbot])
demo.title = "Démo GAIA - Les 5 Mousquetaires"
demo.launch()