File size: 2,158 Bytes
723f202
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# API Reference

## FastAPI Endpoints

### Health Check
```
GET /health
```
Response:
```json
{
  "status": "healthy",
  "model_loaded": true
}
```

### Predict Sentiment
```
POST /predict
```
Request:
```json
{
  "text": "ကျေးဇူးပါ",
  "include_prosody": false
}
```
Response:
```json
{
  "text": "ကျေးဇူးပါ",
  "sentiment": "positive",
  "confidence": 0.95,
  "probabilities": {
    "negative": 0.01,
    "neutral": 0.02,
    "positive": 0.95,
    "sarcastic": 0.02
  }
}
```

### Batch Predict
```
POST /predict_batch
```
Request:
```json
{
  "texts": ["ကျေးဇူးပါ", "မကျေနပ်ပါဗျ"]
}
```

## Python SDK

### Installation
```bash
pip install myanmar-ghost
```

### Usage
```python
from myanmar_ghost import MyanmarGhost

# Initialize
model = MyanmarGhost()

# Predict
result = model.predict("ကျေးဇူးပါ")
print(result.sentiment)  # "positive"

# Batch predict
results = model.predict_batch([
    "ကျေးဇူးပါ",
    "မကျေနပ်ပါ"
])
```

### Advanced Usage

#### XAI Explanations
```python
from myanmar_ghost.xai import SHAPExplainer

explainer = SHAPExplainer(model)
shap_values = explainer.explain("ကျေးဇူးပါ")
explainer.visualize(shap_values)
```

#### Active Learning
```python
from myanmar_ghost.active_learning import UncertaintySampler

sampler = UncertaintySampler(model)
selected = sampler.select_samples(unlabeled_data, n_samples=100)
```

## CLI Commands

```bash
# Train model
python -m src.models.train --train_data data/train.csv --output_dir outputs/models

# Evaluate model
python -m src.models.evaluate --model_path outputs/models/best_model.pt --data_path data/test.csv

# Deploy
bash scripts/deploy_model.sh outputs/models/best_model.pt
```

## Configuration

### Environment Variables
| Variable | Description | Default |
|----------|-------------|---------|
| MODEL_PATH | Path to model files | outputs/models |
| HF_TOKEN | HuggingFace token | None |
| DEVICE | cuda or cpu | cuda |

### Model Config
```yaml
model:
  name: myanmar_ghost
  hidden_size: 768
  num_layers: 12
  dropout: 0.1
```