French
rose_des_vents / rag /prompt_processing.py
pasquierjb's picture
first
9d4a2d9
Raw
History Blame Contribute Delete
1.73 kB
import geopandas as gpd
from shapely.geometry import Point
from data.climatic_data import get_tmy
from data.rendement import get_rendement
from data.sol_data import get_soil_types
import pandas as pd
def process_localisation(latitude, longitude):
dep = gpd.read_file("./data/departement.geojson")
point = Point(longitude, latitude)
inclusion = dep.contains(point)
dep = dep[inclusion].nom.values[0]
str_loc = f"La parcelle se situe dans le département de {dep}.\n"
return str_loc
def process_meteo(latitude, longitude):
tmy = get_tmy(latitude, longitude)
meteo = (
tmy.resample("M")
.agg({"temp_min": "mean", "temp_max": "mean", "rain": "sum", 'irradiance':'sum'})
.rename(
columns={
"temp_min": "Température minimum (°C)",
"temp_max": "Température maximale (°C)",
"rain": "Précipitations (mm)",
'irradiance':'Radiation cumulée (W.m-2)'
}
)
)
str_meteo = f"Sur une année typique, voici des indicateurs mensuels climatiques de ma parcelle:\n {meteo}\n"
return str_meteo
def process_soil(latitude, longitude):
soil_prompt = f"\
D'après la Base de Données Géographique des Sols de France, les types de \
sols présent dans un rayon de 1km sont, au format SOIL Full 1974 (modified CEC 1985) FAO-Unesco legend soil name, \
{', '.join( get_soil_types(latitude, longitude))}\n\
"
return soil_prompt
def process_rendement(latitude, longitude):
rendement = get_rendement(latitude, longitude)
str_rendement = f"Les données de rendement annuel par espèce dans mon département sont les suivantes : \n {rendement}\n"
return str_rendement