Spaces:
Sleeping
Sleeping
Commit
·
eae75e8
1
Parent(s):
0752323
correct some bugs
Browse files- streamlit_app.py +24 -8
streamlit_app.py
CHANGED
|
@@ -337,7 +337,11 @@ def launch_app(code_to_launch):
|
|
| 337 |
app_tab, source_tab = st.tabs(["Application", "Code source"])
|
| 338 |
with app_tab:
|
| 339 |
# Execute the code within a bordered container for visual separation
|
| 340 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 341 |
with source_tab:
|
| 342 |
# Display the generated code for reference
|
| 343 |
st.code(code_to_launch, language="python")
|
|
@@ -488,13 +492,20 @@ def main():
|
|
| 488 |
# Initialize conversation history if not already in session state
|
| 489 |
if "messages" not in st.session_state:
|
| 490 |
st.session_state.messages = [
|
| 491 |
-
{"role": "assistant", "content": "Bonjour! Comment puis-je vous aider aujourd'hui?"}
|
| 492 |
]
|
| 493 |
|
| 494 |
# Display conversation history
|
| 495 |
for message in st.session_state.messages:
|
| 496 |
with st.chat_message(message["role"]):
|
| 497 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 498 |
|
| 499 |
# User input area
|
| 500 |
if prompt := st.chat_input("Posez votre question..."):
|
|
@@ -510,13 +521,18 @@ def main():
|
|
| 510 |
# Get response from agent
|
| 511 |
response = process_user_input(st.session_state.agent, prompt)
|
| 512 |
|
| 513 |
-
#
|
| 514 |
if response is not None and response[1] == True:
|
|
|
|
|
|
|
|
|
|
| 515 |
launch_app(response[0])
|
|
|
|
|
|
|
|
|
|
|
|
|
| 516 |
|
| 517 |
-
|
| 518 |
-
if response and hasattr(response, "model_output"):
|
| 519 |
-
st.session_state.messages.append({"role": "assistant", "content": response.model_output})
|
| 520 |
|
| 521 |
|
| 522 |
# Additional information and features in the sidebar
|
|
@@ -527,7 +543,7 @@ def main():
|
|
| 527 |
if st.button("Nouvelle conversation"):
|
| 528 |
# Reset conversation to initial greeting
|
| 529 |
st.session_state.messages = [
|
| 530 |
-
{"role": "assistant", "content": "Bonjour! Comment puis-je vous aider aujourd'hui?"}
|
| 531 |
]
|
| 532 |
# Reload the page to reset the UI
|
| 533 |
st.rerun()
|
|
|
|
| 337 |
app_tab, source_tab = st.tabs(["Application", "Code source"])
|
| 338 |
with app_tab:
|
| 339 |
# Execute the code within a bordered container for visual separation
|
| 340 |
+
try:
|
| 341 |
+
exec(code_to_launch)
|
| 342 |
+
except:
|
| 343 |
+
st.error("Erreur lors de l'exécution du code généré... Le robot a du faire une erreur ou est surchargé 🤖, réessayer plus tard ou avec une demande moins complexe ! ")
|
| 344 |
+
|
| 345 |
with source_tab:
|
| 346 |
# Display the generated code for reference
|
| 347 |
st.code(code_to_launch, language="python")
|
|
|
|
| 492 |
# Initialize conversation history if not already in session state
|
| 493 |
if "messages" not in st.session_state:
|
| 494 |
st.session_state.messages = [
|
| 495 |
+
{"role": "assistant", "content": "Bonjour! Comment puis-je vous aider aujourd'hui?", "is_code" : False}
|
| 496 |
]
|
| 497 |
|
| 498 |
# Display conversation history
|
| 499 |
for message in st.session_state.messages:
|
| 500 |
with st.chat_message(message["role"]):
|
| 501 |
+
if message["role"] == "assistant":
|
| 502 |
+
if message["is_code"]:
|
| 503 |
+
launch_app(message["content"])
|
| 504 |
+
else:
|
| 505 |
+
st.markdown(message["content"])
|
| 506 |
+
elif message["role"] == "user":
|
| 507 |
+
st.markdown(message["content"])
|
| 508 |
+
|
| 509 |
|
| 510 |
# User input area
|
| 511 |
if prompt := st.chat_input("Posez votre question..."):
|
|
|
|
| 521 |
# Get response from agent
|
| 522 |
response = process_user_input(st.session_state.agent, prompt)
|
| 523 |
|
| 524 |
+
# Add agent's response to conversation history if valid
|
| 525 |
if response is not None and response[1] == True:
|
| 526 |
+
st.session_state.messages.append({"role": "assistant", "content": response[0], "is_code" : True})
|
| 527 |
+
# If response contains executable code, run it in a fragment
|
| 528 |
+
|
| 529 |
launch_app(response[0])
|
| 530 |
+
|
| 531 |
+
else:
|
| 532 |
+
st.session_state.messages.append({"role": "assistant", "content": "Désolé, une erreur a du se produire... Essayez avec une idée moins complexe !", "is_code" : False})
|
| 533 |
+
|
| 534 |
|
| 535 |
+
|
|
|
|
|
|
|
| 536 |
|
| 537 |
|
| 538 |
# Additional information and features in the sidebar
|
|
|
|
| 543 |
if st.button("Nouvelle conversation"):
|
| 544 |
# Reset conversation to initial greeting
|
| 545 |
st.session_state.messages = [
|
| 546 |
+
{"role": "assistant", "content": "Bonjour! Comment puis-je vous aider aujourd'hui?", "is_code" : False}
|
| 547 |
]
|
| 548 |
# Reload the page to reset the UI
|
| 549 |
st.rerun()
|