Update app.py
Browse files
app.py
CHANGED
@@ -1,10 +1,12 @@
|
|
1 |
import streamlit as st
|
2 |
-
import
|
3 |
from typing import List, Tuple
|
4 |
|
5 |
-
#
|
6 |
-
api_key = "
|
7 |
-
|
|
|
|
|
8 |
|
9 |
contexto = """
|
10 |
- Eres Citrino especializado en Dron, un asistente de voz amigable y servicial que hablas español, del Rio de la Plata. Hablar de manera informal -
|
@@ -15,20 +17,13 @@ Unicamente responde a lo relacionado al dron, a la información de la ventana de
|
|
15 |
Sugerir siempre algo mas relacionado al tema, la continuacion del tema especifico. Entender el contexto para incentivar el intercambio.
|
16 |
En la primera interacción tienes que saludar a Gastón.
|
17 |
|
18 |
-
CONCEPTOS BÁSICOS UAS, RPAS, drone o aeromodelo Se usan diferentes términos para referirnos a las aeronaves no tripuladas, pero ¿qué diferencias hay entre ellos? • Aeronave no tripulada o RPA (Remotely Piloted Aircraft) Cualquier aeronave que opere o esté diseñada para operar de forma autónoma o para ser pilotada a distancia sin un piloto a bordo. este RPA, es también llamado DAOD por DINACIA (Dispositivo aéreo operado a distancia)) • Dron (drone en inglés) Palabra coloquialmente usada para referirse en general a todas las aeronaves no tripuladas, debido a su similitud con un zumbido de Abejorro es otra forma de nombrar a los RPA • Aeromodelo Aeronave de tamaño reducido pilotado a distancia usada principalmente para vuelos deportivos o experimentales. también puede ser un RPA • RPAS «sistema de aeronave pilotada por control remoto» Aeronave pilotada a distancia, su sistema de vuelo, su estación, los enlaces requeridos de mando y control y cualquier otro componente según lo indicado en el diseño de la aeronave. • UAV « aeronave no tripulada» Aeronave no tripulada
|
19 |
"""
|
20 |
|
21 |
def generate_questions(api_key: str) -> List[str]:
|
22 |
-
openai.api_key = api_key
|
23 |
prompt = f"Genera 38 preguntas de opción múltiple con 3 opciones cada una y la respuesta correcta, basadas en el siguiente contexto:\n\n{contexto}"
|
24 |
-
response =
|
25 |
-
|
26 |
-
messages=[
|
27 |
-
{"role": "system", "content": "Eres un asistente que ayuda a generar preguntas de opción múltiple."},
|
28 |
-
{"role": "user", "content": prompt},
|
29 |
-
],
|
30 |
-
)
|
31 |
-
questions = response.choices[0].message["content"].strip().split("\n\n")
|
32 |
return questions
|
33 |
|
34 |
def evaluate_answers(questions: List[str], user_answers: List[str]) -> Tuple[List[bool], List[str]]:
|
@@ -60,4 +55,3 @@ if submit_button:
|
|
60 |
if st.button("Generar nuevas preguntas"):
|
61 |
st.session_state.questions = generate_questions(api_key)
|
62 |
st.experimental_rerun()
|
63 |
-
|
|
|
1 |
import streamlit as st
|
2 |
+
from huggingface_hub import InferenceApi
|
3 |
from typing import List, Tuple
|
4 |
|
5 |
+
# Cargar la API Key desde los secretos
|
6 |
+
api_key = st.secrets["api_key"]
|
7 |
+
|
8 |
+
# Inicializar el cliente de la API de Hugging Face
|
9 |
+
inference = InferenceApi(repo_id="gpt-3.5-turbo", token=api_key)
|
10 |
|
11 |
contexto = """
|
12 |
- Eres Citrino especializado en Dron, un asistente de voz amigable y servicial que hablas español, del Rio de la Plata. Hablar de manera informal -
|
|
|
17 |
Sugerir siempre algo mas relacionado al tema, la continuacion del tema especifico. Entender el contexto para incentivar el intercambio.
|
18 |
En la primera interacción tienes que saludar a Gastón.
|
19 |
|
20 |
+
CONCEPTOS BÁSICOS UAS, RPAS, drone o aeromodelo Se usan diferentes términos para referirnos a las aeronaves no tripuladas, pero ¿qué diferencias hay entre ellos? • Aeronave no tripulada o RPA (Remotely Piloted Aircraft) Cualquier aeronave que opere o esté diseñada para operar de forma autónoma o para ser pilotada a distancia sin un piloto a bordo. este RPA, es también llamado DAOD por DINACIA (Dispositivo aéreo operado a distancia)) • Dron (drone en inglés) Palabra coloquialmente usada para referirse en general a todas las aeronaves no tripuladas, debido a su similitud con un zumbido de Abejorro es otra forma de nombrar a los RPA • Aeromodelo Aeronave de tamaño reducido pilotado a distancia usada principalmente para vuelos deportivos o experimentales. también puede ser un RPA • RPAS «sistema de aeronave pilotada por control remoto» Aeronave pilotada a distancia, su sistema de vuelo, su estación, los enlaces requeridos de mando y control y cualquier otro componente según lo indicado en el diseño de la aeronave. • UAV « aeronave no tripulada» Aeronave no tripulada
|
21 |
"""
|
22 |
|
23 |
def generate_questions(api_key: str) -> List[str]:
|
|
|
24 |
prompt = f"Genera 38 preguntas de opción múltiple con 3 opciones cada una y la respuesta correcta, basadas en el siguiente contexto:\n\n{contexto}"
|
25 |
+
response = inference(inputs=prompt, parameters={"max_new_tokens": 1024, "return_full_text": False})
|
26 |
+
questions = response["generated_text"].strip().split("\n\n")
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
return questions
|
28 |
|
29 |
def evaluate_answers(questions: List[str], user_answers: List[str]) -> Tuple[List[bool], List[str]]:
|
|
|
55 |
if st.button("Generar nuevas preguntas"):
|
56 |
st.session_state.questions = generate_questions(api_key)
|
57 |
st.experimental_rerun()
|
|