Spaces:
Sleeping
Sleeping
import streamlit as st | |
from src.basicchatbot.ui.streamlitui.loadui import StreamlitUILoader | |
from src.basicchatbot.ui.streamlitui.display_result import DisplayResultStreamlit | |
from src.basicchatbot.llms import get_llm | |
from src.basicchatbot.graph.graph_builder import GraphBuilder | |
def load_basic_chatbot(): | |
ui = StreamlitUILoader() | |
user_input = ui.load_streamlit_ui() | |
if not user_input: | |
st.error("Error: Failed to load user input from the UI.") | |
return | |
user_message = st.chat_input(placeholder="Enter your message") | |
if user_message: | |
try: | |
llm = get_llm(llm_name=user_input['selected_llm'], user_input=user_input) | |
if not llm: | |
st.error("Error: LLM model could not be initialized.") | |
return | |
usecase = user_input['selected_usecase'] | |
if not usecase: | |
st.error("Error: No use case selected.") | |
return | |
try: | |
graph_builder = GraphBuilder(model=llm) | |
graph = graph_builder.setup_graph(usecase) | |
if graph is None: | |
st.error("Error: Graph setup failed.") | |
return | |
DisplayResultStreamlit( | |
usecase=usecase, | |
graph=graph, | |
user_message=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}") | |