a-dabs's picture
Upload folder using huggingface_hub
8d72f48 verified
#!/usr/bin/env python
import os
import gradio as gr
from services.data_service import DataService
from services.ui_service import dashboard_ui
from configs.config import GPT4O_MODEL, CLAUDE_MODEL
from vector_services.data_curator import DataCurator
from api_gateway.gateway import register_service, gateway
def main() -> None:
base_dir = "./usiu-knowledge-base"
vector_store_dir = "week5/chatbot_prototype/vector_services/usiu_vector_db"
# Load the existing vector store and obtain its retriever
curator = DataCurator(knowledge_base_dir=base_dir, persist_directory=vector_store_dir)
vector_store = curator.load_vectorstore()
retriever = curator.get_retriever()
# Initialize DataService with the retriever so that general chat uses RAG
data_service = DataService(retriever=retriever)
# Register services with API Gateway
register_service("data_service", data_service)
register_service("curator", curator)
# Get system prompts for general and study support
general_chat_prompt, study_prompt = data_service.prompts_service.get_prompt()
# Build the dashboard, passing the relevant prompts, model identifiers, and retriever
dashboard = dashboard_ui(
general_chat_prompt=general_chat_prompt,
general_model=GPT4O_MODEL,
study_prompt=study_prompt,
study_model=CLAUDE_MODEL,
retriever=retriever # Pass the retriever directly to ui_service
)
dashboard.launch(share=True, inbrowser=True, server_name="0.0.0.0")
if __name__ == "__main__":
main()