File size: 2,423 Bytes
cce70aa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/bin/bash

# Configuration
PROJECT_DIR="$HOME/bd-model-generations"
STATUS_DIR="$PROJECT_DIR/status"
LOG_FILE="$PROJECT_DIR/logs/actions.log"

# Ensure directories exist
mkdir -p "$STATUS_DIR" "$PROJECT_DIR/logs"

# Log function for errors
log_error() {
    echo "[$(date '+%Y-%m-%d %H:%M:%S')] ERROR: $1" >> "$LOG_FILE"
}

# Live status display function
display_status() {
    while true; do
        clear
        echo -e "\033[1;34m=== Live Agent Status (Bengali Language Model Generation) ===\033[0m"
        echo -e "\033[1;36mTime: $(date '+%H:%M:%S')\033[0m"
        echo ""

        # Data Collector Status
        if [ -f "$STATUS_DIR/data_collector.status" ]; then
            echo -e "\033[1;32mData Collector:\033[0m $(cat "$STATUS_DIR/data_collector.status")"
        else
            echo -e "\033[1;32mData Collector:\033[0m Not started or completed"
        fi

        # Model Trainer Status
        if [ -f "$STATUS_DIR/model_trainer.status" ]; then
            echo -e "\033[1;33mModel Trainer:\033[0m $(cat "$STATUS_DIR/model_trainer.status")"
        else
            echo -e "\033[1;33mModel Trainer:\033[0m Not started or completed"
        fi

        # Model Evaluator Status
        if [ -f "$STATUS_DIR/model_evaluator.status" ]; then
            echo -e "\033[1;31mModel Evaluator:\033[0m $(cat "$STATUS_DIR/model_evaluator.status")"
        else
            echo -e "\033[1;31mModel Evaluator:\033[0m Not started or completed"
        fi

        # Check if all agents are done
        if [ ! -f "$STATUS_DIR/data_collector.status" ] && \
           [ ! -f "$STATUS_DIR/model_trainer.status" ] && \
           [ ! -f "$STATUS_DIR/model_evaluator.status" ]; then
            echo ""
            echo -e "\033[1;34mAll agents have completed their tasks.\033[0m"
            break
        fi
        sleep 2
    done
}

# Main process
echo "Starting Bengali language model generation..." | tee -a "$LOG_FILE"

# Launch agents in background
for agent in data_collector model_trainer model_evaluator; do
    if [ -f "$PROJECT_DIR/$agent.sh" ]; then
        echo "Starting $agent..." | tee -a "$LOG_FILE"
        bash "$PROJECT_DIR/$agent.sh" &>> "$LOG_FILE" || log_error "$agent failed to execute"
    else
        log_error "$agent.sh not found in $PROJECT_DIR"
    fi
done

# Display live status
display_status

echo "Process completed. Check logs in $LOG_FILE for details." | tee -a "$LOG_FILE"