|
|
#!/bin/bash |
|
|
|
|
|
|
|
|
|
|
|
set -e |
|
|
|
|
|
echo "==================================" |
|
|
echo " GraphWiz Ireland - Setup" |
|
|
echo "==================================" |
|
|
echo "" |
|
|
|
|
|
|
|
|
if command -v uv &> /dev/null; then |
|
|
USE_UV=true |
|
|
echo "β Using UV package manager (fast!)" |
|
|
else |
|
|
USE_UV=false |
|
|
echo "β Using pip" |
|
|
fi |
|
|
|
|
|
|
|
|
python_version=$(python3 --version 2>&1 | awk '{print $2}') |
|
|
echo "β Python $python_version" |
|
|
|
|
|
|
|
|
if [ "$USE_UV" = true ]; then |
|
|
VENV_DIR=".venv" |
|
|
else |
|
|
VENV_DIR="venv" |
|
|
fi |
|
|
|
|
|
|
|
|
if [ ! -d "$VENV_DIR" ]; then |
|
|
echo "β Creating virtual environment..." |
|
|
if [ "$USE_UV" = true ]; then |
|
|
uv venv |
|
|
else |
|
|
python3 -m venv venv |
|
|
fi |
|
|
echo "β Virtual environment created" |
|
|
else |
|
|
echo "β Virtual environment exists" |
|
|
fi |
|
|
|
|
|
|
|
|
echo "β Activating virtual environment..." |
|
|
source $VENV_DIR/bin/activate |
|
|
|
|
|
|
|
|
echo "β Installing dependencies..." |
|
|
if [ "$USE_UV" = true ]; then |
|
|
uv pip install -r requirements.txt -q |
|
|
else |
|
|
pip install -q --upgrade pip |
|
|
pip install -q -r requirements.txt |
|
|
fi |
|
|
echo "β Dependencies installed" |
|
|
|
|
|
|
|
|
echo "β Downloading spaCy model..." |
|
|
if [ "$USE_UV" = true ]; then |
|
|
uv pip install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.7.1/en_core_web_sm-3.7.1-py3-none-any.whl -q |
|
|
else |
|
|
python -m spacy download en_core_web_sm --quiet 2>/dev/null || python -m spacy download en_core_web_sm |
|
|
fi |
|
|
echo "β spaCy model ready" |
|
|
|
|
|
|
|
|
if [ ! -f ".env" ]; then |
|
|
cp .env.example .env |
|
|
echo "β .env file created" |
|
|
fi |
|
|
|
|
|
|
|
|
mkdir -p dataset/wikipedia_ireland |
|
|
echo "β Data directories ready" |
|
|
|
|
|
|
|
|
echo "β Testing installation..." |
|
|
python -c "import streamlit, groq, faiss, spacy, networkx; print('β All packages working')" |
|
|
|
|
|
echo "" |
|
|
echo "==================================" |
|
|
echo "β
Setup Complete!" |
|
|
echo "==================================" |
|
|
echo "" |
|
|
echo "Next steps:" |
|
|
echo "1. Set GROQ_API_KEY in .env (already done)" |
|
|
echo "2. Build knowledge base: python build_graphwiz.py" |
|
|
echo "3. Launch app: streamlit run src/app.py" |
|
|
echo "" |
|
|
|