| | #!/bin/bash |
| | set -e |
| |
|
| | echo "=== Zeta Researcher Startup ===" |
| |
|
| | |
| | if [ -n "$ANTHROPIC_API_KEY" ]; then |
| | echo "β ANTHROPIC_API_KEY is set (${#ANTHROPIC_API_KEY} chars)" |
| | else |
| | echo "β WARNING: ANTHROPIC_API_KEY is NOT set!" |
| | |
| | if env | grep -q "^ANTHROPIC"; then |
| | echo "Found ANTHROPIC env vars (values hidden)" |
| | else |
| | echo "No ANTHROPIC env vars found" |
| | fi |
| | fi |
| |
|
| | |
| | if [ ! -f "/tmp/chromadb/chroma.sqlite3" ]; then |
| | |
| | if [ -f "/app/data/vectordb_zeta.tar.gz" ]; then |
| | echo "Extracting pre-built embeddings (NV-Embed-v2 + E5-small)..." |
| | mkdir -p /tmp/chromadb |
| | tar -xzf /app/data/vectordb_zeta.tar.gz -C /tmp |
| | if [ -d "/tmp/vectordb_zeta" ]; then |
| | mv /tmp/vectordb_zeta/* /tmp/chromadb/ 2>/dev/null || true |
| | rmdir /tmp/vectordb_zeta 2>/dev/null || true |
| | fi |
| | elif [ -f "/app/data/vectordb_e5small.tar.gz" ]; then |
| | echo "Extracting pre-built embeddings (E5-small only)..." |
| | mkdir -p /tmp/chromadb |
| | tar -xzf /app/data/vectordb_e5small.tar.gz -C /tmp |
| | if [ -d "/tmp/vectordb_e5small" ]; then |
| | mv /tmp/vectordb_e5small/* /tmp/chromadb/ 2>/dev/null || true |
| | rmdir /tmp/vectordb_e5small 2>/dev/null || true |
| | fi |
| | fi |
| | |
| | if [ -f "/tmp/chromadb/chroma.sqlite3" ]; then |
| | echo "β ChromaDB database found" |
| | else |
| | echo "β WARNING: ChromaDB database not found after extraction!" |
| | fi |
| | fi |
| |
|
| | |
| | mkdir -p /tmp/chromadb /tmp/shares /tmp/huggingface |
| |
|
| | |
| | if [ -f "/tmp/chromadb/chroma.sqlite3" ]; then |
| | DB_SIZE=$(du -h /tmp/chromadb/chroma.sqlite3 | cut -f1) |
| | echo "ChromaDB size: $DB_SIZE" |
| | DB_FILES=$(ls /tmp/chromadb | wc -l) |
| | echo "ChromaDB files: $DB_FILES" |
| | fi |
| |
|
| | |
| | if [ -d "/app/data/pdfs" ]; then |
| | PDF_COUNT=$(find /app/data/pdfs -name "*.pdf" 2>/dev/null | wc -l) |
| | echo "PDFs available: $PDF_COUNT" |
| | else |
| | echo "β WARNING: PDF directory not found at /app/data/pdfs" |
| | fi |
| |
|
| | echo "Starting server on port 7860..." |
| | exec python -m uvicorn src.api.routes:app --host 0.0.0.0 --port 7860 |
| |
|