|
import streamlit as st |
|
import os |
|
|
|
from dotenv import load_dotenv |
|
from rag import Rag |
|
from vectore_store.PineconeConnector import PineconeConnector |
|
from vectore_store.VectoreStoreManager import VectoreStoreManager |
|
|
|
|
|
load_dotenv() |
|
|
|
GROUP_NAME = os.environ.get("APP_NAME") |
|
|
|
def init_app(): |
|
|
|
|
|
variables = os.environ.get('VARIABLES') |
|
keys = variables.split(',') |
|
data_dict = {key: '' for key in keys} |
|
|
|
if len(st.session_state) == 0: |
|
|
|
pinecone_connector = PineconeConnector() |
|
vs_manager = VectoreStoreManager(pinecone_connector) |
|
|
|
st.session_state["messages"] = [] |
|
st.session_state["assistant"] = Rag(vectore_store=vs_manager) |
|
st.session_state["data_dict"] = data_dict |
|
|
|
|
|
def main(): |
|
|
|
init_app() |
|
|
|
st.set_page_config(page_title=GROUP_NAME) |
|
|
|
st.title(GROUP_NAME) |
|
|
|
prompt_system = st.Page("pages/prompt_system.py", title="Prompt systรจme", icon="๐", default=True) |
|
saved_documents = st.Page("pages/persistent_documents.py", title="Documents Communs", icon="๐") |
|
documents = st.Page("pages/documents.py", title="Documents", icon="๐") |
|
form = st.Page("pages/form.py", title="Formulaire", icon="๐") |
|
chatbot = st.Page("pages/chatbot.py", title="Chatbot", icon="๐") |
|
|
|
pg = st.navigation( |
|
[ |
|
saved_documents, |
|
prompt_system, |
|
documents, |
|
form, |
|
chatbot |
|
] |
|
) |
|
|
|
pg.run() |
|
|
|
|
|
if __name__ == "__main__": |
|
main() |