Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -5,37 +5,23 @@ import os
|
|
5 |
# Cliente de Groq inicializado con la clave API desde una variable de entorno
|
6 |
client = Groq(api_key=os.environ.get("GROQ_API_KEY"))
|
7 |
|
8 |
-
# T铆tulo de la p谩gina
|
9 |
st.title("Chatbot de Asistencia sobre Sergio Chic贸n")
|
10 |
|
11 |
-
#
|
12 |
-
if
|
13 |
-
st.session_state
|
14 |
|
15 |
-
#
|
16 |
-
|
17 |
-
st.
|
18 |
-
|
19 |
|
20 |
-
#
|
21 |
-
chat_container = st.container()
|
22 |
-
|
23 |
-
# Muestra el historial del chat
|
24 |
-
for role, message in st.session_state['history']:
|
25 |
-
if role == "Usuario":
|
26 |
-
chat_container.text_area("", value=message, height=40, key=message, disabled=True)
|
27 |
-
else:
|
28 |
-
chat_container.text_area("", value=message, height=80, key=message, disabled=True)
|
29 |
-
|
30 |
-
# Crea un campo de entrada de texto para que el usuario escriba su pregunta
|
31 |
-
user_input = st.text_input("Hazme una pregunta:", '', key="user_input")
|
32 |
-
|
33 |
-
# Define una funci贸n para procesar la entrada y generar una respuesta
|
34 |
def process_text(input_text):
|
35 |
-
prompt = '''
|
36 |
input = prompt + input_text
|
37 |
-
|
38 |
-
#
|
39 |
chat_completion = client.chat.completions.create(
|
40 |
messages=[
|
41 |
{
|
@@ -47,14 +33,17 @@ def process_text(input_text):
|
|
47 |
)
|
48 |
return chat_completion.choices[0].message.content
|
49 |
|
50 |
-
|
51 |
-
|
52 |
-
#
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
st.
|
|
|
|
|
|
|
|
5 |
# Cliente de Groq inicializado con la clave API desde una variable de entorno
|
6 |
client = Groq(api_key=os.environ.get("GROQ_API_KEY"))
|
7 |
|
|
|
8 |
st.title("Chatbot de Asistencia sobre Sergio Chic贸n")
|
9 |
|
10 |
+
# Inicializa el historial de mensajes
|
11 |
+
if "messages" not in st.session_state:
|
12 |
+
st.session_state.messages = []
|
13 |
|
14 |
+
# Muestra los mensajes del chat desde el historial
|
15 |
+
for message in st.session_state.messages:
|
16 |
+
with st.chat_message(message["role"]):
|
17 |
+
st.markdown(message["content"])
|
18 |
|
19 |
+
# Procesa la entrada de texto del usuario y genera una respuesta
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
def process_text(input_text):
|
21 |
+
prompt = '''[Aqu铆 tu prompt sobre Sergio...] Responde esta pregunta sobre Sergio: '''
|
22 |
input = prompt + input_text
|
23 |
+
|
24 |
+
# Suponiendo que tu cliente de Groq tenga un m茅todo para obtener la respuesta
|
25 |
chat_completion = client.chat.completions.create(
|
26 |
messages=[
|
27 |
{
|
|
|
33 |
)
|
34 |
return chat_completion.choices[0].message.content
|
35 |
|
36 |
+
# Acepta la entrada del usuario
|
37 |
+
if user_input := st.chat_input("Hazme una pregunta:"):
|
38 |
+
# Agrega el mensaje del usuario al historial de chat
|
39 |
+
st.session_state.messages.append({"role": "user", "content": user_input})
|
40 |
+
|
41 |
+
# Obtiene la respuesta del asistente
|
42 |
+
assistant_response = process_text(user_input)
|
43 |
+
|
44 |
+
# Muestra la respuesta del asistente en el contenedor del mensaje de chat
|
45 |
+
with st.chat_message("assistant"):
|
46 |
+
st.markdown(assistant_response)
|
47 |
+
|
48 |
+
# Agrega la respuesta del asistente al historial de chat
|
49 |
+
st.session_state.messages.append({"role": "assistant", "content": assistant_response})
|