File size: 1,401 Bytes
92c9b4d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | import os
import sys
from pathlib import Path
# Add project root to path
REPO_ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(REPO_ROOT))
def check_data():
data_path = REPO_ROOT / "data"
if not data_path.exists() or not any(data_path.iterdir()):
print("Data folder not found. Downloading from HuggingFace...")
from scripts.download_data import download_data
download_data()
def check_env():
from dotenv import load_dotenv
load_dotenv()
required_vars = ["GROQ_API_KEY", "SILICONFLOW_API_KEY"]
missing = [var for var in required_vars if not os.getenv(var)]
if missing:
print(f"Missing environment variables: {', '.join(missing)}")
print("Please create a .env file with the required variables.")
print("Example:")
print(" GROQ_API_KEY=your_groq_key")
print(" SILICONFLOW_API_KEY=your_siliconflow_key")
sys.exit(1)
def main():
print("=" * 60)
print("HUST RAG Assistant - Startup")
print("=" * 60)
# Check data
check_data()
# Check environment
check_env()
# Run Gradio app
print("\nStarting Gradio server...")
from core.gradio.user_gradio import demo, GRADIO_CFG
demo.launch(
server_name=GRADIO_CFG.server_host,
server_port=GRADIO_CFG.server_port
)
if __name__ == "__main__":
main()
|