Files
t2a-finetune/runpod/README.md
dom 06100df236 feat: rééquilibrage dataset LoRA — raisonnement DIM vs mémorisation
Passe de 95/3/2 (lookups/raisonnement/règles) à ~31/49/20.
Dataset cible ~16K exemples denses (vs 66K de lookups avant).

Modifiés :
- 03_convert_cache.py : cache complet 1840 entrées (actuel + backup)
- 04_build_dataset.py : subsampling agressif (CIM-10 1.5K, CCAM 1.5K,
  CoCoA 2K) + sélection intelligente priorisant le raisonnement
- 12_generate_pipeline_examples.py : 3 templates (court + long + CPAM),
  cache actuel, cible ~2800 exemples

Créés :
- 13_generate_fascicule_reasoning.py : parsing 10 fascicules ATIH,
  génération Q&A raisonnement via Claude Opus 4.6 (~450 exemples)
- 14_generate_negative_examples.py : 1000 exemples négatifs
  (symptômes/DP, redondances sémantiques, DAS non significatifs)
- 15_generate_discrimination.py : 800 exercices de discrimination
  entre codes siblings CIM-10 via Claude Opus 4.6
- 16_parse_guide_metho.py : extraction Guide Méthodologique MCO 2026,
  Q&A directes + raisonnement via Claude Opus 4.6 (~500 exemples)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 19:42:33 +01:00

65 lines
1.6 KiB
Markdown

# Fine-tuning pmsi-coder sur RunPod
## 1. Créer un pod
- **Template** : RunPod PyTorch 2.4+ (CUDA 12.x)
- **GPU recommandé** : A100 40GB (~1.50€/h) ou A100 80GB (~2.50€/h)
- **Disk** : 50 Go minimum (modèle 12B + dataset + GGUF)
- **Volume persistant** : optionnel, utile si on veut garder les checkpoints
## 2. Upload des fichiers
```bash
# Depuis la machine locale
rsync -avz --progress \
runpod/ \
root@RUNPOD_IP:/workspace/t2a-finetune/
# Ou via l'interface web RunPod (Jupyter → upload)
```
Les fichiers nécessaires :
- `train_runpod.py` — script d'entraînement
- `setup.sh` — installation des dépendances
- `data/pmsi_train.jsonl` — dataset train (38 Mo)
- `data/pmsi_eval.jsonl` — dataset eval (4.2 Mo)
## 3. Setup
```bash
cd /workspace/t2a-finetune
bash setup.sh
```
## 4. Lancer l'entraînement
```bash
python train_runpod.py --epochs 3 --export-gguf
```
Options :
- `--max-seq-length 2048` (défaut, vs 512 en local)
- `--batch 0` (auto-detect selon VRAM, défaut)
- `--lr 2e-4` (learning rate)
- `--lora-r 32` (rang LoRA)
- `--export-gguf` (produire le .gguf pour Ollama)
## 5. Récupérer le GGUF
```bash
# Sur la machine locale
scp root@RUNPOD_IP:/workspace/t2a-finetune/models/pmsi-gguf/*.gguf .
scp root@RUNPOD_IP:/workspace/t2a-finetune/models/pmsi-gguf/Modelfile .
# Importer dans Ollama
ollama create pmsi-coder -f Modelfile
```
## Estimations
| GPU | Batch | Temps 3 epochs | Coût |
|-----|-------|----------------|------|
| A100 40GB | 4 | ~2-3h | ~4-5€ |
| A100 80GB | 8 | ~1.5-2h | ~4-5€ |
| H100 80GB | 8 | ~1-1.5h | ~4-5€ |