Spaces:
Sleeping
Sleeping
Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Aplicacion principal para cargar modelo, generar los prompts, y el la explicacion de los datos
|
2 |
+
|
3 |
+
import streamlit as st
|
4 |
+
import trasformers
|
5 |
+
from transformers import pipeline
|
6 |
+
|
7 |
+
# Pendiente las Keys, dependiendo del modelo que escojamos
|
8 |
+
|
9 |
+
model_name = "google/flan-t5-small" # Probando modelos
|
10 |
+
generator = pipeline("text-generation", model=model_name)
|
11 |
+
|
12 |
+
# ///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
13 |
+
# Aqui probamos los propmts, en caso que no funcione apropiadamente usaremos finetuning con la db
|
14 |
+
# Ejemplo de la generacion de texto
|
15 |
+
|
16 |
+
prompt = "Generate a graph idea based on European fertility data."
|
17 |
+
|
18 |
+
output = generator(prompt, max_length=50, num_return_sequences=1)[0]['generated_text']
|
19 |
+
print(output)
|
20 |
+
|
21 |
+
# Aqui vamos a añadir los prompts, comparativa entre paises, lo ideal es mas de uno, pero podriamos iniciar en un 1v1 con la metrica
|
22 |
+
# Vamos a generar un codigo para luego ejecutarlo con un exec() y poder imprimir en Streamlit st.pyplot()
|
23 |
+
|
24 |
+
def generate_graph_prompt(country1, country2, metric, start_year, end_year):
|
25 |
+
|
26 |
+
prompt = f"""You have access to a database of European countries with data on {metric}, labor force participation, population, and their predictions for future years.
|
27 |
+
|
28 |
+
Generate Python code using matplotlib to create a line graph showing the trend of {metric} for {country1} and {country2} from {start_year} to {end_year}.
|
29 |
+
|
30 |
+
Also, provide a concise explanation of what this graph represents for an end user who might not be familiar with the data.
|
31 |
+
"""
|
32 |
+
return prompt
|
33 |
+
|
34 |
+
# Ejemplo de como quedaria el prompt que recibiria el modelo
|
35 |
+
prompt = generate_graph_prompt("Germany", "France", "fertility rate", 2020, 2030)
|
36 |
+
|
37 |
+
# Inicio de Streamlit (hice lo basico, podemos mejorarla)
|
38 |
+
|
39 |
+
st.title("_Europe GraphGen_ :blue[Graph generator] :flag-eu:")
|
40 |
+
user_input = st.text_input("What graphics do you have in mind")
|
41 |
+
generate_button = st.button("Generate")
|