| | import streamlit as st |
| | import json |
| | from src.langgraphagenticai.ui.streamlitui.loadui import LoadStreamlitUI |
| | from src.langgraphagenticai.LLMS.groqllm import GroqLLM |
| | from src.langgraphagenticai.graph.graph_builder import GraphBuilder |
| | from src.langgraphagenticai.ui.streamlitui.display_result import DisplayResultStreamlit |
| |
|
| | |
| | def load_langgraph_agenticai_app(): |
| | """ |
| | Loads and runs the LangGraph AgenticAI application with Streamlit UI. |
| | This function initializes the UI, handles user input, configures the LLM model, |
| | sets up the graph based on the selected use case, and displays the output while |
| | implementing exception handling for robustness. |
| | """ |
| | |
| | |
| | ui = LoadStreamlitUI() |
| | user_input = ui.load_streamlit_ui() |
| |
|
| | if not user_input: |
| | st.error("Error: Failed to load user input from the UI.") |
| | return |
| |
|
| | |
| | if st.session_state.IsFetchButtonClicked: |
| | user_message = st.session_state.timeframe |
| | else : |
| | user_message = st.chat_input("Enter your message:") |
| |
|
| | if user_message: |
| | try: |
| | |
| | obj_llm_config = GroqLLM(user_controls_input=user_input) |
| | model = obj_llm_config.get_llm_model() |
| | |
| | if not model: |
| | st.error("Error: LLM model could not be initialized.") |
| | return |
| |
|
| | |
| | usecase = user_input.get('selected_usecase') |
| | if not usecase: |
| | st.error("Error: No use case selected.") |
| | return |
| | |
| |
|
| | |
| | graph_builder=GraphBuilder(model) |
| | try: |
| | graph = graph_builder.setup_graph(usecase) |
| | DisplayResultStreamlit(usecase,graph,user_message).display_result_on_ui() |
| | except Exception as e: |
| | st.error(f"Error: Graph setup failed - {e}") |
| | return |
| | |
| |
|
| | except Exception as e: |
| | raise ValueError(f"Error Occurred with Exception : {e}") |
| | |
| |
|
| | |
| |
|
| | |
| |
|
| | |